export interface Node { key: K; value: V; used?: number; previous?: Node; next?: Node; } export declare abstract class SizedMap implements Map { readonly limit: number; protected readonly map: Map>; constructor(limit: number); abstract has(key: K): boolean; abstract get(key: K, _default?: V): V | undefined; abstract set(key: K, value: V): this; delete(key: K): boolean; keys(): IterableIterator; values(): IterableIterator; entries(): IterableIterator<[K, V]>; isFull(): boolean; clear(): void; readonly [Symbol.toStringTag]: string; [Symbol.iterator](): IterableIterator<[K, V]>; forEach(cb: (value: V, key: K, map: Map) => void, thisArg?: any): void; get size(): number; }