import { default as React, CSSProperties } from 'react';
import { MantineSize } from '@mantine/core';
import { IArchbaseDataSourceBase } from '@archbase/data';
export interface ArchbaseSignaturePadProps<T, ID> {
    /** Fonte de dados onde sera atribuido o valor da assinatura (V1 ou V2) */
    dataSource?: IArchbaseDataSourceBase<T>;
    /** Campo onde devera ser atribuido o valor da assinatura na fonte de dados */
    dataField?: string;
    /** Valor controlado (base64 data URL) */
    value?: string;
    /** Valor padrao (base64 data URL) */
    defaultValue?: string;
    /** Titulo do campo */
    label?: string;
    /** Descricao do campo */
    description?: string;
    /** Ultimo erro ocorrido */
    error?: string;
    /** Indicador se o preenchimento e obrigatorio */
    required?: boolean;
    /** Indicador se esta desabilitado */
    disabled?: boolean;
    /** Indicador se e somente leitura */
    readOnly?: boolean;
    /** Cor da caneta */
    penColor?: string;
    /** Cor de fundo do canvas */
    backgroundColor?: string;
    /** Largura do canvas */
    width?: number;
    /** Altura do canvas */
    height?: number;
    /** Exibir botao limpar */
    showClearButton?: boolean;
    /** Exibir botao confirmar */
    showConfirmButton?: boolean;
    /** Texto do botao limpar */
    clearLabel?: string;
    /** Texto do botao confirmar */
    confirmLabel?: string;
    /** Evento quando o valor muda (retorna base64 data URL) */
    onChangeValue?: (value: string | undefined) => void;
    /** Evento quando o foco entra */
    onFocusEnter?: React.FocusEventHandler<any>;
    /** Evento quando o foco sai */
    onFocusExit?: React.FocusEventHandler<any>;
    /** Evento quando o usuario confirma a assinatura */
    onConfirm?: (value: string | undefined) => void;
    /** Estilo do componente */
    style?: CSSProperties;
    /** Classe CSS */
    className?: string;
    /** Formato da imagem gerada */
    imageFormat?: 'png' | 'jpeg' | 'svg';
    /** Tamanho do componente */
    size?: MantineSize;
}
declare function ArchbaseSignaturePadInner<T, ID>({ dataSource, dataField, value: valueProp, defaultValue, label, description, error, required, disabled, readOnly, penColor, backgroundColor, width, height, showClearButton, showConfirmButton, clearLabel, confirmLabel, onChangeValue, onFocusEnter, onFocusExit, onConfirm, style, className, imageFormat, size, }: ArchbaseSignaturePadProps<T, ID>): import("react/jsx-runtime").JSX.Element;
export declare const ArchbaseSignaturePad: typeof ArchbaseSignaturePadInner;
export {};
