import EventEmitter from "events"; /** * 事件工具,基于 Node.js EventEmitter 封装。 * * @remarks * 设置为无最大监听器限制(`setMaxListeners(0)`),适合游戏服务器中大量监听器的场景。 * 全局单例通过 `gEventTool` 导出。 */ export declare class EventTool { protected _event_emitter: EventEmitter<[never]>; constructor(); /** * 注册事件监听器。 * @param event - 事件名 * @param func - 回调函数 */ on(event: string, func: (...args: any[]) => void): void; /** * 移除事件监听器。 * @param event - 事件名 * @param func - 要移除的回调 */ off(event: string, func: (...args: any[]) => void): void; /** * 注册一次性事件监听器(触发一次后自动移除)。 * @param event - 事件名 * @param func - 回调函数 */ once(event: string, func: (...args: any[]) => void): void; /** * 触发事件。 * @param event - 事件名 * @param args - 传递给监听器的参数 */ emit(event: string, ...args: any[]): void; /** * 获取事件的监听器数量。 * @param event - 事件名 */ listenerCount(event: string): number; } /** EventTool 全局单例 */ export declare let gEventTool: EventTool;