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.

34 lines 1.23 kB
import type { StarboardOptions, StarboardOptionsInput, Snowflake } from '../types'; /** * Configuration validation and normalization. * Centralizes all configuration logic following SRP. */ export declare class ConfigValidator { /** * Validate configuration options. * Throws an error if validation fails. */ static validate(options: StarboardOptionsInput): void; /** * Normalize configuration options by applying defaults. * Returns a complete StarboardOptions object. */ static normalize(options: StarboardOptionsInput): StarboardOptions; /** * Validate and normalize in one step. */ static validateAndNormalize(options: StarboardOptionsInput): StarboardOptions; /** * Merge partial options with existing options. */ static merge(existing: StarboardOptions, partial: Partial<StarboardOptions>): StarboardOptions; /** * Check if a string is a valid Discord Snowflake. */ static isValidSnowflake(value: unknown): value is Snowflake; /** * Get default options (without starboardChannelID) */ static getDefaults(): Omit<StarboardOptions, 'starboardChannelID'>; } //# sourceMappingURL=ConfigValidator.d.ts.map