Documentation
    Preparing search index...

    Type Alias UniqueItems<Value>

    UniqueItems: tags.TagBase<
        {
            exclusive: true;
            kind: "uniqueItems";
            schema: { uniqueItems: true };
            target: "array";
            validate: Value extends true
                ? "$importInternal(\"isUniqueItems\")($input)"
                : undefined;
            value: Value;
        },
    >

    Array unique elements constraint.

    UniqueItems is a type tag that validates all elements in an array are unique (no duplicates). Apply it to array properties using TypeScript intersection types.

    Uniqueness is determined by:

    • Primitives: Strict equality (===)
    • Objects: Deep structural comparison

    This constraint is commonly combined with MinItems and MaxItems for comprehensive array validation. It's useful for modeling set-like data that must be represented as arrays in JSON.

    The constraint is enforced at runtime by typia.is(), typia.assert(), and typia.validate(). It generates uniqueItems: true in JSON Schema.

    Type Parameters

    • Value extends boolean = true

      Boolean flag, defaults to true (enable constraint)

    Jeongho Nam - https://github.com/samchon

    interface Preferences {
    // No duplicate tags allowed
    tags: (string & UniqueItems)[];
    // Unique user IDs
    favoriteUserIds: (number & UniqueItems)[];
    }