import { ComponentSize, ComponentInfoState } from '../../atoms/types'; import { FileTriggerProps } from 'react-aria-components'; export type FileInputProps = FileTriggerProps & ComponentSize & ComponentInfoState & { /** Placeholder text when no file is selected */ placeholder?: string; /** Help text displayed below the input */ helpText?: string; /** Callback fired when a file is successfully uploaded/selected */ onUpload?: (file?: File) => void; /** Callback fired when an error occurs during file operations */ onError?: (error: string, file?: File) => void; /** Callback fired when file processing progress changes */ onProgress?: (file: File, progress: number) => void; /** Callback fired when a file is successfully processed */ onSuccess?: (file: File, result?: unknown) => void; /** Maximum file size in bytes */ maxFileSize?: number; /** Array of accepted MIME types (new prop name) */ acceptedTypes?: string[]; /** @deprecated Use acceptedTypes instead. Array of accepted MIME types (legacy prop name) */ acceptedFileTypes?: string[]; /** Custom file validation function */ validator?: (file: File) => string | null; /** Automatically process files when selected */ autoProcess?: boolean; /** Custom file processing function */ onProcess?: (file: File, context: { onProgress: (progress: number) => void; }) => Promise; }; //# sourceMappingURL=types.d.ts.map