Avatar ·

Cómo establecer una cadena específica en una interfaz de TypeScript (tipo literal)

¡Hola a todos! Acabo de empezar a aprender TypeScript y me encontré con un problema. Necesito crear una interfaz para un objeto que tiene un campo `status`. Este campo debe aceptar valores estrictamente definidos, por ejemplo: `"active"`, `"inactive"` o `"pending"`. Si se intenta asignar cualquier otra cadena, debería producirse un error de compilación. Probé hacerlo así: ```typescript interface UserStatus { status: string; } ``` Pero esto no sirve, porque `string` permite cualquier cadena. Quiero que TS verifique que el valor del campo `status` sea una de las tres cadenas posibles. Intenté usar `enum`, pero me dijeron que se puede hacer más simple — con tipos literales. ¿Cómo describir correctamente esa interfaz? ¿Y se puede hacer que el IDE sugiera las opciones posibles al escribir? Ejemplo de lo que quiero: ```typescript const user1: User = { status: "active" }; // Ok const user2: User = { status: "deleted" }; // ¡Error! ``` Por favor, indíquenme cómo implementar esto.