export interface UploadFile { /** 原始文件对象 */ originFileObj?: File; /** 文件URL */ filePath?: string; /** 文件ID */ id?: string; [key: string]: any; } export interface Params { /** 文件类型 */ type: number; /** 所属端 */ path: string; /** 企业id */ corpinfoId: string; /** 外键id */ foreignKey: string; [key: string]: any; } export interface SingleUploadFileOptions { /** 要上传的文件 */ files: UploadFile[]; /** 是否单文件上传 */ single?: true; /** 上传的参数 */ params: Params; } export interface MultipleUploadFileOptions { /** 要上传的文件 */ files: UploadFile[]; /** 是否单文件上传 */ single: false; /** 上传的参数 */ params: Params; } export interface MultipleFileResponse { /** 文件列表 */ files: string[]; /** 文件ID */ id: string; [key: string]: any; } export interface UploadFileFunction { (options: SingleUploadFileOptions): Promise; (options: MultipleUploadFileOptions): Promise; } /** * 上传文件 */ export default function useUploadFile(returnType: "array"): [boolean, UploadFileFunction]; export default function useUploadFile(returnType?: "object"): { loading: boolean; uploadFile: UploadFileFunction };