import Vue from 'vue';
import { UploadFile } from './type';
import { FlowRemoveContext } from './interface';
import { UploadConfig } from '../config-provider/config-receiver';
declare const _default: import("vue/types/vue").ExtendedVue<{
    t<T>(pattern: T, placement?: import("../config-provider/config-receiver").Placement): string;
} & {
    global: UploadConfig;
} & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & Vue, {
    dragActive: boolean;
    target: any;
}, {
    renderStatus(file: UploadFile): JSX.Element;
    handleDrop(event: DragEvent): void;
    handleDragenter(event: DragEvent): void;
    handleDragleave(event: DragEvent): void;
    handleDragover(event: DragEvent): void;
    onViewClick(event: MouseEvent, file?: UploadFile): void;
    renderDragger(): JSX.Element;
    renderFileList(): JSX.Element;
    renderNormalActionCol(file: UploadFile, index: number): JSX.Element;
    renderBatchActionCol(index: number): "" | JSX.Element;
    renderImgList(): JSX.Element;
}, {
    showInitial: boolean;
    waitingUploadFiles: UploadFile[];
    listFiles: UploadFile[];
    failedList: UploadFile[];
    processList: UploadFile[];
    isUploading: boolean;
    allowUpload: boolean;
    uploadText: string;
    batchRemoveRow: boolean;
}, {
    showUploadProgress: boolean;
    allowUploadDuplicateFile: boolean;
    files: UploadFile[];
    batchUpload: boolean;
    toUploadFiles: UploadFile[];
    placeholder: string;
    autoUpload: boolean;
    disabled: boolean;
    remove: (ctx: FlowRemoveContext) => void;
    upload: (files: Array<UploadFile>, e: MouseEvent) => void;
    cancel: (e: MouseEvent) => void;
    display: "file-flow" | "image-flow";
}>;
export default _default;
