UNPKG

@flowlab/event

Version:

FlowLab event-driven system

34 lines (33 loc) 974 B
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>; }