[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [local‑first/Timestamp](https://evolu.dev/docs/api-reference/common/local-first/Timestamp) › TimestampTimeOutOfRangeError

Defined in: [packages/common/src/local-first/Timestamp.ts:60](https://github.com/evoluhq/evolu/blob/a18269a1b822c670b507c6a9b73b23eed32551fe/packages/common/src/local-first/Timestamp.ts#L60)

A structurally tagged value created by [typed](https://evolu.dev/docs/api-reference/common/Type/functions/typed).

Typed unions model mutually exclusive states as separate variants instead of
combinations of flags and optional properties. TypeScript narrows a union by
its literal `type` property. To enforce exhaustive handling, return from
every case of a value-producing switch or assert that the remaining value is
`never` in the `default` case of a side-effecting switch.

### Example

```ts

type Status = Typed<"Pending"> | Typed<"Completed">;

const getStatusMessage = (status: Status): string => {
  switch (status.type) {
    case "Pending":
      return "Waiting";
    case "Completed":
      return "Done";
  }
};

expect(getStatusMessage({ type: "Pending" })).toBe("Waiting");
```

## Extends

- [`Typed`](https://evolu.dev/docs/api-reference/common/Type/interfaces/Typed)\<`"TimestampTimeOutOfRangeError"`\>

## Properties

<a id="type"></a>

### type

```ts
readonly type: "TimestampTimeOutOfRangeError";
```

Defined in: [packages/common/src/Type.ts:8883](https://github.com/evoluhq/evolu/blob/a18269a1b822c670b507c6a9b73b23eed32551fe/packages/common/src/Type.ts#L8883)

#### Inherited from

[`Typed`](https://evolu.dev/docs/api-reference/common/Type/interfaces/Typed).[`type`](https://evolu.dev/docs/api-reference/common/Type/interfaces/Typed#type)