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

```ts
const AbortReason: object(
  { type: String },
  /*#__PURE__*/ record(String, Unknown),
);
```

Defined in: [packages/common/src/Task.ts:1764](https://github.com/evoluhq/evolu/blob/a18269a1b822c670b507c6a9b73b23eed32551fe/packages/common/src/Task.ts#L1764)

Typed object explaining why a [Run](https://evolu.dev/docs/api-reference/common/Task/interfaces/Run) was aborted.

A reason has a `type` discriminant and optional structured data, so abort
causes can carry typed domain data. Well-known reasons are
[explicitAbortReason](https://evolu.dev/docs/api-reference/common/Task/variables/explicitAbortReason), [runDisposedAbortReason](https://evolu.dev/docs/api-reference/common/Task/variables/runDisposedAbortReason), and
[PanicAbortReason](https://evolu.dev/docs/api-reference/common/Task/interfaces/PanicAbortReason).