41 lines
1.5 KiB
TypeScript
41 lines
1.5 KiB
TypeScript
|
/// <reference types="node" />
|
||
|
/// <reference types="node" />
|
||
|
/// <reference types="node" />
|
||
|
/// <reference types="node" />
|
||
|
import * as net from 'net';
|
||
|
import * as tls from 'tls';
|
||
|
import * as http from 'http';
|
||
|
import type { Duplex } from 'stream';
|
||
|
export * from './helpers';
|
||
|
interface HttpConnectOpts extends net.TcpNetConnectOpts {
|
||
|
secureEndpoint: false;
|
||
|
protocol?: string;
|
||
|
}
|
||
|
interface HttpsConnectOpts extends tls.ConnectionOptions {
|
||
|
secureEndpoint: true;
|
||
|
protocol?: string;
|
||
|
port: number;
|
||
|
}
|
||
|
export type AgentConnectOpts = HttpConnectOpts | HttpsConnectOpts;
|
||
|
declare const INTERNAL: unique symbol;
|
||
|
export declare abstract class Agent extends http.Agent {
|
||
|
private [INTERNAL];
|
||
|
options: Partial<net.TcpNetConnectOpts & tls.ConnectionOptions>;
|
||
|
keepAlive: boolean;
|
||
|
constructor(opts?: http.AgentOptions);
|
||
|
abstract connect(req: http.ClientRequest, options: AgentConnectOpts): Promise<Duplex | http.Agent> | Duplex | http.Agent;
|
||
|
/**
|
||
|
* Determine whether this is an `http` or `https` request.
|
||
|
*/
|
||
|
isSecureEndpoint(options?: AgentConnectOpts): boolean;
|
||
|
private incrementSockets;
|
||
|
private decrementSockets;
|
||
|
getName(options: AgentConnectOpts): string;
|
||
|
createSocket(req: http.ClientRequest, options: AgentConnectOpts, cb: (err: Error | null, s?: Duplex) => void): void;
|
||
|
createConnection(): Duplex;
|
||
|
get defaultPort(): number;
|
||
|
set defaultPort(v: number);
|
||
|
get protocol(): string;
|
||
|
set protocol(v: string);
|
||
|
}
|
||
|
//# sourceMappingURL=index.d.ts.map
|