ts-tagged-union

A modern TypeScript library designed to reduce boilerplate for tagged unions, also known as discriminated unions. This library is also an implementation of algebraic data types

eslint-plugin-switch-statement

Rules for properly handling switch statements, including ensuring that appropriate exhaustive case handling.