API reference@evolu/commonAssert › assertNotNull

const assertNotNull: <T>(
  value: T,
  message?: string,
) => asserts value is T & ({} | undefined);

Defined in: packages/common/src/Assert.ts:356

Asserts that a value is not null while preserving undefined.

Use this when a value is logically guaranteed not to be null but TypeScript cannot prove it.

Example

import {
  assert,
  assertEqual,
  assertErr,
  assertNotNull,
  assertType,
  trySync,
} from "@evolu/common";

const value = undefined as string | null | undefined;
assertNotNull(value);
assertType<string | undefined, typeof value>();
assertEqual(value, undefined);
const result = trySync(() => assertNotNull(null));
assertErr(result);
assert(result.error instanceof Error, "Expected an Error.");
assertEqual(result.error.message, "Expected value not to be null.");