Junior — Middle
Care este rolul operatorului Infer în contextul tipurilor și cum este aplicat?
sobes.tech AI
Răspuns de la AI
Operatorul infer este utilizat în TypeScript (adesea în proiecte Node.js cu tipizare) în interiorul tipurilor condiționale pentru a extrage un tip din alt tip. Permite declararea unei variabile temporare de tip, care poate fi utilizată în interiorul tipului condițional.
Exemplu de utilizare:
type ReturnType<T> = T extends (...args: any[]) => infer R ? R : never;
function foo() { return 42; }
type FooReturn = ReturnType<typeof foo>; // FooReturn va fi number
Aici, infer R permite extragerea tipului valorii returnate de funcția T. Dacă T este o funcție, atunci R este tipul său de returnare, altfel never.
Astfel, operatorul infer ajută la crearea unor tipuri mai flexibile și generice, extrăgând tipuri interne din structuri complexe.