@algorandfoundation/algokit-subscriber / types/async-event-emitter / AsyncEventEmitter
types/async-event-emitter.AsyncEventEmitter
Simple asynchronous event emitter class.
Note: This class is not thread-safe.
• new AsyncEventEmitter(): AsyncEventEmitter
• Private listenerMap: Record<string | symbol, AsyncEventListener[]> = {}
src/types/async-event-emitter.ts:12
• Private listenerWrapperMap: WeakMap<AsyncEventListener, AsyncEventListener>
src/types/async-event-emitter.ts:11
• off: (eventName: string | symbol, listener: AsyncEventListener) => AsyncEventEmitter
Alias for removeListener.
▸ (eventName, listener): AsyncEventEmitter
| Name | Type |
|---|---|
eventName |
string | symbol |
listener |
AsyncEventListener |
src/types/async-event-emitter.ts:82
▸ emitAsync(eventName, event): Promise<void>
Emit an event and wait for all registered listeners to be run one-by-one in the order they were registered.
| Name | Type | Description |
|---|---|---|
eventName |
string | symbol |
The name of the event |
event |
unknown |
The event payload |
Promise<void>
src/types/async-event-emitter.ts:21
▸ on(eventName, listener): AsyncEventEmitter
Register an event listener for the given event.
| Name | Type | Description |
|---|---|---|
eventName |
string | symbol |
The name of the event |
listener |
AsyncEventListener |
The listener to trigger |
The AsyncEventEmitter so you can chain registrations
src/types/async-event-emitter.ts:33
▸ once(eventName, listener): AsyncEventEmitter
Register an event listener for the given event that is only fired once.
| Name | Type | Description |
|---|---|---|
eventName |
string | symbol |
The name of the event |
listener |
AsyncEventListener |
The listener to trigger |
The AsyncEventEmitter so you can chain registrations
src/types/async-event-emitter.ts:45
▸ removeListener(eventName, listener): AsyncEventEmitter
Removes an event listener from the given event.
| Name | Type | Description |
|---|---|---|
eventName |
string | symbol |
The name of the event |
listener |
AsyncEventListener |
The listener to remove |
The AsyncEventEmitter so you can chain registrations