import { BitWidth } from './bit-width.js'; import { StackValue } from './stack-value.js'; interface StackPointer { stackPosition: number; isVector: boolean; presorted?: boolean; } export declare class Builder { private dedupStrings; private dedupKeys; private dedupKeyVectors; buffer: ArrayBuffer; view: DataView; readonly stack: Array; readonly stackPointers: Array; offset: number; finished: boolean; readonly stringLookup: Record; readonly keyLookup: Record; readonly keyVectorLookup: Record; readonly indirectIntLookup: Record; readonly indirectUIntLookup: Record; readonly indirectFloatLookup: Record; constructor(size?: number, dedupStrings?: boolean, dedupKeys?: boolean, dedupKeyVectors?: boolean); private align; computeOffset(newValueSize: number): number; pushInt(value: number, width: BitWidth): void; pushUInt(value: number, width: BitWidth): void; private writeInt; private writeUInt; private writeBlob; private writeString; private writeKey; private writeStackValue; private integrityCheckOnValueAddition; private integrityCheckOnKeyAddition; startVector(): void; startMap(presorted?: boolean): void; private endVector; private endMap; private sort; end(): void; private createVector; private nullStackValue; private boolStackValue; private intStackValue; private uintStackValue; private floatStackValue; private offsetStackValue; private finishBuffer; add(value: undefined | null | boolean | bigint | number | DataView | string | Array | Record | unknown): void; finish(): Uint8Array; isFinished(): boolean; addKey(key: string): void; addInt(value: number, indirect?: boolean, deduplicate?: boolean): void; addUInt(value: number, indirect?: boolean, deduplicate?: boolean): void; addFloat(value: number, indirect?: boolean, deduplicate?: boolean): void; } export {};