Avatar ·

Verificación de tipo por interfaz en TypeScript: ¿cómo determinar si un objeto cumple con una interfaz?

¡Hola a todos! Acabo de empezar a aprender TypeScript y me encontré con un problema. Tengo una interfaz `User` y una función que recibe datos de una API. Necesito verificar si el objeto obtenido cumple con esta interfaz. Aquí está mi código: ```typescript interface User { id: number; name: string; email: string; } function processData(data: unknown) { // ¿Cómo verificar que data es un User? if (data instanceof User) { // Error: 'User' refers only to a type, but is being used as a value here console.log(data.name); } } ``` Entiendo que `instanceof` no funciona con interfaces porque se borran en tiempo de ejecución. Pero entonces, ¿cómo verificar que el objeto contiene todos los campos necesarios con los tipos correctos? He visto que se pueden usar type guards personalizados, pero no termino de entender cómo escribirlos correctamente para interfaces complejas. ¿Existe algún enfoque estándar o mejores prácticas para verificar tipos en tiempo de ejecución? Consejo