Avatar ·

TypeScript: cómo crear un objeto con campos mediante un inicializador, como en C#?

¡Hola a todos! Estoy migrando de C# a TypeScript y me encontré con un problema. En C# estoy acostumbrado a algo tan conveniente como los inicializadores de objetos: ```csharp var user = new User { Name = "John", Age = 30 }; ``` En TypeScript intento hacer algo similar: ```typescript interface User { name: string; age: number; } const user = new User(); // Error: 'User' refers to a type, but is being used as a value here. ``` Entiendo que una interface no es una class y no se puede instanciar. Pero entonces, ¿cómo crear correctamente un objeto con tipo `User` y llenar sus campos de inmediato? Intenté simplemente escribir: ```typescript const user: User = { name: "John", age: 30 }; ``` Esto funciona, pero me parece un workaround. En proyectos grandes con muchos campos, escribir un object literal cada vez es incómodo. ¿Hay en TypeScript una forma normal de hacer inicialización de campos, como en C#? ¿Quizás hay algún pattern o syntactic sugar? Gracias de antemano por la ayuda! <<>>

Problema: