import type { setupCommands, setupComponents, setupEvents } from "../server/index.ts"; import type { AnyEvent } from "./event.ts"; import type { CommandAutocompleteInteraction, CommandInteraction, MessageComponentInteraction, ModalSubmitInteraction } from "./interaction.ts"; export type CommandHandler = (interaction: CommandInteraction) => Promise; export type CommandAutocompleteHandler = (interaction: CommandAutocompleteInteraction) => Promise; export type ComponentHandler = (interaction: MessageComponentInteraction | ModalSubmitInteraction, args?: Record) => Promise; export type EventHandler = (event: AnyEvent) => Promise; export type CommandRunner = ReturnType; export type ComponentRunner = ReturnType; export type EventRunner = ReturnType;