weixin-ts / bot/src / TypedEventEmitter
Class: TypedEventEmitter<Events>
Defined in: bot/src/events.ts:32
A typed event emitter that provides type-safe event registration and emission. Supports on, off, once, and emit methods with full type inference.
Example
type MyEvents = {
message: [text: string]
error: [err: Error]
close: []
}
const emitter = new TypedEventEmitter<MyEvents>()
emitter.on('message', (text) => console.log(text)) // text is typed as string
emitter.emit('message', 'hello')Extended by
Type Parameters
Events
Events = any
Constructors
Constructor
new TypedEventEmitter<
Events>():TypedEventEmitter<Events>
Returns
TypedEventEmitter<Events>
Methods
emit()
emit<
K>(event, ...args):void
Defined in: bot/src/events.ts:91
Emit an event, calling all registered listeners with the provided arguments.
Type Parameters
K
K extends string
Parameters
event
K
The event name to emit
args
...Events[K] extends any[] ? any[any] : any[]
Arguments to pass to the listeners
Returns
void
off()
off<
K>(event,handler):this
Defined in: bot/src/events.ts:59
Remove an event listener.
Type Parameters
K
K extends string
Parameters
event
K
The event name
handler
(...args) => void
The handler to remove
Returns
this
this for chaining
on()
on<
K>(event,handler):this
Defined in: bot/src/events.ts:42
Register an event listener.
Type Parameters
K
K extends string
Parameters
event
K
The event name to listen for
handler
(...args) => void
The callback function
Returns
this
this for chaining
once()
once<
K>(event,handler):this
Defined in: bot/src/events.ts:77
Register a one-time event listener. The handler is automatically removed after the first invocation.
Type Parameters
K
K extends string
Parameters
event
K
The event name
handler
(...args) => void
The callback function (called at most once)
Returns
this
this for chaining
removeAllListeners()
removeAllListeners<
K>(event?):this
Defined in: bot/src/events.ts:105
Remove all listeners for a specific event, or all listeners if no event is specified.
Type Parameters
K
K extends string
Parameters
event?
K
Optional event name. If omitted, removes all listeners.
Returns
this