Сегодня наконец-то до конца понял, зачем нужны декларативные файлы… — xycu2.rar — TG.ME

Сегодня наконец-то до конца понял, зачем нужны декларативные файлы (.d.ts) в TypeScript! 💡

Раньше эта тема казалась какой-то абстрактной теорией, но сегодня наткнулся на шикарный пример с проверкой на исчерпываемость (assertExhaustiveness).
В чем суть:
1) Объявляем сигнатуру функции function assertExhaustiveness(value: never): never в .d.ts файле.
2) Теперь TS во время разработки нативно подхватывает её и сужает типы! Если я забыл обработать какой-то из статусов в if, TypeScript сразу подсветит ошибку и не даст собрать проект.
3) При этом сама инструкция работает только как страховка на этапе компиляции и исчезает в итоговом JS.

Очень крутое ощущение, когда непонятная концепция превращается в логичный и понятный инструмент. Буду изучать дальше, чтобы еще лучше разбираться в конфигах и продвинутой типизации!
❤1
October 5, 2026 33 2