export const FILE_UPLOAD_BUTTON_DATA_ATTR: "data-file-upload-button";
export default FileUploadIconButton;
declare class FileUploadIconButton extends PureComponent<any, any, any> {
    constructor(props: any);
    state: {
        currentUpload: null;
        s3FileUrl: null;
        s3FileName: null;
        s3FileSize: null;
        uploadingFileToS3: boolean;
        openFileUploadPreviewDialog: boolean;
    };
    fileInput: import("react").RefObject<any>;
    onFinish: () => Promise<void>;
    onError: (fileUploadingError: any) => void;
    getSignedUrl: (file: any, callback: any) => Promise<void>;
    preprocess: (file: any, next: any) => void;
    uploadFile: (event: any) => void;
    clearUpload(): void;
    handleCloseFileUploadPreviewDialog: () => void;
    handleShare: (comment: any, fileName: any, fileSize: any) => void;
    renderUploadButton(): JSX.Element;
    render(): JSX.Element;
}
declare namespace FileUploadIconButton {
    namespace propTypes {
        let additionalFields: PropTypes.Requireable<PropTypes.ReactNodeLike[]>;
        let classes: PropTypes.Requireable<PropTypes.InferProps<{}>>;
        let tooltipProps: PropTypes.Requireable<PropTypes.InferProps<{}>>;
        let disableRipple: PropTypes.Requireable<boolean>;
        let disabled: PropTypes.Requireable<boolean>;
        let fileUploadIconClassName: PropTypes.Requireable<string>;
        let handleShare: PropTypes.Requireable<(...args: any[]) => any>;
        let inputId: PropTypes.Requireable<string>;
        let message: PropTypes.Requireable<string>;
        let onError: PropTypes.Requireable<(...args: any[]) => any>;
        let onFinish: PropTypes.Requireable<(...args: any[]) => any>;
        let openPreviewDialogOnUpload: PropTypes.Requireable<boolean>;
        let requiredFields: PropTypes.Requireable<(string | null | undefined)[]>;
    }
    namespace defaultProps {
        let additionalFields_1: never[];
        export { additionalFields_1 as additionalFields };
        let classes_1: {};
        export { classes_1 as classes };
        let disableRipple_1: boolean;
        export { disableRipple_1 as disableRipple };
        let disabled_1: boolean;
        export { disabled_1 as disabled };
        let fileUploadIconClassName_1: undefined;
        export { fileUploadIconClassName_1 as fileUploadIconClassName };
        let handleShare_1: undefined;
        export { handleShare_1 as handleShare };
        let inputId_1: string;
        export { inputId_1 as inputId };
        let message_1: undefined;
        export { message_1 as message };
        let onError_1: undefined;
        export { onError_1 as onError };
        let onFinish_1: undefined;
        export { onFinish_1 as onFinish };
        let openPreviewDialogOnUpload_1: boolean;
        export { openPreviewDialogOnUpload_1 as openPreviewDialogOnUpload };
        let requiredFields_1: never[];
        export { requiredFields_1 as requiredFields };
        export namespace tooltipProps_1 {
            let title: string;
        }
        export { tooltipProps_1 as tooltipProps };
    }
}
import { PureComponent } from 'react';
import PropTypes from 'prop-types';
//# sourceMappingURL=FileUploadIconButton.d.ts.map