/**
 * 事件发射器类
 */
export declare class EventEmitter {
    private events;
    /**
     * 注册事件监听器
     * @param event 事件名称
     * @param listener 监听器函数
     * @returns this
     */
    on(event: string, listener: Function): this;
    /**
     * 注册一次性事件监听器
     * @param event 事件名称
     * @param listener 监听器函数
     * @returns this
     */
    once(event: string, listener: Function): this;
    /**
     * 移除事件监听器
     * @param event 事件名称
     * @param listener 监听器函数
     * @returns this
     */
    off(event: string, listener: Function): this;
    /**
     * 触发事件
     * @param event 事件名称
     * @param args 事件参数
     * @returns boolean
     */
    emit(event: string, ...args: any[]): boolean;
    /**
     * 移除所有事件监听器
     * @param event 可选，指定事件名称
     * @returns this
     */
    removeAllListeners(event?: string): this;
    /**
     * 获取事件监听器数量
     * @param event 事件名称
     * @returns number
     */
    listenerCount(event: string): number;
}
