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

Defined in: [packages/common/src/Result.ts:265](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Result.ts#L265)

An error [Result](https://evolu.dev/docs/api-reference/common/Result/type-aliases/Result).

The `error` property can be any type that describes the error. For domain
errors, use a plain object with a `type` field for discrimination.

### Example

```ts
interface NotFoundError extends Typed<"NotFoundError"> {
  readonly id: string;
}

const findUser = (id: string): Result<User, NotFoundError> => {
  const user = users.get(id);
  if (user == null) return err({ type: "NotFoundError", id });
  return ok(user);
};
```

## Properties

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

### error

```ts
readonly error: E;
```

Defined in: [packages/common/src/Result.ts:267](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Result.ts#L267)

---

<a id="ok"></a>

### ok

```ts
readonly ok: false;
```

Defined in: [packages/common/src/Result.ts:266](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Result.ts#L266)