[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) › RunCustomDeps

```ts
type RunCustomDeps<D> = D & {
  readonly [K in keyof D]: K extends keyof RunDefaultDeps
    ? D[K] extends RunDefaultDeps[K] | undefined
      ? D[K]
      : never
    : D[K];
};
```

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

Custom deps accepted by [Run](https://evolu.dev/docs/api-reference/common/Task/interfaces/Run) APIs.

Runs always expose [RunDefaultDeps](https://evolu.dev/docs/api-reference/common/Task/type-aliases/RunDefaultDeps). Custom deps may use a default key
only when the replacement is assignable to the default dependency type.