/** Cursor-based reader over a byte buffer with a configurable default endianness. */ export declare class BinaryReader { readonly bytes: Uint8Array; readonly view: DataView; le: boolean; pos: number; constructor(bytes: Uint8Array, littleEndian?: boolean, offset?: number); get length(): number; remaining(): number; tell(): number; seek(pos: number): void; skip(n: number): void; u8(): number; i8(): number; u16(le?: boolean): number; i16(le?: boolean): number; u32(le?: boolean): number; i32(le?: boolean): number; u64(le?: boolean): bigint; i64(le?: boolean): bigint; f32(le?: boolean): number; f64(le?: boolean): number; /** Read `n` bytes as a copy. */ bytes_(n: number): Uint8Array; /** Read `n` bytes as a view (no copy). */ view_(n: number): Uint8Array; } /** Growable binary writer with a configurable default endianness. */ export declare class BinaryWriter { private buf; private dv; private len; le: boolean; constructor(littleEndian?: boolean, capacity?: number); get length(): number; private ensure; u8(v: number): this; i8(v: number): this; u16(v: number, le?: boolean): this; i16(v: number, le?: boolean): this; u32(v: number, le?: boolean): this; i32(v: number, le?: boolean): this; u64(v: bigint, le?: boolean): this; i64(v: bigint, le?: boolean): this; f32(v: number, le?: boolean): this; f64(v: number, le?: boolean): this; bytes(data: Uint8Array): this; zeros(n: number): this; /** Pad with byte `b` up to total length `n` from current position marker `from`. */ fill(b: number, n: number): this; /** Overwrite bytes at absolute position (must already be within written range). */ patchU32(at: number, v: number, le?: boolean): void; patchBytes(at: number, data: Uint8Array): void; finish(): Uint8Array; }