import { mt as PluginInteractiveRegistration } from "./types-C_nat0ED.js"; import { I as ChannelStructuredComponents } from "./types.core-BdBUJhNx.js"; import { n as PluginConversationBindingRequestParams, r as PluginConversationBindingRequestResult, t as PluginConversationBinding } from "./conversation-binding.types-SsNyaMC1.js"; //#region extensions/discord/src/interactive-dispatch.d.ts type DiscordInteractiveHandlerContext = { channel: "discord"; accountId: string; interactionId: string; conversationId: string; parentConversationId?: string; guildId?: string; senderId?: string; senderUsername?: string; auth: { isAuthorizedSender: boolean; }; interaction: { kind: "button" | "select" | "modal"; data: string; namespace: string; payload: string; messageId?: string; values?: string[]; fields?: Array<{ id: string; name: string; values: string[]; }>; }; respond: { acknowledge: () => Promise; reply: (params: { text: string; ephemeral?: boolean; }) => Promise; followUp: (params: { text: string; ephemeral?: boolean; }) => Promise; editMessage: (params: { text?: string; components?: ChannelStructuredComponents; }) => Promise; clearComponents: (params?: { text?: string; }) => Promise; }; requestConversationBinding: (params?: PluginConversationBindingRequestParams) => Promise; detachConversationBinding: () => Promise<{ removed: boolean; }>; getCurrentConversationBinding: () => Promise; }; type DiscordInteractiveHandlerRegistration = PluginInteractiveRegistration; //#endregion export { DiscordInteractiveHandlerRegistration as n, DiscordInteractiveHandlerContext as t };