import Upload from './Upload.vue';
export declare const GmUpload: import("../../../../utils").SFCWithInstall<{
    new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
        beforeUpload: {
            readonly type: import("vue").PropType<(rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        beforeRemove: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => boolean | Promise<boolean>>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        onRemove: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onChange: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onPreview: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onSuccess: {
            readonly type: import("vue").PropType<(response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onProgress: {
            readonly type: import("vue").PropType<(evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onError: {
            readonly type: import("vue").PropType<(error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onExceed: {
            readonly type: import("vue").PropType<(files: File[], uploadFiles: import("element-plus").UploadUserFile[]) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        crossorigin: {
            readonly type: import("vue").PropType<"" | "anonymous" | "use-credentials">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        action: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "#";
        };
        headers: {
            readonly type: import("vue").PropType<Record<string, any> | Headers>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        method: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "post";
        };
        data: {
            readonly type: import("vue").PropType<({
                [x: string]: any;
            } | Promise<{
                [x: string]: any;
            }>) | ((rawFile: import("element-plus").UploadRawFile) => {
                [x: string]: any;
            } | Promise<{
                [x: string]: any;
            }>)>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => {};
        };
        multiple: BooleanConstructor;
        name: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "file";
        };
        drag: BooleanConstructor;
        withCredentials: BooleanConstructor;
        showFileList: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        accept: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "";
        };
        fileList: {
            readonly type: import("vue").PropType<import("element-plus").UploadUserFile[]>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => [];
        };
        autoUpload: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        listType: {
            readonly type: import("vue").PropType<"text" | "picture" | "picture-card">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "text";
        };
        httpRequest: {
            readonly type: import("vue").PropType<import("element-plus").UploadRequestHandler>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: import("element-plus").UploadRequestHandler;
        };
        disabled: BooleanConstructor;
        limit: NumberConstructor;
    }>> & {
        "onUpdate:fileList"?: ((...args: any[]) => any) | undefined;
    }, {
        submit: () => void;
        abort: (file: import("element-plus").UploadFile) => void;
        clearFiles: (states?: import("element-plus").UploadStatus[] | undefined) => void;
        handleStart: (rawFile: import("element-plus").UploadRawFile) => void;
        handleRemove: (file: import("element-plus").UploadRawFile | import("element-plus").UploadFile) => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        "update:fileList": (...args: any[]) => void;
    }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
        beforeUpload: {
            readonly type: import("vue").PropType<(rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        beforeRemove: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => boolean | Promise<boolean>>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        onRemove: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onChange: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onPreview: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onSuccess: {
            readonly type: import("vue").PropType<(response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onProgress: {
            readonly type: import("vue").PropType<(evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onError: {
            readonly type: import("vue").PropType<(error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onExceed: {
            readonly type: import("vue").PropType<(files: File[], uploadFiles: import("element-plus").UploadUserFile[]) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        crossorigin: {
            readonly type: import("vue").PropType<"" | "anonymous" | "use-credentials">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        action: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "#";
        };
        headers: {
            readonly type: import("vue").PropType<Record<string, any> | Headers>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        method: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "post";
        };
        data: {
            readonly type: import("vue").PropType<({
                [x: string]: any;
            } | Promise<{
                [x: string]: any;
            }>) | ((rawFile: import("element-plus").UploadRawFile) => {
                [x: string]: any;
            } | Promise<{
                [x: string]: any;
            }>)>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => {};
        };
        multiple: BooleanConstructor;
        name: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "file";
        };
        drag: BooleanConstructor;
        withCredentials: BooleanConstructor;
        showFileList: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        accept: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "";
        };
        fileList: {
            readonly type: import("vue").PropType<import("element-plus").UploadUserFile[]>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => [];
        };
        autoUpload: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        listType: {
            readonly type: import("vue").PropType<"text" | "picture" | "picture-card">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "text";
        };
        httpRequest: {
            readonly type: import("vue").PropType<import("element-plus").UploadRequestHandler>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: import("element-plus").UploadRequestHandler;
        };
        disabled: BooleanConstructor;
        limit: NumberConstructor;
    }>> & {
        "onUpdate:fileList"?: ((...args: any[]) => any) | undefined;
    }, {
        onError: (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        method: string;
        data: ({
            [x: string]: any;
        } | Promise<{
            [x: string]: any;
        }>) | ((rawFile: import("element-plus").UploadRawFile) => {
            [x: string]: any;
        } | Promise<{
            [x: string]: any;
        }>);
        withCredentials: boolean;
        onSuccess: (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        name: string;
        drag: boolean;
        multiple: boolean;
        disabled: boolean;
        onChange: (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        onProgress: (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        accept: string;
        beforeUpload: (rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined;
        onRemove: (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        onPreview: (uploadFile: import("element-plus").UploadFile) => void;
        onExceed: (files: File[], uploadFiles: import("element-plus").UploadUserFile[]) => void;
        action: string;
        showFileList: boolean;
        fileList: import("element-plus").UploadUserFile[];
        autoUpload: boolean;
        listType: "text" | "picture" | "picture-card";
        httpRequest: import("element-plus").UploadRequestHandler;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        beforeUpload: {
            readonly type: import("vue").PropType<(rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        beforeRemove: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => boolean | Promise<boolean>>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        onRemove: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onChange: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onPreview: {
            readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onSuccess: {
            readonly type: import("vue").PropType<(response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onProgress: {
            readonly type: import("vue").PropType<(evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onError: {
            readonly type: import("vue").PropType<(error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        onExceed: {
            readonly type: import("vue").PropType<(files: File[], uploadFiles: import("element-plus").UploadUserFile[]) => void>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => void;
        };
        crossorigin: {
            readonly type: import("vue").PropType<"" | "anonymous" | "use-credentials">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        action: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "#";
        };
        headers: {
            readonly type: import("vue").PropType<Record<string, any> | Headers>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        method: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "post";
        };
        data: {
            readonly type: import("vue").PropType<({
                [x: string]: any;
            } | Promise<{
                [x: string]: any;
            }>) | ((rawFile: import("element-plus").UploadRawFile) => {
                [x: string]: any;
            } | Promise<{
                [x: string]: any;
            }>)>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => {};
        };
        multiple: BooleanConstructor;
        name: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "file";
        };
        drag: BooleanConstructor;
        withCredentials: BooleanConstructor;
        showFileList: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        accept: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "";
        };
        fileList: {
            readonly type: import("vue").PropType<import("element-plus").UploadUserFile[]>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => [];
        };
        autoUpload: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        listType: {
            readonly type: import("vue").PropType<"text" | "picture" | "picture-card">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "text";
        };
        httpRequest: {
            readonly type: import("vue").PropType<import("element-plus").UploadRequestHandler>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: import("element-plus").UploadRequestHandler;
        };
        disabled: BooleanConstructor;
        limit: NumberConstructor;
    }>> & {
        "onUpdate:fileList"?: ((...args: any[]) => any) | undefined;
    }, {
        submit: () => void;
        abort: (file: import("element-plus").UploadFile) => void;
        clearFiles: (states?: import("element-plus").UploadStatus[] | undefined) => void;
        handleStart: (rawFile: import("element-plus").UploadRawFile) => void;
        handleRemove: (file: import("element-plus").UploadRawFile | import("element-plus").UploadFile) => void;
    }, {}, {}, {}, {
        onError: (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        method: string;
        data: ({
            [x: string]: any;
        } | Promise<{
            [x: string]: any;
        }>) | ((rawFile: import("element-plus").UploadRawFile) => {
            [x: string]: any;
        } | Promise<{
            [x: string]: any;
        }>);
        withCredentials: boolean;
        onSuccess: (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        name: string;
        drag: boolean;
        multiple: boolean;
        disabled: boolean;
        onChange: (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        onProgress: (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        accept: string;
        beforeUpload: (rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined;
        onRemove: (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
        onPreview: (uploadFile: import("element-plus").UploadFile) => void;
        onExceed: (files: File[], uploadFiles: import("element-plus").UploadUserFile[]) => void;
        action: string;
        showFileList: boolean;
        fileList: import("element-plus").UploadUserFile[];
        autoUpload: boolean;
        listType: "text" | "picture" | "picture-card";
        httpRequest: import("element-plus").UploadRequestHandler;
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    beforeUpload: {
        readonly type: import("vue").PropType<(rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    beforeRemove: {
        readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => boolean | Promise<boolean>>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    };
    onRemove: {
        readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    onChange: {
        readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    onPreview: {
        readonly type: import("vue").PropType<(uploadFile: import("element-plus").UploadFile) => void>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    onSuccess: {
        readonly type: import("vue").PropType<(response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    onProgress: {
        readonly type: import("vue").PropType<(evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    onError: {
        readonly type: import("vue").PropType<(error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    onExceed: {
        readonly type: import("vue").PropType<(files: File[], uploadFiles: import("element-plus").UploadUserFile[]) => void>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => void;
    };
    crossorigin: {
        readonly type: import("vue").PropType<"" | "anonymous" | "use-credentials">;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    };
    action: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "#";
    };
    headers: {
        readonly type: import("vue").PropType<Record<string, any> | Headers>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    };
    method: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "post";
    };
    data: {
        readonly type: import("vue").PropType<({
            [x: string]: any;
        } | Promise<{
            [x: string]: any;
        }>) | ((rawFile: import("element-plus").UploadRawFile) => {
            [x: string]: any;
        } | Promise<{
            [x: string]: any;
        }>)>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => {};
    };
    multiple: BooleanConstructor;
    name: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "file";
    };
    drag: BooleanConstructor;
    withCredentials: BooleanConstructor;
    showFileList: {
        readonly type: import("vue").PropType<boolean>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: true;
    };
    accept: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "";
    };
    fileList: {
        readonly type: import("vue").PropType<import("element-plus").UploadUserFile[]>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => [];
    };
    autoUpload: {
        readonly type: import("vue").PropType<boolean>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: true;
    };
    listType: {
        readonly type: import("vue").PropType<"text" | "picture" | "picture-card">;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "text";
    };
    httpRequest: {
        readonly type: import("vue").PropType<import("element-plus").UploadRequestHandler>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: import("element-plus").UploadRequestHandler;
    };
    disabled: BooleanConstructor;
    limit: NumberConstructor;
}>> & {
    "onUpdate:fileList"?: ((...args: any[]) => any) | undefined;
}, {
    submit: () => void;
    abort: (file: import("element-plus").UploadFile) => void;
    clearFiles: (states?: import("element-plus").UploadStatus[] | undefined) => void;
    handleStart: (rawFile: import("element-plus").UploadRawFile) => void;
    handleRemove: (file: import("element-plus").UploadRawFile | import("element-plus").UploadFile) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:fileList": (...args: any[]) => void;
}, string, {
    onError: (error: Error, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
    method: string;
    data: ({
        [x: string]: any;
    } | Promise<{
        [x: string]: any;
    }>) | ((rawFile: import("element-plus").UploadRawFile) => {
        [x: string]: any;
    } | Promise<{
        [x: string]: any;
    }>);
    withCredentials: boolean;
    onSuccess: (response: any, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
    name: string;
    drag: boolean;
    multiple: boolean;
    disabled: boolean;
    onChange: (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
    onProgress: (evt: import("element-plus").UploadProgressEvent, uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
    accept: string;
    beforeUpload: (rawFile: import("element-plus").UploadRawFile) => boolean | void | Blob | File | Promise<boolean | void | Blob | File | null | undefined> | null | undefined;
    onRemove: (uploadFile: import("element-plus").UploadFile, uploadFiles: import("element-plus").UploadFiles) => void;
    onPreview: (uploadFile: import("element-plus").UploadFile) => void;
    onExceed: (files: File[], uploadFiles: import("element-plus").UploadUserFile[]) => void;
    action: string;
    showFileList: boolean;
    fileList: import("element-plus").UploadUserFile[];
    autoUpload: boolean;
    listType: "text" | "picture" | "picture-card";
    httpRequest: import("element-plus").UploadRequestHandler;
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: {
        default?: ((props: {}) => any) | undefined;
    } & {
        file?: ((props: {
            file: import("element-plus").UploadFile;
            index: number;
        }) => any) | undefined;
    };
})> & Record<string, any>;
export type UploadInstance = InstanceType<typeof Upload>;
export * from './upload';
export default GmUpload;
