import { Client, Guild } from "discord.js"; import { ILogger } from "tsdatautils-core"; import { CommandInteraction, CommandInteractionRegistrationContext, ICommand } from "../../models/Command"; export declare class InteractionRegistrationCommandContext { command: ICommand; interaction: CommandInteraction; constructor(command: ICommand, interaction: CommandInteraction); } export declare class InteractionRegistryService { private logger; private shouldRegisterCallback; private registeredInteractionsCallback; constructor(logger: ILogger, shouldRegisterCallback?: (context: CommandInteractionRegistrationContext, interactions: InteractionRegistrationCommandContext[], botId: string, guildId: string) => Promise, registeredInteractionsCallback?: (context: CommandInteractionRegistrationContext, interactions: InteractionRegistrationCommandContext[], botId: string, guildId: string) => Promise); registerInteractions(client: Client, clientId: string, token: string, allGuilds: Guild[], commands: ICommand[]): Promise; private createInteractionCommandContexts; private preRegistrationCalculation; private registerInteractionsInApi; private registerGuildGlobalInteractions; private registerGuildInteractions; private postRegistration; private getCommandsData; private getAllInteractionsByGuildIncGlobal; private getAllInteractionCommandContexts; private addInteractionCommandContextToGuild; }