/** * Event dispatcher. */ export declare class Dispatcher { /** * Event context. */ protected readonly _context: unknown; /** * Event handlers. */ protected readonly _handlers: Set<(event: T) => unknown>; /** * Event dispatcher constructor. * * @param context Context object. */ constructor(context: unknown); /** * Add listener. * * @param handler Event handler. */ on(handler: (event: T) => unknown): void; /** * Remove listener. * * @param handler Event handler. */ off(handler: (event: T) => unknown): void; /** * Trigger handlers. * * @param event Event data. * @returns Handler count. */ trigger(event: T): number; }