declare module 'request-promise-native' { import request = require('request'); import http = require('http'); namespace requestPromise { interface RequestPromise extends request.Request { then(onfulfilled?: (value: any) => TResult | PromiseLike, onrejected?: (reason: any) => TResult | PromiseLike): Promise; then(onfulfilled?: (value: any) => TResult | PromiseLike, onrejected?: (reason: any) => void): Promise; catch(onrejected?: (reason: any) => any | PromiseLike): Promise; catch(onrejected?: (reason: any) => void): Promise; promise(): Promise; cancel(): void; } interface RequestPromiseOptions extends request.CoreOptions { simple?: boolean; transform?: (body: any, response: http.IncomingMessage, resolveWithFullResponse?: boolean) => any; resolveWithFullResponse?: boolean; } export type OptionsWithUri = request.UriOptions & RequestPromiseOptions; export type OptionsWithUrl = request.UrlOptions & RequestPromiseOptions; export type Options = OptionsWithUri | OptionsWithUrl; } var requestPromise: request.RequestAPI; export = requestPromise; }