import { OutgoingHttpHeaders } from 'http'; import needle from 'needle'; import * as querystring from 'querystring'; import { JsonApiErrorObject } from './interfaces/json-api'; export interface Payload { body?: needle.BodyData; url: string; headers?: OutgoingHttpHeaders; method: needle.NeedleHttpVerbs; qs?: querystring.ParsedUrlQueryInput; timeout?: number; family?: number; isJson?: boolean; } interface SuccessResponse { success: true; body: T; } export type FailedResponse = { success: false; errorCode: number; error: Error | undefined; errors?: JsonApiErrorObject[] | undefined; }; export declare function makeRequest(payload: Payload, attempts?: number): Promise | FailedResponse>; export {};