/** * 上传文件记录 */ export interface UploadRecord { /** 文件名 */ name: string; /** 文件大小 */ size: string; /** 上传进度 0-100 */ progress: number; /** 文件状态 */ status?: 'uploading' | 'success' | 'error'; } /** * YcDownloadDialog 组件属性 */ export interface YcDownloadDialogProps { /** 对话框标题 */ title?: string; /** 是否显示对话框 */ modelValue?: boolean; /** 模板下载链接 */ templateUrl?: string; /** 模板按钮文字 */ templateText?: string; /** 上传接口地址 */ uploadAction?: string; /** 上传记录获取函数 */ fetchRecords?: () => Promise<{ data: UploadRecord[]; total: number; }>; /** 上传成功回调 */ onUploadSuccess?: (response: any, file: any) => void; /** 上传失败回调 */ onUploadError?: (error: any, file: any) => void; }