/// import { Agent } from 'http'; import { IncomingHttpHeaders } from 'http'; import Response = require('http-response-object'); import { ICache, CachedResponse } from 'http-basic'; import FormData = require('form-data'); interface Options { allowRedirectHeaders?: string[]; cache?: 'file' | 'memory' | ICache; agent?: boolean | Agent; followRedirects?: boolean; gzip?: boolean; headers?: IncomingHttpHeaders; maxRedirects?: number; maxRetries?: number; retry?: boolean | ((err: NodeJS.ErrnoException | null, res: Response | void, attemptNumber: number) => boolean); retryDelay?: number | ((err: NodeJS.ErrnoException | null, res: Response | void, attemptNumber: number) => number); socketTimeout?: number; timeout?: number; isMatch?: (requestHeaders: IncomingHttpHeaders, cachedResponse: CachedResponse, defaultValue: boolean) => boolean; isExpired?: (cachedResponse: CachedResponse, defaultValue: boolean) => boolean; canCache?: (res: Response, defaultValue: boolean) => boolean; qs?: { [key: string]: any; }; json?: any; form?: FormData; body?: string | Buffer | NodeJS.ReadableStream; } export { Options };