import './style';
export * from './interface';
export declare const Upload: {
    new (...args: any[]): {
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: {
            max?: number;
            name?: string;
            value?: import("./type").UploadFile[];
            action?: string;
            method?: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch";
            draggable?: boolean;
            disabled?: boolean;
            multiple?: boolean;
            placeholder?: string;
            accept?: string;
            modelValue?: import("./type").UploadFile[];
            defaultValue?: import("./type").UploadFile[];
            theme?: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
            files?: import("./type").UploadFile[];
            defaultFiles?: import("./type").UploadFile[];
            autoUpload?: boolean;
            uploadPastedFiles?: boolean;
            showUploadProgress?: boolean;
            showThumbnail?: boolean;
            isBatchUpload?: boolean;
            withCredentials?: boolean;
            useMockProgress?: boolean;
            uploadAllFilesInOneRequest?: boolean;
            allowUploadDuplicateFile?: boolean;
            readonly data?: unknown;
            readonly default?: string | ((h: typeof import("vue").h) => import("..").SlotReturnValue);
            key?: string | number | symbol;
            style?: unknown;
            readonly status?: "error" | "default" | "success" | "warning";
            readonly onDragenter?: (context: {
                e: DragEvent;
            }) => void;
            readonly onDragleave?: (context: {
                e: DragEvent;
            }) => void;
            readonly onDrop?: (context: {
                e: DragEvent;
            }) => void;
            readonly onChange?: (value: import("./type").UploadFile[], context: import("./type").UploadChangeContext) => void;
            readonly onProgress?: (options: import("./type").ProgressContext) => void;
            class?: unknown;
            readonly headers?: {
                [key: string]: string;
            };
            readonly format?: (file: File) => import("./type").UploadFile;
            ref?: import("vue").VNodeRef;
            ref_for?: boolean;
            ref_key?: string;
            readonly trigger?: (h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue;
            onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[];
            onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[];
            onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[];
            onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[];
            onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[];
            onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[];
            readonly formatResponse?: (response: any, context: import("./type").FormatResponseContext) => import("./type").ResponseType;
            readonly tips?: string | ((h: typeof import("vue").h) => import("..").SlotReturnValue);
            readonly onValidate?: (context: {
                type: import("./type").UploadValidateType;
                files: import("./type").UploadFile[];
            }) => void;
            readonly onRemove?: (context: import("./type").UploadRemoveContext) => void;
            readonly locale?: unknown;
            readonly onSelectChange?: (files: File[], context: import("./type").UploadSelectChangeContext) => void;
            readonly abridgeName?: number[];
            readonly beforeAllFilesUpload?: (file: import("./type").UploadFile[]) => boolean | Promise<boolean>;
            readonly beforeUpload?: (file: import("./type").UploadFile) => boolean | Promise<boolean>;
            readonly dragContent?: ((h: typeof import("vue").h) => import("..").SlotReturnValue) | ((h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue);
            readonly fileListDisplay?: (h: typeof import("vue").h, props: {
                files: import("./type").UploadFile[];
                dragEvents?: import("..").UploadDisplayDragEvents;
            }) => import("..").SlotReturnValue;
            readonly formatRequest?: (requestData: {
                [key: string]: any;
            }) => {
                [key: string]: any;
            };
            readonly inputAttributes?: object;
            readonly requestMethod?: (files: import("./type").UploadFile | import("./type").UploadFile[]) => Promise<import("./type").RequestMethodResponse>;
            readonly sizeLimit?: number | import("./type").SizeLimitObj;
            readonly triggerButtonProps?: unknown;
            readonly onCancelUpload?: () => void;
            readonly onFail?: (options: import("./type").UploadFailContext) => void;
            readonly onOneFileFail?: (options: import("./type").UploadFailContext) => void;
            readonly onOneFileSuccess?: (context: Pick<import("./type").SuccessContext, "file" | "e" | "response" | "XMLHttpRequest">) => void;
            readonly onPreview?: (options: {
                file: import("./type").UploadFile;
                index: number;
                e: MouseEvent;
            }) => void;
            readonly onSuccess?: (context: import("./type").SuccessContext) => void;
            readonly onWaitingUploadFilesChange?: (context: {
                files: import("./type").UploadFile[];
                trigger: "remove" | "validate" | "uploaded";
            }) => void;
            readonly mockProgressDuration?: number;
        };
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot<any>;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}>;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}>;
        $emit: (event: string, ...args: any[]) => void;
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
            abridgeName: {
                type: import("vue").PropType<number[]>;
            };
            accept: {
                type: StringConstructor;
                default: string;
            };
            action: {
                type: StringConstructor;
                default: string;
            };
            allowUploadDuplicateFile: BooleanConstructor;
            autoUpload: {
                type: BooleanConstructor;
                default: boolean;
            };
            beforeAllFilesUpload: {
                type: import("vue").PropType<(file: import("./type").UploadFile[]) => boolean | Promise<boolean>>;
            };
            beforeUpload: {
                type: import("vue").PropType<(file: import("./type").UploadFile) => boolean | Promise<boolean>>;
            };
            data: {
                type: import("vue").PropType<Record<string, any> | ((files: import("./type").UploadFile[]) => Record<string, any>)>;
            };
            default: {
                type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
            };
            disabled: BooleanConstructor;
            dragContent: {
                type: import("vue").PropType<((h: typeof import("vue").h) => import("..").SlotReturnValue) | ((h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue)>;
            };
            draggable: {
                type: BooleanConstructor;
                default: any;
            };
            fileListDisplay: {
                type: import("vue").PropType<(h: typeof import("vue").h, props: {
                    files: import("./type").UploadFile[];
                    dragEvents?: import("..").UploadDisplayDragEvents;
                }) => import("..").SlotReturnValue>;
            };
            files: {
                type: import("vue").PropType<import("./type").UploadFile[]>;
                default: import("./type").UploadFile[];
            };
            defaultFiles: {
                type: import("vue").PropType<import("./type").UploadFile[]>;
                default: () => import("./type").UploadFile[];
            };
            format: {
                type: import("vue").PropType<(file: File) => import("./type").UploadFile>;
            };
            formatRequest: {
                type: import("vue").PropType<(requestData: {
                    [key: string]: any;
                }) => {
                    [key: string]: any;
                }>;
            };
            formatResponse: {
                type: import("vue").PropType<(response: any, context: import("./type").FormatResponseContext) => import("./type").ResponseType>;
            };
            headers: {
                type: import("vue").PropType<{
                    [key: string]: string;
                }>;
            };
            inputAttributes: {
                type: import("vue").PropType<object>;
            };
            isBatchUpload: BooleanConstructor;
            locale: {
                type: import("vue").PropType<import("..").UploadConfig>;
            };
            max: {
                type: NumberConstructor;
                default: number;
            };
            method: {
                type: import("vue").PropType<"option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch">;
                default: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch";
                validator(val: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch"): boolean;
            };
            mockProgressDuration: {
                type: NumberConstructor;
            };
            multiple: BooleanConstructor;
            name: {
                type: StringConstructor;
                default: string;
            };
            placeholder: {
                type: StringConstructor;
                default: string;
            };
            requestMethod: {
                type: import("vue").PropType<(files: import("./type").UploadFile | import("./type").UploadFile[]) => Promise<import("./type").RequestMethodResponse>>;
            };
            showThumbnail: BooleanConstructor;
            showUploadProgress: {
                type: BooleanConstructor;
                default: boolean;
            };
            sizeLimit: {
                type: import("vue").PropType<number | import("./type").SizeLimitObj>;
            };
            status: {
                type: import("vue").PropType<"error" | "default" | "success" | "warning">;
                validator(val: "error" | "default" | "success" | "warning"): boolean;
            };
            theme: {
                type: import("vue").PropType<"file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow">;
                default: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
                validator(val: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow"): boolean;
            };
            tips: {
                type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
            };
            trigger: {
                type: import("vue").PropType<(h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue>;
            };
            triggerButtonProps: {
                type: import("vue").PropType<import("..").TdButtonProps>;
            };
            uploadAllFilesInOneRequest: BooleanConstructor;
            uploadPastedFiles: BooleanConstructor;
            useMockProgress: {
                type: BooleanConstructor;
                default: boolean;
            };
            value: {
                type: import("vue").PropType<import("./type").UploadFile[]>;
                default: import("./type").UploadFile[];
            };
            modelValue: {
                type: import("vue").PropType<import("./type").UploadFile[]>;
                default: import("./type").UploadFile[];
            };
            defaultValue: {
                type: import("vue").PropType<import("./type").UploadFile[]>;
                default: () => import("./type").UploadFile[];
            };
            withCredentials: BooleanConstructor;
            onCancelUpload: import("vue").PropType<() => void>;
            onChange: import("vue").PropType<(value: import("./type").UploadFile[], context: import("./type").UploadChangeContext) => void>;
            onDragenter: import("vue").PropType<(context: {
                e: DragEvent;
            }) => void>;
            onDragleave: import("vue").PropType<(context: {
                e: DragEvent;
            }) => void>;
            onDrop: import("vue").PropType<(context: {
                e: DragEvent;
            }) => void>;
            onFail: import("vue").PropType<(options: import("./type").UploadFailContext) => void>;
            onOneFileFail: import("vue").PropType<(options: import("./type").UploadFailContext) => void>;
            onOneFileSuccess: import("vue").PropType<(context: Pick<import("./type").SuccessContext, "file" | "e" | "response" | "XMLHttpRequest">) => void>;
            onPreview: import("vue").PropType<(options: {
                file: import("./type").UploadFile;
                index: number;
                e: MouseEvent;
            }) => void>;
            onProgress: import("vue").PropType<(options: import("./type").ProgressContext) => void>;
            onRemove: import("vue").PropType<(context: import("./type").UploadRemoveContext) => void>;
            onSelectChange: import("vue").PropType<(files: File[], context: import("./type").UploadSelectChangeContext) => void>;
            onSuccess: import("vue").PropType<(context: import("./type").SuccessContext) => void>;
            onValidate: import("vue").PropType<(context: {
                type: import("./type").UploadValidateType;
                files: import("./type").UploadFile[];
            }) => void>;
            onWaitingUploadFilesChange: import("vue").PropType<(context: {
                files: import("./type").UploadFile[];
                trigger: "remove" | "validate" | "uploaded";
            }) => void>;
        }>>, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
            max: number;
            name: string;
            value: import("./type").UploadFile[];
            action: string;
            method: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch";
            draggable: boolean;
            disabled: boolean;
            multiple: boolean;
            placeholder: string;
            accept: string;
            modelValue: import("./type").UploadFile[];
            defaultValue: import("./type").UploadFile[];
            theme: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
            files: import("./type").UploadFile[];
            defaultFiles: import("./type").UploadFile[];
            autoUpload: boolean;
            uploadPastedFiles: boolean;
            showUploadProgress: boolean;
            showThumbnail: boolean;
            isBatchUpload: boolean;
            withCredentials: boolean;
            useMockProgress: boolean;
            uploadAllFilesInOneRequest: boolean;
            allowUploadDuplicateFile: boolean;
        }, {}, string, {}> & {
            beforeCreate?: (() => void) | (() => void)[];
            created?: (() => void) | (() => void)[];
            beforeMount?: (() => void) | (() => void)[];
            mounted?: (() => void) | (() => void)[];
            beforeUpdate?: (() => void) | (() => void)[];
            updated?: (() => void) | (() => void)[];
            activated?: (() => void) | (() => void)[];
            deactivated?: (() => void) | (() => void)[];
            beforeDestroy?: (() => void) | (() => void)[];
            beforeUnmount?: (() => void) | (() => void)[];
            destroyed?: (() => void) | (() => void)[];
            unmounted?: (() => void) | (() => void)[];
            renderTracked?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[];
            renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}>, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}>, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: typeof import("vue").nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean>): import("vue").WatchStopHandle;
    } & Readonly<import("vue").ExtractPropTypes<{
        abridgeName: {
            type: import("vue").PropType<number[]>;
        };
        accept: {
            type: StringConstructor;
            default: string;
        };
        action: {
            type: StringConstructor;
            default: string;
        };
        allowUploadDuplicateFile: BooleanConstructor;
        autoUpload: {
            type: BooleanConstructor;
            default: boolean;
        };
        beforeAllFilesUpload: {
            type: import("vue").PropType<(file: import("./type").UploadFile[]) => boolean | Promise<boolean>>;
        };
        beforeUpload: {
            type: import("vue").PropType<(file: import("./type").UploadFile) => boolean | Promise<boolean>>;
        };
        data: {
            type: import("vue").PropType<Record<string, any> | ((files: import("./type").UploadFile[]) => Record<string, any>)>;
        };
        default: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
        };
        disabled: BooleanConstructor;
        dragContent: {
            type: import("vue").PropType<((h: typeof import("vue").h) => import("..").SlotReturnValue) | ((h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue)>;
        };
        draggable: {
            type: BooleanConstructor;
            default: any;
        };
        fileListDisplay: {
            type: import("vue").PropType<(h: typeof import("vue").h, props: {
                files: import("./type").UploadFile[];
                dragEvents?: import("..").UploadDisplayDragEvents;
            }) => import("..").SlotReturnValue>;
        };
        files: {
            type: import("vue").PropType<import("./type").UploadFile[]>;
            default: import("./type").UploadFile[];
        };
        defaultFiles: {
            type: import("vue").PropType<import("./type").UploadFile[]>;
            default: () => import("./type").UploadFile[];
        };
        format: {
            type: import("vue").PropType<(file: File) => import("./type").UploadFile>;
        };
        formatRequest: {
            type: import("vue").PropType<(requestData: {
                [key: string]: any;
            }) => {
                [key: string]: any;
            }>;
        };
        formatResponse: {
            type: import("vue").PropType<(response: any, context: import("./type").FormatResponseContext) => import("./type").ResponseType>;
        };
        headers: {
            type: import("vue").PropType<{
                [key: string]: string;
            }>;
        };
        inputAttributes: {
            type: import("vue").PropType<object>;
        };
        isBatchUpload: BooleanConstructor;
        locale: {
            type: import("vue").PropType<import("..").UploadConfig>;
        };
        max: {
            type: NumberConstructor;
            default: number;
        };
        method: {
            type: import("vue").PropType<"option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch">;
            default: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch";
            validator(val: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch"): boolean;
        };
        mockProgressDuration: {
            type: NumberConstructor;
        };
        multiple: BooleanConstructor;
        name: {
            type: StringConstructor;
            default: string;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        requestMethod: {
            type: import("vue").PropType<(files: import("./type").UploadFile | import("./type").UploadFile[]) => Promise<import("./type").RequestMethodResponse>>;
        };
        showThumbnail: BooleanConstructor;
        showUploadProgress: {
            type: BooleanConstructor;
            default: boolean;
        };
        sizeLimit: {
            type: import("vue").PropType<number | import("./type").SizeLimitObj>;
        };
        status: {
            type: import("vue").PropType<"error" | "default" | "success" | "warning">;
            validator(val: "error" | "default" | "success" | "warning"): boolean;
        };
        theme: {
            type: import("vue").PropType<"file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow">;
            default: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
            validator(val: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow"): boolean;
        };
        tips: {
            type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
        };
        trigger: {
            type: import("vue").PropType<(h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue>;
        };
        triggerButtonProps: {
            type: import("vue").PropType<import("..").TdButtonProps>;
        };
        uploadAllFilesInOneRequest: BooleanConstructor;
        uploadPastedFiles: BooleanConstructor;
        useMockProgress: {
            type: BooleanConstructor;
            default: boolean;
        };
        value: {
            type: import("vue").PropType<import("./type").UploadFile[]>;
            default: import("./type").UploadFile[];
        };
        modelValue: {
            type: import("vue").PropType<import("./type").UploadFile[]>;
            default: import("./type").UploadFile[];
        };
        defaultValue: {
            type: import("vue").PropType<import("./type").UploadFile[]>;
            default: () => import("./type").UploadFile[];
        };
        withCredentials: BooleanConstructor;
        onCancelUpload: import("vue").PropType<() => void>;
        onChange: import("vue").PropType<(value: import("./type").UploadFile[], context: import("./type").UploadChangeContext) => void>;
        onDragenter: import("vue").PropType<(context: {
            e: DragEvent;
        }) => void>;
        onDragleave: import("vue").PropType<(context: {
            e: DragEvent;
        }) => void>;
        onDrop: import("vue").PropType<(context: {
            e: DragEvent;
        }) => void>;
        onFail: import("vue").PropType<(options: import("./type").UploadFailContext) => void>;
        onOneFileFail: import("vue").PropType<(options: import("./type").UploadFailContext) => void>;
        onOneFileSuccess: import("vue").PropType<(context: Pick<import("./type").SuccessContext, "file" | "e" | "response" | "XMLHttpRequest">) => void>;
        onPreview: import("vue").PropType<(options: {
            file: import("./type").UploadFile;
            index: number;
            e: MouseEvent;
        }) => void>;
        onProgress: import("vue").PropType<(options: import("./type").ProgressContext) => void>;
        onRemove: import("vue").PropType<(context: import("./type").UploadRemoveContext) => void>;
        onSelectChange: import("vue").PropType<(files: File[], context: import("./type").UploadSelectChangeContext) => void>;
        onSuccess: import("vue").PropType<(context: import("./type").SuccessContext) => void>;
        onValidate: import("vue").PropType<(context: {
            type: import("./type").UploadValidateType;
            files: import("./type").UploadFile[];
        }) => void>;
        onWaitingUploadFilesChange: import("vue").PropType<(context: {
            files: import("./type").UploadFile[];
            trigger: "remove" | "validate" | "uploaded";
        }) => void>;
    }>> & import("vue").ShallowUnwrapRef<() => JSX.Element> & {} & import("vue").ComponentCustomProperties & {};
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    abridgeName: {
        type: import("vue").PropType<number[]>;
    };
    accept: {
        type: StringConstructor;
        default: string;
    };
    action: {
        type: StringConstructor;
        default: string;
    };
    allowUploadDuplicateFile: BooleanConstructor;
    autoUpload: {
        type: BooleanConstructor;
        default: boolean;
    };
    beforeAllFilesUpload: {
        type: import("vue").PropType<(file: import("./type").UploadFile[]) => boolean | Promise<boolean>>;
    };
    beforeUpload: {
        type: import("vue").PropType<(file: import("./type").UploadFile) => boolean | Promise<boolean>>;
    };
    data: {
        type: import("vue").PropType<Record<string, any> | ((files: import("./type").UploadFile[]) => Record<string, any>)>;
    };
    default: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    disabled: BooleanConstructor;
    dragContent: {
        type: import("vue").PropType<((h: typeof import("vue").h) => import("..").SlotReturnValue) | ((h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue)>;
    };
    draggable: {
        type: BooleanConstructor;
        default: any;
    };
    fileListDisplay: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: {
            files: import("./type").UploadFile[];
            dragEvents?: import("..").UploadDisplayDragEvents;
        }) => import("..").SlotReturnValue>;
    };
    files: {
        type: import("vue").PropType<import("./type").UploadFile[]>;
        default: import("./type").UploadFile[];
    };
    defaultFiles: {
        type: import("vue").PropType<import("./type").UploadFile[]>;
        default: () => import("./type").UploadFile[];
    };
    format: {
        type: import("vue").PropType<(file: File) => import("./type").UploadFile>;
    };
    formatRequest: {
        type: import("vue").PropType<(requestData: {
            [key: string]: any;
        }) => {
            [key: string]: any;
        }>;
    };
    formatResponse: {
        type: import("vue").PropType<(response: any, context: import("./type").FormatResponseContext) => import("./type").ResponseType>;
    };
    headers: {
        type: import("vue").PropType<{
            [key: string]: string;
        }>;
    };
    inputAttributes: {
        type: import("vue").PropType<object>;
    };
    isBatchUpload: BooleanConstructor;
    locale: {
        type: import("vue").PropType<import("..").UploadConfig>;
    };
    max: {
        type: NumberConstructor;
        default: number;
    };
    method: {
        type: import("vue").PropType<"option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch">;
        default: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch";
        validator(val: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch"): boolean;
    };
    mockProgressDuration: {
        type: NumberConstructor;
    };
    multiple: BooleanConstructor;
    name: {
        type: StringConstructor;
        default: string;
    };
    placeholder: {
        type: StringConstructor;
        default: string;
    };
    requestMethod: {
        type: import("vue").PropType<(files: import("./type").UploadFile | import("./type").UploadFile[]) => Promise<import("./type").RequestMethodResponse>>;
    };
    showThumbnail: BooleanConstructor;
    showUploadProgress: {
        type: BooleanConstructor;
        default: boolean;
    };
    sizeLimit: {
        type: import("vue").PropType<number | import("./type").SizeLimitObj>;
    };
    status: {
        type: import("vue").PropType<"error" | "default" | "success" | "warning">;
        validator(val: "error" | "default" | "success" | "warning"): boolean;
    };
    theme: {
        type: import("vue").PropType<"file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow">;
        default: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
        validator(val: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow"): boolean;
    };
    tips: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("..").SlotReturnValue)>;
    };
    trigger: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: import("./type").TriggerContext) => import("..").SlotReturnValue>;
    };
    triggerButtonProps: {
        type: import("vue").PropType<import("..").TdButtonProps>;
    };
    uploadAllFilesInOneRequest: BooleanConstructor;
    uploadPastedFiles: BooleanConstructor;
    useMockProgress: {
        type: BooleanConstructor;
        default: boolean;
    };
    value: {
        type: import("vue").PropType<import("./type").UploadFile[]>;
        default: import("./type").UploadFile[];
    };
    modelValue: {
        type: import("vue").PropType<import("./type").UploadFile[]>;
        default: import("./type").UploadFile[];
    };
    defaultValue: {
        type: import("vue").PropType<import("./type").UploadFile[]>;
        default: () => import("./type").UploadFile[];
    };
    withCredentials: BooleanConstructor;
    onCancelUpload: import("vue").PropType<() => void>;
    onChange: import("vue").PropType<(value: import("./type").UploadFile[], context: import("./type").UploadChangeContext) => void>;
    onDragenter: import("vue").PropType<(context: {
        e: DragEvent;
    }) => void>;
    onDragleave: import("vue").PropType<(context: {
        e: DragEvent;
    }) => void>;
    onDrop: import("vue").PropType<(context: {
        e: DragEvent;
    }) => void>;
    onFail: import("vue").PropType<(options: import("./type").UploadFailContext) => void>;
    onOneFileFail: import("vue").PropType<(options: import("./type").UploadFailContext) => void>;
    onOneFileSuccess: import("vue").PropType<(context: Pick<import("./type").SuccessContext, "file" | "e" | "response" | "XMLHttpRequest">) => void>;
    onPreview: import("vue").PropType<(options: {
        file: import("./type").UploadFile;
        index: number;
        e: MouseEvent;
    }) => void>;
    onProgress: import("vue").PropType<(options: import("./type").ProgressContext) => void>;
    onRemove: import("vue").PropType<(context: import("./type").UploadRemoveContext) => void>;
    onSelectChange: import("vue").PropType<(files: File[], context: import("./type").UploadSelectChangeContext) => void>;
    onSuccess: import("vue").PropType<(context: import("./type").SuccessContext) => void>;
    onValidate: import("vue").PropType<(context: {
        type: import("./type").UploadValidateType;
        files: import("./type").UploadFile[];
    }) => void>;
    onWaitingUploadFilesChange: import("vue").PropType<(context: {
        files: import("./type").UploadFile[];
        trigger: "remove" | "validate" | "uploaded";
    }) => void>;
}>>, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
    max: number;
    name: string;
    value: import("./type").UploadFile[];
    action: string;
    method: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch";
    draggable: boolean;
    disabled: boolean;
    multiple: boolean;
    placeholder: string;
    accept: string;
    modelValue: import("./type").UploadFile[];
    defaultValue: import("./type").UploadFile[];
    theme: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
    files: import("./type").UploadFile[];
    defaultFiles: import("./type").UploadFile[];
    autoUpload: boolean;
    uploadPastedFiles: boolean;
    showUploadProgress: boolean;
    showThumbnail: boolean;
    isBatchUpload: boolean;
    withCredentials: boolean;
    useMockProgress: boolean;
    uploadAllFilesInOneRequest: boolean;
    allowUploadDuplicateFile: boolean;
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin<any[]>;
export default Upload;
