From 4e23dab093a678a7974faf57fb49a7295d049b96 Mon Sep 17 00:00:00 2001 From: Ruben Taelman Date: Mon, 13 Jan 2020 18:18:54 +0100 Subject: [PATCH] Fix asynciterator EventEmitter extension for Node 13 (#41545) --- types/asynciterator/index.d.ts | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/types/asynciterator/index.d.ts b/types/asynciterator/index.d.ts index 4fa18dc3a8..0826d682dd 100644 --- a/types/asynciterator/index.d.ts +++ b/types/asynciterator/index.d.ts @@ -8,7 +8,7 @@ import { EventEmitter } from "events"; -export abstract class AsyncIterator extends EventEmitter { +export abstract class AsyncIterator implements EventEmitter { static STATES: ['INIT', 'OPEN', 'CLOSING', 'CLOSED', 'ENDED']; static INIT: 0; static OPEN: 1; @@ -57,6 +57,24 @@ export abstract class AsyncIterator extends EventEmitter { clone(): ClonedIterator; static range(start?: number, end?: number, step?: number): IntegerIterator; + + // From EventEmitter + addListener(event: string | symbol, listener: (...args: any[]) => void): this; + on(event: string | symbol, listener: (...args: any[]) => void): this; + once(event: string | symbol, listener: (...args: any[]) => void): this; + removeListener(event: string | symbol, listener: (...args: any[]) => void): this; + off(event: string | symbol, listener: (...args: any[]) => void): this; + removeAllListeners(event?: string | symbol): this; + setMaxListeners(n: number): this; + getMaxListeners(): number; + listeners(event: string | symbol): Array<() => void>; + rawListeners(event: string | symbol): Array<() => void>; + emit(event: string | symbol, ...args: any[]): boolean; + listenerCount(type: string | symbol): number; + // Added in Node 6... + prependListener(event: string | symbol, listener: (...args: any[]) => void): this; + prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; + eventNames(): Array; } export class EmptyIterator extends AsyncIterator {