/** * Mnemonist FuzzyMultiMap Typings * ================================ */ type HashFunction = (key: any) => K; type HashFunctionsTuple = [HashFunction, HashFunction]; type FuzzyMultiMapContainer = ArrayConstructor | SetConstructor; export default class FuzzyMultiMap implements Iterable { // Members dimension: number; size: number; // Constructor constructor(hashFunction: HashFunction, Container?: FuzzyMultiMapContainer); constructor(hashFunctions: HashFunctionsTuple, Container?: FuzzyMultiMapContainer); // Methods clear(): void; add(value: V): this; set(key: K, value: V): this; get(key: any): Array | Set | undefined; has(key: any): boolean; forEach(callback: (value: V, key: V) => void, scope?: any): void; values(): IterableIterator; [Symbol.iterator](): IterableIterator; inspect(): any; // Statics static from( iterable: Iterable<[I, J]> | {[key: string]: J}, hashFunction: HashFunction | HashFunctionsTuple, Container?: FuzzyMultiMapContainer ): FuzzyMultiMap; }