assert-never
TypeScript icon, indicating that this package has built-in type declarations

1.2.1 • Public • Published

Assert Never npm version

Helper function for exhaustive checks of discriminated unions in TypeScript.

Installation

npm install --save assert-never

Usage

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);
}

Dependencies (0)

    Dev Dependencies (1)

    Package Sidebar

    Install

    npm i assert-never

    Weekly Downloads

    1,607,050

    Version

    1.2.1

    License

    MIT

    Unpacked Size

    4.17 kB

    Total Files

    5

    Last publish

    Collaborators

    • aikoven