Interface ConstMap<T, K, V>

Allows you to convert an object with specific member types into a Map that will give you the correct type for the correct member

interface ConstMap<
    T extends Partial<Record<keyof any, any>>,
    K extends keyof any = keyof T,
    V = T[keyof T],
> {
    "[toStringTag]": string;
    size: number;
    "[iterator]"(): MapIterator<[K, V]>;
    clear(): void;
    delete(key: K): boolean;
    entries(): MapIterator<[K, V]>;
    forEach(
        callbackfn: (value: V, key: K, map: Map<K, V>) => void,
        thisArg?: any,
    ): void;
    get<TK extends string | number | symbol>(key: TK): T[TK];
    get(key: K): V;
    has(key: K | keyof T): boolean;
    keys(): MapIterator<K>;
    set<TK extends string | number | symbol>(key: TK, value: T[TK]): this;
    set(key: K, value: V): this;
    values(): MapIterator<V>;
}

Type Parameters

  • T extends Partial<Record<keyof any, any>>
  • K extends keyof any = keyof T
  • V = T[keyof T]

Hierarchy

  • Map<K, V>
    • ConstMap

Properties

"[toStringTag]": string
size: number

the number of elements in the Map.

Methods

  • Returns an iterable of entries in the map.

    Returns MapIterator<[K, V]>

  • Returns void

  • Parameters

    • key: K

    Returns boolean

    true if an element in the Map existed and has been removed, or false if the element does not exist.

  • Returns an iterable of key, value pairs for every entry in the map.

    Returns MapIterator<[K, V]>

  • Executes a provided function once per each key/value pair in the Map, in insertion order.

    Parameters

    • callbackfn: (value: V, key: K, map: Map<K, V>) => void
    • OptionalthisArg: any

    Returns void

  • Returns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.

    Type Parameters

    • TK extends string | number | symbol

    Parameters

    Returns T[TK]

    Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.

  • Returns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.

    Parameters

    • key: K

    Returns V

    Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.

  • Parameters

    • key: K | keyof T

    Returns boolean

    boolean indicating whether an element with the specified key exists or not.

  • Returns an iterable of keys in the map

    Returns MapIterator<K>

  • Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.

    Type Parameters

    • TK extends string | number | symbol

    Parameters

    Returns this

  • Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.

    Parameters

    • key: K
    • value: V

    Returns this

  • Returns an iterable of values in the map

    Returns MapIterator<V>