В чем смысла в TypeScript?
Если вопрос обобщить, то получим: Зачем нужна статическая типизация?
Статическая типизация позволяет снизить вероятность ошибки. Например, в year должно оказаться число, а не строка, не массив, не объект. Так более ясно выражется мысль. При ошибке во время компиляции вы узнаете, что где-то косяк и программа может вести себя некорректно.
Плюс к тому ваша ide, возможно, будет вам подсказывать где вы делаете что-то не так.
В общем ускорится разработка и отладка, легче будет расширять проект.
а не надо менять скомпилированный код - он не для того компилировался.