Skip to content

EventEmitter

Defined in: core/src/utils/utils.eventemitter.ts:14

A typed event emitter where T maps event names to their listener signatures, giving on/emit fully typed arguments per event.

Type Parameter
T extends Record<string, (…args) => void | Promise<void>>
new EventEmitter<T>(): EventEmitter<T>;

EventEmitter<T>

emit<K>(event, ...args): void;

Defined in: core/src/utils/utils.eventemitter.ts:62

Invokes all listeners for event synchronously, without awaiting async listeners.

Type Parameter
K extends string | number | symbol
Parameter Type
event K
args Parameters<T[K]>

void


emitAsync<K>(event, ...args): Promise<void>;

Defined in: core/src/utils/utils.eventemitter.ts:73

Invokes all listeners for event and awaits them concurrently via Promise.all.

Type Parameter
K extends string | number | symbol
Parameter Type
event K
args Parameters<T[K]>

Promise<void>


on<K>(
event,
callback,
options?): () => void;

Defined in: core/src/utils/utils.eventemitter.ts:21

Registers callback for event. Returns an unsubscribe function; passing options.abortSignal also removes the listener when that signal aborts.

Type Parameter
K extends string | number | symbol
Parameter Type
event K
callback EventListener<Parameters<T[K]>>
options OnOptions

() => void


once<K>(
event,
callback,
options?): () => void;

Defined in: core/src/utils/utils.eventemitter.ts:45

Like on, but the listener is removed after firing once.

Type Parameter
K extends string | number | symbol
Parameter Type
event K
callback EventListener<Parameters<T[K]>>
options OnOptions

() => void