import { Buffer } from 'buffer'; export declare abstract class BitStreamAbstract { /** Factor to shift between bit and byte */ protected static _BIT_BYTE_SHIFT: number; /** Number of bits in a byte */ protected static _BYTE_SIZE: number; /** position of the highest bit in a byte (count starts at 0) */ protected static _HIGHEST_BIT: number; /** * Bit mask to mask the lowest bits of a byte */ protected static _BITMASK: number[]; /** * Complementary bit mask for negative integer values */ protected static _COMPLEMENT_MASK: number[]; /** * Bit mask to mask one single bit of a byte (needed for the detection of negative numbers) */ protected static _SIGNED_MASK: number[]; /** the default buffer size */ protected static _DEFAULT_BUFFER_LENGTH: number; /** maximum number of bits which can be read/put at a time */ protected static _MAX_BIT_SIZE: number; /** The internal data buffer */ protected _buffer: Buffer; /** The buffer size in bytes */ protected _totalBufferLengthBytes: number; /** the current bit position in the internal data buffer */ protected _currentBit: number; /** Expand buffer the size of the internal data buffer to size new_length. If new_length is smaller than the current size, then nothing will be done. */ protected _expandBuffer(newLength?: number): void; /** Creates the internal data buffer of size length. */ protected _createBuffer(length: number): void; protected _getData(): Buffer; }