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

```ts
function set<ElementType>(
  element: ValidateElement<ElementType>,
): SetType<ElementType>;
```

Defined in: [packages/common/src/Type.ts:9499](https://github.com/evoluhq/evolu/blob/dd96d79f1dbe9a49fa12ce8e0aa7d3d0177795ca/packages/common/src/Type.ts#L9499)

Set [Type](https://evolu.dev/docs/api-reference/common/Type/interfaces/Type) whose every element must match one Type.

Sets from this or another realm are accepted. A Set must have no own
properties; its elements are validated in iteration order. Classification
uses the realm-neutral object tag under Evolu Type's trusted JavaScript
policy.

### Example

```ts

const Tags = set(String);
const tags = new Set(["local-first", "offline"]);

assertOk(Tags.fromUnknown(tags), tags);
```