2022-07-05 13:41:43 +00:00
---
sidebar_label: EventEmitter
---
# EventEmitter class
The EventEmitter class that many Puppeteer classes extend.
2022-10-24 07:07:05 +00:00
#### Signature:
2022-07-05 13:41:43 +00:00
```typescript
2023-09-13 13:47:55 +00:00
export declare class EventEmitter< Events extends Record < EventType , unknown > > implements CommonEventEmitter< EventsWithWildcard < Events > >
2022-07-05 13:41:43 +00:00
```
2023-09-13 13:47:55 +00:00
**Implements:** [CommonEventEmitter ](./puppeteer.commoneventemitter.md )< [EventsWithWildcard](./puppeteer.eventswithwildcard.md)< Events>>
2022-07-05 13:41:43 +00:00
## Remarks
This allows you to listen to events that Puppeteer classes fire and act accordingly. Therefore you'll mostly use [on ](./puppeteer.eventemitter.on.md ) and [off ](./puppeteer.eventemitter.off.md ) to bind and unbind to event listeners.
The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `EventEmitter` class.
## Methods
2024-03-20 15:03:14 +00:00
< table > < thead > < tr > < th >
Method
< / th > < th >
Modifiers
< / th > < th >
Description
< / th > < / tr > < / thead >
< tbody > < tr > < td >
[emit(type, event) ](./puppeteer.eventemitter.emit.md )
< / td > < td >
< / td > < td >
Emit an event and call any associated listeners.
< / td > < / tr >
< tr > < td >
[listenerCount(type) ](./puppeteer.eventemitter.listenercount.md )
< / td > < td >
< / td > < td >
Gets the number of listeners for a given event.
< / td > < / tr >
< tr > < td >
[off(type, handler) ](./puppeteer.eventemitter.off.md )
< / td > < td >
< / td > < td >
Remove an event listener from firing.
< / td > < / tr >
< tr > < td >
[on(type, handler) ](./puppeteer.eventemitter.on.md )
< / td > < td >
< / td > < td >
Bind an event listener to fire when an event occurs.
< / td > < / tr >
< tr > < td >
[once(type, handler) ](./puppeteer.eventemitter.once.md )
< / td > < td >
< / td > < td >
Like `on` but the listener will only be fired once and then it will be removed.
< / td > < / tr >
< tr > < td >
[removeAllListeners(type) ](./puppeteer.eventemitter.removealllisteners.md )
< / td > < td >
< / td > < td >
Removes all listeners. If given an event argument, it will remove only listeners for that event.
< / td > < / tr >
< / tbody > < / table >