Interfaz de tipo genérico en TypeScript

Ahora pasemos a la descripción de la interfaz de tipo genérico para la llamada a función. Definamos en ella la firma de la llamada a función:

typescriptinterface IFunc {
  <T> (data: T): T;
}

A continuación, declaremos la función myFunc y escribamos el código en su cuerpo:

typescriptfunction myFunc <T> (data: T): T {
  return data;
}

let func: IFunc = myFunc;

Luego escribamos la variable func, cuyo tipo se refiere a IFunc. Y la propia variable llama a la función myFunc:

typescriptlet func: IFunc = myFunc;

El código completo se verá así:

typescriptinterface IFunc {
  <T> (data: T): T;
}

function myFunc <T> (data: T): T {
  return data;
}

let func: IFunc = myFunc;

console.log(func('abcde'));

Después de ejecutar el código veremos:

typescript'abcde'