import { FieldContainerProps, FieldErrors } from '@contember/ui';
import { ReactNode } from 'react';
import type { DropzoneState } from 'react-dropzone';
import type { MessageFormatter } from '../../../../i18n';
import type { AddEntityButtonProps } from '../../collections';
import type { UploadDictionary } from '../uploadDictionary';
import { SelectFileInputProps, SelectFileInputPublicProps } from './selection/SelectFileInput';
export declare type FileInputPublicProps = Pick<FieldContainerProps, 'label' | 'description' | 'labelDescription'> & AddEntityButtonProps & SelectFileInputPublicProps & {
    enableAddingNew?: boolean;
    addButtonSubText?: ReactNode;
};
export declare type FileInputProps = FileInputPublicProps & SelectFileInputProps<{}> & {
    children: ReactNode;
    dropzoneState: DropzoneState;
    errors: FieldErrors | undefined;
    formatMessage: MessageFormatter<UploadDictionary>;
};
export declare const FileInput: ({ addButtonComponent: AddButton, addButtonComponentExtraProps, addButtonProps, addButtonSubText, addButtonText, children, description, dropzoneState, enableAddingNew, errors, formatMessage, label, labelDescription, ...selectProps }: FileInputProps) => JSX.Element;
//# sourceMappingURL=FileInput.d.ts.map