import * as React from 'react';
import { LucideProps } from 'lucide-react';
import { type LabelProps } from './label';
interface FilePickerInputProps extends React.ComponentProps<'input'> {
    onSelectFile?: (files: File[]) => void;
    onInvalidFile?: () => void;
    iconElement?: React.ReactNode;
    labelProps?: LabelProps;
    iconProps?: LucideProps;
}
interface FilePickerDropzoneProps extends FilePickerInputProps {
    children?: React.ReactNode;
    placeholder?: string;
    dropZoneProps?: React.ComponentProps<'div'>;
    placeholderContainerProps?: React.ComponentProps<'div'>;
    iconProps?: LucideProps;
    placeholderProps?: React.ComponentProps<'span'>;
}
declare const FilePickerInput: React.ForwardRefExoticComponent<Omit<FilePickerInputProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
declare const FilePickerDropzone: React.ForwardRefExoticComponent<Omit<FilePickerDropzoneProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
export { FilePickerInput, FilePickerDropzone, FilePickerInput as Input, FilePickerDropzone as Dropzone, type FilePickerInputProps, type FilePickerDropzoneProps, };
//# sourceMappingURL=file-picker.d.ts.map