import { AxiosInstance, AxiosPromise, AxiosRequestConfig } from 'axios'; import { Base } from '../base'; import { IStormProxiesConfig } from './types'; /** * @description StormProxies proxy provider. * @extends {Base} */ export declare class StormProxies extends Base { axios: AxiosInstance; private readonly strategy; constructor(config: IStormProxiesConfig); /** * Create and set proxy agents. A different port matches a * different country / IP. */ setIp(): StormProxies; /** * Picks a random host:port from given mapping. */ private getRandomIpPort; /** * Checks ip:port mapping is provided. */ private isHostIpPortMappingProvided; /** * Sends a request. */ fetch(axiosRequestConfig: AxiosRequestConfig): AxiosPromise; /** * Creates both an HTTP and HTTPS proxy */ private createProxyAgents; }