/** * 图片智能压缩模块 * 使用 sharp 库对图片进行高质量压缩,减少 Base64 传输体积 */ /** * 压缩配置选项 */ export interface CompressionOptions { maxWidth: number; maxHeight: number; quality: number; format: 'jpeg' | 'webp'; } /** * 压缩结果元数据 */ export interface CompressionMetadata { originalSize: number; compressedSize: number; compressionRatio: number; width: number; height: number; format: string; } /** * 压缩结果 */ export interface CompressionResult { compressed: Buffer; metadata: CompressionMetadata; } /** * 默认压缩配置(针对 MCP 1MB 限制优化) * 调整后 3 张图片总大小约 450KB,安全通过 MCP 传输 */ export declare const DEFAULT_COMPRESSION_OPTIONS: CompressionOptions; /** * 图片类型检测结果 */ export type ImageType = 'text-heavy' | 'photo' | 'mixed'; /** * 智能检测图片类型(未来可扩展为基于内容的检测) * * @param buffer 图片二进制数据 * @returns 图片类型 */ export declare function detectImageType(buffer: Buffer): ImageType; /** * 根据图片类型获取推荐的压缩配置 * * @param imageType 图片类型 * @param baseOptions 基础配置 * @returns 优化后的压缩配置 */ export declare function getOptimalCompressionOptions(imageType: ImageType, baseOptions?: Partial): CompressionOptions; /** * 压缩图片 * * @param originalBuffer 原始图片 Buffer * @param options 压缩选项 * @returns 压缩结果 */ export declare function compressImage(originalBuffer: Buffer, options?: Partial): Promise; /** * 批量压缩图片 * * @param buffers 图片 Buffer 数组 * @param options 压缩选项 * @returns 压缩结果数组 */ export declare function compressImages(buffers: Buffer[], options?: Partial): Promise; /** * 智能压缩(自动降级策略) * 如果压缩后仍然超过目标大小,会自动降低质量重新压缩 * * @param originalBuffer 原始图片 * @param targetSizeBytes 目标大小(字节) * @param options 基础压缩选项 * @returns 压缩结果 */ export declare function smartCompress(originalBuffer: Buffer, targetSizeBytes?: number, // 默认目标 500KB options?: Partial): Promise; //# sourceMappingURL=imageCompressor.d.ts.map