import { CSSProperties } from 'react';
import { IArchbaseDataSourceBase } from '@archbase/data';
export interface ArchbaseMarkdownEditProps<T, ID> {
    /** Indicador se o editor recebe o foco automaticamente */
    autoFocus?: boolean;
    /** Fonte de dados onde será atribuido o valor do editor (V1 ou V2) */
    dataSource?: IArchbaseDataSourceBase<T>;
    /** Campo onde deverá ser atribuido o valor do editor na fonte de dados */
    dataField?: string;
    /** Indicador se o editor está desabilitado */
    disabled?: boolean;
    /** Indicador se o editor é somente leitura. Obs: usado em conjunto com o status da fonte de dados */
    readOnly?: boolean;
    /** Indicador se o preenchimento do editor é obrigatório */
    required?: boolean;
    /** Estilo do editor */
    style?: CSSProperties;
    /** Largura do editor */
    width?: string | number | undefined;
    /** Altura do editor */
    height?: string | number | undefined;
    /** Altura mínima do editor */
    minHeight?: string | number | undefined;
    /** Título do editor */
    label?: string;
    /** Descrição do editor */
    description?: string;
    /** Último erro ocorrido no editor */
    error?: string;
    /** Valor inicial do markdown */
    value?: string;
    /** Texto de espaço reservado quando vazio */
    placeholder?: string;
    /** Habilitar visualização em tempo real */
    enablePreview?: boolean;
    /** Sanitização HTML */
    sanitize?: ((html: string) => string) | boolean;
    /** Evento quando o valor do editor é alterado */
    onChangeValue?: (value: string) => void;
    /** Evento quando o editor é salvo (Ctrl+S) */
    onSave?: (value: string) => void;
    /** Evento quando o foco sai do editor */
    onFocusExit?: (event: FocusEvent) => void;
    /** Evento quando o editor recebe o foco */
    onFocusEnter?: (event: FocusEvent) => void;
    /** Evento quando HTML é gerado */
    onHtmlChanged?: (html: string) => void;
    /** Modo de edição (live, preview, readonly, etc.) */
    previewOnly?: boolean;
}
export declare function ArchbaseMarkdownEdit<T, ID>({ autoFocus, dataSource, dataField, disabled, readOnly, required, label, description, error, width, height, minHeight, placeholder, enablePreview, sanitize, onChangeValue, onSave, onFocusExit, onFocusEnter, onHtmlChanged, previewOnly, value, style, }: ArchbaseMarkdownEditProps<T, ID>): import("react/jsx-runtime").JSX.Element;
export type { default as MarkdownEditorLite } from 'react-markdown-editor-lite';
