@proto-kit/common • Docs
Documentation / @proto-kit/common / ReplayingSingleUseEventEmitter
Class: ReplayingSingleUseEventEmitter<Events>
Event Emitter variant that emits a certain event only once to a registered listener. Additionally, if a listener registers to a event that has already been emitted, it re-emits it to said listener. This pattern is especially useful for listening for inclusions of transactions. Those events will only occur once, and listeners could come too late to the party, so we need to make sure they get notified as well in those cases.
Extends
EventEmitter<Events>
Type Parameters
• Events extends EventsRecord
Constructors
new ReplayingSingleUseEventEmitter()
new ReplayingSingleUseEventEmitter<
Events>():ReplayingSingleUseEventEmitter<Events>
Returns
ReplayingSingleUseEventEmitter<Events>
Inherited from
Properties
emitted
emitted:
Partial<Events> ={}
Defined in
packages/common/src/events/ReplayingSingleUseEventEmitter.ts:15
listeners
protectedreadonlylisteners:ListenersHolder<Events> ={}
Inherited from
Defined in
packages/common/src/events/EventEmitter.ts:8
wildcardListeners
protectedreadonlywildcardListeners: (event,args) =>void[] =[]
Inherited from
EventEmitter.wildcardListeners
Defined in
packages/common/src/events/EventEmitter.ts:10
Methods
emit()
emit<
Key>(event, …parameters):void
Type Parameters
• Key extends string | number | symbol
Parameters
• event: Key
• …parameters: Events[Key]
Returns
void
Overrides
Defined in
packages/common/src/events/ReplayingSingleUseEventEmitter.ts:17
off()
off<
Key>(event,listener):void
Primitive .off() with identity comparison for now. Could be replaced by returning an id in .on() and using that.
Type Parameters
• Key extends string | number | symbol
Parameters
• event: Key
• listener
Returns
void
Inherited from
Defined in
packages/common/src/events/EventEmitter.ts:45
on()
on<
Key>(event,listener):void
Type Parameters
• Key extends string | number | symbol
Parameters
• event: Key
• listener
Returns
void
Overrides
Defined in
packages/common/src/events/ReplayingSingleUseEventEmitter.ts:33
onAll()
onAll(
listener):void
Parameters
• listener
Returns
void
Overrides
Defined in
packages/common/src/events/ReplayingSingleUseEventEmitter.ts:26