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

Defined in: [packages/common/src/Error.ts:21](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Error.ts#L21)

A wrapper for unknown errors caught at runtime.

When catching errors from unsafe code (third-party libraries, worker
boundaries, etc.), we wrap them in `UnknownError` so they can be used in
union types and distinguished from other error types.

The `error` property contains error details (including `message`, `stack`,
and `cause` if available), a string, or a fallback value.

Use [createUnknownError](https://evolu.dev/docs/api-reference/common/Error/functions/createUnknownError) to create instances.

## Extends

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

## Properties

<a id="error"></a>

### error

```ts
readonly error: unknown;
```

Defined in: [packages/common/src/Error.ts:22](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Error.ts#L22)

---

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

### type

```ts
readonly type: "UnknownError";
```

Defined in: [packages/common/src/Type.ts:3492](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Type.ts#L3492)

#### 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)