I've been using TypeScript on a regular basis for about 6 months now, and this is the biggest pitfall I've seen so far:

@thomaslevesque

What is date then ? a string ?

@candoumbe JSON doesn't have a date type, so it's represented as a string. JSON.parse knows nothing about types, so when it sees a string in JSON, it deserializes as a string. The TypeScript declaration as Date has no effect.