Key Remapping (as)

TypeScript 🔴 Senior

Définition

Possibilité dans un mapped type de renommer les clés via la clause as. Permet de filtrer, transformer ou préfixer les clés d'un type.

Analogie

Comme un rebranding — même produit, mais chaque nom est transforme selon une nouvelle convention.

Exemple de code

type Getters<T> = {
  [K in keyof T as `get${Capitalize<string & K>}`]: () => T[K]
};
type UserGetters = Getters<{ name: string }>;
// { getName: () => string }

Cas d'usage

Générer automatiquement des noms de getters/setters ou filtrer des clés par type.

#advanced#type-system

← → au clavier pour passer d'une fiche à l'autre