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

# Type Alias: HandlerDefinition\<TMessage, TMessageAttributes>

```ts
type HandlerDefinition<TMessage, TMessageAttributes> = 
  | FunctionHandler<TMessage, TMessageAttributes>
  | ClassConstructor<Handler<MessageBase, TMessageAttributes>>
| ClassConstructor<CustomHandler<TMessage>>;
```

Defined in: [packages/bus-core/src/handler/handler.ts:65](https://github.com/node-ts/bus/blob/2e6cf65c27833b707ae31ee623cfb6343770f434/packages/bus-core/src/handler/handler.ts#L65)

## Type Parameters

| Type Parameter | Default type |
| ------ | ------ |
| `TMessage` | `any` |
| `TMessageAttributes` *extends* [`MessageAttributes`](../../bus-messages/interfaces/MessageAttributes.md) | [`MessageAttributes`](../../bus-messages/interfaces/MessageAttributes.md) |
