import type { Comparator, HeadlessNode, ITreeNode, SonicMap } from '../types'; import type { IRbTreeNode } from './types'; export declare class RbNode implements IRbTreeNode { readonly k: K; v: V; p: RbNode | undefined; l: RbNode | undefined; r: RbNode | undefined; b: boolean; constructor(k: K, v: V); } export declare const RbMap: { new (comparator?: Comparator | undefined): { min: ITreeNode | undefined; root: ITreeNode | undefined; max: ITreeNode | undefined; readonly comparator: Comparator; set(k: K, v: V): import("../types").SonicNodePublicReference>; find(k: K): import("../types").SonicNodePublicReference> | undefined; get(k: K): V | undefined; del(k: K): boolean; clear(): void; has(k: K): boolean; _size: number; size(): number; isEmpty(): boolean; getOrNextLower(k: K): ITreeNode | undefined; forEach(fn: (node: ITreeNode) => void): void; first(): ITreeNode | undefined; last(): ITreeNode | undefined; readonly next: (curr: N) => N | undefined; iterator0(): () => ITreeNode | undefined; iterator(): Iterator, any, undefined>; entries(): IterableIterator>; toString(tab: string): string; }; }; export type RbMap = SonicMap>;