// ak-req 类型定义 export type AkReqOptions = { url: string; method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' |'HEAD'; data?: UTSJSONObject | Array; headers?: UTSJSONObject; timeout?: number; contentType?: string; // 新增,支持顶级 contentType // 可选:重试设置(仅网络错误/超时触发)。默认重试 0 次 retryCount?: number; // 最大重试次数,默认 0 retryDelayMs?: number; // 首次重试延迟,默认 300ms,指数退避 }; // 上传参数类型定义 export type AkReqUploadOptions = { url: string, filePath: string, name: string, formData?: UTSJSONObject, headers?: UTSJSONObject, apikey?: string, timeout?: number, // 进度回调,0-100(注意:H5/APP 平台支持不同) onProgress?: (progress: number, transferredBytes?: number, totalBytes?: number) => void, // 可选:重试设置(仅网络错误/超时触发)。默认 0 retryCount?: number, retryDelayMs?: number }; export type AkReqResponse = { status: number; data: T | Array | null; // 支持 null headers: UTSJSONObject; error: UniError | null; total:number |null; page: number |null; limit: number |null; hasmore:boolean |null; origin: any | null; }; export class AkReqError extends Error { code: number; constructor(message: string, code: number = 0) { super(message); this.code = code; this.name = 'AkReqError'; } }