export interface InnerMap { [key: string]: V; } export declare type ToKeyFunction = (value: V) => string; export declare class SetMultimap { private readonly keyToKey; private readonly valueToKey; private backing; constructor(keyToKey: ToKeyFunction, valueToKey: ToKeyFunction); put(key: K, value: V): void; putAll(key: K, values: ReadonlyArray): void; get(key: K): ReadonlyArray; delete(key: K): boolean; filter(key: K, predicate: (value: V) => boolean): void; containsKey(key: K): boolean; }