import { ChangeEvent } from 'react';
import { DefaultAttributes } from '../types';
export declare type FileUploaderProps = DefaultAttributes & {
    label: string;
    uploaderTitle: string;
    maxSizeDescription?: string;
    uploadFileBtnText?: string;
    removeFileBtnText?: string;
    retryUploadBtnText?: string;
    cancelBtnText?: string;
    optionalText?: string;
    assistText?: string;
    errorMessage?: string;
    successMessage?: string;
    width?: string;
    fileType?: string;
    file?: File | string;
    getFileCallback: (file: ChangeEvent<HTMLInputElement>) => void;
    removeFileCallback: () => void;
    cancelFileCallback?: () => void;
    shouldDisplayThumbnail?: boolean;
    loading?: boolean;
};
export declare type UploaderButtonProps = Pick<FileUploaderProps, 'shouldDisplayThumbnail'> & {
    hasFile: boolean;
};
export declare type GetUploaderTitleProps = Pick<FileUploaderProps, 'file' | 'uploaderTitle'>;
export declare type GetUploaderDescriptionProps = Pick<FileUploaderProps, 'file' | 'maxSizeDescription'>;
export declare type GetImageUrlFromFileProps = Pick<FileUploaderProps, 'file'> & {
    fileId: string;
};
export declare type OpenFileExplorerProps = Pick<FileUploaderProps, 'file' | 'errorMessage'> & {
    inputId: string;
};
export declare type UploaderContainerWrapperProps = Pick<FileUploaderProps, 'width' | 'data-testid' | 'data-trackid' | 'label' | 'optionalText' | 'assistText'>;
export declare type FileInfoWrapperProps = Pick<FileUploaderProps, 'file' | 'uploaderTitle' | 'maxSizeDescription' | 'loading' | 'successMessage' | 'errorMessage'>;
