@arco-design/web-vue
Version:
Arco Design Vue 2.0: A Vue.js 3 UI Library
500 lines (499 loc) • 18.9 kB
TypeScript
import type { App } from 'vue';
import type { ArcoOptions } from '../_utils/types';
import _Upload from './upload';
declare const Upload: {
new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
fileList: {
type: import("vue").PropType<import("./interfaces").FileItem[]>;
default: undefined;
};
defaultFileList: {
type: import("vue").PropType<import("./interfaces").FileItem[]>;
default: () => never[];
};
accept: StringConstructor;
action: StringConstructor;
disabled: {
type: BooleanConstructor;
default: boolean;
};
multiple: {
type: BooleanConstructor;
default: boolean;
};
directory: {
type: BooleanConstructor;
default: boolean;
};
draggable: {
type: BooleanConstructor;
default: boolean;
};
tip: StringConstructor;
headers: {
type: import("vue").PropType<Record<string, string>>;
};
data: {
type: import("vue").PropType<Record<string, string | Blob> | ((fileItem: import("./interfaces").FileItem) => Record<string, string | Blob>)>;
};
name: {
type: import("vue").PropType<string | ((fileItem: import("./interfaces").FileItem) => string)>;
};
withCredentials: {
type: BooleanConstructor;
default: boolean;
};
customRequest: {
type: import("vue").PropType<(option: import("./interfaces").RequestOption) => import("./interfaces").UploadRequest>;
};
limit: {
type: NumberConstructor;
default: number;
};
autoUpload: {
type: BooleanConstructor;
default: boolean;
};
showFileList: {
type: BooleanConstructor;
default: boolean;
};
showRemoveButton: {
type: BooleanConstructor;
default: boolean;
};
showRetryButton: {
type: BooleanConstructor;
default: boolean;
};
showCancelButton: {
type: BooleanConstructor;
default: boolean;
};
showUploadButton: {
type: import("vue").PropType<boolean | {
showOnExceedLimit: boolean;
}>;
default: boolean;
};
showPreviewButton: {
type: BooleanConstructor;
default: boolean;
};
download: {
type: BooleanConstructor;
default: boolean;
};
showLink: {
type: BooleanConstructor;
default: boolean;
};
imageLoading: {
type: import("vue").PropType<"eager" | "lazy">;
};
listType: {
type: import("vue").PropType<import("./interfaces").ListType>;
default: string;
};
responseUrlKey: {
type: import("vue").PropType<string | ((fileItem: import("./interfaces").FileItem) => string)>;
};
customIcon: {
type: import("vue").PropType<import("./interfaces").CustomIcon>;
};
imagePreview: {
type: BooleanConstructor;
default: boolean;
};
onBeforeUpload: {
type: import("vue").PropType<(file: File) => boolean | Promise<boolean | File>>;
};
onBeforeRemove: {
type: import("vue").PropType<(fileItem: import("./interfaces").FileItem) => Promise<boolean>>;
};
onButtonClick: {
type: import("vue").PropType<(event: Event) => void | Promise<FileList>>;
};
}>> & Readonly<{
onChange?: ((fileList: import("./interfaces").FileItem[], fileItem: import("./interfaces").FileItem) => any) | undefined;
onError?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onProgress?: ((fileItem: import("./interfaces").FileItem, ev?: ProgressEvent<EventTarget> | undefined) => any) | undefined;
onSuccess?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onPreview?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onExceedLimit?: ((fileList: import("./interfaces").FileItem[], files: File[]) => any) | undefined;
"onUpdate:fileList"?: ((fileList: import("./interfaces").FileItem[]) => any) | undefined;
}>, {
prefixCls: string;
render: () => false | import("vue/jsx-runtime").JSX.Element;
innerSubmit: (fileItem?: import("./interfaces").FileItem | undefined) => void;
innerAbort: (fileItem: import("./interfaces").FileItem) => void;
innerUpdateFile: (id: string, file: File) => void;
innerUpload: (files: File[]) => void;
}, {}, {}, {
submit(fileItem?: import("./interfaces").FileItem | undefined): void;
abort(fileItem: import("./interfaces").FileItem): void;
updateFile(id: string, file: File): void;
upload(files: File[]): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'update:fileList': (fileList: import("./interfaces").FileItem[]) => true;
exceedLimit: (fileList: import("./interfaces").FileItem[], files: File[]) => true;
change: (fileList: import("./interfaces").FileItem[], fileItem: import("./interfaces").FileItem) => true;
progress: (fileItem: import("./interfaces").FileItem, ev?: ProgressEvent<EventTarget> | undefined) => true;
preview: (fileItem: import("./interfaces").FileItem) => true;
success: (fileItem: import("./interfaces").FileItem) => true;
error: (fileItem: import("./interfaces").FileItem) => true;
}, import("vue").PublicProps, {
disabled: boolean;
multiple: boolean;
draggable: boolean;
limit: number;
fileList: import("./interfaces").FileItem[];
defaultFileList: import("./interfaces").FileItem[];
directory: boolean;
withCredentials: boolean;
autoUpload: boolean;
showFileList: boolean;
showRemoveButton: boolean;
showRetryButton: boolean;
showCancelButton: boolean;
showUploadButton: boolean | {
showOnExceedLimit: boolean;
};
showPreviewButton: boolean;
download: boolean;
showLink: boolean;
listType: import("./interfaces").ListType;
imagePreview: boolean;
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<import("vue").ExtractPropTypes<{
fileList: {
type: import("vue").PropType<import("./interfaces").FileItem[]>;
default: undefined;
};
defaultFileList: {
type: import("vue").PropType<import("./interfaces").FileItem[]>;
default: () => never[];
};
accept: StringConstructor;
action: StringConstructor;
disabled: {
type: BooleanConstructor;
default: boolean;
};
multiple: {
type: BooleanConstructor;
default: boolean;
};
directory: {
type: BooleanConstructor;
default: boolean;
};
draggable: {
type: BooleanConstructor;
default: boolean;
};
tip: StringConstructor;
headers: {
type: import("vue").PropType<Record<string, string>>;
};
data: {
type: import("vue").PropType<Record<string, string | Blob> | ((fileItem: import("./interfaces").FileItem) => Record<string, string | Blob>)>;
};
name: {
type: import("vue").PropType<string | ((fileItem: import("./interfaces").FileItem) => string)>;
};
withCredentials: {
type: BooleanConstructor;
default: boolean;
};
customRequest: {
type: import("vue").PropType<(option: import("./interfaces").RequestOption) => import("./interfaces").UploadRequest>;
};
limit: {
type: NumberConstructor;
default: number;
};
autoUpload: {
type: BooleanConstructor;
default: boolean;
};
showFileList: {
type: BooleanConstructor;
default: boolean;
};
showRemoveButton: {
type: BooleanConstructor;
default: boolean;
};
showRetryButton: {
type: BooleanConstructor;
default: boolean;
};
showCancelButton: {
type: BooleanConstructor;
default: boolean;
};
showUploadButton: {
type: import("vue").PropType<boolean | {
showOnExceedLimit: boolean;
}>;
default: boolean;
};
showPreviewButton: {
type: BooleanConstructor;
default: boolean;
};
download: {
type: BooleanConstructor;
default: boolean;
};
showLink: {
type: BooleanConstructor;
default: boolean;
};
imageLoading: {
type: import("vue").PropType<"eager" | "lazy">;
};
listType: {
type: import("vue").PropType<import("./interfaces").ListType>;
default: string;
};
responseUrlKey: {
type: import("vue").PropType<string | ((fileItem: import("./interfaces").FileItem) => string)>;
};
customIcon: {
type: import("vue").PropType<import("./interfaces").CustomIcon>;
};
imagePreview: {
type: BooleanConstructor;
default: boolean;
};
onBeforeUpload: {
type: import("vue").PropType<(file: File) => boolean | Promise<boolean | File>>;
};
onBeforeRemove: {
type: import("vue").PropType<(fileItem: import("./interfaces").FileItem) => Promise<boolean>>;
};
onButtonClick: {
type: import("vue").PropType<(event: Event) => void | Promise<FileList>>;
};
}>> & Readonly<{
onChange?: ((fileList: import("./interfaces").FileItem[], fileItem: import("./interfaces").FileItem) => any) | undefined;
onError?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onProgress?: ((fileItem: import("./interfaces").FileItem, ev?: ProgressEvent<EventTarget> | undefined) => any) | undefined;
onSuccess?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onPreview?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onExceedLimit?: ((fileList: import("./interfaces").FileItem[], files: File[]) => any) | undefined;
"onUpdate:fileList"?: ((fileList: import("./interfaces").FileItem[]) => any) | undefined;
}>, {
prefixCls: string;
render: () => false | import("vue/jsx-runtime").JSX.Element;
innerSubmit: (fileItem?: import("./interfaces").FileItem | undefined) => void;
innerAbort: (fileItem: import("./interfaces").FileItem) => void;
innerUpdateFile: (id: string, file: File) => void;
innerUpload: (files: File[]) => void;
}, {}, {}, {
submit(fileItem?: import("./interfaces").FileItem | undefined): void;
abort(fileItem: import("./interfaces").FileItem): void;
updateFile(id: string, file: File): void;
upload(files: File[]): void;
}, {
disabled: boolean;
multiple: boolean;
draggable: boolean;
limit: number;
fileList: import("./interfaces").FileItem[];
defaultFileList: import("./interfaces").FileItem[];
directory: boolean;
withCredentials: boolean;
autoUpload: boolean;
showFileList: boolean;
showRemoveButton: boolean;
showRetryButton: boolean;
showCancelButton: boolean;
showUploadButton: boolean | {
showOnExceedLimit: boolean;
};
showPreviewButton: boolean;
download: boolean;
showLink: boolean;
listType: import("./interfaces").ListType;
imagePreview: boolean;
}>;
__isFragment?: undefined;
__isTeleport?: undefined;
__isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
fileList: {
type: import("vue").PropType<import("./interfaces").FileItem[]>;
default: undefined;
};
defaultFileList: {
type: import("vue").PropType<import("./interfaces").FileItem[]>;
default: () => never[];
};
accept: StringConstructor;
action: StringConstructor;
disabled: {
type: BooleanConstructor;
default: boolean;
};
multiple: {
type: BooleanConstructor;
default: boolean;
};
directory: {
type: BooleanConstructor;
default: boolean;
};
draggable: {
type: BooleanConstructor;
default: boolean;
};
tip: StringConstructor;
headers: {
type: import("vue").PropType<Record<string, string>>;
};
data: {
type: import("vue").PropType<Record<string, string | Blob> | ((fileItem: import("./interfaces").FileItem) => Record<string, string | Blob>)>;
};
name: {
type: import("vue").PropType<string | ((fileItem: import("./interfaces").FileItem) => string)>;
};
withCredentials: {
type: BooleanConstructor;
default: boolean;
};
customRequest: {
type: import("vue").PropType<(option: import("./interfaces").RequestOption) => import("./interfaces").UploadRequest>;
};
limit: {
type: NumberConstructor;
default: number;
};
autoUpload: {
type: BooleanConstructor;
default: boolean;
};
showFileList: {
type: BooleanConstructor;
default: boolean;
};
showRemoveButton: {
type: BooleanConstructor;
default: boolean;
};
showRetryButton: {
type: BooleanConstructor;
default: boolean;
};
showCancelButton: {
type: BooleanConstructor;
default: boolean;
};
showUploadButton: {
type: import("vue").PropType<boolean | {
showOnExceedLimit: boolean;
}>;
default: boolean;
};
showPreviewButton: {
type: BooleanConstructor;
default: boolean;
};
download: {
type: BooleanConstructor;
default: boolean;
};
showLink: {
type: BooleanConstructor;
default: boolean;
};
imageLoading: {
type: import("vue").PropType<"eager" | "lazy">;
};
listType: {
type: import("vue").PropType<import("./interfaces").ListType>;
default: string;
};
responseUrlKey: {
type: import("vue").PropType<string | ((fileItem: import("./interfaces").FileItem) => string)>;
};
customIcon: {
type: import("vue").PropType<import("./interfaces").CustomIcon>;
};
imagePreview: {
type: BooleanConstructor;
default: boolean;
};
onBeforeUpload: {
type: import("vue").PropType<(file: File) => boolean | Promise<boolean | File>>;
};
onBeforeRemove: {
type: import("vue").PropType<(fileItem: import("./interfaces").FileItem) => Promise<boolean>>;
};
onButtonClick: {
type: import("vue").PropType<(event: Event) => void | Promise<FileList>>;
};
}>> & Readonly<{
onChange?: ((fileList: import("./interfaces").FileItem[], fileItem: import("./interfaces").FileItem) => any) | undefined;
onError?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onProgress?: ((fileItem: import("./interfaces").FileItem, ev?: ProgressEvent<EventTarget> | undefined) => any) | undefined;
onSuccess?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onPreview?: ((fileItem: import("./interfaces").FileItem) => any) | undefined;
onExceedLimit?: ((fileList: import("./interfaces").FileItem[], files: File[]) => any) | undefined;
"onUpdate:fileList"?: ((fileList: import("./interfaces").FileItem[]) => any) | undefined;
}>, {
prefixCls: string;
render: () => false | import("vue/jsx-runtime").JSX.Element;
innerSubmit: (fileItem?: import("./interfaces").FileItem | undefined) => void;
innerAbort: (fileItem: import("./interfaces").FileItem) => void;
innerUpdateFile: (id: string, file: File) => void;
innerUpload: (files: File[]) => void;
}, {}, {}, {
submit(fileItem?: import("./interfaces").FileItem | undefined): void;
abort(fileItem: import("./interfaces").FileItem): void;
updateFile(id: string, file: File): void;
upload(files: File[]): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'update:fileList': (fileList: import("./interfaces").FileItem[]) => true;
exceedLimit: (fileList: import("./interfaces").FileItem[], files: File[]) => true;
change: (fileList: import("./interfaces").FileItem[], fileItem: import("./interfaces").FileItem) => true;
progress: (fileItem: import("./interfaces").FileItem, ev?: ProgressEvent<EventTarget> | undefined) => true;
preview: (fileItem: import("./interfaces").FileItem) => true;
success: (fileItem: import("./interfaces").FileItem) => true;
error: (fileItem: import("./interfaces").FileItem) => true;
}, string, {
disabled: boolean;
multiple: boolean;
draggable: boolean;
limit: number;
fileList: import("./interfaces").FileItem[];
defaultFileList: import("./interfaces").FileItem[];
directory: boolean;
withCredentials: boolean;
autoUpload: boolean;
showFileList: boolean;
showRemoveButton: boolean;
showRetryButton: boolean;
showCancelButton: boolean;
showUploadButton: boolean | {
showOnExceedLimit: boolean;
};
showPreviewButton: boolean;
download: boolean;
showLink: boolean;
listType: import("./interfaces").ListType;
imagePreview: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
install: (app: App, options?: ArcoOptions | undefined) => void;
};
export declare type UploadInstance = InstanceType<typeof _Upload>;
export type { FileStatus, FileItem, CustomIcon, RequestOption, UploadRequest, } from './interfaces';
export default Upload;