/** * Minimal typed event emitter used to expose chart events to consumers * * Dispatch is synchronous: handlers run inside the originating call stack, so a * listener can read getConfig() / getData() and observe fully committed state. * Note that the sibling sankey library dispatches on a microtask instead, since * its internal event bus predates this API. */ export type EventListener = (payload: TPayload) => void; export declare class EventEmitter> { private listeners; /** * Register a listener for an event * Returns an unsubscribe function, which is idempotent */ on(event: K, listener: EventListener): () => void; /** * Register a listener that is removed after its first invocation * Returns an unsubscribe function that cancels it before it fires */ once(event: K, listener: EventListener): () => void; /** * Remove a listener, or every listener for the event when none is given */ off(event: K, listener?: EventListener): void; /** * Dispatch an event synchronously to all listeners */ emit(event: K, payload: TEventMap[K]): void; /** * Number of listeners registered for an event */ listenerCount(event: keyof TEventMap): number; /** * Remove every listener */ clear(): void; private addListener; } //# sourceMappingURL=EventEmitter.d.ts.map