// Type definitions for request-promise-native 1.0 // Project: https://github.com/request/request-promise-native // Definitions by: Gustavo Henke // Matt R. Wilson // Cory Reed // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 import request = require('request'); import http = require('http'); declare namespace requestPromise { interface RequestPromise extends request.Request, Promise { promise(): Promise; } interface RequestPromiseOptions extends request.CoreOptions { simple?: boolean; transform?(body: any, response: request.Response, resolveWithFullResponse?: boolean): any; transform2xxOnly?: boolean; resolveWithFullResponse?: boolean; } type RequestPromiseAPI = request.RequestAPI; type FullResponse = request.Response; type OptionsWithUri = request.UriOptions & RequestPromiseOptions; type OptionsWithUrl = request.UrlOptions & RequestPromiseOptions; type Options = OptionsWithUri | OptionsWithUrl; } declare const requestPromise: requestPromise.RequestPromiseAPI; export = requestPromise;