import { Reflector } from '@nestjs/core'; import { ContextMenuDiscovery, SlashCommandDiscovery } from '../commands/index.js'; import { MessageComponentDiscovery } from '../message-components/index.js'; import { TextCommandDiscovery } from '../text-commands/index.js'; import { ListenerDiscovery } from '../listeners/index.js'; import { ModalDiscovery } from '../modals/index.js'; interface DiscoveredItem { class: any; handler?: (...args: any[]) => any; } export declare abstract class NecordBaseDiscovery { protected readonly meta: T; protected readonly reflector: Reflector; protected discovery: DiscoveredItem; protected contextCallback: Function; constructor(meta: T); getClass(): any; getHandler(): ((...args: any[]) => any) | undefined; setDiscoveryMeta(meta: DiscoveredItem): void; setContextCallback(fn: Function): void; execute(context?: any): any; isContextMenu(): this is ContextMenuDiscovery; isSlashCommand(): this is SlashCommandDiscovery; isMessageComponent(): this is MessageComponentDiscovery; isListener(): this is ListenerDiscovery; isTextCommand(): this is TextCommandDiscovery; isModal(): this is ModalDiscovery; abstract toJSON(): Record; } export {};