Avatar ·

Como converter um objeto JSON em uma instância da classe TypeScript?

Olá a todos! Sou novo em TypeScript e encontrei um problema ao trabalhar com dados JSON. Tenho uma classe User com campos e métodos: ```typescript class User { name: string; age: number; email: string; constructor(name: string, age: number, email: string) { this.name = name; this.age = age; this.email = email; } isAdult(): boolean { return this.age >= 18; } } ``` Quando recebo dados do servidor no formato JSON, por exemplo via fetch: ```typescript const response = await fetch('/api/user'); const jsonData = await response.json(); // jsonData = { name: 'Ivan', age: 25, email: 'ivan@example.com' } ``` Tento fazer o cast para o tipo User: ```typescript const user: User = jsonData as User; ``` Mas depois, quando chamo o método user.isAdult(), o TypeScript não gera erro, mas em runtime recebo "user.isAdult is not a function". Entendo que as User é apenas um type assertion para o compilador, mas na verdade o objeto não é