forked from lix-project/lix-website
35 lines
1 KiB
TypeScript
35 lines
1 KiB
TypeScript
import { TLSSocket, ConnectionOptions } from 'tls'
|
|
import { IpcNetConnectOpts, Socket, TcpNetConnectOpts } from 'net'
|
|
|
|
export default buildConnector
|
|
declare function buildConnector (options?: buildConnector.BuildOptions): buildConnector.connector
|
|
|
|
declare namespace buildConnector {
|
|
export type BuildOptions = (ConnectionOptions | TcpNetConnectOpts | IpcNetConnectOpts) & {
|
|
allowH2?: boolean;
|
|
maxCachedSessions?: number | null;
|
|
socketPath?: string | null;
|
|
timeout?: number | null;
|
|
port?: number;
|
|
keepAlive?: boolean | null;
|
|
keepAliveInitialDelay?: number | null;
|
|
}
|
|
|
|
export interface Options {
|
|
hostname: string
|
|
host?: string
|
|
protocol: string
|
|
port: string
|
|
servername?: string
|
|
localAddress?: string | null
|
|
httpSocket?: Socket
|
|
}
|
|
|
|
export type Callback = (...args: CallbackArgs) => void
|
|
type CallbackArgs = [null, Socket | TLSSocket] | [Error, null]
|
|
|
|
export interface connector {
|
|
(options: buildConnector.Options, callback: buildConnector.Callback): void
|
|
}
|
|
}
|