export interface UploadFile { /** 原始文件对象 */ originFileObj?: File; [key: string]: any; } export interface SingleUploadFileOptions { /** 要上传的文件 */ files: UploadFile; /** 是否单文件上传 */ single?: true; /** 上传的参数 */ params?: Record; } export interface MultipleUploadFileOptions { /** 要上传的文件 */ files: UploadFile[]; /** 是否单文件上传 */ single: false; /** 上传的参数 */ params?: Record; } export interface MultipleFileResponse { /** 文件列表 */ files: string[]; /** 文件ID */ id: string; [key: string]: any; } export interface UploadFileFunction { (options: SingleUploadFileOptions): Promise; (options: MultipleUploadFileOptions): Promise; } /** * 上传文件 */ export default function useUploadFile(): [boolean, UploadFileFunction];