Что такое TypeScript
Что проверяют
Понимаете ли вы, что это надстройка со статической проверкой и стиранием типов, а не отдельный язык со своей средой выполнения.
Как отвечать
TypeScript это надстройка над JavaScript, добавляющая статическую систему типов. Любой валидный JavaScript это валидный TypeScript. Компилятор проверяет типы и выдаёт обычный JavaScript: в рантайме типов нет, проверок нет, накладных расходов нет.
Что это даёт на практике: ошибки видны до запуска, автодополнение и переименование по проекту работают по-настоящему, а сигнатуры функций становятся документацией, которая не устаревает.
Что стоит назвать дальше: вывод типов (аннотации нужны не везде), объединения и сужение по typeof и in, дженерики, interface против type, утилитные типы (Partial, Pick, Record), строгий режим и почему strict: true включают сразу.
Важная оговорка про границы: типы не защищают на входе в программу. Ответ сервера, JSON.parse и localStorage дают any или заявленный тип без проверки, поэтому на границе нужна валидация во время выполнения (zod и подобное).
Где спотыкаются
Говорят, что TypeScript быстрее или безопаснее в рантайме. Он не существует в рантайме вовсе.
Ставят any при первой ошибке и теряют смысл типизации. Для неизвестного значения есть unknown, который заставляет сузить тип.
Считают, что тип ответа API гарантирует его форму. Гарантирует только валидация.
Не знают про strict и живут с неявным any, где типизация почти ничего не проверяет.