export declare class InvalidProxyConfig extends Error { constructor(message: string); } export interface RequestsProxyConfigDict { http: string; https: string; } export interface ProxyConfig { toRequestsDict(): RequestsProxyConfigDict; readonly preventKeepingConnectionsAlive: boolean; readonly retriesWhenBlocked: number; } export declare class GenericProxyConfig implements ProxyConfig { protected readonly _httpUrl?: string; protected readonly _httpsUrl?: string; constructor(httpUrl?: string, httpsUrl?: string); get httpUrl(): string | undefined; get httpsUrl(): string | undefined; toRequestsDict(): RequestsProxyConfigDict; get preventKeepingConnectionsAlive(): boolean; get retriesWhenBlocked(): number; } export interface WebshareProxyConfigOptions { proxyUsername: string; proxyPassword: string; filterIpLocations?: string[]; retriesWhenBlocked?: number; domainName?: string; proxyPort?: number; } export declare class WebshareProxyConfig extends GenericProxyConfig { static readonly DEFAULT_DOMAIN_NAME = "p.webshare.io"; static readonly DEFAULT_PORT = 80; readonly proxyUsername: string; readonly proxyPassword: string; readonly domainName: string; readonly proxyPort: number; private readonly filterIpLocations; private readonly retryCount; constructor(options: WebshareProxyConfigOptions); get url(): string; get httpUrl(): string; get httpsUrl(): string; get preventKeepingConnectionsAlive(): boolean; get retriesWhenBlocked(): number; }