UNPKG

yanzhen-design-vue

Version:

48 lines (47 loc) 1.74 kB
import { FileType as AFileType, UploadFile as AUploadFile } from 'ant-design-vue/es/upload/interface'; import { isImageUrl as isAntImageUrl } from 'ant-design-vue/es/upload/utils'; import { RcFile } from 'ant-design-vue/es/vc-upload/interface'; import { Ref } from 'vue'; export interface UploadFileOriginInfo { fileIcon?: string; fileName?: string; fileAddress?: string; url?: string; name?: string; createUserName?: string; insertTimeForHis?: string; [key: string]: any; } export type UploadRequestKeyType = 'getPrivateFileUrls' | 'previewFile' | 'customRequest'; export type UploadRequestMapType = { [k in UploadRequestKeyType]: Promise<any>; }; export type UploadFile<T = any> = AFileType | UploadFileType<T>; export type UploadFileList<T = any> = string | UploadFile<T>; export type UploadFiles<T> = T | T[]; export interface UploadFileType<T = any> extends AUploadFile<T> { originInfo?: UploadFileOriginInfo; isImage?: boolean; } export interface UploadFileRuleValue<T = any> { file: UploadFile<T> | Exclude<File | Blob | boolean, File | boolean> | RcFile; fileList?: UploadFileList<T>[]; selectFileList?: UploadFileList<T>[]; isImageType?: boolean; } export interface UploadFileRule { message: string | Ref<string>; validator: (rule: UploadFileRule, value: UploadFileRuleValue) => boolean; } export interface UploadFileInfoOptions { actionType?: 'set' | 'get'; isImageUrl?: typeof isAntImageUrl; percent?: Record<string, number>; originInfos?: Record<string, Partial<UploadFileOriginInfo>>; map?: Record<UploadFileType['uid'], UploadFileType>; } export interface MaxSizeErrorType { type: string; useDocMsg: boolean; maxSize: number; }