@finsweet/ts-utils
Version:
Typescript utils for custom Webflow projects.
11 lines (10 loc) • 413 B
TypeScript
/**
* Converts a `Map<K, V>` type to its equivalent when performing `[...map.entries()]`.
* @example ```typescript
* const map: MapType = new Map(['key', 'value']);
* const entries = [...map.entries()]; // Same type as MapEntries<MapType>
*
* typeof entries === MapEntries<MapType>
* ```
*/
export type MapEntries<MapToConvert> = MapToConvert extends Map<infer Key, infer Value> ? [Key, Value][] : never;