[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Assert](https://evolu.dev/docs/api-reference/common/Assert) › assertNotNull

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

Defined in: [packages/common/src/Assert.ts:762](https://github.com/evoluhq/evolu/blob/ecbac001e0c18bbc45b44715f49ecc3a768c5ec9/packages/common/src/Assert.ts#L762)

Asserts that a value is not null while preserving undefined.

### Example

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

const value = undefined as string | null | undefined;
assertNotNull(value);

assertType<typeof value, string | undefined>();
assertEqual(value, undefined);

const result = trySync(() => assertNotNull(null));
assertErr(result);
assertInstanceOf(result.error, Error);
assertEqual(result.error.message, "Expected value not to be null.");
```