import { FileUploadFile, UseFileUploadProps } from '../../../helpers/hooks/use-file-upload'; import { AttachmentProps } from '../../misc/attachment/attachment'; import { FeedbackTextProps } from '../feedback-text/feedback-text'; import { FormLabelProps } from '../form-label/form-label'; export type FileDropzoneAttachmentProps = Partial> | ((file: FileUploadFile) => Partial>); export interface FileDropzoneProps extends Omit, UseFileUploadProps { /** * Additional CSS class names to apply to the dropzone for custom styling */ className?: string; /** * The name attribute for the file input, used for form submission and identifying the field. */ name: string; /** * The text label displayed for the file dropzone, providing context for users. * Defaults to the `LabelProvider`'s localised `file-dropzone.label` (e.g. "Lohista * failid siia või klõpsa, et sirvida" in Estonian). */ label?: string; /** * Provides helper text or feedback (such as an error or instruction message) to guide the user. */ helper?: FeedbackTextProps; /** * Disables the file dropzone, preventing user interaction. */ disabled?: boolean; /** * Overrides forwarded to each rendered `Attachment` (e.g. `icon`, `fileSize`, * `progress`, `feedback`). Pass a function to vary per file. `FileDropzone` * sets `name`, `isValid` and `isLoading` itself, and always appends a remove * button to the `actions` slot (after any `actions` you provide here). */ attachmentProps?: FileDropzoneAttachmentProps; } export declare const FileDropzone: (props: FileDropzoneProps) => JSX.Element; export default FileDropzone;