import { AutocompleteContext, ButtonContext, InteractionContext, MessageCommandContext, ModalSubmitContext, PingContext, SelectMenuContext, SlashCommandContext, UserCommandContext } from "../index.js"; export declare type ContextMap = { ping: PingContext; interaction: InteractionContext; "command.slash": SlashCommandContext; "command.autocomplete": AutocompleteContext; "command.user": UserCommandContext; "command.message": MessageCommandContext; "component.button": ButtonContext; "component.selectMenu": SelectMenuContext; modal: ModalSubmitContext; }; /** * Hooks to be executed on receiving an interaction. These are executed before command handlers, and will abort further handling the interaction upon returning true. */ export declare type InteractionHooks = { /** This hook runs first for all types of interaction. */ interaction: ((ctx: InteractionContext) => Promise)[]; ping: ((context: PingContext) => Promise)[]; "command.slash": ((ctx: SlashCommandContext) => Promise)[]; "command.autocomplete": ((ctx: AutocompleteContext) => Promise)[]; "command.user": ((ctx: UserCommandContext) => Promise)[]; "command.message": ((ctx: MessageCommandContext) => Promise)[]; "component.button": ((ctx: ButtonContext) => Promise)[]; "component.selectMenu": ((ctx: SelectMenuContext) => Promise)[]; modal: ((ctx: ModalSubmitContext) => Promise)[]; };