import React from 'react';
export interface ImageInputProps {
    /** Nome do campo (para integração com forms) */
    name?: string;
    /** Label do campo */
    label?: string;
    /** Se o campo está desabilitado */
    disabled?: boolean;
    /** Mensagem de erro */
    error?: string;
    /** Classes CSS adicionais */
    className?: string;
    /** Se true, exibe o input em formato circular (ideal para avatars) */
    avatar?: boolean;
    /** URL da imagem atual (para exibir imagem já salva) */
    value?: string;
    /** Callback chamado quando o usuário confirma o upload da imagem selecionada */
    onUpload?: (file: File) => Promise<string> | string;
    /** Callback chamado quando o usuário remove a imagem */
    onRemove?: (imageUrl?: string) => Promise<void> | void;
    /** Tipos de arquivo aceitos (padrão: "image/*") */
    accept?: string;
    /** Tamanho máximo do arquivo em bytes */
    maxSize?: number;
    /** Texto exibido quando não há imagem */
    placeholder?: string;
    /** Se true, mostra estado de loading durante upload */
    loading?: boolean;
    /** Tamanho do componente */
    size?: 'sm' | 'md' | 'lg';
}
export declare const ImageInput: React.FC<ImageInputProps>;
export default ImageInput;
