@beenotung/tslib
Version:
utils library in Typescript
33 lines (32 loc) • 1.17 kB
TypeScript
export declare class KVMap<K, V> {
readonly [Symbol.toStringTag]: string;
private kvMap;
private vkMap;
constructor();
get size(): number;
get keySize(): number;
get valueSize(): number;
clear(): void;
delete(key: K): boolean;
deleteKey(key: K): boolean;
deleteValue(value: V): boolean;
forEach(callbackfn: (value: V, key: K, map: Map<K, V>) => void, thisArg?: any): void;
forEachKV(callbackfn: (value: V, key: K, map: Map<K, V>) => void, thisArg?: any): void;
forEachVKs(callbackfn: (keys: K[], value: V, map: Map<V, K[]>) => void, thisArg?: any): void;
get(key: K): V | undefined;
getValue(key: K): V | undefined;
getKeys(value: V): K[];
has(key: K): boolean;
hasKey(key: K): boolean;
hasValue(value: V): boolean;
set(key: K, value: V): this;
[Symbol.iterator](): IterableIterator<[K, V]>;
entries(): IterableIterator<[K, V]>;
kvEntries(): IterableIterator<[K, V]>;
vkEntries(): IterableIterator<[V, K[]]>;
keys(): IterableIterator<K>;
values(): IterableIterator<V>;
}
export declare namespace KVMap {
function fromMap<K, V>(map: Map<K, V>): KVMap<K, V>;
}