/// import { IHunk } from "./hunk"; export interface ISparseBuffer { hunks: IHunk[]; length: number; minimum: number | undefined; maximum: number | undefined; getOnBitPositions(skip?: number, take?: number): IPositionsResult; or(source: Buffer | IHunk | ISparseBuffer, offset?: number): ISparseBuffer; and(source: Buffer | IHunk | ISparseBuffer, offset?: number): ISparseBuffer; dump(): number[]; at(index: number): number | undefined; append(source: Buffer | IHunk | ISparseBuffer): ISparseBuffer; } export interface IPositionsResult { values: number[]; total: number; } export declare class SparseBuffer implements ISparseBuffer { private _size; readonly length: number; readonly hunks: IHunk[]; minimum: number | undefined; maximum: number | undefined; ordered: boolean; private _hunks; constructor(bytes?: Buffer); or(source: Buffer | IHunk | ISparseBuffer, offset?: number): ISparseBuffer; append(source: Buffer | IHunk | ISparseBuffer): ISparseBuffer; not(source: Buffer | IHunk | ISparseBuffer, offset?: number): ISparseBuffer; and(source: Buffer | IHunk | ISparseBuffer, offset?: number): ISparseBuffer; getOnBitPositions(skip?: number, take?: number, min?: number, max?: number): IPositionsResult; dump(): number[]; at(index: number): number | undefined; private _consume; private _consumeBuffer; private _insertHunkPart; private _appendRemainingBytes; private _addHunk; private _findIntersectingHunksFor; private _recalculateLength; private _findHunkAt; } export declare class SparseBufferWithPaging extends SparseBuffer { skip: number | undefined; take: number | undefined; constructor(bytes?: Buffer); getOnBitPositions(skip?: number, take?: number, min?: number, max?: number): IPositionsResult; clearPaging(): void; }