import { PureComponent } from 'react';
import FileInput from './FileInput';
import { IAbstractUploadTriggerProps, IUploadFileItem } from '../types';
declare abstract class AbstractTrigger<UPLOAD_ITEM extends IUploadFileItem> extends PureComponent<IAbstractUploadTriggerProps<UPLOAD_ITEM>> {
    fileInputRef: import("react").RefObject<FileInput>;
    protected clickFileInput: () => void;
    protected onClickTrigger: () => void;
    protected onOverMaxAmount(): void;
    protected onOverMaxSize(_files: File[]): void;
    protected onInputChange: (files: File[]) => void;
    protected onTriggerDragOver: React.DragEventHandler;
    protected onTriggerDrop: React.DragEventHandler;
    renderFileInput(): JSX.Element;
}
export default AbstractTrigger;
