import type { PropType } from 'vue';
import type { TdUploadProps } from './type';
declare const _default: {
    abridgeName: {
        type: PropType<number[]>;
    };
    accept: {
        type: StringConstructor;
        default: string;
    };
    action: {
        type: StringConstructor;
        default: string;
    };
    allowUploadDuplicateFile: BooleanConstructor;
    autoUpload: {
        type: BooleanConstructor;
        default: boolean;
    };
    beforeAllFilesUpload: {
        type: PropType<(file: import("./type").UploadFile[]) => boolean | Promise<boolean>>;
    };
    beforeUpload: {
        type: PropType<(file: import("./type").UploadFile) => boolean | Promise<boolean>>;
    };
    data: {
        type: PropType<Record<string, any> | ((files: import("./type").UploadFile[]) => Record<string, any>)>;
    };
    default: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    disabled: BooleanConstructor;
    dragContent: {
        type: PropType<((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue) | ((h: import("vue").CreateElement, props: import("./type").TriggerContext) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    draggable: {
        type: BooleanConstructor;
        default: any;
    };
    fileListDisplay: {
        type: PropType<(h: import("vue").CreateElement, props: {
            files: import("./type").UploadFile[];
            dragEvents?: import("..").UploadDisplayDragEvents;
        }) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    files: {
        type: PropType<import("./type").UploadFile[]>;
        default: any;
    };
    defaultFiles: {
        type: PropType<import("./type").UploadFile[]>;
        default: () => TdUploadProps['defaultFiles'];
    };
    format: {
        type: PropType<(file: File) => import("./type").UploadFile>;
    };
    formatRequest: {
        type: PropType<(requestData: {
            [key: string]: any;
        }) => {
            [key: string]: any;
        }>;
    };
    formatResponse: {
        type: PropType<(response: any, context: import("./type").FormatResponseContext) => import("./type").ResponseType>;
    };
    headers: {
        type: PropType<{
            [key: string]: string;
        }>;
    };
    inputAttributes: {
        type: PropType<object>;
    };
    isBatchUpload: BooleanConstructor;
    locale: {
        type: PropType<import("..").UploadConfig>;
    };
    max: {
        type: NumberConstructor;
        default: number;
    };
    method: {
        type: PropType<"option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch">;
        default: "option" | "get" | "post" | "POST" | "GET" | "PUT" | "OPTION" | "PATCH" | "put" | "patch";
        validator(val: TdUploadProps['method']): boolean;
    };
    mockProgressDuration: {
        type: NumberConstructor;
    };
    multiple: BooleanConstructor;
    name: {
        type: StringConstructor;
        default: string;
    };
    placeholder: {
        type: StringConstructor;
        default: string;
    };
    requestMethod: {
        type: PropType<(files: import("./type").UploadFile | import("./type").UploadFile[]) => Promise<import("./type").RequestMethodResponse>>;
    };
    showUploadProgress: {
        type: BooleanConstructor;
        default: boolean;
    };
    sizeLimit: {
        type: PropType<number | import("./type").SizeLimitObj>;
    };
    status: {
        type: PropType<"error" | "default" | "success" | "warning">;
        validator(val: TdUploadProps['status']): boolean;
    };
    theme: {
        type: PropType<"file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow">;
        default: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
        validator(val: TdUploadProps['theme']): boolean;
    };
    tips: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    trigger: {
        type: PropType<(h: import("vue").CreateElement, props: import("./type").TriggerContext) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    triggerButtonProps: {
        type: PropType<import("..").TdButtonProps>;
    };
    uploadAllFilesInOneRequest: BooleanConstructor;
    useMockProgress: {
        type: BooleanConstructor;
        default: boolean;
    };
    value: {
        type: PropType<import("./type").UploadFile[]>;
        default: any;
    };
    defaultValue: {
        type: PropType<import("./type").UploadFile[]>;
        default: () => TdUploadProps['defaultValue'];
    };
    withCredentials: BooleanConstructor;
    onCancelUpload: PropType<() => void>;
    onChange: PropType<(value: import("./type").UploadFile[], context: import("./type").UploadChangeContext) => void>;
    onDragenter: PropType<(context: {
        e: DragEvent;
    }) => void>;
    onDragleave: PropType<(context: {
        e: DragEvent;
    }) => void>;
    onDrop: PropType<(context: {
        e: DragEvent;
    }) => void>;
    onFail: PropType<(options: import("./type").UploadFailContext) => void>;
    onOneFileFail: PropType<(options: import("./type").UploadFailContext) => void>;
    onOneFileSuccess: PropType<(context: Pick<import("./type").SuccessContext, "file" | "e" | "response" | "XMLHttpRequest">) => void>;
    onPreview: PropType<(options: {
        file: import("./type").UploadFile;
        index: number;
        e: MouseEvent;
    }) => void>;
    onProgress: PropType<(options: import("./type").ProgressContext) => void>;
    onRemove: PropType<(context: import("./type").UploadRemoveContext) => void>;
    onSelectChange: PropType<(files: File[], context: import("./type").UploadSelectChangeContext) => void>;
    onSuccess: PropType<(context: import("./type").SuccessContext) => void>;
    onValidate: PropType<(context: {
        type: import("./type").UploadValidateType;
        files: import("./type").UploadFile[];
    }) => void>;
    onWaitingUploadFilesChange: PropType<(context: {
        files: import("./type").UploadFile[];
        trigger: "remove" | "validate" | "uploaded";
    }) => void>;
};
export default _default;
