import { GatewayIntentsString } from "discord.js"; import { ForgeClient } from "../core/ForgeClient"; export type AssertArgs = T extends unknown[] ? T : never; export interface IEvent { name: T; description: string; listener: (this: ForgeClient, ...args: AssertArgs) => Promise | void; version?: string; intents?: GatewayIntentsString[]; } export declare class BaseEventHandler, T extends keyof Events = keyof Events> { readonly data: IEvent; constructor(data: IEvent); get listener(): (this: ForgeClient, ...args: AssertArgs) => void | Promise; get description(): string; get name(): T; register(client: ForgeClient): void; } //# sourceMappingURL=BaseEventHandler.d.ts.map