TypeScript · Avançado · Inglês · Técnico
key remapping
Cláusula as dentro de um mapped type, como [K in keyof T as Novo<K>], que renomeia ou filtra chaves. Mapear uma chave para never a remove do tipo resultante.
Onde usar
Permite gerar tipos como getters a partir de campos, em que nome vira getNome. Também filtra propriedades por tipo, mantendo, por exemplo, só as que são funções.
Em código
type Getters<T> = {
[K in keyof T & string
as `get${Capitalize<K>}`]: () => T[K];
};
type G = Getters<{ nome: string }>;
// G = { getNome: () => string }Exemplos
Use key remapping to turn each field into a getter.
Use key remapping para transformar cada campo em um getter.
Mapping the key to never filters that property out.
Mapear a chave para never filtra aquela propriedade.
Cuidado
O as do remapeamento vive dentro do mapped type e não tem relação com a asserção de tipo as usada em valores.