Avatar ·

¿Se pueden extender (heredar) tipos en TypeScript?

¡Hola a todos! Acabo de empezar a aprender TypeScript y me encontré con un problema. Tengo una interfaz para datos básicos de usuario: ```typescript interface User { id: number; name: string; email: string; } ``` Ahora necesito crear un tipo para administrador, que tenga todos los campos de un usuario normal, pero además un rol (role) y nivel de acceso (permissions). Sé que las interfaces se pueden extender con `extends`, pero ¿funciona esto para tipos declarados con `type`? Probé hacer esto: ```typescript type User = { id: number; name: string; email: string; } type Admin = User & { role: string; permissions: string[]; } ``` Funcionó, pero me dijeron que esto no es exactamente «extensión», sino intersección de tipos. ¿Cuál es la diferencia? ¿Y hay alguna forma de hacer herencia clásica para tipos, como en las interfaces? ¡Gracias de antemano por la ayuda! <<>>

Formas principales de extender tipos en TypeScript

Sí, los tipos en TypeScript se pueden extender