import { PropType } from 'vue'; import { Interceptor } from '../../utils/interceptor'; import { UploaderFileListItem, UploaderResultType, UploaderMaxSize, getSizeStyle } from '../../utils/helpers'; import { UploaderAfterRead, UploaderBeforeRead } from './types/upload'; declare const _sfc_main: import("vue").DefineComponent<{ /** * 上传组件类型 * * @type {String} * * select (点击选择) * * drag (支持拖动) */ type: { type: StringConstructor; validator(value: string): boolean; default: string; }; /** * 接受的上传类型 * * @type {String} */ accept: { type: StringConstructor; default: string; }; /** * 拖拽接受的上传类型后缀 * * @type {Array} */ dragAccept: { type: ArrayConstructor; }; /** * 是否支持多选文件 * * @type {Boolean} */ multiple: { type: BooleanConstructor; default: boolean; }; /** * 是否禁用 * * @type {Boolean} */ disabled: { type: BooleanConstructor; default: boolean; }; /** * 是否将上传区域设置为只读状态 * * @type {Boolean} */ readonly: { type: BooleanConstructor; default: boolean; }; /** * 图片选取模式,可选值为 camera (直接调起摄像头) * * @type {String} */ capture: { type: PropType; }; /** * 文件读取结果类型,可选值为 file text dataUrl url * * @type {String} */ resultType: { type: PropType; default: string; }; /** * 返回的数据 * * @type {Array} */ modelValue: { type: PropType; default: () => any[]; }; /** * 文件大小限制,单位为 byte * * @type {number | string | (file: File) => boolean} */ maxSize: { type: PropType; default: number; }; /** * 文件上传数量限制 * * @type {Number, String} */ maxCount: { type: (NumberConstructor | StringConstructor)[]; default: number; }; /** * 文件读取完成后的回调函数 * * @type {Boolean} */ afterRead: { type: PropType; }; /** * before-read 文件读取前的回调函数,返回 false 可终止文件读取,支持返回 Promise * * @type {Function} */ beforeRead: { type: PropType; }; /** * 标识符,可以在回调函数的第二项参数中获取 * * @type {Number, String} */ name: { type: (NumberConstructor | StringConstructor)[]; default: string; }; /** * 错误时的图标 * * @type {String} */ failedIcon: { type: StringConstructor; default: string; }; /** * 是否展示删除按钮 * * @type {Boolean} */ deletable: { type: BooleanConstructor; default: boolean; }; /** * 是否展示上传区域 * * @type {Boolean} */ showUpload: { type: BooleanConstructor; default: boolean; }; /** * 预览图和上传区域的尺寸,默认单位为 px * * @type {Number | String} */ previewSize: (NumberConstructor | StringConstructor)[]; /** * 是否在上传完成后展示预览图 * * @type {Boolean} */ previewImage: { type: BooleanConstructor; default: boolean; }; /** * 文件删除前的回调函数,返回 false 可终止文件读取, * 支持返回 Promise * * @type {Function} */ beforeDelete: { type: PropType; }; /** * 预览图片放大 * * @type {Boolean} */ previewFullImage: { type: BooleanConstructor; default: boolean; }; /** * 预览图片开始位置下标 * * @type {Boolean} */ previewImageInitialIndex: { type: NumberConstructor; default: number; }; /** * 防止body滚动 * * @type {Boolean} */ bodyOverflow: { type: BooleanConstructor; default: boolean; }; /** * 上传方向 * * @type {String} */ uploadDirection: { type: StringConstructor; validator(value: string): boolean; default: string; }; /** * 预览图裁剪模式 * * @type {String} */ imageFit: { type: StringConstructor; validator(value: string): boolean; default: string; }; }, { prefixCls: string; data: { fileList: { url?: string; file?: { readonly lastModified: number; readonly name: string; readonly webkitRelativePath: string; readonly size: number; readonly type: string; arrayBuffer: () => Promise; slice: (start?: number, end?: number, contentType?: string) => Blob; stream: () => ReadableStream; text: () => Promise; }; content?: string; status?: "" | "done" | "uploading" | "failed"; message?: string; beforeDelete?: import("../../utils/helpers").Interceptor; }[]; dragOver: boolean; imagePreview: boolean; imagePreviewList: string[]; imagePreviewInitialIndex: number; }; input: any; inputWrapClasses: import("vue").ComputedRef<{ [x: string]: boolean; }[]>; inputContentClasses: import("vue").ComputedRef<{ [x: string]: boolean; }[]>; renderUpload: import("vue").ComputedRef; handleClickInput: () => void; handleDrag: (e: DragEvent) => void; handleDragOver: () => void; handleDragleave: () => void; handleChange: (event: any) => void; handleRemove: (file: File, index: number) => void; handlePreview: (file: File, index: number) => void; uploadFiles: (files: File | File[]) => void; getSizeStyle: typeof getSizeStyle; handleClosePreview: () => void; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "on-oversize" | "on-delete" | "on-preview" | "on-drag-upload-error" | "on-close-preview")[], "update:modelValue" | "on-oversize" | "on-delete" | "on-preview" | "on-drag-upload-error" | "on-close-preview", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly; }; /** * 文件读取结果类型,可选值为 file text dataUrl url * * @type {String} */ resultType: { type: PropType; default: string; }; /** * 返回的数据 * * @type {Array} */ modelValue: { type: PropType; default: () => any[]; }; /** * 文件大小限制,单位为 byte * * @type {number | string | (file: File) => boolean} */ maxSize: { type: PropType; default: number; }; /** * 文件上传数量限制 * * @type {Number, String} */ maxCount: { type: (NumberConstructor | StringConstructor)[]; default: number; }; /** * 文件读取完成后的回调函数 * * @type {Boolean} */ afterRead: { type: PropType; }; /** * before-read 文件读取前的回调函数,返回 false 可终止文件读取,支持返回 Promise * * @type {Function} */ beforeRead: { type: PropType; }; /** * 标识符,可以在回调函数的第二项参数中获取 * * @type {Number, String} */ name: { type: (NumberConstructor | StringConstructor)[]; default: string; }; /** * 错误时的图标 * * @type {String} */ failedIcon: { type: StringConstructor; default: string; }; /** * 是否展示删除按钮 * * @type {Boolean} */ deletable: { type: BooleanConstructor; default: boolean; }; /** * 是否展示上传区域 * * @type {Boolean} */ showUpload: { type: BooleanConstructor; default: boolean; }; /** * 预览图和上传区域的尺寸,默认单位为 px * * @type {Number | String} */ previewSize: (NumberConstructor | StringConstructor)[]; /** * 是否在上传完成后展示预览图 * * @type {Boolean} */ previewImage: { type: BooleanConstructor; default: boolean; }; /** * 文件删除前的回调函数,返回 false 可终止文件读取, * 支持返回 Promise * * @type {Function} */ beforeDelete: { type: PropType; }; /** * 预览图片放大 * * @type {Boolean} */ previewFullImage: { type: BooleanConstructor; default: boolean; }; /** * 预览图片开始位置下标 * * @type {Boolean} */ previewImageInitialIndex: { type: NumberConstructor; default: number; }; /** * 防止body滚动 * * @type {Boolean} */ bodyOverflow: { type: BooleanConstructor; default: boolean; }; /** * 上传方向 * * @type {String} */ uploadDirection: { type: StringConstructor; validator(value: string): boolean; default: string; }; /** * 预览图裁剪模式 * * @type {String} */ imageFit: { type: StringConstructor; validator(value: string): boolean; default: string; }; }>> & { "onUpdate:modelValue"?: (...args: any[]) => any; "onOn-oversize"?: (...args: any[]) => any; "onOn-delete"?: (...args: any[]) => any; "onOn-preview"?: (...args: any[]) => any; "onOn-drag-upload-error"?: (...args: any[]) => any; "onOn-close-preview"?: (...args: any[]) => any; }, { name: string | number; type: string; modelValue: UploaderFileListItem[]; disabled: boolean; readonly: boolean; multiple: boolean; failedIcon: string; deletable: boolean; previewFullImage: boolean; imageFit: string; bodyOverflow: boolean; accept: string; resultType: UploaderResultType; maxSize: UploaderMaxSize; maxCount: string | number; showUpload: boolean; previewImage: boolean; previewImageInitialIndex: number; uploadDirection: string; }>; export default _sfc_main;