Exhaustive check гарантирует что все варианты union типа обработаны. Паттерн через never: function assertNever(x: never): never { throw new Error(Unexpected: ${x}) }. В switch: default: assertNever(shape) — если добавили новый вариант в union и не добавили case, TypeScript выдаст ошибку. Это compile-time защита от пропущенных кейсов. Полезно в: event handlers, state machines, dispatch функциях. Аналог match expression из других языков.
Как реализовать exhaustive checks в TypeScript?
Senior
226 просмотровAFK Offer AI
Что такое Plugin Architecture в Node.js?