OverviewFilesCommitsIssuesDocsReleasesPeers

mirall-cli / node_modules / bare-https / index.d.ts

90 lines · typescript ref:
import { TLSSocket, TLSSocketEvents, TLSSocketOptions } from 'bare-tls'
import {
  HTTPAgent,
  HTTPClientRequest,
  HTTPClientRequestOptions,
  HTTPIncomingMessage,
  HTTPServer,
  HTTPServerConnectionOptions,
  HTTPServerResponse
} from 'bare-http1'
import { TCPSocket, TCPSocketOptions, TCPSocketConnectOptions, TCPSocketEvents } from 'bare-tcp'

export interface HTTPSSocketEvents extends TLSSocketEvents, TCPSocketEvents {}

export interface HTTPSSocketOptions
  extends TLSSocketOptions, TCPSocketOptions, TCPSocketConnectOptions {}

interface HTTPSSocket<M extends HTTPSSocketEvents = HTTPSSocketEvents>
  extends TLSSocket<M>, TCPSocket<M> {}

declare class HTTPSSocket<M extends HTTPSSocketEvents = HTTPSSocketEvents> extends TLSSocket<M> {}

export { type HTTPSSocket }

interface HTTPSAgent extends HTTPAgent {
  createConnection(opts?: HTTPSSocketOptions): HTTPSSocket
}

declare class HTTPSAgent extends HTTPAgent {}

declare namespace HTTPSAgent {
  export const global: HTTPSAgent
}

export const globalAgent: HTTPSAgent

export { type HTTPSAgent, HTTPSAgent as Agent }

interface HTTPSServerOptions extends HTTPSSocketOptions, HTTPServerConnectionOptions {}

declare class HTTPSServer extends HTTPServer {
  constructor(
    opts?: HTTPSServerOptions,
    onrequest?: (req: HTTPIncomingMessage, res: HTTPServerResponse) => void
  )

  constructor(onrequest: (req: HTTPIncomingMessage, res: HTTPServerResponse) => void)
}

export { type HTTPSServer, HTTPSServer as Server }

interface HTTPSClientRequestOptions extends HTTPClientRequestOptions {
  agent?: HTTPSAgent | false
}

interface HTTPSClientRequest extends HTTPClientRequest {}

declare class HTTPSClientRequest extends HTTPClientRequest {
  constructor(opts?: HTTPSClientRequestOptions, onresponse?: () => void)

  constructor(onresponse: () => void)
}

export { type HTTPSClientRequest, HTTPSClientRequest as ClientRequest }

export function createServer(
  opts?: HTTPSServerOptions,
  onrequest?: (req: HTTPIncomingMessage, res: HTTPServerResponse) => void
): HTTPSServer

export function createServer(
  onrequest: (req: HTTPIncomingMessage, res: HTTPServerResponse) => void
): HTTPSServer

export function request(
  url: URL | string,
  opts?: HTTPSClientRequestOptions,
  onresponse?: (res: HTTPIncomingMessage) => void
): HTTPSClientRequest

export function request(
  url: URL | string,
  onresponse: (res: HTTPIncomingMessage) => void
): HTTPSClientRequest

export function request(
  opts: HTTPSClientRequestOptions,
  onresponse?: (res: HTTPIncomingMessage) => void
): HTTPSClientRequest