[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) › assertNonEmptyReadonlyArray

```ts
const assertNonEmptyReadonlyArray: <T>(
  arr: ReadonlyArray<T>,
  message?: string,
) => asserts arr is readonly [T, ...T[]];
```

Defined in: [packages/common/src/Assert.ts:76](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Assert.ts#L76)

Asserts that a readonly array is non-empty.

Ensures the provided readonly array has at least one element, helping
TypeScript infer non-emptiness when this is logically guaranteed but not
statically known.

### Example

```ts
assertNonEmptyReadonlyArray([1, 2, 3]); // no-op
assertNonEmptyReadonlyArray([]); // throws Error
```