# SelectMenuInteractionFor

`type` in `gateway` · v0.1.0-next.3

<https://docs.seedcord.org/packages/gateway/0.1.0-next.3/types/select-menu-interaction-for>

## Declaration

```ts
type SelectMenuInteractionFor<
    SelectMenu extends SelectMenuKind,
    Cache extends CacheType = CacheType
> = SelectMenu extends SelectMenuKind.String
    ? StringSelectMenuInteraction<Cache>
    : SelectMenu extends SelectMenuKind.User
      ? UserSelectMenuInteraction<Cache>
      : SelectMenu extends SelectMenuKind.Role
        ? RoleSelectMenuInteraction<Cache>
        : SelectMenu extends SelectMenuKind.Channel
          ? ChannelSelectMenuInteraction<Cache>
          : SelectMenu extends SelectMenuKind.Mentionable
            ? MentionableSelectMenuInteraction<Cache>
            : never;
```
