From e252a088123eb595d9d772eb373f41c084360278 Mon Sep 17 00:00:00 2001 From: Christopher Currens Date: Mon, 25 Jan 2016 21:03:28 -0800 Subject: [PATCH] Add specialized overloads for request events --- request/request-tests.ts | 12 ++++++++++++ request/request.d.ts | 7 ++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/request/request-tests.ts b/request/request-tests.ts index 1f638d864..30ca3226d 100644 --- a/request/request-tests.ts +++ b/request/request-tests.ts @@ -640,3 +640,15 @@ request({url: 'http://www.google.com', jar: j}, function () { var cookies = j.getCookies(url); // [{key: 'key1', value: 'value1', domain: "www.google.com", ...}, ...] }); + +request( + { method: 'GET' + , uri: 'http://www.google.com' + , gzip: true + } + ) + .on('request', function(req: http.ClientRequest) { }) + .on('response', function(resp: http.IncomingMessage) { }) + .on('data', function(data: Buffer | string) { }) + .on('error', function(e: Error) { }) + .on('complete', function(resp: http.IncomingMessage, body?: string | Buffer) { }); \ No newline at end of file diff --git a/request/request.d.ts b/request/request.d.ts index 4d51fd14b..f47a9ddaa 100644 --- a/request/request.d.ts +++ b/request/request.d.ts @@ -1,6 +1,6 @@ // Type definitions for request // Project: https://github.com/mikeal/request -// Definitions by: Carlos Ballesteros Velasco , bonnici , Bart van der Schoor , Joe Skeen +// Definitions by: Carlos Ballesteros Velasco , bonnici , Bart van der Schoor , Joe Skeen , Christopher Currens // Definitions: https://github.com/borisyankov/DefinitelyTyped // Imported from: https://github.com/soywiz/typescript-node-definitions/d.ts @@ -180,6 +180,11 @@ declare module 'request' { jar(jar: CookieJar): Request; on(event: string, listener: Function): Request; + on(event: 'request', listener: (req: http.ClientRequest) => void): Request; + on(event: 'response', listener: (resp: http.IncomingMessage) => void): Request; + on(event: 'data', listener: (data: Buffer | string) => void): Request; + on(event: 'error', listener: (e: Error) => void): Request; + on(event: 'complete', listener: (resp: http.IncomingMessage, body?: string | Buffer) => void): Request; write(buffer: Buffer, cb?: Function): boolean; write(str: string, cb?: Function): boolean;