docs: generate documentation
[poolifier.git] / docs / classes / PoolEmitter.html
CommitLineData
cc35cd9c 1<!DOCTYPE html><html class="default" lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>PoolEmitter | poolifier - v2.6.40</title><meta name="description" content="Documentation for poolifier"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/search.js" id="tsd-search-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os"</script><header class="tsd-page-toolbar">
41015374
JB
2<div class="tsd-toolbar-contents container">
3<div class="table-cell" id="tsd-search" data-base="..">
4<div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M15.7824 13.833L12.6666 10.7177C12.5259 10.5771 12.3353 10.499 12.1353 10.499H11.6259C12.4884 9.39596 13.001 8.00859 13.001 6.49937C13.001 2.90909 10.0914 0 6.50048 0C2.90959 0 0 2.90909 0 6.49937C0 10.0896 2.90959 12.9987 6.50048 12.9987C8.00996 12.9987 9.39756 12.4863 10.5008 11.6239V12.1332C10.5008 12.3332 10.5789 12.5238 10.7195 12.6644L13.8354 15.7797C14.1292 16.0734 14.6042 16.0734 14.8948 15.7797L15.7793 14.8954C16.0731 14.6017 16.0731 14.1267 15.7824 13.833ZM6.50048 10.499C4.29094 10.499 2.50018 8.71165 2.50018 6.49937C2.50018 4.29021 4.28781 2.49976 6.50048 2.49976C8.71001 2.49976 10.5008 4.28708 10.5008 6.49937C10.5008 8.70852 8.71314 10.499 6.50048 10.499Z" fill="var(--color-text)"></path></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div>
5<div class="field">
6<div id="tsd-toolbar-links"></div></div>
7<ul class="results">
8<li class="state loading">Preparing search index...</li>
cc35cd9c 9<li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">poolifier - v2.6.40</a></div>
41015374
JB
10<div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><rect x="1" y="3" width="14" height="2" fill="var(--color-text)"></rect><rect x="1" y="7" width="14" height="2" fill="var(--color-text)"></rect><rect x="1" y="11" width="14" height="2" fill="var(--color-text)"></rect></svg></a></div></div></header>
11<div class="container container-main">
ec06e4dd 12<div class="col-content">
41015374
JB
13<div class="tsd-page-title">
14<ul class="tsd-breadcrumb">
15<li><a href="../index.html">poolifier</a></li>
16<li><a href="PoolEmitter.html">PoolEmitter</a></li></ul>
17<h1>Class PoolEmitter</h1></div>
18<section class="tsd-panel tsd-comment">
19<div class="tsd-comment tsd-typography"><p>Pool events emitter.</p>
15d6dfaf 20</div>
21<div class="tsd-comment tsd-typography"></div></section>
41015374
JB
22<section class="tsd-panel tsd-hierarchy">
23<h4>Hierarchy</h4>
24<ul class="tsd-hierarchy">
3bd6a82e 25<li><span class="tsd-signature-type ">EventEmitter</span>
41015374
JB
26<ul class="tsd-hierarchy">
27<li><span class="target">PoolEmitter</span></li></ul></li></ul></section><aside class="tsd-sources">
28<ul>
cc35cd9c 29<li>Defined in <a href="https://github.com/poolifier/poolifier/blob/7790a49/src/pools/pool.ts#L39">src/pools/pool.ts:39</a></li></ul></aside>
41015374
JB
30<section class="tsd-panel-group tsd-index-group">
31<section class="tsd-panel tsd-index-panel">
32<details class="tsd-index-content tsd-index-accordion" open><summary class="tsd-accordion-summary tsd-index-summary">
33<h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex=0><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M1.5 5.50969L8 11.6609L14.5 5.50969L12.5466 3.66086L8 7.96494L3.45341 3.66086L1.5 5.50969Z" fill="var(--color-text)"></path></svg> Index</h5></summary>
34<div class="tsd-accordion-details">
35<section class="tsd-index-section">
36<h3 class="tsd-index-heading">Constructors</h3>
15d6dfaf 37<div class="tsd-index-list"><a href="PoolEmitter.html#constructor" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-512"><rect fill="var(--color-icon-background)" stroke="#4D7FFF" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M11.898 16.1201C11.098 16.1201 10.466 15.8961 10.002 15.4481C9.53803 15.0001 9.30603 14.3841 9.30603 13.6001V9.64012C9.30603 8.85612 9.53803 8.24012 10.002 7.79212C10.466 7.34412 11.098 7.12012 11.898 7.12012C12.682 7.12012 13.306 7.34812 13.77 7.80412C14.234 8.25212 14.466 8.86412 14.466 9.64012H13.386C13.386 9.14412 13.254 8.76412 12.99 8.50012C12.734 8.22812 12.37 8.09212 11.898 8.09212C11.426 8.09212 11.054 8.22412 10.782 8.48812C10.518 8.75212 10.386 9.13212 10.386 9.62812V13.6001C10.386 14.0961 10.518 14.4801 10.782 14.7521C11.054 15.0161 11.426 15.1481 11.898 15.1481C12.37 15.1481 12.734 15.0161 12.99 14.7521C13.254 14.4801 13.386 14.0961 13.386 13.6001H14.466C14.466 14.3761 14.234 14.9921 13.77 15.4481C13.306 15.8961 12.682 16.1201 11.898 16.1201Z" fill="var(--color-text)"></path></g></svg><span>constructor</span></a>
41015374
JB
38</div></section>
39<section class="tsd-index-section">
40<h3 class="tsd-index-heading">Properties</h3>
15d6dfaf 41<div class="tsd-index-list"><a href="PoolEmitter.html#captureRejectionSymbol" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-1024"><rect fill="var(--color-icon-background)" stroke="#FF984D" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.354 16V7.24H12.174C12.99 7.24 13.638 7.476 14.118 7.948C14.606 8.412 14.85 9.036 14.85 9.82C14.85 10.604 14.606 11.232 14.118 11.704C13.638 12.168 12.99 12.4 12.174 12.4H10.434V16H9.354ZM10.434 11.428H12.174C12.646 11.428 13.022 11.284 13.302 10.996C13.59 10.7 13.734 10.308 13.734 9.82C13.734 9.324 13.59 8.932 13.302 8.644C13.022 8.356 12.646 8.212 12.174 8.212H10.434V11.428Z" fill="var(--color-text)"></path></g></svg><span>capture<wbr/>Rejection<wbr/>Symbol</span></a>
42<a href="PoolEmitter.html#captureRejections" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>capture<wbr/>Rejections</span></a>
43<a href="PoolEmitter.html#defaultMaxListeners" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>default<wbr/>Max<wbr/>Listeners</span></a>
44<a href="PoolEmitter.html#errorMonitor" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>error<wbr/>Monitor</span></a>
41015374
JB
45</div></section>
46<section class="tsd-index-section">
47<h3 class="tsd-index-heading">Methods</h3>
15d6dfaf 48<div class="tsd-index-list"><a href="PoolEmitter.html#addListener" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-2048"><rect fill="var(--color-icon-background)" stroke="#FF4DB8" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><path d="M9.162 16V7.24H10.578L11.514 10.072C11.602 10.328 11.674 10.584 11.73 10.84C11.794 11.088 11.842 11.28 11.874 11.416C11.906 11.28 11.954 11.088 12.018 10.84C12.082 10.584 12.154 10.324 12.234 10.06L13.122 7.24H14.538V16H13.482V12.82C13.482 12.468 13.49 12.068 13.506 11.62C13.53 11.172 13.558 10.716 13.59 10.252C13.622 9.78 13.654 9.332 13.686 8.908C13.726 8.476 13.762 8.1 13.794 7.78L12.366 12.16H11.334L9.894 7.78C9.934 8.092 9.97 8.456 10.002 8.872C10.042 9.28 10.078 9.716 10.11 10.18C10.142 10.636 10.166 11.092 10.182 11.548C10.206 12.004 10.218 12.428 10.218 12.82V16H9.162Z" fill="var(--color-text)"></path></g></svg><span>add<wbr/>Listener</span></a>
49<a href="PoolEmitter.html#emit" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>emit</span></a>
50<a href="PoolEmitter.html#eventNames" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>event<wbr/>Names</span></a>
51<a href="PoolEmitter.html#getMaxListeners" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Max<wbr/>Listeners</span></a>
52<a href="PoolEmitter.html#listenerCount" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>listener<wbr/>Count</span></a>
53<a href="PoolEmitter.html#listeners" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>listeners</span></a>
54<a href="PoolEmitter.html#off" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>off</span></a>
55<a href="PoolEmitter.html#on" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>on</span></a>
56<a href="PoolEmitter.html#once" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>once</span></a>
57<a href="PoolEmitter.html#prependListener" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>prepend<wbr/>Listener</span></a>
58<a href="PoolEmitter.html#prependOnceListener" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>prepend<wbr/>Once<wbr/>Listener</span></a>
59<a href="PoolEmitter.html#rawListeners" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>raw<wbr/>Listeners</span></a>
60<a href="PoolEmitter.html#removeAllListeners" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>remove<wbr/>All<wbr/>Listeners</span></a>
61<a href="PoolEmitter.html#removeListener" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>remove<wbr/>Listener</span></a>
62<a href="PoolEmitter.html#setMaxListeners" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>set<wbr/>Max<wbr/>Listeners</span></a>
1d9f69fa 63<a href="PoolEmitter.html#addAbortListener" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>Abort<wbr/>Listener</span></a>
15d6dfaf 64<a href="PoolEmitter.html#getEventListeners" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Event<wbr/>Listeners</span></a>
3c7c9bd1 65<a href="PoolEmitter.html#getMaxListeners-2" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Max<wbr/>Listeners</span></a>
15d6dfaf 66<a href="PoolEmitter.html#listenerCount-2" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>listener<wbr/>Count</span></a>
67<a href="PoolEmitter.html#on-2" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>on</span></a>
68<a href="PoolEmitter.html#once-2" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>once</span></a>
69<a href="PoolEmitter.html#setMaxListeners-2" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>set<wbr/>Max<wbr/>Listeners</span></a>
41015374
JB
70</div></section></div></details></section></section>
71<section class="tsd-panel-group tsd-member-group">
72<h2>Constructors</h2>
3bd6a82e 73<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="constructor" class="tsd-anchor"></a>
15d6dfaf 74<h3 class="tsd-anchor-link"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><g stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" id="icon-anchor"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></g></svg></a></h3>
3bd6a82e 75<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 76<li class="tsd-signature tsd-anchor-link" id="constructor.new_PoolEmitter"><span class="tsd-kind-constructor-signature">new <wbr/>Pool<wbr/>Emitter</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">options</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#constructor.new_PoolEmitter" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
77<li class="tsd-description">
78<div class="tsd-parameters">
79<h4 class="tsd-parameters-title">Parameters</h4>
80<ul class="tsd-parameter-list">
81<li>
323daa7f 82<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">options</span>: <span class="tsd-signature-type ">EventEmitterOptions</span></h5><code class="tsd-tag ts-flagOptional">Optional</code> </li></ul></div>
8d1797ad 83<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4><aside class="tsd-sources">
912e1dfa 84<p>Inherited from EventEmitter.constructor</p>
41015374 85<ul>
7ab352a6 86<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:109</li></ul></aside></li></ul></section></section>
41015374
JB
87<section class="tsd-panel-group tsd-member-group">
88<h2>Properties</h2>
3bd6a82e 89<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="captureRejectionSymbol" class="tsd-anchor"></a>
15d6dfaf 90<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <code class="tsd-tag ts-flagReadonly">Readonly</code> <span>capture<wbr/>Rejection<wbr/>Symbol</span><a href="#captureRejectionSymbol" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
811dc01f 91<div class="tsd-signature"><span class="tsd-kind-property">capture<wbr/>Rejection<wbr/>Symbol</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">typeof </span><a href="PoolEmitter.html#captureRejectionSymbol" class="tsd-signature-type tsd-kind-property">captureRejectionSymbol</a></div>
92<div class="tsd-comment tsd-typography"><p>Value: <code>Symbol.for(&#39;nodejs.rejection&#39;)</code></p>
93<p>See how to write a custom <code>rejection handler</code>.</p>
15d6dfaf 94</div>
95<div class="tsd-comment tsd-typography">
96<h4>Since</h4><p>v13.4.0, v12.16.0</p>
811dc01f 97</div><aside class="tsd-sources">
912e1dfa 98<p>Inherited from EventEmitter.captureRejectionSymbol</p>
41015374 99<ul>
7ab352a6 100<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:390</li></ul></aside></section>
3bd6a82e 101<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="captureRejections" class="tsd-anchor"></a>
15d6dfaf 102<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>capture<wbr/>Rejections</span><a href="#captureRejections" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
8d1797ad 103<div class="tsd-signature"><span class="tsd-kind-property">capture<wbr/>Rejections</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
811dc01f 104<div class="tsd-comment tsd-typography"><p>Value: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Boolean_type">boolean</a></p>
105<p>Change the default <code>captureRejections</code> option on all new <code>EventEmitter</code> objects.</p>
15d6dfaf 106</div>
107<div class="tsd-comment tsd-typography">
108<h4>Since</h4><p>v13.4.0, v12.16.0</p>
41015374 109</div><aside class="tsd-sources">
912e1dfa 110<p>Inherited from EventEmitter.captureRejections</p>
41015374 111<ul>
7ab352a6 112<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:397</li></ul></aside></section>
3bd6a82e 113<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="defaultMaxListeners" class="tsd-anchor"></a>
15d6dfaf 114<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>default<wbr/>Max<wbr/>Listeners</span><a href="#defaultMaxListeners" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
811dc01f 115<div class="tsd-signature"><span class="tsd-kind-property">default<wbr/>Max<wbr/>Listeners</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
116<div class="tsd-comment tsd-typography"><p>By default, a maximum of <code>10</code> listeners can be registered for any single
117event. This limit can be changed for individual <code>EventEmitter</code> instances
118using the <code>emitter.setMaxListeners(n)</code> method. To change the default
119for <em>all</em><code>EventEmitter</code> instances, the <code>events.defaultMaxListeners</code>property can be used. If this value is not a positive number, a <code>RangeError</code>is thrown.</p>
120<p>Take caution when setting the <code>events.defaultMaxListeners</code> because the
121change affects <em>all</em><code>EventEmitter</code> instances, including those created before
122the change is made. However, calling <code>emitter.setMaxListeners(n)</code> still has
123precedence over <code>events.defaultMaxListeners</code>.</p>
124<p>This is not a hard limit. The <code>EventEmitter</code> instance will allow
125more listeners to be added but will output a trace warning to stderr indicating
126that a &quot;possible EventEmitter memory leak&quot; has been detected. For any single<code>EventEmitter</code>, the <code>emitter.getMaxListeners()</code> and <code>emitter.setMaxListeners()</code>methods can be used to
127temporarily avoid this warning:</p>
128<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">emitter</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">setMaxListeners</span><span class="hl-0">(</span><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">getMaxListeners</span><span class="hl-0">() + </span><span class="hl-1">1</span><span class="hl-0">);</span><br/><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-8">// do stuff</span><br/><span class="hl-0"> </span><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">setMaxListeners</span><span class="hl-0">(</span><span class="hl-3">Math</span><span class="hl-0">.</span><span class="hl-2">max</span><span class="hl-0">(</span><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">getMaxListeners</span><span class="hl-0">() - </span><span class="hl-1">1</span><span class="hl-0">, </span><span class="hl-1">0</span><span class="hl-0">));</span><br/><span class="hl-0">});</span>
129</code><button>Copy</button></pre>
130<p>The <code>--trace-warnings</code> command-line flag can be used to display the
131stack trace for such warnings.</p>
132<p>The emitted warning can be inspected with <code>process.on(&#39;warning&#39;)</code> and will
133have the additional <code>emitter</code>, <code>type</code>, and <code>count</code> properties, referring to
134the event emitter instance, the event&#39;s name and the number of attached
135listeners, respectively.
136Its <code>name</code> property is set to <code>&#39;MaxListenersExceededWarning&#39;</code>.</p>
15d6dfaf 137</div>
138<div class="tsd-comment tsd-typography">
139<h4>Since</h4><p>v0.11.2</p>
811dc01f 140</div><aside class="tsd-sources">
912e1dfa 141<p>Inherited from EventEmitter.defaultMaxListeners</p>
41015374 142<ul>
7ab352a6 143<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:434</li></ul></aside></section>
3bd6a82e 144<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="errorMonitor" class="tsd-anchor"></a>
15d6dfaf 145<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <code class="tsd-tag ts-flagReadonly">Readonly</code> <span>error<wbr/>Monitor</span><a href="#errorMonitor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
8d1797ad 146<div class="tsd-signature"><span class="tsd-kind-property">error<wbr/>Monitor</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">typeof </span><a href="PoolEmitter.html#errorMonitor" class="tsd-signature-type tsd-kind-property">errorMonitor</a></div>
811dc01f 147<div class="tsd-comment tsd-typography"><p>This symbol shall be used to install a listener for only monitoring <code>&#39;error&#39;</code>events. Listeners installed using this symbol are called before the regular<code>&#39;error&#39;</code> listeners are called.</p>
148<p>Installing a listener using this symbol does not change the behavior once an<code>&#39;error&#39;</code> event is emitted. Therefore, the process will still crash if no
41015374 149regular <code>&#39;error&#39;</code> listener is installed.</p>
15d6dfaf 150</div>
151<div class="tsd-comment tsd-typography">
152<h4>Since</h4><p>v13.6.0, v12.17.0</p>
41015374 153</div><aside class="tsd-sources">
912e1dfa 154<p>Inherited from EventEmitter.errorMonitor</p>
41015374 155<ul>
7ab352a6 156<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:383</li></ul></aside></section></section>
41015374
JB
157<section class="tsd-panel-group tsd-member-group">
158<h2>Methods</h2>
3bd6a82e 159<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="addListener" class="tsd-anchor"></a>
15d6dfaf 160<h3 class="tsd-anchor-link"><span>add<wbr/>Listener</span><a href="#addListener" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 161<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 162<li class="tsd-signature tsd-anchor-link" id="addListener.addListener-1"><span class="tsd-kind-call-signature">add<wbr/>Listener</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#addListener.addListener-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
163<li class="tsd-description">
164<div class="tsd-comment tsd-typography"><p>Alias for <code>emitter.on(eventName, listener)</code>.</p>
41015374
JB
165</div>
166<div class="tsd-parameters">
167<h4 class="tsd-parameters-title">Parameters</h4>
168<ul class="tsd-parameter-list">
169<li>
3bd6a82e 170<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li>
41015374 171<li>
3bd6a82e 172<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
41015374
JB
173<ul class="tsd-parameters">
174<li class="tsd-parameter-signature">
3bd6a82e 175<ul class="tsd-signatures tsd-is-external">
176<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
41015374
JB
177<li class="tsd-description">
178<div class="tsd-parameters">
179<h4 class="tsd-parameters-title">Parameters</h4>
180<ul class="tsd-parameter-list">
181<li>
323daa7f 182<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
41015374 183<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
15d6dfaf 184<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
185<div class="tsd-comment tsd-typography">
186<h4>Since</h4><p>v0.1.26</p>
187</div><aside class="tsd-sources">
912e1dfa 188<p>Inherited from EventEmitter.addListener</p>
41015374 189<ul>
7ab352a6 190<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:454</li></ul></aside></li></ul></section>
3bd6a82e 191<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="emit" class="tsd-anchor"></a>
15d6dfaf 192<h3 class="tsd-anchor-link"><span>emit</span><a href="#emit" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 193<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 194<li class="tsd-signature tsd-anchor-link" id="emit.emit-1"><span class="tsd-kind-call-signature">emit</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><a href="#emit.emit-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
195<li class="tsd-description">
196<div class="tsd-comment tsd-typography"><p>Synchronously calls each of the listeners registered for the event named<code>eventName</code>, in the order they were registered, passing the supplied arguments
197to each.</p>
198<p>Returns <code>true</code> if the event had listeners, <code>false</code> otherwise.</p>
2c94c3a5 199<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">myEmitter</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-8">// First listener</span><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, </span><span class="hl-4">function</span><span class="hl-0"> </span><span class="hl-2">firstListener</span><span class="hl-0">() {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;Helloooo! first listener&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">});</span><br/><span class="hl-8">// Second listener</span><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, </span><span class="hl-4">function</span><span class="hl-0"> </span><span class="hl-2">secondListener</span><span class="hl-0">(</span><span class="hl-3">arg1</span><span class="hl-0">, </span><span class="hl-3">arg2</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">`event with parameters </span><span class="hl-4">${</span><span class="hl-3">arg1</span><span class="hl-4">}</span><span class="hl-6">, </span><span class="hl-4">${</span><span class="hl-3">arg2</span><span class="hl-4">}</span><span class="hl-6"> in second listener`</span><span class="hl-0">);</span><br/><span class="hl-0">});</span><br/><span class="hl-8">// Third listener</span><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, </span><span class="hl-4">function</span><span class="hl-0"> </span><span class="hl-2">thirdListener</span><span class="hl-0">(...</span><span class="hl-3">args</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">parameters</span><span class="hl-0"> = </span><span class="hl-3">args</span><span class="hl-0">.</span><span class="hl-2">join</span><span class="hl-0">(</span><span class="hl-6">&#39;, &#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">`event with parameters </span><span class="hl-4">${</span><span class="hl-3">parameters</span><span class="hl-4">}</span><span class="hl-6"> in third listener`</span><span class="hl-0">);</span><br/><span class="hl-0">});</span><br/><br/><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">listeners</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">));</span><br/><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, </span><span class="hl-1">1</span><span class="hl-0">, </span><span class="hl-1">2</span><span class="hl-0">, </span><span class="hl-1">3</span><span class="hl-0">, </span><span class="hl-1">4</span><span class="hl-0">, </span><span class="hl-1">5</span><span class="hl-0">);</span><br/><br/><span class="hl-8">// Prints:</span><br/><span class="hl-8">// [</span><br/><span class="hl-8">// [Function: firstListener],</span><br/><span class="hl-8">// [Function: secondListener],</span><br/><span class="hl-8">// [Function: thirdListener]</span><br/><span class="hl-8">// ]</span><br/><span class="hl-8">// Helloooo! first listener</span><br/><span class="hl-8">// event with parameters 1, 2 in second listener</span><br/><span class="hl-8">// event with parameters 1, 2, 3, 4, 5 in third listener</span>
fab6d3b5 200</code><button>Copy</button></pre>
41015374
JB
201</div>
202<div class="tsd-parameters">
203<h4 class="tsd-parameters-title">Parameters</h4>
204<ul class="tsd-parameter-list">
205<li>
3bd6a82e 206<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li>
41015374 207<li>
323daa7f 208<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
15d6dfaf 209<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4>
210<div class="tsd-comment tsd-typography">
211<h4>Since</h4><p>v0.1.26</p>
212</div><aside class="tsd-sources">
912e1dfa 213<p>Inherited from EventEmitter.emit</p>
41015374 214<ul>
7ab352a6 215<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:716</li></ul></aside></li></ul></section>
3bd6a82e 216<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="eventNames" class="tsd-anchor"></a>
15d6dfaf 217<h3 class="tsd-anchor-link"><span>event<wbr/>Names</span><a href="#eventNames" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 218<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 219<li class="tsd-signature tsd-anchor-link" id="eventNames.eventNames-1"><span class="tsd-kind-call-signature">event<wbr/>Names</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span><a href="#eventNames.eventNames-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
220<li class="tsd-description">
221<div class="tsd-comment tsd-typography"><p>Returns an array listing the events for which the emitter has registered
222listeners. The values in the array are strings or <code>Symbol</code>s.</p>
2c94c3a5 223<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">myEE</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {});</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;bar&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {});</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">sym</span><span class="hl-0"> = </span><span class="hl-2">Symbol</span><span class="hl-0">(</span><span class="hl-6">&#39;symbol&#39;</span><span class="hl-0">);</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-3">sym</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {});</span><br/><br/><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">eventNames</span><span class="hl-0">());</span><br/><span class="hl-8">// Prints: [ &#39;foo&#39;, &#39;bar&#39;, Symbol(symbol) ]</span>
fab6d3b5 224</code><button>Copy</button></pre>
41015374 225</div>
15d6dfaf 226<h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">(</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></h4>
227<div class="tsd-comment tsd-typography">
228<h4>Since</h4><p>v6.0.0</p>
229</div><aside class="tsd-sources">
912e1dfa 230<p>Inherited from EventEmitter.eventNames</p>
41015374 231<ul>
7ab352a6 232<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:779</li></ul></aside></li></ul></section>
3bd6a82e 233<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="getMaxListeners" class="tsd-anchor"></a>
15d6dfaf 234<h3 class="tsd-anchor-link"><span>get<wbr/>Max<wbr/>Listeners</span><a href="#getMaxListeners" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 235<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 236<li class="tsd-signature tsd-anchor-link" id="getMaxListeners.getMaxListeners-1"><span class="tsd-kind-call-signature">get<wbr/>Max<wbr/>Listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#getMaxListeners.getMaxListeners-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
237<li class="tsd-description">
238<div class="tsd-comment tsd-typography"><p>Returns the current max listener value for the <code>EventEmitter</code> which is either
8d1797ad 239set by <code>emitter.setMaxListeners(n)</code> or defaults to <a href="PoolEmitter.html#defaultMaxListeners" class="tsd-kind-property">defaultMaxListeners</a>.</p>
41015374 240</div>
15d6dfaf 241<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
242<div class="tsd-comment tsd-typography">
243<h4>Since</h4><p>v1.0.0</p>
244</div><aside class="tsd-sources">
912e1dfa 245<p>Inherited from EventEmitter.getMaxListeners</p>
41015374 246<ul>
7ab352a6 247<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:631</li></ul></aside></li></ul></section>
3bd6a82e 248<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="listenerCount" class="tsd-anchor"></a>
15d6dfaf 249<h3 class="tsd-anchor-link"><span>listener<wbr/>Count</span><a href="#listenerCount" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 250<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 251<li class="tsd-signature tsd-anchor-link" id="listenerCount.listenerCount-1"><span class="tsd-kind-call-signature">listener<wbr/>Count</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#listenerCount.listenerCount-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374 252<li class="tsd-description">
2c94c3a5 253<div class="tsd-comment tsd-typography"><p>Returns the number of listeners listening for the event named <code>eventName</code>.
254If <code>listener</code> is provided, it will return how many times the listener is found
255in the list of the listeners of the event.</p>
41015374
JB
256</div>
257<div class="tsd-parameters">
258<h4 class="tsd-parameters-title">Parameters</h4>
259<ul class="tsd-parameter-list">
260<li>
3bd6a82e 261<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5>
41015374 262<div class="tsd-comment tsd-typography"><p>The name of the event being listened for</p>
323daa7f 263</div></li>
65ec4e64 264<li>
265<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-type ">Function</span></h5>
266<div class="tsd-comment tsd-typography"><p>The event handler function</p>
323daa7f 267</div><code class="tsd-tag ts-flagOptional">Optional</code> </li></ul></div>
15d6dfaf 268<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
269<div class="tsd-comment tsd-typography">
270<h4>Since</h4><p>v3.2.0</p>
271</div><aside class="tsd-sources">
912e1dfa 272<p>Inherited from EventEmitter.listenerCount</p>
41015374 273<ul>
7ab352a6 274<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:725</li></ul></aside></li></ul></section>
3bd6a82e 275<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="listeners" class="tsd-anchor"></a>
15d6dfaf 276<h3 class="tsd-anchor-link"><span>listeners</span><a href="#listeners" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 277<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 278<li class="tsd-signature tsd-anchor-link" id="listeners.listeners-1"><span class="tsd-kind-call-signature">listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Function</span><span class="tsd-signature-symbol">[]</span><a href="#listeners.listeners-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
279<li class="tsd-description">
280<div class="tsd-comment tsd-typography"><p>Returns a copy of the array of listeners for the event named <code>eventName</code>.</p>
2c94c3a5 281<pre><code class="language-js"><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">, (</span><span class="hl-3">stream</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;someone connected!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">});</span><br/><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-3">util</span><span class="hl-0">.</span><span class="hl-2">inspect</span><span class="hl-0">(</span><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">listeners</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">)));</span><br/><span class="hl-8">// Prints: [ [Function] ]</span>
fab6d3b5 282</code><button>Copy</button></pre>
41015374
JB
283</div>
284<div class="tsd-parameters">
285<h4 class="tsd-parameters-title">Parameters</h4>
286<ul class="tsd-parameter-list">
287<li>
3bd6a82e 288<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li></ul></div>
15d6dfaf 289<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Function</span><span class="tsd-signature-symbol">[]</span></h4>
290<div class="tsd-comment tsd-typography">
291<h4>Since</h4><p>v0.1.26</p>
292</div><aside class="tsd-sources">
912e1dfa 293<p>Inherited from EventEmitter.listeners</p>
41015374 294<ul>
7ab352a6 295<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:644</li></ul></aside></li></ul></section>
3bd6a82e 296<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="off" class="tsd-anchor"></a>
15d6dfaf 297<h3 class="tsd-anchor-link"><span>off</span><a href="#off" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 298<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 299<li class="tsd-signature tsd-anchor-link" id="off.off-1"><span class="tsd-kind-call-signature">off</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#off.off-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
300<li class="tsd-description">
301<div class="tsd-comment tsd-typography"><p>Alias for <code>emitter.removeListener()</code>.</p>
41015374
JB
302</div>
303<div class="tsd-parameters">
304<h4 class="tsd-parameters-title">Parameters</h4>
305<ul class="tsd-parameter-list">
306<li>
3bd6a82e 307<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li>
41015374 308<li>
3bd6a82e 309<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
41015374
JB
310<ul class="tsd-parameters">
311<li class="tsd-parameter-signature">
3bd6a82e 312<ul class="tsd-signatures tsd-is-external">
313<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
41015374
JB
314<li class="tsd-description">
315<div class="tsd-parameters">
316<h4 class="tsd-parameters-title">Parameters</h4>
317<ul class="tsd-parameter-list">
318<li>
323daa7f 319<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
41015374 320<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
15d6dfaf 321<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
322<div class="tsd-comment tsd-typography">
323<h4>Since</h4><p>v10.0.0</p>
324</div><aside class="tsd-sources">
912e1dfa 325<p>Inherited from EventEmitter.off</p>
41015374 326<ul>
7ab352a6 327<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:604</li></ul></aside></li></ul></section>
3bd6a82e 328<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="on" class="tsd-anchor"></a>
15d6dfaf 329<h3 class="tsd-anchor-link"><span>on</span><a href="#on" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 330<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 331<li class="tsd-signature tsd-anchor-link" id="on.on-1"><span class="tsd-kind-call-signature">on</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#on.on-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
332<li class="tsd-description">
333<div class="tsd-comment tsd-typography"><p>Adds the <code>listener</code> function to the end of the listeners array for the
334event named <code>eventName</code>. No checks are made to see if the <code>listener</code> has
335already been added. Multiple calls passing the same combination of <code>eventName</code>and <code>listener</code> will result in the <code>listener</code> being added, and called, multiple
336times.</p>
842d8918 337<pre><code class="language-js"><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">, (</span><span class="hl-3">stream</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;someone connected!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">});</span>
fab6d3b5 338</code><button>Copy</button></pre>
41015374
JB
339<p>Returns a reference to the <code>EventEmitter</code>, so that calls can be chained.</p>
340<p>By default, event listeners are invoked in the order they are added. The<code>emitter.prependListener()</code> method can be used as an alternative to add the
341event listener to the beginning of the listeners array.</p>
2c94c3a5 342<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">myEE</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;a&#39;</span><span class="hl-0">));</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">prependListener</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;b&#39;</span><span class="hl-0">));</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">);</span><br/><span class="hl-8">// Prints:</span><br/><span class="hl-8">// b</span><br/><span class="hl-8">// a</span>
fab6d3b5 343</code><button>Copy</button></pre>
41015374
JB
344</div>
345<div class="tsd-parameters">
346<h4 class="tsd-parameters-title">Parameters</h4>
347<ul class="tsd-parameter-list">
348<li>
3bd6a82e 349<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5>
41015374 350<div class="tsd-comment tsd-typography"><p>The name of the event.</p>
323daa7f 351</div></li>
41015374 352<li>
3bd6a82e 353<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
41015374
JB
354<div class="tsd-comment tsd-typography"><p>The callback function</p>
355</div>
356<ul class="tsd-parameters">
357<li class="tsd-parameter-signature">
3bd6a82e 358<ul class="tsd-signatures tsd-is-external">
359<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
41015374
JB
360<li class="tsd-description">
361<div class="tsd-parameters">
362<h4 class="tsd-parameters-title">Parameters</h4>
363<ul class="tsd-parameter-list">
364<li>
323daa7f 365<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
41015374 366<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
15d6dfaf 367<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
368<div class="tsd-comment tsd-typography">
369<h4>Since</h4><p>v0.1.101</p>
370</div><aside class="tsd-sources">
912e1dfa 371<p>Inherited from EventEmitter.on</p>
41015374 372<ul>
7ab352a6 373<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:486</li></ul></aside></li></ul></section>
3bd6a82e 374<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="once" class="tsd-anchor"></a>
15d6dfaf 375<h3 class="tsd-anchor-link"><span>once</span><a href="#once" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 376<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 377<li class="tsd-signature tsd-anchor-link" id="once.once-1"><span class="tsd-kind-call-signature">once</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#once.once-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
378<li class="tsd-description">
379<div class="tsd-comment tsd-typography"><p>Adds a <strong>one-time</strong><code>listener</code> function for the event named <code>eventName</code>. The
380next time <code>eventName</code> is triggered, this listener is removed and then invoked.</p>
842d8918 381<pre><code class="language-js"><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">, (</span><span class="hl-3">stream</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;Ah, we have our first user!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">});</span>
fab6d3b5 382</code><button>Copy</button></pre>
41015374
JB
383<p>Returns a reference to the <code>EventEmitter</code>, so that calls can be chained.</p>
384<p>By default, event listeners are invoked in the order they are added. The<code>emitter.prependOnceListener()</code> method can be used as an alternative to add the
385event listener to the beginning of the listeners array.</p>
2c94c3a5 386<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">myEE</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;a&#39;</span><span class="hl-0">));</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">prependOnceListener</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;b&#39;</span><span class="hl-0">));</span><br/><span class="hl-3">myEE</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">);</span><br/><span class="hl-8">// Prints:</span><br/><span class="hl-8">// b</span><br/><span class="hl-8">// a</span>
fab6d3b5 387</code><button>Copy</button></pre>
41015374
JB
388</div>
389<div class="tsd-parameters">
390<h4 class="tsd-parameters-title">Parameters</h4>
391<ul class="tsd-parameter-list">
392<li>
3bd6a82e 393<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5>
41015374 394<div class="tsd-comment tsd-typography"><p>The name of the event.</p>
323daa7f 395</div></li>
41015374 396<li>
3bd6a82e 397<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
41015374
JB
398<div class="tsd-comment tsd-typography"><p>The callback function</p>
399</div>
400<ul class="tsd-parameters">
401<li class="tsd-parameter-signature">
3bd6a82e 402<ul class="tsd-signatures tsd-is-external">
403<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
41015374
JB
404<li class="tsd-description">
405<div class="tsd-parameters">
406<h4 class="tsd-parameters-title">Parameters</h4>
407<ul class="tsd-parameter-list">
408<li>
323daa7f 409<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
41015374 410<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
15d6dfaf 411<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
412<div class="tsd-comment tsd-typography">
413<h4>Since</h4><p>v0.3.0</p>
414</div><aside class="tsd-sources">
912e1dfa 415<p>Inherited from EventEmitter.once</p>
41015374 416<ul>
7ab352a6 417<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:516</li></ul></aside></li></ul></section>
3bd6a82e 418<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="prependListener" class="tsd-anchor"></a>
15d6dfaf 419<h3 class="tsd-anchor-link"><span>prepend<wbr/>Listener</span><a href="#prependListener" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 420<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 421<li class="tsd-signature tsd-anchor-link" id="prependListener.prependListener-1"><span class="tsd-kind-call-signature">prepend<wbr/>Listener</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#prependListener.prependListener-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
422<li class="tsd-description">
423<div class="tsd-comment tsd-typography"><p>Adds the <code>listener</code> function to the <em>beginning</em> of the listeners array for the
424event named <code>eventName</code>. No checks are made to see if the <code>listener</code> has
425already been added. Multiple calls passing the same combination of <code>eventName</code>and <code>listener</code> will result in the <code>listener</code> being added, and called, multiple
426times.</p>
842d8918 427<pre><code class="language-js"><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">prependListener</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">, (</span><span class="hl-3">stream</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;someone connected!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">});</span>
fab6d3b5 428</code><button>Copy</button></pre>
41015374 429<p>Returns a reference to the <code>EventEmitter</code>, so that calls can be chained.</p>
41015374
JB
430</div>
431<div class="tsd-parameters">
432<h4 class="tsd-parameters-title">Parameters</h4>
433<ul class="tsd-parameter-list">
434<li>
3bd6a82e 435<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5>
41015374 436<div class="tsd-comment tsd-typography"><p>The name of the event.</p>
323daa7f 437</div></li>
41015374 438<li>
3bd6a82e 439<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
41015374
JB
440<div class="tsd-comment tsd-typography"><p>The callback function</p>
441</div>
442<ul class="tsd-parameters">
443<li class="tsd-parameter-signature">
3bd6a82e 444<ul class="tsd-signatures tsd-is-external">
445<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
41015374
JB
446<li class="tsd-description">
447<div class="tsd-parameters">
448<h4 class="tsd-parameters-title">Parameters</h4>
449<ul class="tsd-parameter-list">
450<li>
323daa7f 451<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
41015374 452<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
15d6dfaf 453<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
454<div class="tsd-comment tsd-typography">
455<h4>Since</h4><p>v6.0.0</p>
456</div><aside class="tsd-sources">
912e1dfa 457<p>Inherited from EventEmitter.prependListener</p>
41015374 458<ul>
7ab352a6 459<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:743</li></ul></aside></li></ul></section>
3bd6a82e 460<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="prependOnceListener" class="tsd-anchor"></a>
15d6dfaf 461<h3 class="tsd-anchor-link"><span>prepend<wbr/>Once<wbr/>Listener</span><a href="#prependOnceListener" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 462<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 463<li class="tsd-signature tsd-anchor-link" id="prependOnceListener.prependOnceListener-1"><span class="tsd-kind-call-signature">prepend<wbr/>Once<wbr/>Listener</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#prependOnceListener.prependOnceListener-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
464<li class="tsd-description">
465<div class="tsd-comment tsd-typography"><p>Adds a <strong>one-time</strong><code>listener</code> function for the event named <code>eventName</code> to the <em>beginning</em> of the listeners array. The next time <code>eventName</code> is triggered, this
466listener is removed, and then invoked.</p>
842d8918 467<pre><code class="language-js"><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">prependOnceListener</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">, (</span><span class="hl-3">stream</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;Ah, we have our first user!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">});</span>
fab6d3b5 468</code><button>Copy</button></pre>
41015374 469<p>Returns a reference to the <code>EventEmitter</code>, so that calls can be chained.</p>
41015374
JB
470</div>
471<div class="tsd-parameters">
472<h4 class="tsd-parameters-title">Parameters</h4>
473<ul class="tsd-parameter-list">
474<li>
3bd6a82e 475<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5>
41015374 476<div class="tsd-comment tsd-typography"><p>The name of the event.</p>
323daa7f 477</div></li>
41015374 478<li>
3bd6a82e 479<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
41015374
JB
480<div class="tsd-comment tsd-typography"><p>The callback function</p>
481</div>
482<ul class="tsd-parameters">
483<li class="tsd-parameter-signature">
3bd6a82e 484<ul class="tsd-signatures tsd-is-external">
485<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
41015374
JB
486<li class="tsd-description">
487<div class="tsd-parameters">
488<h4 class="tsd-parameters-title">Parameters</h4>
489<ul class="tsd-parameter-list">
490<li>
323daa7f 491<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
41015374 492<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
15d6dfaf 493<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
494<div class="tsd-comment tsd-typography">
495<h4>Since</h4><p>v6.0.0</p>
496</div><aside class="tsd-sources">
912e1dfa 497<p>Inherited from EventEmitter.prependOnceListener</p>
41015374 498<ul>
7ab352a6 499<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:759</li></ul></aside></li></ul></section>
3bd6a82e 500<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="rawListeners" class="tsd-anchor"></a>
15d6dfaf 501<h3 class="tsd-anchor-link"><span>raw<wbr/>Listeners</span><a href="#rawListeners" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 502<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 503<li class="tsd-signature tsd-anchor-link" id="rawListeners.rawListeners-1"><span class="tsd-kind-call-signature">raw<wbr/>Listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Function</span><span class="tsd-signature-symbol">[]</span><a href="#rawListeners.rawListeners-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
504<li class="tsd-description">
505<div class="tsd-comment tsd-typography"><p>Returns a copy of the array of listeners for the event named <code>eventName</code>,
506including any wrappers (such as those created by <code>.once()</code>).</p>
2c94c3a5 507<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">emitter</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-6">&#39;log&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;log once&#39;</span><span class="hl-0">));</span><br/><br/><span class="hl-8">// Returns a new Array with a function `onceWrapper` which has a property</span><br/><span class="hl-8">// `listener` which contains the original listener bound above</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">listeners</span><span class="hl-0"> = </span><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">rawListeners</span><span class="hl-0">(</span><span class="hl-6">&#39;log&#39;</span><span class="hl-0">);</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">logFnWrapper</span><span class="hl-0"> = </span><span class="hl-3">listeners</span><span class="hl-0">[</span><span class="hl-1">0</span><span class="hl-0">];</span><br/><br/><span class="hl-8">// Logs &quot;log once&quot; to the console and does not unbind the `once` event</span><br/><span class="hl-3">logFnWrapper</span><span class="hl-0">.</span><span class="hl-2">listener</span><span class="hl-0">();</span><br/><br/><span class="hl-8">// Logs &quot;log once&quot; to the console and removes the listener</span><br/><span class="hl-2">logFnWrapper</span><span class="hl-0">();</span><br/><br/><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;log&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;log persistently&#39;</span><span class="hl-0">));</span><br/><span class="hl-8">// Will return a new Array with a single function bound by `.on()` above</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">newListeners</span><span class="hl-0"> = </span><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">rawListeners</span><span class="hl-0">(</span><span class="hl-6">&#39;log&#39;</span><span class="hl-0">);</span><br/><br/><span class="hl-8">// Logs &quot;log persistently&quot; twice</span><br/><span class="hl-3">newListeners</span><span class="hl-0">[</span><span class="hl-1">0</span><span class="hl-0">]();</span><br/><span class="hl-3">emitter</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;log&#39;</span><span class="hl-0">);</span>
fab6d3b5 508</code><button>Copy</button></pre>
41015374
JB
509</div>
510<div class="tsd-parameters">
511<h4 class="tsd-parameters-title">Parameters</h4>
512<ul class="tsd-parameter-list">
513<li>
3bd6a82e 514<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li></ul></div>
15d6dfaf 515<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Function</span><span class="tsd-signature-symbol">[]</span></h4>
516<div class="tsd-comment tsd-typography">
517<h4>Since</h4><p>v9.4.0</p>
518</div><aside class="tsd-sources">
912e1dfa 519<p>Inherited from EventEmitter.rawListeners</p>
41015374 520<ul>
7ab352a6 521<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:675</li></ul></aside></li></ul></section>
3bd6a82e 522<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="removeAllListeners" class="tsd-anchor"></a>
15d6dfaf 523<h3 class="tsd-anchor-link"><span>remove<wbr/>All<wbr/>Listeners</span><a href="#removeAllListeners" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 524<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 525<li class="tsd-signature tsd-anchor-link" id="removeAllListeners.removeAllListeners-1"><span class="tsd-kind-call-signature">remove<wbr/>All<wbr/>Listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">event</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#removeAllListeners.removeAllListeners-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
526<li class="tsd-description">
527<div class="tsd-comment tsd-typography"><p>Removes all listeners, or those of the specified <code>eventName</code>.</p>
528<p>It is bad practice to remove listeners added elsewhere in the code,
529particularly when the <code>EventEmitter</code> instance was created by some other
530component or module (e.g. sockets or file streams).</p>
531<p>Returns a reference to the <code>EventEmitter</code>, so that calls can be chained.</p>
41015374
JB
532</div>
533<div class="tsd-parameters">
534<h4 class="tsd-parameters-title">Parameters</h4>
535<ul class="tsd-parameter-list">
536<li>
323daa7f 537<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">event</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5><code class="tsd-tag ts-flagOptional">Optional</code> </li></ul></div>
15d6dfaf 538<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
539<div class="tsd-comment tsd-typography">
540<h4>Since</h4><p>v0.1.26</p>
541</div><aside class="tsd-sources">
912e1dfa 542<p>Inherited from EventEmitter.removeAllListeners</p>
41015374 543<ul>
7ab352a6 544<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:615</li></ul></aside></li></ul></section>
3bd6a82e 545<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="removeListener" class="tsd-anchor"></a>
15d6dfaf 546<h3 class="tsd-anchor-link"><span>remove<wbr/>Listener</span><a href="#removeListener" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 547<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 548<li class="tsd-signature tsd-anchor-link" id="removeListener.removeListener-1"><span class="tsd-kind-call-signature">remove<wbr/>Listener</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">listener</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#removeListener.removeListener-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
549<li class="tsd-description">
550<div class="tsd-comment tsd-typography"><p>Removes the specified <code>listener</code> from the listener array for the event named<code>eventName</code>.</p>
2c94c3a5 551<pre><code class="language-js"><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-2">callback</span><span class="hl-0"> = (</span><span class="hl-3">stream</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;someone connected!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">};</span><br/><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">, </span><span class="hl-3">callback</span><span class="hl-0">);</span><br/><span class="hl-8">// ...</span><br/><span class="hl-3">server</span><span class="hl-0">.</span><span class="hl-2">removeListener</span><span class="hl-0">(</span><span class="hl-6">&#39;connection&#39;</span><span class="hl-0">, </span><span class="hl-3">callback</span><span class="hl-0">);</span>
fab6d3b5 552</code><button>Copy</button></pre>
41015374
JB
553<p><code>removeListener()</code> will remove, at most, one instance of a listener from the
554listener array. If any single listener has been added multiple times to the
555listener array for the specified <code>eventName</code>, then <code>removeListener()</code> must be
556called multiple times to remove each instance.</p>
557<p>Once an event is emitted, all listeners attached to it at the
558time of emitting are called in order. This implies that any<code>removeListener()</code> or <code>removeAllListeners()</code> calls <em>after</em> emitting and <em>before</em> the last listener finishes execution
559will not remove them from<code>emit()</code> in progress. Subsequent events behave as expected.</p>
2c94c3a5 560<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-4">class</span><span class="hl-0"> </span><span class="hl-9">MyEmitter</span><span class="hl-0"> </span><span class="hl-4">extends</span><span class="hl-0"> </span><span class="hl-9">EventEmitter</span><span class="hl-0"> {}</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">myEmitter</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">MyEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-2">callbackA</span><span class="hl-0"> = () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;A&#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">removeListener</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, </span><span class="hl-3">callbackB</span><span class="hl-0">);</span><br/><span class="hl-0">};</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-2">callbackB</span><span class="hl-0"> = () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;B&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">};</span><br/><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, </span><span class="hl-3">callbackA</span><span class="hl-0">);</span><br/><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, </span><span class="hl-3">callbackB</span><span class="hl-0">);</span><br/><br/><span class="hl-8">// callbackA removes listener callbackB but it will still be called.</span><br/><span class="hl-8">// Internal listener array at time of emit [callbackA, callbackB]</span><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">);</span><br/><span class="hl-8">// Prints:</span><br/><span class="hl-8">// A</span><br/><span class="hl-8">// B</span><br/><br/><span class="hl-8">// callbackB is now removed.</span><br/><span class="hl-8">// Internal listener array [callbackA]</span><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">);</span><br/><span class="hl-8">// Prints:</span><br/><span class="hl-8">// A</span>
fab6d3b5 561</code><button>Copy</button></pre>
41015374
JB
562<p>Because listeners are managed using an internal array, calling this will
563change the position indices of any listener registered <em>after</em> the listener
564being removed. This will not impact the order in which listeners are called,
565but it means that any copies of the listener array as returned by
566the <code>emitter.listeners()</code> method will need to be recreated.</p>
567<p>When a single function has been added as a handler multiple times for a single
568event (as in the example below), <code>removeListener()</code> will remove the most
569recently added instance. In the example the <code>once(&#39;ping&#39;)</code>listener is removed:</p>
2c94c3a5 570<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-4">function</span><span class="hl-0"> </span><span class="hl-2">pong</span><span class="hl-0">() {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;pong&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">}</span><br/><br/><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;ping&#39;</span><span class="hl-0">, </span><span class="hl-3">pong</span><span class="hl-0">);</span><br/><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-6">&#39;ping&#39;</span><span class="hl-0">, </span><span class="hl-3">pong</span><span class="hl-0">);</span><br/><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">removeListener</span><span class="hl-0">(</span><span class="hl-6">&#39;ping&#39;</span><span class="hl-0">, </span><span class="hl-3">pong</span><span class="hl-0">);</span><br/><br/><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;ping&#39;</span><span class="hl-0">);</span><br/><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;ping&#39;</span><span class="hl-0">);</span>
fab6d3b5 571</code><button>Copy</button></pre>
41015374 572<p>Returns a reference to the <code>EventEmitter</code>, so that calls can be chained.</p>
41015374
JB
573</div>
574<div class="tsd-parameters">
575<h4 class="tsd-parameters-title">Parameters</h4>
576<ul class="tsd-parameter-list">
577<li>
3bd6a82e 578<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li>
41015374 579<li>
3bd6a82e 580<h5><span class="tsd-kind-parameter">listener</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
41015374
JB
581<ul class="tsd-parameters">
582<li class="tsd-parameter-signature">
3bd6a82e 583<ul class="tsd-signatures tsd-is-external">
584<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
41015374
JB
585<li class="tsd-description">
586<div class="tsd-parameters">
587<h4 class="tsd-parameters-title">Parameters</h4>
588<ul class="tsd-parameter-list">
589<li>
323daa7f 590<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">args</span>: <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
41015374 591<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
15d6dfaf 592<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
593<div class="tsd-comment tsd-typography">
594<h4>Since</h4><p>v0.1.26</p>
595</div><aside class="tsd-sources">
912e1dfa 596<p>Inherited from EventEmitter.removeListener</p>
41015374 597<ul>
7ab352a6 598<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:599</li></ul></aside></li></ul></section>
3bd6a82e 599<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="setMaxListeners" class="tsd-anchor"></a>
15d6dfaf 600<h3 class="tsd-anchor-link"><span>set<wbr/>Max<wbr/>Listeners</span><a href="#setMaxListeners" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 601<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 602<li class="tsd-signature tsd-anchor-link" id="setMaxListeners.setMaxListeners-1"><span class="tsd-kind-call-signature">set<wbr/>Max<wbr/>Listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">n</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a><a href="#setMaxListeners.setMaxListeners-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
603<li class="tsd-description">
604<div class="tsd-comment tsd-typography"><p>By default <code>EventEmitter</code>s will print a warning if more than <code>10</code> listeners are
605added for a particular event. This is a useful default that helps finding
606memory leaks. The <code>emitter.setMaxListeners()</code> method allows the limit to be
607modified for this specific <code>EventEmitter</code> instance. The value can be set to<code>Infinity</code> (or <code>0</code>) to indicate an unlimited number of listeners.</p>
608<p>Returns a reference to the <code>EventEmitter</code>, so that calls can be chained.</p>
41015374
JB
609</div>
610<div class="tsd-parameters">
611<h4 class="tsd-parameters-title">Parameters</h4>
612<ul class="tsd-parameter-list">
613<li>
3bd6a82e 614<h5><span class="tsd-kind-parameter">n</span>: <span class="tsd-signature-type">number</span></h5></li></ul></div>
15d6dfaf 615<h4 class="tsd-returns-title">Returns <a href="PoolEmitter.html" class="tsd-signature-type tsd-kind-class">PoolEmitter</a></h4>
616<div class="tsd-comment tsd-typography">
617<h4>Since</h4><p>v0.3.5</p>
618</div><aside class="tsd-sources">
912e1dfa 619<p>Inherited from EventEmitter.setMaxListeners</p>
41015374 620<ul>
7ab352a6 621<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:625</li></ul></aside></li></ul></section>
1d9f69fa 622<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="addAbortListener" class="tsd-anchor"></a>
623<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>add<wbr/>Abort<wbr/>Listener</span><a href="#addAbortListener" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
624<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
625<li class="tsd-signature tsd-anchor-link" id="addAbortListener.addAbortListener-1"><span class="tsd-kind-call-signature">add<wbr/>Abort<wbr/>Listener</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">signal</span>, <span class="tsd-kind-parameter">resource</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Disposable</span><a href="#addAbortListener.addAbortListener-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
626<li class="tsd-description"><code class="tsd-tag ts-flagExperimental">Experimental</code>
627<div class="tsd-comment tsd-typography"><p>Listens once to the <code>abort</code> event on the provided <code>signal</code>.</p>
628<p>Listening to the <code>abort</code> event on abort signals is unsafe and may
629lead to resource leaks since another third party with the signal can
630call <code>e.stopImmediatePropagation()</code>. Unfortunately Node.js cannot change
631this since it would violate the web standard. Additionally, the original
632API makes it easy to forget to remove listeners.</p>
633<p>This API allows safely using <code>AbortSignal</code>s in Node.js APIs by solving these
634two issues by listening to the event such that <code>stopImmediatePropagation</code> does
635not prevent the listener from running.</p>
636<p>Returns a disposable so that it may be unsubscribed from more easily.</p>
637<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">addAbortListener</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">function</span><span class="hl-0"> </span><span class="hl-2">example</span><span class="hl-0">(</span><span class="hl-3">signal</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-4">let</span><span class="hl-0"> </span><span class="hl-3">disposable</span><span class="hl-0">;</span><br/><span class="hl-0"> </span><span class="hl-5">try</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">signal</span><span class="hl-0">.</span><span class="hl-2">addEventListener</span><span class="hl-0">(</span><span class="hl-6">&#39;abort&#39;</span><span class="hl-0">, (</span><span class="hl-3">e</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">e</span><span class="hl-0">.</span><span class="hl-2">stopImmediatePropagation</span><span class="hl-0">());</span><br/><span class="hl-0"> </span><span class="hl-3">disposable</span><span class="hl-0"> = </span><span class="hl-2">addAbortListener</span><span class="hl-0">(</span><span class="hl-3">signal</span><span class="hl-0">, (</span><span class="hl-3">e</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-8">// Do something when signal is aborted.</span><br/><span class="hl-0"> });</span><br/><span class="hl-0"> } </span><span class="hl-5">finally</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">disposable</span><span class="hl-0">?.[</span><span class="hl-3">Symbol</span><span class="hl-0">.</span><span class="hl-3">dispose</span><span class="hl-0">]();</span><br/><span class="hl-0"> }</span><br/><span class="hl-0">}</span>
638</code><button>Copy</button></pre>
639</div>
640<div class="tsd-parameters">
641<h4 class="tsd-parameters-title">Parameters</h4>
642<ul class="tsd-parameter-list">
643<li>
644<h5><span class="tsd-kind-parameter">signal</span>: <span class="tsd-signature-type ">AbortSignal</span></h5></li>
645<li>
646<h5><span class="tsd-kind-parameter">resource</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">event</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">)</span></h5>
647<ul class="tsd-parameters">
648<li class="tsd-parameter-signature">
649<ul class="tsd-signatures tsd-is-external">
650<li class="tsd-signature"><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">event</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
651<li class="tsd-description">
652<div class="tsd-parameters">
653<h4 class="tsd-parameters-title">Parameters</h4>
654<ul class="tsd-parameter-list">
655<li>
656<h5><span class="tsd-kind-parameter">event</span>: <span class="tsd-signature-type ">Event</span></h5></li></ul></div>
657<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></li></ul></li></ul></div>
658<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Disposable</span></h4><p>that removes the <code>abort</code> listener.</p>
659
660<div class="tsd-comment tsd-typography">
661<h4>Since</h4><p>v20.5.0</p>
662</div><aside class="tsd-sources">
663<p>Inherited from EventEmitter.addAbortListener</p>
664<ul>
7ab352a6 665<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:375</li></ul></aside></li></ul></section>
3bd6a82e 666<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="getEventListeners" class="tsd-anchor"></a>
15d6dfaf 667<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>get<wbr/>Event<wbr/>Listeners</span><a href="#getEventListeners" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 668<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 669<li class="tsd-signature tsd-anchor-link" id="getEventListeners.getEventListeners-1"><span class="tsd-kind-call-signature">get<wbr/>Event<wbr/>Listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">emitter</span>, <span class="tsd-kind-parameter">name</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Function</span><span class="tsd-signature-symbol">[]</span><a href="#getEventListeners.getEventListeners-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
670<li class="tsd-description">
671<div class="tsd-comment tsd-typography"><p>Returns a copy of the array of listeners for the event named <code>eventName</code>.</p>
672<p>For <code>EventEmitter</code>s this behaves exactly the same as calling <code>.listeners</code> on
673the emitter.</p>
674<p>For <code>EventTarget</code>s this is the only way to get the event listeners for the
675event target. This is useful for debugging and diagnostic purposes.</p>
2c94c3a5 676<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">getEventListeners</span><span class="hl-0">, </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-0">{</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-2">listener</span><span class="hl-0"> = () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;Events are fun&#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, </span><span class="hl-3">listener</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-2">getEventListeners</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">, </span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">)); </span><span class="hl-8">// [ [Function: listener] ]</span><br/><span class="hl-0">}</span><br/><span class="hl-0">{</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">et</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventTarget</span><span class="hl-0">();</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-2">listener</span><span class="hl-0"> = () </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;Events are fun&#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">et</span><span class="hl-0">.</span><span class="hl-2">addEventListener</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, </span><span class="hl-3">listener</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-2">getEventListeners</span><span class="hl-0">(</span><span class="hl-3">et</span><span class="hl-0">, </span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">)); </span><span class="hl-8">// [ [Function: listener] ]</span><br/><span class="hl-0">}</span>
fab6d3b5 677</code><button>Copy</button></pre>
41015374
JB
678</div>
679<div class="tsd-parameters">
680<h4 class="tsd-parameters-title">Parameters</h4>
681<ul class="tsd-parameter-list">
682<li>
3bd6a82e 683<h5><span class="tsd-kind-parameter">emitter</span>: <span class="tsd-signature-type ">EventEmitter</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">_DOMEventTarget</span></h5></li>
41015374 684<li>
3bd6a82e 685<h5><span class="tsd-kind-parameter">name</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li></ul></div>
15d6dfaf 686<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Function</span><span class="tsd-signature-symbol">[]</span></h4>
687<div class="tsd-comment tsd-typography">
688<h4>Since</h4><p>v15.2.0, v14.17.0</p>
689</div><aside class="tsd-sources">
912e1dfa 690<p>Inherited from EventEmitter.getEventListeners</p>
41015374 691<ul>
7ab352a6 692<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:296</li></ul></aside></li></ul></section>
3c7c9bd1 693<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="getMaxListeners-2" class="tsd-anchor"></a>
694<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>get<wbr/>Max<wbr/>Listeners</span><a href="#getMaxListeners-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
695<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
696<li class="tsd-signature tsd-anchor-link" id="getMaxListeners-2.getMaxListeners-3"><span class="tsd-kind-call-signature">get<wbr/>Max<wbr/>Listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">emitter</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#getMaxListeners-2.getMaxListeners-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
697<li class="tsd-description">
698<div class="tsd-comment tsd-typography"><p>Returns the currently set max amount of listeners.</p>
699<p>For <code>EventEmitter</code>s this behaves exactly the same as calling <code>.getMaxListeners</code> on
700the emitter.</p>
701<p>For <code>EventTarget</code>s this is the only way to get the max event listeners for the
702event target. If the number of event handlers on a single EventTarget exceeds
703the max set, the EventTarget will print a warning.</p>
704<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">getMaxListeners</span><span class="hl-0">, </span><span class="hl-3">setMaxListeners</span><span class="hl-0">, </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-0">{</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-2">getMaxListeners</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">)); </span><span class="hl-8">// 10</span><br/><span class="hl-0"> </span><span class="hl-2">setMaxListeners</span><span class="hl-0">(</span><span class="hl-1">11</span><span class="hl-0">, </span><span class="hl-3">ee</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-2">getMaxListeners</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">)); </span><span class="hl-8">// 11</span><br/><span class="hl-0">}</span><br/><span class="hl-0">{</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">et</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventTarget</span><span class="hl-0">();</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-2">getMaxListeners</span><span class="hl-0">(</span><span class="hl-3">et</span><span class="hl-0">)); </span><span class="hl-8">// 10</span><br/><span class="hl-0"> </span><span class="hl-2">setMaxListeners</span><span class="hl-0">(</span><span class="hl-1">11</span><span class="hl-0">, </span><span class="hl-3">et</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-2">getMaxListeners</span><span class="hl-0">(</span><span class="hl-3">et</span><span class="hl-0">)); </span><span class="hl-8">// 11</span><br/><span class="hl-0">}</span>
705</code><button>Copy</button></pre>
706</div>
707<div class="tsd-parameters">
708<h4 class="tsd-parameters-title">Parameters</h4>
709<ul class="tsd-parameter-list">
710<li>
711<h5><span class="tsd-kind-parameter">emitter</span>: <span class="tsd-signature-type ">EventEmitter</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">_DOMEventTarget</span></h5></li></ul></div>
712<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
713<div class="tsd-comment tsd-typography">
714<h4>Since</h4><p>v19.9.0</p>
715</div><aside class="tsd-sources">
716<p>Inherited from EventEmitter.getMaxListeners</p>
717<ul>
7ab352a6 718<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:325</li></ul></aside></li></ul></section>
3bd6a82e 719<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="listenerCount-2" class="tsd-anchor"></a>
15d6dfaf 720<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>listener<wbr/>Count</span><a href="#listenerCount-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 721<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 722<li class="tsd-signature tsd-anchor-link" id="listenerCount-2.listenerCount-3"><span class="tsd-kind-call-signature">listener<wbr/>Count</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">emitter</span>, <span class="tsd-kind-parameter">eventName</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><a href="#listenerCount-2.listenerCount-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
723<li class="tsd-description">
724<div class="tsd-comment tsd-typography"><p>A class method that returns the number of listeners for the given <code>eventName</code>registered on the given <code>emitter</code>.</p>
2c94c3a5 725<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0">, </span><span class="hl-3">listenerCount</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">myEmitter</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {});</span><br/><span class="hl-3">myEmitter</span><span class="hl-0">.</span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">, () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {});</span><br/><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-2">listenerCount</span><span class="hl-0">(</span><span class="hl-3">myEmitter</span><span class="hl-0">, </span><span class="hl-6">&#39;event&#39;</span><span class="hl-0">));</span><br/><span class="hl-8">// Prints: 2</span>
fab6d3b5 726</code><button>Copy</button></pre>
41015374
JB
727</div>
728<div class="tsd-parameters">
729<h4 class="tsd-parameters-title">Parameters</h4>
730<ul class="tsd-parameter-list">
731<li>
3bd6a82e 732<h5><span class="tsd-kind-parameter">emitter</span>: <span class="tsd-signature-type ">EventEmitter</span></h5>
41015374 733<div class="tsd-comment tsd-typography"><p>The emitter to query</p>
323daa7f 734</div></li>
41015374 735<li>
3bd6a82e 736<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5>
41015374 737<div class="tsd-comment tsd-typography"><p>The event name</p>
323daa7f 738</div></li></ul></div>
15d6dfaf 739<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
740<div class="tsd-comment tsd-typography">
741<h4>Since</h4><p>v0.9.12</p>
742
743<h4>Deprecated</h4><p>Since v3.2.0 - Use <code>listenerCount</code> instead.</p>
744</div><aside class="tsd-sources">
912e1dfa 745<p>Inherited from EventEmitter.listenerCount</p>
41015374 746<ul>
7ab352a6 747<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:268</li></ul></aside></li></ul></section>
3bd6a82e 748<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="on-2" class="tsd-anchor"></a>
15d6dfaf 749<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>on</span><a href="#on-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 750<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 751<li class="tsd-signature tsd-anchor-link" id="on-2.on-3"><span class="tsd-kind-call-signature">on</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">emitter</span>, <span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">options</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">AsyncIterableIterator</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span><a href="#on-2.on-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374 752<li class="tsd-description">
2c94c3a5 753<div class="tsd-comment tsd-typography"><pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">on</span><span class="hl-0">, </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-5">import</span><span class="hl-0"> </span><span class="hl-3">process</span><span class="hl-0"> </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:process&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-8">// Emit later on</span><br/><span class="hl-3">process</span><span class="hl-0">.</span><span class="hl-2">nextTick</span><span class="hl-0">(() </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, </span><span class="hl-6">&#39;bar&#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, </span><span class="hl-1">42</span><span class="hl-0">);</span><br/><span class="hl-0">});</span><br/><br/><span class="hl-5">for</span><span class="hl-0"> </span><span class="hl-5">await</span><span class="hl-0"> (</span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">event</span><span class="hl-0"> </span><span class="hl-4">of</span><span class="hl-0"> </span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">, </span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">)) {</span><br/><span class="hl-0"> </span><span class="hl-8">// The execution of this inner block is synchronous and it</span><br/><span class="hl-0"> </span><span class="hl-8">// processes one event at a time (even with await). Do not use</span><br/><span class="hl-0"> </span><span class="hl-8">// if concurrent execution is required.</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-3">event</span><span class="hl-0">); </span><span class="hl-8">// prints [&#39;bar&#39;] [42]</span><br/><span class="hl-0">}</span><br/><span class="hl-8">// Unreachable here</span>
fab6d3b5 754</code><button>Copy</button></pre>
41015374
JB
755<p>Returns an <code>AsyncIterator</code> that iterates <code>eventName</code> events. It will throw
756if the <code>EventEmitter</code> emits <code>&#39;error&#39;</code>. It removes all listeners when
757exiting the loop. The <code>value</code> returned by each iteration is an array
758composed of the emitted event arguments.</p>
759<p>An <code>AbortSignal</code> can be used to cancel waiting on events:</p>
2c94c3a5 760<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">on</span><span class="hl-0">, </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-5">import</span><span class="hl-0"> </span><span class="hl-3">process</span><span class="hl-0"> </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:process&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ac</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">AbortController</span><span class="hl-0">();</span><br/><br/><span class="hl-0">(</span><span class="hl-4">async</span><span class="hl-0"> () </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-0"> </span><span class="hl-8">// Emit later on</span><br/><span class="hl-0"> </span><span class="hl-3">process</span><span class="hl-0">.</span><span class="hl-2">nextTick</span><span class="hl-0">(() </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, </span><span class="hl-6">&#39;bar&#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> </span><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, </span><span class="hl-1">42</span><span class="hl-0">);</span><br/><span class="hl-0"> });</span><br/><br/><span class="hl-0"> </span><span class="hl-5">for</span><span class="hl-0"> </span><span class="hl-5">await</span><span class="hl-0"> (</span><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">event</span><span class="hl-0"> </span><span class="hl-4">of</span><span class="hl-0"> </span><span class="hl-2">on</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">, </span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, { </span><span class="hl-3">signal:</span><span class="hl-0"> </span><span class="hl-3">ac</span><span class="hl-0">.</span><span class="hl-3">signal</span><span class="hl-0"> })) {</span><br/><span class="hl-0"> </span><span class="hl-8">// The execution of this inner block is synchronous and it</span><br/><span class="hl-0"> </span><span class="hl-8">// processes one event at a time (even with await). Do not use</span><br/><span class="hl-0"> </span><span class="hl-8">// if concurrent execution is required.</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-3">event</span><span class="hl-0">); </span><span class="hl-8">// prints [&#39;bar&#39;] [42]</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> </span><span class="hl-8">// Unreachable here</span><br/><span class="hl-0">})();</span><br/><br/><span class="hl-3">process</span><span class="hl-0">.</span><span class="hl-2">nextTick</span><span class="hl-0">(() </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">ac</span><span class="hl-0">.</span><span class="hl-2">abort</span><span class="hl-0">());</span>
fab6d3b5 761</code><button>Copy</button></pre>
41015374
JB
762</div>
763<div class="tsd-parameters">
764<h4 class="tsd-parameters-title">Parameters</h4>
765<ul class="tsd-parameter-list">
766<li>
3bd6a82e 767<h5><span class="tsd-kind-parameter">emitter</span>: <span class="tsd-signature-type ">EventEmitter</span></h5></li>
41015374 768<li>
3bd6a82e 769<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span></h5>
41015374 770<div class="tsd-comment tsd-typography"><p>The name of the event being listened for</p>
323daa7f 771</div></li>
41015374 772<li>
323daa7f 773<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">options</span>: <span class="tsd-signature-type ">StaticEventEmitterOptions</span></h5><code class="tsd-tag ts-flagOptional">Optional</code> </li></ul></div>
fab6d3b5 774<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">AsyncIterableIterator</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4><p>that iterates <code>eventName</code> events emitted by the <code>emitter</code></p>
15d6dfaf 775
776<div class="tsd-comment tsd-typography">
777<h4>Since</h4><p>v13.6.0, v12.16.0</p>
778</div><aside class="tsd-sources">
912e1dfa 779<p>Inherited from EventEmitter.on</p>
41015374 780<ul>
7ab352a6 781<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:250</li></ul></aside></li></ul></section>
3bd6a82e 782<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="once-2" class="tsd-anchor"></a>
15d6dfaf 783<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>once</span><a href="#once-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 784<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 785<li class="tsd-signature tsd-anchor-link" id="once-2.once-3"><span class="tsd-kind-call-signature">once</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">emitter</span>, <span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">options</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span><a href="#once-2.once-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
786<li class="tsd-description">
787<div class="tsd-comment tsd-typography"><p>Creates a <code>Promise</code> that is fulfilled when the <code>EventEmitter</code> emits the given
788event or that is rejected if the <code>EventEmitter</code> emits <code>&#39;error&#39;</code> while waiting.
789The <code>Promise</code> will resolve with an array of all the arguments emitted to the
790given event.</p>
791<p>This method is intentionally generic and works with the web platform <a href="https://dom.spec.whatwg.org/#interface-eventtarget">EventTarget</a> interface, which has no special<code>&#39;error&#39;</code> event
792semantics and does not listen to the <code>&#39;error&#39;</code> event.</p>
2c94c3a5 793<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">once</span><span class="hl-0">, </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><span class="hl-5">import</span><span class="hl-0"> </span><span class="hl-3">process</span><span class="hl-0"> </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:process&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-3">process</span><span class="hl-0">.</span><span class="hl-2">nextTick</span><span class="hl-0">(() </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;myevent&#39;</span><span class="hl-0">, </span><span class="hl-1">42</span><span class="hl-0">);</span><br/><span class="hl-0">});</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> [</span><span class="hl-7">value</span><span class="hl-0">] = </span><span class="hl-5">await</span><span class="hl-0"> </span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">, </span><span class="hl-6">&#39;myevent&#39;</span><span class="hl-0">);</span><br/><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-3">value</span><span class="hl-0">);</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">err</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">Error</span><span class="hl-0">(</span><span class="hl-6">&#39;kaboom&#39;</span><span class="hl-0">);</span><br/><span class="hl-3">process</span><span class="hl-0">.</span><span class="hl-2">nextTick</span><span class="hl-0">(() </span><span class="hl-4">=&gt;</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;error&#39;</span><span class="hl-0">, </span><span class="hl-3">err</span><span class="hl-0">);</span><br/><span class="hl-0">});</span><br/><br/><span class="hl-5">try</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-5">await</span><span class="hl-0"> </span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">, </span><span class="hl-6">&#39;myevent&#39;</span><span class="hl-0">);</span><br/><span class="hl-0">} </span><span class="hl-5">catch</span><span class="hl-0"> (</span><span class="hl-3">err</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">error</span><span class="hl-0">(</span><span class="hl-6">&#39;error happened&#39;</span><span class="hl-0">, </span><span class="hl-3">err</span><span class="hl-0">);</span><br/><span class="hl-0">}</span>
fab6d3b5 794</code><button>Copy</button></pre>
41015374
JB
795<p>The special handling of the <code>&#39;error&#39;</code> event is only used when <code>events.once()</code>is used to wait for another event. If <code>events.once()</code> is used to wait for the
796&#39;<code>error&#39;</code> event itself, then it is treated as any other kind of event without
797special handling:</p>
2c94c3a5 798<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0">, </span><span class="hl-3">once</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">, </span><span class="hl-6">&#39;error&#39;</span><span class="hl-0">)</span><br/><span class="hl-0"> .</span><span class="hl-2">then</span><span class="hl-0">(([</span><span class="hl-3">err</span><span class="hl-0">]) </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;ok&#39;</span><span class="hl-0">, </span><span class="hl-3">err</span><span class="hl-0">.</span><span class="hl-3">message</span><span class="hl-0">))</span><br/><span class="hl-0"> .</span><span class="hl-2">catch</span><span class="hl-0">((</span><span class="hl-3">err</span><span class="hl-0">) </span><span class="hl-4">=&gt;</span><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">error</span><span class="hl-0">(</span><span class="hl-6">&#39;error&#39;</span><span class="hl-0">, </span><span class="hl-3">err</span><span class="hl-0">.</span><span class="hl-3">message</span><span class="hl-0">));</span><br/><br/><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;error&#39;</span><span class="hl-0">, </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">Error</span><span class="hl-0">(</span><span class="hl-6">&#39;boom&#39;</span><span class="hl-0">));</span><br/><br/><span class="hl-8">// Prints: ok boom</span>
fab6d3b5 799</code><button>Copy</button></pre>
41015374 800<p>An <code>AbortSignal</code> can be used to cancel waiting for the event:</p>
2c94c3a5 801<pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">EventEmitter</span><span class="hl-0">, </span><span class="hl-3">once</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ee</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">ac</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">AbortController</span><span class="hl-0">();</span><br/><br/><span class="hl-4">async</span><span class="hl-0"> </span><span class="hl-4">function</span><span class="hl-0"> </span><span class="hl-2">foo</span><span class="hl-0">(</span><span class="hl-3">emitter</span><span class="hl-0">, </span><span class="hl-3">event</span><span class="hl-0">, </span><span class="hl-3">signal</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-5">try</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-5">await</span><span class="hl-0"> </span><span class="hl-2">once</span><span class="hl-0">(</span><span class="hl-3">emitter</span><span class="hl-0">, </span><span class="hl-3">event</span><span class="hl-0">, { </span><span class="hl-3">signal</span><span class="hl-0"> });</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">log</span><span class="hl-0">(</span><span class="hl-6">&#39;event emitted!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> } </span><span class="hl-5">catch</span><span class="hl-0"> (</span><span class="hl-3">error</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-5">if</span><span class="hl-0"> (</span><span class="hl-3">error</span><span class="hl-0">.</span><span class="hl-3">name</span><span class="hl-0"> === </span><span class="hl-6">&#39;AbortError&#39;</span><span class="hl-0">) {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">error</span><span class="hl-0">(</span><span class="hl-6">&#39;Waiting for the event was canceled!&#39;</span><span class="hl-0">);</span><br/><span class="hl-0"> } </span><span class="hl-5">else</span><span class="hl-0"> {</span><br/><span class="hl-0"> </span><span class="hl-3">console</span><span class="hl-0">.</span><span class="hl-2">error</span><span class="hl-0">(</span><span class="hl-6">&#39;There was an error&#39;</span><span class="hl-0">, </span><span class="hl-3">error</span><span class="hl-0">.</span><span class="hl-3">message</span><span class="hl-0">);</span><br/><span class="hl-0"> }</span><br/><span class="hl-0"> }</span><br/><span class="hl-0">}</span><br/><br/><span class="hl-2">foo</span><span class="hl-0">(</span><span class="hl-3">ee</span><span class="hl-0">, </span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">, </span><span class="hl-3">ac</span><span class="hl-0">.</span><span class="hl-3">signal</span><span class="hl-0">);</span><br/><span class="hl-3">ac</span><span class="hl-0">.</span><span class="hl-2">abort</span><span class="hl-0">(); </span><span class="hl-8">// Abort waiting for the event</span><br/><span class="hl-3">ee</span><span class="hl-0">.</span><span class="hl-2">emit</span><span class="hl-0">(</span><span class="hl-6">&#39;foo&#39;</span><span class="hl-0">); </span><span class="hl-8">// Prints: Waiting for the event was canceled!</span>
fab6d3b5 802</code><button>Copy</button></pre>
41015374
JB
803</div>
804<div class="tsd-parameters">
805<h4 class="tsd-parameters-title">Parameters</h4>
806<ul class="tsd-parameter-list">
807<li>
3bd6a82e 808<h5><span class="tsd-kind-parameter">emitter</span>: <span class="tsd-signature-type ">_NodeEventTarget</span></h5></li>
41015374 809<li>
3bd6a82e 810<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">symbol</span></h5></li>
41015374 811<li>
323daa7f 812<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">options</span>: <span class="tsd-signature-type ">StaticEventEmitterOptions</span></h5><code class="tsd-tag ts-flagOptional">Optional</code> </li></ul></div>
15d6dfaf 813<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4>
814<div class="tsd-comment tsd-typography">
815<h4>Since</h4><p>v11.13.0, v10.16.0</p>
816</div><aside class="tsd-sources">
912e1dfa 817<p>Inherited from EventEmitter.once</p>
41015374 818<ul>
7ab352a6 819<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:189</li></ul></aside></li>
15d6dfaf 820<li class="tsd-signature tsd-anchor-link" id="once-2.once-4"><span class="tsd-kind-call-signature">once</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">emitter</span>, <span class="tsd-kind-parameter">eventName</span>, <span class="tsd-kind-parameter">options</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span><a href="#once-2.once-4" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374
JB
821<li class="tsd-description">
822<div class="tsd-parameters">
823<h4 class="tsd-parameters-title">Parameters</h4>
824<ul class="tsd-parameter-list">
825<li>
3bd6a82e 826<h5><span class="tsd-kind-parameter">emitter</span>: <span class="tsd-signature-type ">_DOMEventTarget</span></h5></li>
41015374 827<li>
3bd6a82e 828<h5><span class="tsd-kind-parameter">eventName</span>: <span class="tsd-signature-type">string</span></h5></li>
41015374 829<li>
323daa7f 830<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">options</span>: <span class="tsd-signature-type ">StaticEventEmitterOptions</span></h5><code class="tsd-tag ts-flagOptional">Optional</code> </li></ul></div>
3bd6a82e 831<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type ">Promise</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
912e1dfa 832<p>Inherited from EventEmitter.once</p>
41015374 833<ul>
7ab352a6 834<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:190</li></ul></aside></li></ul></section>
3bd6a82e 835<section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="setMaxListeners-2" class="tsd-anchor"></a>
15d6dfaf 836<h3 class="tsd-anchor-link"><code class="tsd-tag ts-flagStatic">Static</code> <span>set<wbr/>Max<wbr/>Listeners</span><a href="#setMaxListeners-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></h3>
3bd6a82e 837<ul class="tsd-signatures tsd-is-inherited tsd-is-external">
15d6dfaf 838<li class="tsd-signature tsd-anchor-link" id="setMaxListeners-2.setMaxListeners-3"><span class="tsd-kind-call-signature">set<wbr/>Max<wbr/>Listeners</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">n</span><span class="tsd-signature-symbol">?</span>, <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">eventTargets</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span><a href="#setMaxListeners-2.setMaxListeners-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="#icon-anchor"></use></svg></a></li>
41015374 839<li class="tsd-description">
2c94c3a5 840<div class="tsd-comment tsd-typography"><pre><code class="language-js"><span class="hl-5">import</span><span class="hl-0"> { </span><span class="hl-3">setMaxListeners</span><span class="hl-0">, </span><span class="hl-3">EventEmitter</span><span class="hl-0"> } </span><span class="hl-5">from</span><span class="hl-0"> </span><span class="hl-6">&#39;node:events&#39;</span><span class="hl-0">;</span><br/><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">target</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventTarget</span><span class="hl-0">();</span><br/><span class="hl-4">const</span><span class="hl-0"> </span><span class="hl-7">emitter</span><span class="hl-0"> = </span><span class="hl-4">new</span><span class="hl-0"> </span><span class="hl-2">EventEmitter</span><span class="hl-0">();</span><br/><br/><span class="hl-2">setMaxListeners</span><span class="hl-0">(</span><span class="hl-1">5</span><span class="hl-0">, </span><span class="hl-3">target</span><span class="hl-0">, </span><span class="hl-3">emitter</span><span class="hl-0">);</span>
fab6d3b5 841</code><button>Copy</button></pre>
41015374
JB
842</div>
843<div class="tsd-parameters">
844<h4 class="tsd-parameters-title">Parameters</h4>
845<ul class="tsd-parameter-list">
846<li>
3bd6a82e 847<h5><code class="tsd-tag ts-flagOptional">Optional</code> <span class="tsd-kind-parameter">n</span>: <span class="tsd-signature-type">number</span></h5>
41015374 848<div class="tsd-comment tsd-typography"><p>A non-negative number. The maximum number of listeners per <code>EventTarget</code> event.</p>
323daa7f 849</div><code class="tsd-tag ts-flagOptional">Optional</code> </li>
41015374 850<li>
323daa7f 851<h5><code class="tsd-tag ts-flagRest">Rest</code> <span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">eventTargets</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-signature-type ">EventEmitter</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type ">_DOMEventTarget</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">[]</span></h5><code class="tsd-tag ts-flagRest">Rest</code> </li></ul></div>
15d6dfaf 852<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
853<div class="tsd-comment tsd-typography">
854<h4>Since</h4><p>v15.4.0</p>
855</div><aside class="tsd-sources">
912e1dfa 856<p>Inherited from EventEmitter.setMaxListeners</p>
41015374 857<ul>
7ab352a6 858<li>Defined in node_modules/.pnpm/@types+node@20.5.7/node_modules/@types/node/events.d.ts:340</li></ul></aside></li></ul></section></section></div>
ec06e4dd 859<div class="col-sidebar">
860<div class="page-menu">
41015374
JB
861<div class="tsd-navigation settings">
862<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
15d6dfaf 863<h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><path d="M4.93896 8.531L12 15.591L19.061 8.531L16.939 6.409L12 11.349L7.06098 6.409L4.93896 8.531Z" fill="var(--color-text)" id="icon-chevronDown"></path></svg>Settings</h3></summary>
41015374
JB
864<div class="tsd-accordion-details">
865<div class="tsd-filter-visibility">
866<h4 class="uppercase">Member Visibility</h4><form>
867<ul id="tsd-filter-options">
868<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
869<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-private" name="private"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Private</span></label></li>
870<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
871<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></form></div>
872<div class="tsd-theme-toggle">
3bd6a82e 873<h4 class="uppercase">Theme</h4><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div>
ec06e4dd 874<details open class="tsd-index-accordion tsd-page-navigation"><summary class="tsd-accordion-summary">
15d6dfaf 875<h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="#icon-chevronDown"></use></svg>On This Page</h3></summary>
41015374
JB
876<div class="tsd-accordion-details">
877<ul>
15d6dfaf 878<li><a href="#constructor" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-512"></use></svg><span>constructor</span></a></li>
879<li><a href="#captureRejectionSymbol" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>capture<wbr/>Rejection<wbr/>Symbol</span></a></li>
880<li><a href="#captureRejections" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>capture<wbr/>Rejections</span></a></li>
881<li><a href="#defaultMaxListeners" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>default<wbr/>Max<wbr/>Listeners</span></a></li>
882<li><a href="#errorMonitor" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-1024"></use></svg><span>error<wbr/>Monitor</span></a></li>
883<li><a href="#addListener" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>Listener</span></a></li>
884<li><a href="#emit" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>emit</span></a></li>
885<li><a href="#eventNames" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>event<wbr/>Names</span></a></li>
886<li><a href="#getMaxListeners" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Max<wbr/>Listeners</span></a></li>
887<li><a href="#listenerCount" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>listener<wbr/>Count</span></a></li>
888<li><a href="#listeners" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>listeners</span></a></li>
889<li><a href="#off" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>off</span></a></li>
890<li><a href="#on" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>on</span></a></li>
891<li><a href="#once" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>once</span></a></li>
892<li><a href="#prependListener" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>prepend<wbr/>Listener</span></a></li>
893<li><a href="#prependOnceListener" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>prepend<wbr/>Once<wbr/>Listener</span></a></li>
894<li><a href="#rawListeners" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>raw<wbr/>Listeners</span></a></li>
895<li><a href="#removeAllListeners" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>remove<wbr/>All<wbr/>Listeners</span></a></li>
896<li><a href="#removeListener" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>remove<wbr/>Listener</span></a></li>
897<li><a href="#setMaxListeners" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>set<wbr/>Max<wbr/>Listeners</span></a></li>
1d9f69fa 898<li><a href="#addAbortListener" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>add<wbr/>Abort<wbr/>Listener</span></a></li>
15d6dfaf 899<li><a href="#getEventListeners" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Event<wbr/>Listeners</span></a></li>
3c7c9bd1 900<li><a href="#getMaxListeners-2" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>get<wbr/>Max<wbr/>Listeners</span></a></li>
15d6dfaf 901<li><a href="#listenerCount-2" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>listener<wbr/>Count</span></a></li>
902<li><a href="#on-2" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>on</span></a></li>
903<li><a href="#once-2" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>once</span></a></li>
904<li><a href="#setMaxListeners-2" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2048"></use></svg><span>set<wbr/>Max<wbr/>Listeners</span></a></li></ul></div></details></div>
ec06e4dd 905<div class="site-menu">
cc35cd9c 906<nav class="tsd-navigation"><a href="../index.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-4"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.33 16V7.24H10.77L13.446 14.74C13.43 14.54 13.41 14.296 13.386 14.008C13.37 13.712 13.354 13.404 13.338 13.084C13.33 12.756 13.326 12.448 13.326 12.16V7.24H14.37V16H12.93L10.266 8.5C10.282 8.692 10.298 8.936 10.314 9.232C10.33 9.52 10.342 9.828 10.35 10.156C10.366 10.476 10.374 10.784 10.374 11.08V16H9.33Z" fill="var(--color-text)"></path></g></svg><span>poolifier -<wbr/> v2.6.40</span></a>
ec06e4dd 907<ul class="tsd-small-nested-navigation">
15d6dfaf 908<li><a href="AbstractPool.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-128"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-class)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M11.898 16.1201C11.098 16.1201 10.466 15.8961 10.002 15.4481C9.53803 15.0001 9.30603 14.3841 9.30603 13.6001V9.64012C9.30603 8.85612 9.53803 8.24012 10.002 7.79212C10.466 7.34412 11.098 7.12012 11.898 7.12012C12.682 7.12012 13.306 7.34812 13.77 7.80412C14.234 8.25212 14.466 8.86412 14.466 9.64012H13.386C13.386 9.14412 13.254 8.76412 12.99 8.50012C12.734 8.22812 12.37 8.09212 11.898 8.09212C11.426 8.09212 11.054 8.22412 10.782 8.48812C10.518 8.75212 10.386 9.13212 10.386 9.62812V13.6001C10.386 14.0961 10.518 14.4801 10.782 14.7521C11.054 15.0161 11.426 15.1481 11.898 15.1481C12.37 15.1481 12.734 15.0161 12.99 14.7521C13.254 14.4801 13.386 14.0961 13.386 13.6001H14.466C14.466 14.3761 14.234 14.9921 13.77 15.4481C13.306 15.8961 12.682 16.1201 11.898 16.1201Z" fill="var(--color-text)"></path></g></svg><span>Abstract<wbr/>Pool</span></a></li>
909<li><a href="AbstractWorker.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Abstract<wbr/>Worker</span></a></li>
910<li><a href="CircularArray.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Circular<wbr/>Array</span></a></li>
911<li><a href="ClusterWorker.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Cluster<wbr/>Worker</span></a></li>
31542ddf 912<li><a href="Deque.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Deque</span></a></li>
15d6dfaf 913<li><a href="DynamicClusterPool.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Dynamic<wbr/>Cluster<wbr/>Pool</span></a></li>
914<li><a href="DynamicThreadPool.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Dynamic<wbr/>Thread<wbr/>Pool</span></a></li>
915<li><a href="FixedClusterPool.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Fixed<wbr/>Cluster<wbr/>Pool</span></a></li>
916<li><a href="FixedThreadPool.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Fixed<wbr/>Thread<wbr/>Pool</span></a></li>
f2d2c4a4 917<li><a href="Node.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Node</span></a></li>
15d6dfaf 918<li><a href="PoolEmitter.html" class="current"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Pool<wbr/>Emitter</span></a></li>
15d6dfaf 919<li><a href="ThreadWorker.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Thread<wbr/>Worker</span></a></li>
920<li><a href="WorkerChoiceStrategyContext.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-128"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Context</span></a></li>
921<li><a href="../interfaces/ClusterPoolOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-256"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.51 16V15.016H11.298V8.224H9.51V7.24H14.19V8.224H12.402V15.016H14.19V16H9.51Z" fill="var(--color-text)"></path></g></svg><span>Cluster<wbr/>Pool<wbr/>Options</span></a></li>
f05afd16 922<li><a href="../interfaces/EventLoopUtilizationMeasurementStatistics.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Event<wbr/>Loop<wbr/>Utilization<wbr/>Measurement<wbr/>Statistics</span></a></li>
15d6dfaf 923<li><a href="../interfaces/IPool.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IPool</span></a></li>
924<li><a href="../interfaces/IWorker.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IWorker</span></a></li>
925<li><a href="../interfaces/IWorkerChoiceStrategy.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IWorker<wbr/>Choice<wbr/>Strategy</span></a></li>
a6b5c73c 926<li><a href="../interfaces/IWorkerNode.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>IWorker<wbr/>Node</span></a></li>
f05afd16 927<li><a href="../interfaces/MeasurementOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Measurement<wbr/>Options</span></a></li>
928<li><a href="../interfaces/MeasurementStatistics.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Measurement<wbr/>Statistics</span></a></li>
929<li><a href="../interfaces/MeasurementStatisticsRequirements.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Measurement<wbr/>Statistics<wbr/>Requirements</span></a></li>
15d6dfaf 930<li><a href="../interfaces/MessageValue.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Message<wbr/>Value</span></a></li>
931<li><a href="../interfaces/PoolInfo.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Pool<wbr/>Info</span></a></li>
932<li><a href="../interfaces/PoolOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Pool<wbr/>Options</span></a></li>
933<li><a href="../interfaces/PromiseResponseWrapper.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Promise<wbr/>Response<wbr/>Wrapper</span></a></li>
aba8d9bd 934<li><a href="../interfaces/StrategyPolicy.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Strategy<wbr/>Policy</span></a></li>
15d6dfaf 935<li><a href="../interfaces/Task.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Task</span></a></li>
f05afd16 936<li><a href="../interfaces/TaskError.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Task<wbr/>Error</span></a></li>
71056a0a 937<li><a href="../interfaces/TaskPerformance.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Task<wbr/>Performance</span></a></li>
afa30fd0 938<li><a href="../interfaces/TaskStatistics.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Task<wbr/>Statistics</span></a></li>
f05afd16 939<li><a href="../interfaces/TaskStatisticsRequirements.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Task<wbr/>Statistics<wbr/>Requirements</span></a></li>
15d6dfaf 940<li><a href="../interfaces/TasksQueueOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Tasks<wbr/>Queue<wbr/>Options</span></a></li>
f45a3823 941<li><a href="../interfaces/ThreadPoolOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Thread<wbr/>Pool<wbr/>Options</span></a></li>
15d6dfaf 942<li><a href="../interfaces/WorkerChoiceStrategyOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategy<wbr/>Options</span></a></li>
ac2cb9e2 943<li><a href="../interfaces/WorkerInfo.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Worker<wbr/>Info</span></a></li>
15d6dfaf 944<li><a href="../interfaces/WorkerOptions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Worker<wbr/>Options</span></a></li>
71056a0a 945<li><a href="../interfaces/WorkerStatistics.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Worker<wbr/>Statistics</span></a></li>
f05afd16 946<li><a href="../interfaces/WorkerUsage.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-256"></use></svg><span>Worker<wbr/>Usage</span></a></li>
323daa7f 947<li><a href="../types/ErrorHandler.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-2097152"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M11.31 16V8.224H8.91V7.24H14.79V8.224H12.39V16H11.31Z" fill="var(--color-text)"></path></g></svg><span>Error<wbr/>Handler</span></a></li>
948<li><a href="../types/ExitHandler.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Exit<wbr/>Handler</span></a></li>
949<li><a href="../types/KillBehavior.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Kill<wbr/>Behavior</span></a></li>
950<li><a href="../types/KillHandler.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Kill<wbr/>Handler</span></a></li>
951<li><a href="../types/Measurement.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Measurement</span></a></li>
952<li><a href="../types/MessageHandler.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Message<wbr/>Handler</span></a></li>
953<li><a href="../types/OnlineHandler.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Online<wbr/>Handler</span></a></li>
954<li><a href="../types/PoolEvent.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Pool<wbr/>Event</span></a></li>
955<li><a href="../types/PoolType.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Pool<wbr/>Type</span></a></li>
956<li><a href="../types/TaskAsyncFunction.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Task<wbr/>Async<wbr/>Function</span></a></li>
957<li><a href="../types/TaskFunction.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Task<wbr/>Function</span></a></li>
958<li><a href="../types/TaskFunctions.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Task<wbr/>Functions</span></a></li>
959<li><a href="../types/TaskSyncFunction.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Task<wbr/>Sync<wbr/>Function</span></a></li>
960<li><a href="../types/WorkerChoiceStrategy.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategy</span></a></li>
7ab352a6 961<li><a href="../types/WorkerNodeEventCallback.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Worker<wbr/>Node<wbr/>Event<wbr/>Callback</span></a></li>
323daa7f 962<li><a href="../types/WorkerType.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Worker<wbr/>Type</span></a></li>
963<li><a href="../types/Writable.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-2097152"></use></svg><span>Writable</span></a></li>
15d6dfaf 964<li><a href="../variables/KillBehaviors.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-32"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M11.106 16L8.85 7.24H9.966L11.454 13.192C11.558 13.608 11.646 13.996 11.718 14.356C11.79 14.708 11.842 14.976 11.874 15.16C11.906 14.976 11.954 14.708 12.018 14.356C12.09 13.996 12.178 13.608 12.282 13.192L13.758 7.24H14.85L12.582 16H11.106Z" fill="var(--color-text)"></path></g></svg><span>Kill<wbr/>Behaviors</span></a></li>
f05afd16 965<li><a href="../variables/Measurements.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-32"></use></svg><span>Measurements</span></a></li>
15d6dfaf 966<li><a href="../variables/PoolEvents.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-32"></use></svg><span>Pool<wbr/>Events</span></a></li>
967<li><a href="../variables/PoolTypes.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-32"></use></svg><span>Pool<wbr/>Types</span></a></li>
968<li><a href="../variables/WorkerChoiceStrategies.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-32"></use></svg><span>Worker<wbr/>Choice<wbr/>Strategies</span></a></li>
a97f9c80 969<li><a href="../variables/WorkerTypes.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="#icon-32"></use></svg><span>Worker<wbr/>Types</span></a></li>
970<li><a href="../functions/availableParallelism.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><g id="icon-64"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><path d="M9.39 16V7.24H14.55V8.224H10.446V11.128H14.238V12.112H10.47V16H9.39Z" fill="var(--color-text)"></path></g></svg><span>available<wbr/>Parallelism</span></a></li></ul></nav></div></div></div>
ec06e4dd 971<div class="tsd-generator">
323daa7f 972<p>Generated using <a href="https://typedoc.org/" rel="noopener" target="_blank">TypeDoc</a></p></div>
ec06e4dd 973<div class="overlay"></div></body></html>