| declare module "https" { |
| import * as tls from "tls"; |
| import * as events from "events"; |
| import * as http from "http"; |
| import { URL } from "url"; |
| |
| type ServerOptions = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions; |
| |
| type RequestOptions = http.RequestOptions & tls.SecureContextOptions & { |
| rejectUnauthorized?: boolean; // Defaults to true |
| servername?: string; // SNI TLS Extension |
| }; |
| |
| interface AgentOptions extends http.AgentOptions, tls.ConnectionOptions { |
| rejectUnauthorized?: boolean; |
| maxCachedSessions?: number; |
| } |
| |
| class Agent extends http.Agent { |
| constructor(options?: AgentOptions); |
| options: AgentOptions; |
| } |
| |
| class Server extends tls.Server { |
| constructor(requestListener?: http.RequestListener); |
| constructor(options: ServerOptions, requestListener?: http.RequestListener); |
| |
| setTimeout(callback: () => void): this; |
| setTimeout(msecs?: number, callback?: () => void): this; |
| /** |
| * Limits maximum incoming headers count. If set to 0, no limit will be applied. |
| * @default 2000 |
| * {@link https://nodejs.org/api/http.html#http_server_maxheaderscount} |
| */ |
| maxHeadersCount: number | null; |
| timeout: number; |
| /** |
| * Limit the amount of time the parser will wait to receive the complete HTTP headers. |
| * @default 40000 |
| * {@link https://nodejs.org/api/http.html#http_server_headerstimeout} |
| */ |
| headersTimeout: number; |
| keepAliveTimeout: number; |
| } |
| |
| function createServer(requestListener?: http.RequestListener): Server; |
| function createServer(options: ServerOptions, requestListener?: http.RequestListener): Server; |
| function request(options: RequestOptions | string | URL, callback?: (res: http.IncomingMessage) => void): http.ClientRequest; |
| function request(url: string | URL, options: RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest; |
| function get(options: RequestOptions | string | URL, callback?: (res: http.IncomingMessage) => void): http.ClientRequest; |
| function get(url: string | URL, options: RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest; |
| let globalAgent: Agent; |
| } |