import { OrderedMapIterator } from './SortedMapIterator'; import { TreeNode } from './SortedMapNode'; import { TreeNodeEnableIndex } from './SortedMapNode'; import type { Comparator, SonicMap, SonicNodePublicReference } from '../types'; export declare class SortedMap implements SonicMap> { enableIndex: boolean; protected _header: TreeNode | TreeNodeEnableIndex; protected _root: TreeNode | undefined; protected readonly _TreeNodeClass: typeof TreeNode | typeof TreeNodeEnableIndex; constructor(comparator?: Comparator, enableIndex?: boolean); protected _length: number; get length(): number; empty(): boolean; protected _lowerBound(curNode: TreeNode | undefined, key: K): TreeNode; protected _upperBound(curNode: TreeNode | undefined, key: K): TreeNode | TreeNodeEnableIndex; protected _reverseLowerBound(curNode: TreeNode | undefined, key: K): TreeNode; protected _reverseUpperBound(curNode: TreeNode | undefined, key: K): TreeNode | TreeNodeEnableIndex; protected _eraseNodeSelfBalance(curNode: TreeNode): void; protected _eraseNode(curNode: TreeNode): void; protected _insertNodeSelfBalance(curNode: TreeNode): void; protected _set(key: K, value: V, hint?: OrderedMapIterator): number; protected _getTreeNodeByKey(curNode: TreeNode | undefined, key: K): TreeNode; updateKeyByIterator(iter: OrderedMapIterator, key: K): boolean; eraseElementByPos(pos: number): void; eraseElementByKey(key: K): boolean; eraseElementByIterator(iter: OrderedMapIterator): OrderedMapIterator; getHeight(): number; begin(): OrderedMapIterator; end(): OrderedMapIterator; rBegin(): OrderedMapIterator; rEnd(): OrderedMapIterator; front(): [K, V] | undefined; back(): [K, V] | undefined; lowerBound(key: K): OrderedMapIterator; upperBound(key: K): OrderedMapIterator; reverseLowerBound(key: K): OrderedMapIterator; reverseUpperBound(key: K): OrderedMapIterator; setElement(key: K, value: V, hint?: OrderedMapIterator): number; getElementByPos(pos: number): void; getElementByKey(key: K): V; min: TreeNode | undefined; root: TreeNode | undefined; max: TreeNode | undefined; readonly comparator: Comparator; set(k: K, v: V): SonicNodePublicReference>; find(k: K): 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): TreeNode | undefined; forEach(fn: (node: TreeNode) => void): void; first(): TreeNode | undefined; last(): TreeNode | undefined; readonly next: (curr: N) => N | undefined; iterator0(): () => undefined | TreeNode; iterator(): Iterator>; entries(): IterableIterator>; toString(tab: string): string; }