Sobes.tech
Junior — Middle

¿Cuál es el papel del operador Infer en el contexto de los tipos y cómo se aplica?

sobes.tech AI

Respuesta de la IA

El operador infer se usa en TypeScript (a menudo en proyectos de Node.js con tipado) dentro de tipos condicionales para extraer un tipo de otro tipo. Permite declarar una variable temporal de tipo, que se puede usar dentro del tipo condicional.

Ejemplo de uso:

type ReturnType<T> = T extends (...args: any[]) => infer R ? R : never;

function foo() { return 42; }

type FooReturn = ReturnType<typeof foo>; // FooReturn será number

Aquí, infer R permite extraer el tipo del valor de retorno de la función T. Si T es una función, entonces R es su tipo de retorno, de lo contrario, never.

De esta forma, el operador infer ayuda a crear tipos más flexibles y genéricos, extrayendo tipos internos de estructuras complejas.