API reference@evolu/commonSet › NonEmptyReadonlySet

type NonEmptyReadonlySet<T> = ReadonlySet<T> & Brand<"NonEmpty">;

Defined in: packages/common/src/Set.ts:83

A readonly set with at least one element (branded for type safety).

Use isNonEmptySet to narrow from ReadonlySet, or use functions like addToSet that return branded non-empty sets.

There is no mutable NonEmptySet type because mutable sets can be emptied after narrowing (via clear() or delete()), making compile-time guarantees impossible.