# ChannelMenuRoute

`function` in `core` · v0.10.0

<https://seedcord.org/docs/packages/core/0.10.0/functions/channel-menu-route>

Routes channel select menu interactions to a `ChannelMenuHandler`.

Pass the [`CustomId`](/docs/packages/custom-id/0.2.7/classes/custom-id) definition(s) this handler decodes and list the same ones in the handler's
generic. Beside `this.values` the handler declares `this.channels`.

```ts
ChannelMenuRoute<Defs>(
    defs: Defs
): <TCtor extends AnyHandlerCtor>(
    constructor: AssertComponentRoute<InteractionKind.ChannelMenu, Defs, TCtor>
) => void
```

Routes channel select menu interactions to a `ChannelMenuHandler`.

Pass the [`CustomId`](/docs/packages/custom-id/0.2.7/classes/custom-id) definition(s) this handler decodes and list the same ones in the handler's
generic. Beside `this.values` the handler declares `this.channels`.

Parameters.

- `defs` `Defs` — The customId definition(s) this handler decodes, one per route.

Returns `<TCtor extends AnyHandlerCtor>(constructor: AssertComponentRoute<InteractionKind.ChannelMenu, Defs, TCtor>) => void`.
