---
url: https://node-ts.github.io/bus/api/bus-core/type-aliases/WhenHandler.md
---
[API reference](../../index.md) / [@node-ts/bus-core](../index.md) / WhenHandler

# Type Alias: WhenHandler\<WorkflowStateType, WorkflowType>

```ts
type WhenHandler<WorkflowStateType, WorkflowType> = (workflow) => WorkflowHandler<Message, MessageAttributes, WorkflowStateType>;
```

Defined in: [packages/bus-core/src/workflow/workflow.ts:49](https://github.com/node-ts/bus/blob/2e6cf65c27833b707ae31ee623cfb6343770f434/packages/bus-core/src/workflow/workflow.ts#L49)

## Type Parameters

| Type Parameter |
| ------ |
| `WorkflowStateType` *extends* [`WorkflowState`](../classes/WorkflowState.md) |
| `WorkflowType` *extends* [`Workflow`](../classes/Workflow.md)<`WorkflowStateType`> |

## Parameters

| Parameter | Type |
| ------ | ------ |
| `workflow` | `WorkflowType` |

## Returns

[`WorkflowHandler`](WorkflowHandler.md)<[`Message`](../../bus-messages/classes/Message.md), [`MessageAttributes`](../../bus-messages/interfaces/MessageAttributes.md), `WorkflowStateType`>
