import type { CnUploadFileStatusType } from './upload-file-status-type'; import type { UploadProgressEvent } from './request'; import type { ICnOSSData } from './oss-data'; export interface ICnOSSUploadFileResponse { url: string; downloadUrl?: string; } /** 文件对象 */ export interface ICnOSSUploadFile { /** * oss上传key * 通过OSS上传时该值存在 */ key: string; /** * 文件名 */ name?: string; /** * 图片上传组件预览地址 * 在图片上传组件预览场景中使用,一般尺寸较小,加快预览速度 */ previewUrl?: string; /** * 文件 url */ url?: string; /** * 下载链接,如果不存在使用 url 作为兜底 */ downloadUrl?: string; /** * 文件字节数 */ size?: number; /** * 上传状态,不同状态展示颜色也会有所不同 */ status?: CnUploadFileStatusType; } /** 文件对象 */ export interface ICnUploadFile extends ICnOSSUploadFile { /** * 文件的MIME类型 */ type?: string; /** * 上传进度 */ percent?: number; /** * 最新上传时间 */ lastModified?: number; /** * 原始文件的File对象实例 */ originFile?: File; /** * 上传过程中临时生成的url */ objectUrl?: string; /** * 凭证接口返回的数据 */ response?: ICnOSSData; xhr?: XMLHttpRequest; event?: UploadProgressEvent; /** * 错误信息 */ error?: Error; /** * 错误信息,预览态不展示错误信息 */ errorMsg?: string; }