import { IEventBus, EventHandler, EventPayload } from '../types';
/**
 * EventBus 抽象基类，提供 emit/on/off 的基础能力
 */
export declare class EventBus implements IEventBus {
    protected handlers: Map<string, Set<EventHandler>>;
    /**
     * 触发事件
     * @param eventName - 事件名称
     * @param payload - 事件数据
     */
    emit(eventName: string, payload: EventPayload): Promise<void>;
    /**
     * 绑定事件处理器
     * @param eventName - 事件名称
     * @param handler - 事件处理函数
     */
    on(eventName: string, handler: EventHandler): void;
    /**
     * 解绑事件处理器
     * @param eventName - 事件名称
     * @param handler - 事件处理函数
     */
    off(eventName: string, handler: EventHandler): void;
    /**
     * 启动事件监听（由子类实现）
     */
    start(): Promise<void>;
    /**
     * 停止事件监听（由子类实现）
     */
    stop(): Promise<void>;
}
