Файлы TypeScript имеют расширение .ts. Компилятор tsc превращает их в обычные .js, попутно проверяя типы:
tsc app.ts // создаст app.js
В браузер и Node.js попадает уже чистый JavaScript — типы существуют только на этапе разработки и в финальный код не входят.
Важная приятность: TypeScript часто сам выводит тип, и аннотацию писать не нужно:
let count = 0; // TS понимает: это number let title = "Курс"; // это string
Если теперь написать count = "текст", редактор тут же укажет на ошибку, хотя тип мы явно не указывали. Это называется выводом типов (type inference). Аннотации добавляют там, где вывода недостаточно: у параметров функций, у пустых структур.