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.