/** * Mnemonist MultiMap Typings * =========================== */ interface MultiMap = V[]> extends Iterable<[K, V]> { // Members dimension: number; size: number; // Methods clear(): void; set(key: K, value: V): this; delete(key: K): boolean; remove(key: K, value: V): boolean; has(key: K): boolean; get(key: K): C | undefined; multiplicity(key: K): number; forEach(callback: (value: V, key: K, map: this) => void, scope?: any): void; forEachAssociation(callback: (value: C, key: K, map: this) => void, scope?: any): void; keys(): IterableIterator; values(): IterableIterator; entries(): IterableIterator<[K, V]>; containers(): IterableIterator; associations(): IterableIterator<[K, C]>; [Symbol.iterator](): IterableIterator<[K, V]>; inspect(): any; toJSON(): any; } interface MultiMapConstructor { new (container: SetConstructor): MultiMap>; new (container?: ArrayConstructor): MultiMap; from( iterable: Iterable<[K, V]> | {[key: string]: V}, Container: SetConstructor ): MultiMap>; from( iterable: Iterable<[K, V]> | {[key: string]: V}, Container?: ArrayConstructor ): MultiMap; } declare const MultiMap: MultiMapConstructor; export default MultiMap;