import { Client, Collection } from 'discord.js'; import { SlashCommandsService } from './slash-commands/index.js'; import { ContextMenusService } from './context-menus/index.js'; import { CommandDiscovery } from './command.discovery.js'; /** * Represents a service that manages commands. * @url https://necord.org/interactions/slash-commands */ export declare class CommandsService { private readonly client; private readonly contextMenusService; private readonly slashCommandsService; private readonly logger; constructor(client: Client, contextMenusService: ContextMenusService, slashCommandsService: SlashCommandsService); /** * Registers all commands. * */ registerAllCommands(): Promise; registerGlobalCommands(): Promise> | undefined>; /** * Registers commands in a guild. * @param guildId * @param commands */ registerCommandsInGuild(guildId: string, commands: CommandDiscovery[]): Promise>>; getCommands(): CommandDiscovery[]; getCommandsGroupedByGuilds(): Collection; getCommandByName(name: string): CommandDiscovery | undefined; getGlobalCommands(): CommandDiscovery[]; getGlobalCommandByName(name: string): CommandDiscovery | undefined; getGuildCommands(guildId: string): CommandDiscovery[]; getGuildCommandByName(guildId: string, name: string): CommandDiscovery | undefined; private getApplication; }