/// /// import type * as http from 'http'; import type * as https from 'https'; import type { AgentType, ConnectionCallbackType, ConnectionConfigurationType, GetUrlProxyMethodType, IsProxyConfiguredMethodType, MustUrlUseProxyMethodType, ProtocolType } from '../types'; type AgentRequestOptions = { host?: string; path?: string; port: number; }; type HttpRequestOptions = AgentRequestOptions & Omit & { secureEndpoint: false; }; type HttpsRequestOptions = AgentRequestOptions & Omit & { secureEndpoint: true; }; type RequestOptions = HttpRequestOptions | HttpsRequestOptions; declare abstract class Agent { defaultPort: number; protocol: ProtocolType; fallbackAgent: AgentType; isProxyConfigured: IsProxyConfiguredMethodType; mustUrlUseProxy: MustUrlUseProxyMethodType; getUrlProxy: GetUrlProxyMethodType; socketConnectionTimeout: number; ca: string[] | string | undefined; constructor(isProxyConfigured: IsProxyConfiguredMethodType, mustUrlUseProxy: MustUrlUseProxyMethodType, getUrlProxy: GetUrlProxyMethodType, fallbackAgent: AgentType, socketConnectionTimeout: number, ca: string[] | string | undefined); /** * This method can be used to append new ca certificates to existing ca certificates * * @param {string[] | string} ca a ca certificate or an array of ca certificates */ addCACertificates(ca: string[] | string): void; /** * This method clears existing CA Certificates. * It sets ca to undefined */ clearCACertificates(): void; /** * Evaluate value for tls reject unauthorized variable */ getRejectUnauthorized(): boolean; abstract createConnection(configuration: ConnectionConfigurationType, callback: ConnectionCallbackType): void; addRequest(request: http.ClientRequest, configuration: RequestOptions): void; } export default Agent;