Avatar ·

Cómo especificar correctamente el tipo para Date en TypeScript

¡Hola! Acabo de empezar a aprender TypeScript después de JavaScript y me encontré con una situación confusa al trabajar con fechas. Supongamos que tengo una función que recibe la fecha de nacimiento del usuario y devuelve su edad: ```typescript function calculateAge(birthDate) { const today = new Date(); const diff = today.getTime() - birthDate.getTime(); return Math.floor(diff / (1000 * 60 * 60 * 24 * 365.25)); } ``` En JavaScript simplemente pasaría `new Date('1990-05-15')` y todo funcionaba. Pero TypeScript se queja de que el parámetro `birthDate` tiene un tipo implícito `any`. Intenté escribir `birthDate: Date`, pero entonces no puedo pasar un string `'1990-05-15'` o un número `631152000000` (timestamp) — el compilador da error. También tengo una interfaz de usuario: ```typescript interface User { name: string; createdAt: ???; // ¿qué poner aquí? lastLogin: ???; // ¿y aquí? } ``` Veo que `new Date()` devuelve `Date`, pero en JSON los datos llegan en formato