Properties
				
					
					catcher
					catcher: ICatcher | undefined
					
				
				
					
					emit
					emit: Record extends object ? <E extends Exclude<keyof Record, number>>(event: E, ...args: EventEmitterArgumentTypes<Record[E]>) => boolean : (event: EventEmitterEvent, ...args: unknown[]) => boolean
					
				
				
					
					invoke
					invoke: Record extends object ? <E extends Exclude<keyof Record, number>>(event: E, ...args: EventEmitterArgumentTypes<Record[E]>) => IterableIterator<EventEmitterReturnType<Record[E]>> : (event: EventEmitterEvent, ...args: unknown[]) => IterableIterator<...>
					
				
				
					
					listenerCount
					listenerCount: Record extends object ? (event: Exclude<keyof Record, number>) => number : (event: EventEmitterEvent) => number
					
				
				
					
					listeners
					listeners: Record extends object ? (event: Exclude<keyof Record, number>) => IEventEmitterListener<unknown[], unknown, never>[] : (event: EventEmitterEvent) => IEventEmitterListener<unknown[], unknown, never>[]
					
				
				
					
					maxListeners
					maxListeners: number | undefined
					
				
				
					
					off
					off: Record extends object ? <E extends Exclude<keyof Record, number>>(event: E, listener: IEventEmitterFunction<Record, E>) => this : (event: EventEmitterEvent, listener: IEventEmitterListener<unknown[], unknown, never>) => this
					
				
				
					
					on
					on: Record extends object ? <E extends Exclude<keyof Record, number>>(event: E, listener: IEventEmitterFunction<Record, E>) => this : (event: EventEmitterEvent, listener: IEventEmitterListener<unknown[], unknown, never>) => this
					
				
				
					
					once
					once: Record extends object ? <E extends Exclude<keyof Record, number>>(event: E, listener: IEventEmitterFunction<Record, E>) => this : (event: EventEmitterEvent, listener: IEventEmitterListener<unknown[], unknown, never>) => this
					
				
				
					
					removeAllListeners
					removeAllListeners: Record extends object ? (event?: Exclude<keyof Record, number> | undefined) => this : (event?: string | symbol | undefined) => this
					
				
				
					
					subscribe
					subscribe: Record extends object ? <E extends Exclude<keyof Record, number>>(event: E, listener: IEventEmitterFunction<Record, E>) => IEventEmitterSubscriptionMutable : (event: EventEmitterEvent, listener: IEventEmitterListener<...>) => IEventEmitterSubscriptionMutable
					
				
			
			 
A mutable event emitter can create new events