import { WriteCursor, ReadCursor, BinaryTreeOptions } from './types';
export declare function createWriteCursor(options?: BinaryTreeOptions): WriteCursor;
export declare function ensureCapacity(cursor: WriteCursor, bytesNeeded: number, options?: BinaryTreeOptions): WriteCursor;
export declare function writeUint8(cursor: WriteCursor, value: number): WriteCursor;
export declare function writeUint32(cursor: WriteCursor, value: number): WriteCursor;
export declare function writeFloat64(cursor: WriteCursor, value: number): WriteCursor;
export declare function writeString(cursor: WriteCursor, value: string): {
    cursor: WriteCursor;
    byteLength: number;
};
export declare function writeBytes(cursor: WriteCursor, bytes: Uint8Array): WriteCursor;
export declare function writeHeader(cursor: WriteCursor, rootOffset: number): WriteCursor;
export declare function finalizeBuffer(cursor: WriteCursor): ArrayBuffer;
export declare function createReadCursor(buffer: ArrayBuffer, offset?: number): ReadCursor;
export declare function readUint8(cursor: ReadCursor, offset?: number): number;
export declare function readUint32(cursor: ReadCursor, offset?: number): number;
export declare function readFloat64(cursor: ReadCursor, offset?: number): number;
export declare function readString(cursor: ReadCursor, offset: number, length: number): string;
export declare function readHeader(cursor: ReadCursor): {
    magic: number;
    version: number;
    rootOffset: number;
    totalSize: number;
} | null;
export declare function compareStrings(a: string, b: string): number;
export declare function binarySearchKey(cursor: ReadCursor, entriesOffset: number, keyCount: number, targetKey: string): number;
//# sourceMappingURL=buffer-context.d.ts.map