From 96545154cc6488643a7064a6dc4ec9726c7af12a Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Fri, 16 Jun 2017 13:55:38 -0700 Subject: [PATCH 1/2] bittorrent-protocol: Use same default event handler as stream.Readable --- types/bittorrent-protocol/index.d.ts | 3 +- types/node/index.d.ts | 224 +++++++++++++-------------- types/node/node-tests.ts | 2 +- 3 files changed, 115 insertions(+), 114 deletions(-) diff --git a/types/bittorrent-protocol/index.d.ts b/types/bittorrent-protocol/index.d.ts index b5ef1a4a44..7c205edc33 100644 --- a/types/bittorrent-protocol/index.d.ts +++ b/types/bittorrent-protocol/index.d.ts @@ -81,7 +81,7 @@ declare namespace BittorrentProtocol { // TODO: bitfield is a bitfield instance on(event: 'bitfield', listener: (bitfield: any) => void): this; - on(event: string | 'keep-alive' | 'choke' | 'unchoke' | 'interested' | 'uninterested' | 'timeout', listener: () => void): this; + on(event: 'keep-alive' | 'choke' | 'unchoke' | 'interested' | 'uninterested' | 'timeout', listener: () => void): this; on(event: 'upload' | 'have' | 'download' | 'port', listener: (length: number) => void): this; on(event: 'handshake', listener: (infoHash: string, peerId: string, extensions: Extension[]) => void): this; on(event: 'request', listener: (index: number, offset: number, length: number, respond: () => void) => void): this; @@ -89,6 +89,7 @@ declare namespace BittorrentProtocol { on(event: 'cancel', listener: (index: number, offset: number, length: number) => void): this; on(event: 'extended', listener: (ext: 'handshake' | string, buf: any) => void): void; on(event: 'unknownmessage', listener: (buffer: Buffer) => void): this; + on(event: string, listener: (...args: any[]) => void): this; } } diff --git a/types/node/index.d.ts b/types/node/index.d.ts index d207554eda..815b776e42 100644 --- a/types/node/index.d.ts +++ b/types/node/index.d.ts @@ -288,10 +288,10 @@ declare namespace NodeJS { } export class EventEmitter { - addListener(event: string | symbol, listener: Function): this; - on(event: string | symbol, listener: Function): this; - once(event: string | symbol, listener: Function): this; - removeListener(event: string | symbol, listener: Function): this; + 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; removeAllListeners(event?: string | symbol): this; setMaxListeners(n: number): this; getMaxListeners(): number; @@ -299,8 +299,8 @@ declare namespace NodeJS { emit(event: string | symbol, ...args: any[]): boolean; listenerCount(type: string | symbol): number; // Added in Node 6... - prependListener(event: string | symbol, listener: Function): this; - prependOnceListener(event: string | symbol, listener: Function): this; + prependListener(event: string | symbol, listener: (...args: any[]) => void): this; + prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; eventNames(): (string | symbol)[]; } @@ -340,10 +340,10 @@ declare namespace NodeJS { intercept(cb: (data: any) => any): any; dispose(): void; - addListener(event: string, listener: Function): this; - on(event: string, listener: Function): this; - once(event: string, listener: Function): this; - removeListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; + on(event: string, listener: (...args: any[]) => void): this; + once(event: string, listener: (...args: any[]) => void): this; + removeListener(event: string, listener: (...args: any[]) => void): this; removeAllListeners(event?: string): this; } @@ -393,8 +393,8 @@ declare namespace NodeJS { type WarningListener = (warning: Error) => void; type MessageListener = (message: any, sendHandle: any) => void; type SignalsListener = () => void; - type NewListenerListener = (type: string | symbol, listener: Function) => void; - type RemoveListenerListener = (type: string | symbol, listener: Function) => void; + type NewListenerListener = (type: string | symbol, listener: (...args: any[]) => void) => void; + type RemoveListenerListener = (type: string | symbol, listener: (...args: any[]) => void) => void; export interface Socket extends ReadWriteStream { isTTY?: true; @@ -504,8 +504,8 @@ declare namespace NodeJS { emit(event: "warning", warning: Error): boolean; emit(event: "message", message: any, sendHandle: any): this; emit(event: Signals): boolean; - emit(event: "newListener", eventName: string | symbol, listener: Function): this; - emit(event: "removeListener", eventName: string, listener: Function): this; + emit(event: "newListener", eventName: string | symbol, listener: (...args: any[]) => void): this; + emit(event: "removeListener", eventName: string, listener: (...args: any[]) => void): this; on(event: "beforeExit", listener: BeforeExitListener): this; on(event: "disconnect", listener: DisconnectListener): this; @@ -738,12 +738,12 @@ declare module "events" { static listenerCount(emitter: EventEmitter, event: string | symbol): number; // deprecated static defaultMaxListeners: number; - addListener(event: string | symbol, listener: Function): this; - on(event: string | symbol, listener: Function): this; - once(event: string | symbol, listener: Function): this; - prependListener(event: string | symbol, listener: Function): this; - prependOnceListener(event: string | symbol, listener: Function): this; - removeListener(event: string | symbol, listener: Function): this; + 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; + prependListener(event: string | symbol, listener: (...args: any[]) => void): this; + prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this; + removeListener(event: string | symbol, listener: (...args: any[]) => void): this; removeAllListeners(event?: string | symbol): this; setMaxListeners(n: number): this; getMaxListeners(): number; @@ -982,7 +982,7 @@ declare module "cluster" { * 5. message * 6. online */ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "disconnect", listener: () => void): this; addListener(event: "error", listener: (code: number, signal: string) => void): this; addListener(event: "exit", listener: (code: number, signal: string) => void): this; @@ -990,7 +990,7 @@ declare module "cluster" { addListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this; // the handle is a net.Socket or net.Server object, or undefined. addListener(event: "online", listener: () => void): this; - emit(event: string, listener: Function): boolean + emit(event: string, listener: (...args: any[]) => void): boolean emit(event: "disconnect"): boolean emit(event: "error", code: number, signal: string): boolean emit(event: "exit", code: number, signal: string): boolean @@ -998,7 +998,7 @@ declare module "cluster" { emit(event: "message", message: any, handle: net.Socket | net.Server): boolean emit(event: "online"): boolean - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "disconnect", listener: () => void): this; on(event: "error", listener: (code: number, signal: string) => void): this; on(event: "exit", listener: (code: number, signal: string) => void): this; @@ -1006,7 +1006,7 @@ declare module "cluster" { on(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this; // the handle is a net.Socket or net.Server object, or undefined. on(event: "online", listener: () => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "disconnect", listener: () => void): this; once(event: "error", listener: (code: number, signal: string) => void): this; once(event: "exit", listener: (code: number, signal: string) => void): this; @@ -1014,7 +1014,7 @@ declare module "cluster" { once(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this; // the handle is a net.Socket or net.Server object, or undefined. once(event: "online", listener: () => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "disconnect", listener: () => void): this; prependListener(event: "error", listener: (code: number, signal: string) => void): this; prependListener(event: "exit", listener: (code: number, signal: string) => void): this; @@ -1022,7 +1022,7 @@ declare module "cluster" { prependListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this; // the handle is a net.Socket or net.Server object, or undefined. prependListener(event: "online", listener: () => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "disconnect", listener: () => void): this; prependOnceListener(event: "error", listener: (code: number, signal: string) => void): this; prependOnceListener(event: "exit", listener: (code: number, signal: string) => void): this; @@ -1055,7 +1055,7 @@ declare module "cluster" { * 6. online * 7. setup */ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "disconnect", listener: (worker: Worker) => void): this; addListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this; addListener(event: "fork", listener: (worker: Worker) => void): this; @@ -1064,7 +1064,7 @@ declare module "cluster" { addListener(event: "online", listener: (worker: Worker) => void): this; addListener(event: "setup", listener: (settings: any) => void): this; - emit(event: string, listener: Function): boolean; + emit(event: string, listener: (...args: any[]) => void): boolean; emit(event: "disconnect", worker: Worker): boolean; emit(event: "exit", worker: Worker, code: number, signal: string): boolean; emit(event: "fork", worker: Worker): boolean; @@ -1073,7 +1073,7 @@ declare module "cluster" { emit(event: "online", worker: Worker): boolean; emit(event: "setup", settings: any): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "disconnect", listener: (worker: Worker) => void): this; on(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this; on(event: "fork", listener: (worker: Worker) => void): this; @@ -1082,7 +1082,7 @@ declare module "cluster" { on(event: "online", listener: (worker: Worker) => void): this; on(event: "setup", listener: (settings: any) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "disconnect", listener: (worker: Worker) => void): this; once(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this; once(event: "fork", listener: (worker: Worker) => void): this; @@ -1091,7 +1091,7 @@ declare module "cluster" { once(event: "online", listener: (worker: Worker) => void): this; once(event: "setup", listener: (settings: any) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "disconnect", listener: (worker: Worker) => void): this; prependListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this; prependListener(event: "fork", listener: (worker: Worker) => void): this; @@ -1100,7 +1100,7 @@ declare module "cluster" { prependListener(event: "online", listener: (worker: Worker) => void): this; prependListener(event: "setup", listener: (settings: any) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "disconnect", listener: (worker: Worker) => void): this; prependOnceListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this; prependOnceListener(event: "fork", listener: (worker: Worker) => void): this; @@ -1133,7 +1133,7 @@ declare module "cluster" { * 6. online * 7. setup */ - export function addListener(event: string, listener: Function): Cluster; + export function addListener(event: string, listener: (...args: any[]) => void): Cluster; export function addListener(event: "disconnect", listener: (worker: Worker) => void): Cluster; export function addListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster; export function addListener(event: "fork", listener: (worker: Worker) => void): Cluster; @@ -1142,7 +1142,7 @@ declare module "cluster" { export function addListener(event: "online", listener: (worker: Worker) => void): Cluster; export function addListener(event: "setup", listener: (settings: any) => void): Cluster; - export function emit(event: string, listener: Function): boolean; + export function emit(event: string, listener: (...args: any[]) => void): boolean; export function emit(event: "disconnect", worker: Worker): boolean; export function emit(event: "exit", worker: Worker, code: number, signal: string): boolean; export function emit(event: "fork", worker: Worker): boolean; @@ -1151,7 +1151,7 @@ declare module "cluster" { export function emit(event: "online", worker: Worker): boolean; export function emit(event: "setup", settings: any): boolean; - export function on(event: string, listener: Function): Cluster; + export function on(event: string, listener: (...args: any[]) => void): Cluster; export function on(event: "disconnect", listener: (worker: Worker) => void): Cluster; export function on(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster; export function on(event: "fork", listener: (worker: Worker) => void): Cluster; @@ -1160,7 +1160,7 @@ declare module "cluster" { export function on(event: "online", listener: (worker: Worker) => void): Cluster; export function on(event: "setup", listener: (settings: any) => void): Cluster; - export function once(event: string, listener: Function): Cluster; + export function once(event: string, listener: (...args: any[]) => void): Cluster; export function once(event: "disconnect", listener: (worker: Worker) => void): Cluster; export function once(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster; export function once(event: "fork", listener: (worker: Worker) => void): Cluster; @@ -1169,14 +1169,14 @@ declare module "cluster" { export function once(event: "online", listener: (worker: Worker) => void): Cluster; export function once(event: "setup", listener: (settings: any) => void): Cluster; - export function removeListener(event: string, listener: Function): Cluster; + export function removeListener(event: string, listener: (...args: any[]) => void): Cluster; export function removeAllListeners(event?: string): Cluster; export function setMaxListeners(n: number): Cluster; export function getMaxListeners(): number; export function listeners(event: string): Function[]; export function listenerCount(type: string): number; - export function prependListener(event: string, listener: Function): Cluster; + export function prependListener(event: string, listener: (...args: any[]) => void): Cluster; export function prependListener(event: "disconnect", listener: (worker: Worker) => void): Cluster; export function prependListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster; export function prependListener(event: "fork", listener: (worker: Worker) => void): Cluster; @@ -1185,7 +1185,7 @@ declare module "cluster" { export function prependListener(event: "online", listener: (worker: Worker) => void): Cluster; export function prependListener(event: "setup", listener: (settings: any) => void): Cluster; - export function prependOnceListener(event: string, listener: Function): Cluster; + export function prependOnceListener(event: string, listener: (...args: any[]) => void): Cluster; export function prependOnceListener(event: "disconnect", listener: (worker: Worker) => void): Cluster; export function prependOnceListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster; export function prependOnceListener(event: "fork", listener: (worker: Worker) => void): Cluster; @@ -1583,29 +1583,29 @@ declare module "repl" { * 2. reset **/ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "exit", listener: () => void): this; - addListener(event: "reset", listener: Function): this; + addListener(event: "reset", listener: (...args: any[]) => void): this; emit(event: string, ...args: any[]): boolean; emit(event: "exit"): boolean; emit(event: "reset", context: any): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "exit", listener: () => void): this; - on(event: "reset", listener: Function): this; + on(event: "reset", listener: (...args: any[]) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "exit", listener: () => void): this; - once(event: "reset", listener: Function): this; + once(event: "reset", listener: (...args: any[]) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "exit", listener: () => void): this; - prependListener(event: "reset", listener: Function): this; + prependListener(event: "reset", listener: (...args: any[]) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "exit", listener: () => void): this; - prependOnceListener(event: "reset", listener: Function): this; + prependOnceListener(event: "reset", listener: (...args: any[]) => void): this; } export function start(options: ReplOptions): REPLServer; @@ -1643,7 +1643,7 @@ declare module "readline" { * 7. SIGTSTP **/ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "close", listener: () => void): this; addListener(event: "line", listener: (input: any) => void): this; addListener(event: "pause", listener: () => void): this; @@ -1661,7 +1661,7 @@ declare module "readline" { emit(event: "SIGINT"): boolean; emit(event: "SIGTSTP"): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "close", listener: () => void): this; on(event: "line", listener: (input: any) => void): this; on(event: "pause", listener: () => void): this; @@ -1670,7 +1670,7 @@ declare module "readline" { on(event: "SIGINT", listener: () => void): this; on(event: "SIGTSTP", listener: () => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "close", listener: () => void): this; once(event: "line", listener: (input: any) => void): this; once(event: "pause", listener: () => void): this; @@ -1679,7 +1679,7 @@ declare module "readline" { once(event: "SIGINT", listener: () => void): this; once(event: "SIGTSTP", listener: () => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: () => void): this; prependListener(event: "line", listener: (input: any) => void): this; prependListener(event: "pause", listener: () => void): this; @@ -1688,7 +1688,7 @@ declare module "readline" { prependListener(event: "SIGINT", listener: () => void): this; prependListener(event: "SIGTSTP", listener: () => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: () => void): this; prependOnceListener(event: "line", listener: (input: any) => void): this; prependOnceListener(event: "pause", listener: () => void): this; @@ -1779,7 +1779,7 @@ declare module "child_process" { * 5. message **/ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "close", listener: (code: number, signal: string) => void): this; addListener(event: "disconnect", listener: () => void): this; addListener(event: "error", listener: (err: Error) => void): this; @@ -1793,28 +1793,28 @@ declare module "child_process" { emit(event: "exit", code: number, signal: string): boolean; emit(event: "message", message: any, sendHandle: net.Socket | net.Server): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "close", listener: (code: number, signal: string) => void): this; on(event: "disconnect", listener: () => void): this; on(event: "error", listener: (err: Error) => void): this; on(event: "exit", listener: (code: number, signal: string) => void): this; on(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "close", listener: (code: number, signal: string) => void): this; once(event: "disconnect", listener: () => void): this; once(event: "error", listener: (err: Error) => void): this; once(event: "exit", listener: (code: number, signal: string) => void): this; once(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: (code: number, signal: string) => void): this; prependListener(event: "disconnect", listener: () => void): this; prependListener(event: "error", listener: (err: Error) => void): this; prependListener(event: "exit", listener: (code: number, signal: string) => void): this; prependListener(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: (code: number, signal: string) => void): this; prependOnceListener(event: "disconnect", listener: () => void): this; prependOnceListener(event: "error", listener: (err: Error) => void): this; @@ -2246,7 +2246,7 @@ declare module "net" { * 7. lookup * 8. timeout */ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "close", listener: (had_error: boolean) => void): this; addListener(event: "connect", listener: () => void): this; addListener(event: "data", listener: (data: Buffer) => void): this; @@ -2266,7 +2266,7 @@ declare module "net" { emit(event: "lookup", err: Error, address: string, family: string | number, host: string): boolean; emit(event: "timeout"): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "close", listener: (had_error: boolean) => void): this; on(event: "connect", listener: () => void): this; on(event: "data", listener: (data: Buffer) => void): this; @@ -2276,7 +2276,7 @@ declare module "net" { on(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this; on(event: "timeout", listener: () => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "close", listener: (had_error: boolean) => void): this; once(event: "connect", listener: () => void): this; once(event: "data", listener: (data: Buffer) => void): this; @@ -2286,7 +2286,7 @@ declare module "net" { once(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this; once(event: "timeout", listener: () => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: (had_error: boolean) => void): this; prependListener(event: "connect", listener: () => void): this; prependListener(event: "data", listener: (data: Buffer) => void): this; @@ -2296,7 +2296,7 @@ declare module "net" { prependListener(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this; prependListener(event: "timeout", listener: () => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: (had_error: boolean) => void): this; prependOnceListener(event: "connect", listener: () => void): this; prependOnceListener(event: "data", listener: (data: Buffer) => void): this; @@ -2345,7 +2345,7 @@ declare module "net" { * 3. error * 4. listening */ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "close", listener: () => void): this; addListener(event: "connection", listener: (socket: Socket) => void): this; addListener(event: "error", listener: (err: Error) => void): this; @@ -2357,25 +2357,25 @@ declare module "net" { emit(event: "error", err: Error): boolean; emit(event: "listening"): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "close", listener: () => void): this; on(event: "connection", listener: (socket: Socket) => void): this; on(event: "error", listener: (err: Error) => void): this; on(event: "listening", listener: () => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "close", listener: () => void): this; once(event: "connection", listener: (socket: Socket) => void): this; once(event: "error", listener: (err: Error) => void): this; once(event: "listening", listener: () => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: () => void): this; prependListener(event: "connection", listener: (socket: Socket) => void): this; prependListener(event: "error", listener: (err: Error) => void): this; prependListener(event: "listening", listener: () => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: () => void): this; prependOnceListener(event: "connection", listener: (socket: Socket) => void): this; prependOnceListener(event: "error", listener: (err: Error) => void): this; @@ -2448,7 +2448,7 @@ declare module "dgram" { * 3. listening * 4. message **/ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "close", listener: () => void): this; addListener(event: "error", listener: (err: Error) => void): this; addListener(event: "listening", listener: () => void): this; @@ -2460,25 +2460,25 @@ declare module "dgram" { emit(event: "listening"): boolean; emit(event: "message", msg: Buffer, rinfo: AddressInfo): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "close", listener: () => void): this; on(event: "error", listener: (err: Error) => void): this; on(event: "listening", listener: () => void): this; on(event: "message", listener: (msg: Buffer, rinfo: AddressInfo) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "close", listener: () => void): this; once(event: "error", listener: (err: Error) => void): this; once(event: "listening", listener: () => void): this; once(event: "message", listener: (msg: Buffer, rinfo: AddressInfo) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: () => void): this; prependListener(event: "error", listener: (err: Error) => void): this; prependListener(event: "listening", listener: () => void): this; prependListener(event: "message", listener: (msg: Buffer, rinfo: AddressInfo) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: () => void): this; prependOnceListener(event: "error", listener: (err: Error) => void): this; prependOnceListener(event: "listening", listener: () => void): this; @@ -2522,23 +2522,23 @@ declare module "fs" { * 1. change * 2. error */ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "change", listener: (eventType: string, filename: string | Buffer) => void): this; addListener(event: "error", listener: (code: number, signal: string) => void): this; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "change", listener: (eventType: string, filename: string | Buffer) => void): this; on(event: "error", listener: (code: number, signal: string) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "change", listener: (eventType: string, filename: string | Buffer) => void): this; once(event: "error", listener: (code: number, signal: string) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "change", listener: (eventType: string, filename: string | Buffer) => void): this; prependListener(event: "error", listener: (code: number, signal: string) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "change", listener: (eventType: string, filename: string | Buffer) => void): this; prependOnceListener(event: "error", listener: (code: number, signal: string) => void): this; } @@ -2554,23 +2554,23 @@ declare module "fs" { * 1. open * 2. close */ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "open", listener: (fd: number) => void): this; addListener(event: "close", listener: () => void): this; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "open", listener: (fd: number) => void): this; on(event: "close", listener: () => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "open", listener: (fd: number) => void): this; once(event: "close", listener: () => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "open", listener: (fd: number) => void): this; prependListener(event: "close", listener: () => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "open", listener: (fd: number) => void): this; prependOnceListener(event: "close", listener: () => void): this; } @@ -2585,23 +2585,23 @@ declare module "fs" { * 1. open * 2. close */ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "open", listener: (fd: number) => void): this; addListener(event: "close", listener: () => void): this; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "open", listener: (fd: number) => void): this; on(event: "close", listener: () => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "open", listener: (fd: number) => void): this; once(event: "close", listener: () => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "open", listener: (fd: number) => void): this; prependListener(event: "close", listener: () => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "open", listener: (fd: number) => void): this; prependOnceListener(event: "close", listener: () => void): this; } @@ -3364,7 +3364,7 @@ declare module "tls" { * 1. OCSPResponse * 2. secureConnect **/ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "OCSPResponse", listener: (response: Buffer) => void): this; addListener(event: "secureConnect", listener: () => void): this; @@ -3372,19 +3372,19 @@ declare module "tls" { emit(event: "OCSPResponse", response: Buffer): boolean; emit(event: "secureConnect"): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "OCSPResponse", listener: (response: Buffer) => void): this; on(event: "secureConnect", listener: () => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "OCSPResponse", listener: (response: Buffer) => void): this; once(event: "secureConnect", listener: () => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "OCSPResponse", listener: (response: Buffer) => void): this; prependListener(event: "secureConnect", listener: () => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "OCSPResponse", listener: (response: Buffer) => void): this; prependOnceListener(event: "secureConnect", listener: () => void): this; } @@ -3454,7 +3454,7 @@ declare module "tls" { * 4. resumeSession * 5. secureConnection **/ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this; addListener(event: "newSession", listener: (sessionId: any, sessionData: any, callback: (err: Error, resp: Buffer) => void) => void): this; addListener(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: Function) => void): this; @@ -3468,28 +3468,28 @@ declare module "tls" { emit(event: "resumeSession", sessionId: any, callback: (err: Error, sessionData: any) => void): boolean; emit(event: "secureConnection", tlsSocket: TLSSocket): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this; on(event: "newSession", listener: (sessionId: any, sessionData: any, callback: (err: Error, resp: Buffer) => void) => void): this; on(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: Function) => void): this; on(event: "resumeSession", listener: (sessionId: any, callback: (err: Error, sessionData: any) => void) => void): this; on(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this; once(event: "newSession", listener: (sessionId: any, sessionData: any, callback: (err: Error, resp: Buffer) => void) => void): this; once(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: Function) => void): this; once(event: "resumeSession", listener: (sessionId: any, callback: (err: Error, sessionData: any) => void) => void): this; once(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this; prependListener(event: "newSession", listener: (sessionId: any, sessionData: any, callback: (err: Error, resp: Buffer) => void) => void): this; prependListener(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: Function) => void): this; prependListener(event: "resumeSession", listener: (sessionId: any, callback: (err: Error, sessionData: any) => void) => void): this; prependListener(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this; prependOnceListener(event: "newSession", listener: (sessionId: any, sessionData: any, callback: (err: Error, resp: Buffer) => void) => void): this; prependOnceListener(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: Function) => void): this; @@ -3744,8 +3744,8 @@ declare module "stream" { * 4. readable * 5. error **/ - addListener(event: string, listener: Function): this; - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "close", listener: () => void): this; addListener(event: "data", listener: (chunk: Buffer | string) => void): this; addListener(event: "end", listener: () => void): this; @@ -3759,35 +3759,35 @@ declare module "stream" { emit(event: "readable"): boolean; emit(event: "error", err: Error): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "close", listener: () => void): this; on(event: "data", listener: (chunk: Buffer | string) => void): this; on(event: "end", listener: () => void): this; on(event: "readable", listener: () => void): this; on(event: "error", listener: (err: Error) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "close", listener: () => void): this; once(event: "data", listener: (chunk: Buffer | string) => void): this; once(event: "end", listener: () => void): this; once(event: "readable", listener: () => void): this; once(event: "error", listener: (err: Error) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: () => void): this; prependListener(event: "data", listener: (chunk: Buffer | string) => void): this; prependListener(event: "end", listener: () => void): this; prependListener(event: "readable", listener: () => void): this; prependListener(event: "error", listener: (err: Error) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: () => void): this; prependOnceListener(event: "data", listener: (chunk: Buffer | string) => void): this; prependOnceListener(event: "end", listener: () => void): this; prependOnceListener(event: "readable", listener: () => void): this; prependOnceListener(event: "error", listener: (err: Error) => void): this; - removeListener(event: string, listener: Function): this; + removeListener(event: string, listener: (...args: any[]) => void): this; removeListener(event: "close", listener: () => void): this; removeListener(event: "data", listener: (chunk: Buffer | string) => void): this; removeListener(event: "end", listener: () => void): this; @@ -3824,7 +3824,7 @@ declare module "stream" { * 5. pipe * 6. unpipe **/ - addListener(event: string, listener: Function): this; + addListener(event: string, listener: (...args: any[]) => void): this; addListener(event: "close", listener: () => void): this; addListener(event: "drain", listener: () => void): this; addListener(event: "error", listener: (err: Error) => void): this; @@ -3840,7 +3840,7 @@ declare module "stream" { emit(event: "pipe", src: Readable): boolean; emit(event: "unpipe", src: Readable): boolean; - on(event: string, listener: Function): this; + on(event: string, listener: (...args: any[]) => void): this; on(event: "close", listener: () => void): this; on(event: "drain", listener: () => void): this; on(event: "error", listener: (err: Error) => void): this; @@ -3848,7 +3848,7 @@ declare module "stream" { on(event: "pipe", listener: (src: Readable) => void): this; on(event: "unpipe", listener: (src: Readable) => void): this; - once(event: string, listener: Function): this; + once(event: string, listener: (...args: any[]) => void): this; once(event: "close", listener: () => void): this; once(event: "drain", listener: () => void): this; once(event: "error", listener: (err: Error) => void): this; @@ -3856,7 +3856,7 @@ declare module "stream" { once(event: "pipe", listener: (src: Readable) => void): this; once(event: "unpipe", listener: (src: Readable) => void): this; - prependListener(event: string, listener: Function): this; + prependListener(event: string, listener: (...args: any[]) => void): this; prependListener(event: "close", listener: () => void): this; prependListener(event: "drain", listener: () => void): this; prependListener(event: "error", listener: (err: Error) => void): this; @@ -3864,7 +3864,7 @@ declare module "stream" { prependListener(event: "pipe", listener: (src: Readable) => void): this; prependListener(event: "unpipe", listener: (src: Readable) => void): this; - prependOnceListener(event: string, listener: Function): this; + prependOnceListener(event: string, listener: (...args: any[]) => void): this; prependOnceListener(event: "close", listener: () => void): this; prependOnceListener(event: "drain", listener: () => void): this; prependOnceListener(event: "error", listener: (err: Error) => void): this; @@ -3872,7 +3872,7 @@ declare module "stream" { prependOnceListener(event: "pipe", listener: (src: Readable) => void): this; prependOnceListener(event: "unpipe", listener: (src: Readable) => void): this; - removeListener(event: string, listener: Function): this; + removeListener(event: string, listener: (...args: any[]) => void): this; removeListener(event: "close", listener: () => void): this; removeListener(event: "drain", listener: () => void): this; removeListener(event: "error", listener: (err: Error) => void): this; diff --git a/types/node/node-tests.ts b/types/node/node-tests.ts index 22dce9c2ad..aeefc2bbdc 100644 --- a/types/node/node-tests.ts +++ b/types/node/node-tests.ts @@ -88,7 +88,7 @@ namespace assert_tests { namespace events_tests { let emitter: events.EventEmitter; let event: string | symbol; - let listener: Function; + let listener: (...args: any[]) => void; let any: any; { From f5239925acf2ee07ab4fecd2ceeb0247f2ed1297 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Tue, 20 Jun 2017 12:06:26 -0700 Subject: [PATCH 2/2] Fix more tests --- types/gulp-istanbul/gulp-istanbul-tests.ts | 6 +++--- types/gulp-watch/gulp-watch-tests.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/types/gulp-istanbul/gulp-istanbul-tests.ts b/types/gulp-istanbul/gulp-istanbul-tests.ts index a57932419d..af15f5df54 100644 --- a/types/gulp-istanbul/gulp-istanbul-tests.ts +++ b/types/gulp-istanbul/gulp-istanbul-tests.ts @@ -5,7 +5,7 @@ function testFramework(): NodeJS.ReadWriteStream { return null; } -gulp.task('test', function (cb: Function) { +gulp.task('test', function (cb: () => void) { gulp.src(['lib/**/*.js', 'main.js']) .pipe(istanbul()) // Covering files .pipe(gulp.dest('test-tmp/')) @@ -17,7 +17,7 @@ gulp.task('test', function (cb: Function) { }); }); -gulp.task('test', function (cb: Function) { +gulp.task('test', function (cb: () => void) { gulp.src(['lib/**/*.js', 'main.js']) .pipe(istanbul({includeUntested: true})) // Covering files .pipe(istanbul.hookRequire()) @@ -29,7 +29,7 @@ gulp.task('test', function (cb: Function) { }); }); -gulp.task('test', function (cb: Function) { +gulp.task('test', function (cb: () => void) { gulp.src(['lib/**/*.js', 'main.js']) .pipe(istanbul({includeUntested: true})) // Covering files .pipe(istanbul.hookRequire()) diff --git a/types/gulp-watch/gulp-watch-tests.ts b/types/gulp-watch/gulp-watch-tests.ts index 0260a24bb6..de531257a5 100644 --- a/types/gulp-watch/gulp-watch-tests.ts +++ b/types/gulp-watch/gulp-watch-tests.ts @@ -7,7 +7,7 @@ gulp.task('stream', () => .pipe(gulp.dest('build')) ); -gulp.task('callback', (cb: Function) => +gulp.task('callback', (cb: () => void) => watch('css/**/*.css', () => gulp.src('css/**/*.css') .pipe(watch('css/**/*.css'))