/** * Little-endian bit reader with bounds-safe cursor. * Reads bits LSB-first within bytes, bytes in forward order. */ export declare class BitReader { private data; private byteOffset; private bitOffset; constructor(data: Uint8Array, byteOffset?: number); /** Current byte position (after last fully consumed byte) */ get position(): number; /** Total bits consumed */ get bitsConsumed(): number; /** True if no more bits available */ get atEnd(): boolean; /** Ensure at least n bits are available. Throws if not. */ ensure(n: number): void; /** Read n bits (1-32), LSB first */ readBits(n: number): number; /** Align to next byte boundary (skip remaining bits in current byte) */ align(): void; /** Read a full byte (convenience, must be aligned or will read across boundary) */ readByte(): number; /** Slice remaining bytes from current position (after aligning) */ readRemainingBytes(): Uint8Array; }