[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:1493](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Task.ts#L1493)

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.