/** * Utility functions for SeaVerse Utils SDK */ import { ValidationResult, ValidationRules, UtilsAPIError } from './models.js'; /** * 验证文件 * @param file - 要验证的文件 * @param rules - 验证规则 * @returns 验证结果 */ export declare function validateFile(file: File, rules?: ValidationRules): ValidationResult; /** * 格式化字节数为可读字符串 * @param bytes - 字节数 * @param decimals - 小数位数 * @returns 格式化后的字符串 */ export declare function formatBytes(bytes: number, decimals?: number): string; /** * 检查文件是否为图片 * @param file - 文件对象 * @returns 是否为图片 */ export declare function isImageFile(file: File): boolean; /** * 获取文件扩展名 * @param fileName - 文件名 * @returns 扩展名(不包含点) */ export declare function getFileExtension(fileName: string): string; /** * 生成唯一 ID * @returns 唯一 ID */ export declare function generateId(): string; /** * 创建上传错误 * @param code - 错误码 * @param message - 错误消息 * @param statusCode - HTTP 状态码 * @param response - 响应数据 * @returns UtilsAPIError 实例 */ export declare function createUploadError(code: string, message: string, statusCode?: number, response?: any): UtilsAPIError; /** * 处理 Axios 错误 * @param error - Axios 错误对象 * @returns UtilsAPIError 实例 */ export declare function handleAxiosError(error: any): UtilsAPIError; /** * 进度追踪器 */ export declare class ProgressTracker { private startTime; private lastUpdateTime; private lastLoadedBytes; constructor(); /** * 计算上传速度和剩余时间 * @param loaded - 已上传字节数 * @param total - 总字节数 * @returns 速度和剩余时间 */ calculate(loaded: number, total: number): { speed: number; remainingTime: number; }; /** * 获取总耗时(毫秒) */ getTotalDuration(): number; } //# sourceMappingURL=utils.d.ts.map