/** * A map that has a type for its keys and values */ export declare class TypedMap> implements Iterable { #private; constructor(entries?: Iterable); [Symbol.iterator](): Iterator; /** * * Sets the value for the key in the map * * @param key - The key to set the value for * @param value - The value to set */ set(key: K, value: Extract[1]): void; /** * * Returns the value associated to the key, or undefined if there is none * * @param key - The key to get the value for * @returns - The value associated to the key, or undefined if there is none */ get(key: K): Extract[1] | undefined; /** * Returns an iterable of key, value pairs for every entry in the map. * * @returns - An iterable of key, value pairs for every entry in the map */ entries(): IterableIterator; /** * Returns an iterable of keys in the map * * @returns - An iterable of keys in the map */ keys(): IterableIterator; /** * Returns an iterable of values in the map * * @returns - An iterable of values in the map */ values(): IterableIterator; /** * Clears the map */ clear(): void; /** * Deletes the entry for the given key * * @param key - The key to delete * @returns Whether the key was deleted */ delete(key: K): boolean; /** * * Checks if the map has an entry for the given key * * @param key - The key to check for * @returns Whether the map has an entry for the given key */ has(key: K): boolean; /** * Returns the number of entries in the map */ get size(): number; /** * Returns the internal ES map */ get esMap(): Map; static wrap>(map: TypedMap | Iterable | undefined): TypedMap; }