import type { Channel, Guild } from "discord-types/general"; import type { AnyRepluggedCommand, CommandOptionReturn, CommandOptions, GetCommandOption, GetValueType, RepluggedCommand, RepluggedCommandSection } from "../../types"; interface CommandsAndSection { section: RepluggedCommandSection; commands: Map; } export declare const commandAndSections: Map; export declare const defaultSection: RepluggedCommandSection; export declare class CommandInteraction { options: T[]; channel: Channel; guild: Guild; constructor(props: { options: T[]; channel: Channel; guild: Guild; }); getValue(name: K, defaultValue?: D): GetValueType, D>; } export declare class CommandManager { #private; constructor(); /** * Code to register a slash command * @param command Slash command to be registered * @returns A callback to unregister the slash command */ registerCommand(command: RepluggedCommand): () => void; /** * Code to unregister all slash commands registered with this class */ unregisterAllCommands(): void; } export {};