import { DataBuffer } from "../DataBuffer"; import { HeaderData } from "./Header"; import { SubHeaderData } from "./SubHeader"; export declare type Decompressor = (data: Uint8Array) => Uint8Array; export declare type Compressor = (data: Uint8Array) => Uint8Array; export interface PackedData { header: HeaderData; subHeader: SubHeaderData; records: T; } export declare enum RecordProcessState { Success = 0, NeedMore = 1, Complete = 2, Error = 3 } export interface AbstractRecordsConverter { records: T; parse: (data: DataBuffer) => RecordProcessState; assembly: (dataCallback: (dataPart: Uint8Array) => void) => void; } export declare abstract class PackedConverter { protected abstract get recordsConverter(): AbstractRecordsConverter; private decompress; private compress?; constructor(decompressor: Decompressor, compressor?: Compressor); assembly(data: PackedData): Uint8Array; parse(bytebuffer: DataBuffer): PackedData; private appendAndCompact; }