TypeScriptда умумий типинг интерфеси

Энди функцияни чақириш учун умумий типинг интерфесини тавсифлашга ўтамиз. Унда функцияни чақириш имзосини белгилаймиз:

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

Кейин myFunc функциясини э'лон қилиб, унинг танисида код ёзамиз:

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

let func: IFunc = myFunc;

Сўнг IFuncга ишора қиладиган типи белгиланган func ўзгарувчисини ёзамиз. Ўзгарувчи ўзи myFunc функциясини чақиради:

typescriptlet func: IFunc = myFunc;

Тулик код шундай кўринади:

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

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

let func: IFunc = myFunc;

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

Кодни бажаришдан сўнг биз курамиз:

typescript'abcde'