TypeScript · Avançado · Inglês · Técnico
variadic tuple types
Tuplas que usam spread de um parâmetro de tipo, como [...T, boolean]. Permitem concatenar e decompor tuplas no nível dos tipos e tipar funções de aridade variável.
Onde usar
É a base de tipagens de funções genéricas como concat, curry e bind. Aparece quando se precisa preservar a lista exata de argumentos de uma função recebida.
Em código
type Cat<
A extends unknown[],
B extends unknown[],
> = [...A, ...B];
type R = Cat<[1, 2], ['a']>; // [1, 2, 'a']Exemplos
Variadic tuple types let us type concat without overloads.
Variadic tuple types nos deixam tipar concat sem sobrecargas.
The generic must extend an array before you can spread it into a tuple.
O genérico precisa estender um array antes de ser espalhado em uma tupla.
Cuidado
Para espalhar T numa tupla, ele precisa ser restrito a um array ou tupla (T extends unknown[]); sem isso o compilador rejeita o spread.