/** * State Encoding and Decoding * 使用 MessagePack 进行高性能二进制编码 */ import { CompressionStrategy } from '../compression/CompressionStrategy.js'; import type { Patch, EncodedState, EncodeOptions, DecodeOptions } from '../types.js'; /** * StateEncoder - 状态编码器 */ export declare class StateEncoder { private compressionStrategy; constructor(compressionStrategy?: CompressionStrategy); /** * 编码完整状态 */ encodeFull(state: any, options?: EncodeOptions): EncodedState; /** * 编码增量变化 */ encodeDelta(patches: Patch[], options?: EncodeOptions): EncodedState; /** * 获取压缩统计 */ getCompressionStats(): { compressionRate: number; averageSaving: number; totalAttempts: number; totalCompressed: number; totalSaved: number; averageRatio: number; }; /** * 重置压缩统计 */ resetCompressionStats(): void; /** * 序列化对象 */ private serializeObject; /** * 序列化值 */ private serializeValue; } /** * StateDecoder - 状态解码器 */ export declare class StateDecoder { private compressionStrategy; constructor(compressionStrategy?: CompressionStrategy); /** * 解码二进制数据 */ decode(data: Uint8Array, options?: DecodeOptions): T; /** * 应用 Patches 到对象 */ applyPatches(target: any, patches: Patch[]): void; /** * 应用单个 Patch */ private applyPatch; /** * 反序列化对象 */ private deserializeObject; } //# sourceMappingURL=index.d.ts.map