UNPKG

discord-starboard-plus

Version:

Discord Starboard Plus: A clean, maintainable starboard system for Discord.js bots. Features per-guild configuration, TypeScript support. Highlight your community's favorite messages with customizable starboards.

38 lines 1.43 kB
import type { Client } from 'discord.js'; import type { Logger, StarboardOptions } from '../types'; import type { GuildConfigManager } from '../core/GuildConfigManager'; import type { ValidationService } from '../services/ValidationService'; import type { MessageSearchService } from '../services/MessageSearchService'; import type { EmbedBuilderService } from '../services/EmbedBuilderService'; /** * Services injected into handlers */ export interface HandlerDependencies { client: Client; logger: Logger; guildConfig: GuildConfigManager; validation: ValidationService; messageSearch: MessageSearchService; embedBuilder: EmbedBuilderService; } /** * Abstract base class for event handlers. */ export declare abstract class BaseHandler { protected readonly client: Client; protected readonly logger: Logger; protected readonly guildConfig: GuildConfigManager; protected readonly validation: ValidationService; protected readonly messageSearch: MessageSearchService; protected readonly embedBuilder: EmbedBuilderService; constructor(dependencies: HandlerDependencies); /** * Handle the event. Must be implemented by subclasses. */ abstract handle(...args: unknown[]): Promise<void>; /** * Get options for a specific guild. */ protected getOptionsForGuild(guildId: string): StarboardOptions; } //# sourceMappingURL=BaseHandler.d.ts.map