Helper function for exhaustive checks of discriminated unions in TypeScript
TypeScript
45
18 commits
updated Dec 17, 2024
Helper function for exhaustive checks of discriminated unions in TypeScript.
npm install --save assert-never
import {assertNever} from "assert-never";
type A = {type: 'a'};
type B = {type: 'b'};
type Union = A | B;
function doSomething(arg: Union) {
if (arg.type === 'a') {
return something;
}
if (arg.type === 'b') {
return somethingElse;
}
// TS will error if there are other types in the union
// Will throw an Error when called at runtime. Use `assertNever(arg, true)`
// instead to fail silently.
return assertNever(arg);
}
Overall
Maintained
Code review
npm
Latest release
Releases this year
480 followers · starred Jun 2019
87 followers · starred Apr 2021
232 followers · starred May 2021
Helper function for exhaustive checks of discriminated unions in TypeScript
TypeScript
45
18 commits
updated Dec 17, 2024
Helper function for exhaustive checks of discriminated unions in TypeScript.
npm install --save assert-never
import {assertNever} from "assert-never";
type A = {type: 'a'};
type B = {type: 'b'};
type Union = A | B;
function doSomething(arg: Union) {
if (arg.type === 'a') {
return something;
}
if (arg.type === 'b') {
return somethingElse;
}
// TS will error if there are other types in the union
// Will throw an Error when called at runtime. Use `assertNever(arg, true)`
// instead to fail silently.
return assertNever(arg);
}
Overall
Maintained
Code review
npm
Latest release
Releases this year
480 followers · starred Jun 2019
87 followers · starred Apr 2021
232 followers · starred May 2021