Interface de Tipo Genérico em TypeScript
Agora vamos passar para a descrição da interface de tipo genérico para a chamada de uma função. Vamos definir nela a assinatura de chamada da função:
interface IFunc {
<T> (data: T): T;
}
Em seguida, vamos declarar a função myFunc e
escrever o código em seu corpo:
function myFunc <T> (data: T): T {
return data;
}
let func: IFunc = myFunc;
Depois, vamos escrever a variável func, cujo tipo
se refere a IFunc. E a própria
variável chama a função myFunc:
let func: IFunc = myFunc;
O código completo ficará assim:
interface IFunc {
<T> (data: T): T;
}
function myFunc <T> (data: T): T {
return data;
}
let func: IFunc = myFunc;
console.log(func('abcde'));
Após a execução do código, veremos:
'abcde'