# SelectMenuRoute

`function` in `core` · v0.1.0-next.5

<https://docs.seedcord.org/packages/core/0.1.0-next.5/functions/select-menu-route>

Routes select menu interactions to handler classes.

Pass the select kind and the [`CustomId`](/packages/core/0.1.0-next.5/classes/custom-id) definition(s) this handler decodes. The handler's generic must list the same kind and definitions, or it is a compile error.

```ts
SelectMenuRoute<Kind, Defs>(
    type: Kind,
    defs: Defs
): <TCtor extends AnyHandlerCtor>(
    constructor: AssertComponentRoute<Kind, Defs, TCtor>
) => void
```

Routes select menu interactions to handler classes.

Pass the select kind and the [`CustomId`](/packages/core/0.1.0-next.5/classes/custom-id) definition(s) this handler decodes. The handler's generic must list the same kind and definitions, or it is a compile error.

Parameters.

- `type` `Kind` — Select menu kind from [`SelectMenuKind`](/packages/core/0.1.0-next.5/enums/select-menu-kind).
- `defs` `Defs` — The customId definition(s) this handler decodes, one per route.

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