Перейти к содержимому
46 / 58

Как типизировать конечный автомат (state machine)?

Конечный автомат (state machine) типизируется через discriminated union для состояний и mapped types для допустимых переходов. Ключевая идея: из каждого состояния можно перейти только в определённые другие состояния, и TypeScript проверяет это на этапе компиляции. Библиотека XState делает это из коробки, но базовую машину можно набросать и вручную.

Как типизировать конечный автомат (state machine)? | JScriptiser