{
  "metadata": {
    "toolPackage": "@microsoft/api-extractor",
    "toolVersion": "7.7.10",
    "schemaVersion": 1003,
    "oldestForwardsCompatibleVersion": 1001
  },
  "kind": "Package",
  "canonicalReference": "@loopback/http-server!",
  "docComment": "",
  "name": "@loopback/http-server",
  "members": [
    {
      "kind": "EntryPoint",
      "canonicalReference": "@loopback/http-server!",
      "name": "",
      "members": [
        {
          "kind": "Interface",
          "canonicalReference": "@loopback/http-server!BaseHttpOptions:interface",
          "docComment": "/**\n * Base options that are common to http and https servers\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface BaseHttpOptions extends "
            },
            {
              "kind": "Reference",
              "text": "ListenOptions",
              "canonicalReference": "!\"\\\"net\\\"\".ListenOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "releaseTag": "Public",
          "name": "BaseHttpOptions",
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "@loopback/http-server!BaseHttpOptions#gracePeriodForClose:member",
              "docComment": "/**\n * The `gracePeriodForClose` property controls how to stop the server gracefully. Its value is the number of milliseconds to wait before in-flight requests finish when the server is being stopped. With this setting, we also reject new requests from existing keep-alive connections in addition to stopping accepting new connections.\n *\n * Defaults to Infinity (don't force-close). If you want to immediately destroy all sockets set its value to `0`.\n *\n * @see https://www.npmjs.com/package/stoppable\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "gracePeriodForClose?: "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "gracePeriodForClose",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 3
            }
          ]
        },
        {
          "kind": "Interface",
          "canonicalReference": "@loopback/http-server!HttpOptions:interface",
          "docComment": "/**\n * HTTP server options\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface HttpOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseHttpOptions",
              "canonicalReference": "@loopback/http-server!BaseHttpOptions:interface"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "releaseTag": "Public",
          "name": "HttpOptions",
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "@loopback/http-server!HttpOptions#protocol:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "protocol?: "
                },
                {
                  "kind": "Content",
                  "text": "'http'"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "protocol",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 3
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "@loopback/http-server!HttpProtocol:type",
          "docComment": "/**\n * Supported protocols\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare type HttpProtocol = "
            },
            {
              "kind": "Content",
              "text": "'http' | 'https'"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "releaseTag": "Public",
          "name": "HttpProtocol",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Class",
          "canonicalReference": "@loopback/http-server!HttpServer:class",
          "docComment": "/**\n * HTTP / HTTPS server used by LoopBack's RestServer\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare class HttpServer "
            }
          ],
          "releaseTag": "Public",
          "name": "HttpServer",
          "members": [
            {
              "kind": "Constructor",
              "canonicalReference": "@loopback/http-server!HttpServer:constructor(1)",
              "docComment": "/**\n * Constructs a new instance of the `HttpServer` class\n *\n * @param  - requestListener\n *\n * @param  - serverOptions\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "constructor(requestListener: "
                },
                {
                  "kind": "Reference",
                  "text": "RequestListener",
                  "canonicalReference": "@loopback/http-server!RequestListener:type"
                },
                {
                  "kind": "Content",
                  "text": ", serverOptions?: "
                },
                {
                  "kind": "Reference",
                  "text": "HttpServerOptions",
                  "canonicalReference": "@loopback/http-server!HttpServerOptions:type"
                },
                {
                  "kind": "Content",
                  "text": ");"
                }
              ],
              "releaseTag": "Public",
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "requestListener",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  }
                },
                {
                  "parameterName": "serverOptions",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 4
                  }
                }
              ]
            },
            {
              "kind": "Property",
              "canonicalReference": "@loopback/http-server!HttpServer#address:member",
              "docComment": "/**\n * Address of the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get address(): "
                },
                {
                  "kind": "Content",
                  "text": "string | "
                },
                {
                  "kind": "Reference",
                  "text": "AddressInfo",
                  "canonicalReference": "!\"\\\"net\\\"\".AddressInfo:interface"
                },
                {
                  "kind": "Content",
                  "text": " | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "address",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 4
              },
              "isStatic": false
            },
            {
              "kind": "Property",
              "canonicalReference": "@loopback/http-server!HttpServer#host:member",
              "docComment": "/**\n * Host of the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get host(): "
                },
                {
                  "kind": "Content",
                  "text": "string | undefined"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "host",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false
            },
            {
              "kind": "Property",
              "canonicalReference": "@loopback/http-server!HttpServer#listening:member",
              "docComment": "/**\n * State of the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get listening(): "
                },
                {
                  "kind": "Content",
                  "text": "boolean"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "listening",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false
            },
            {
              "kind": "Property",
              "canonicalReference": "@loopback/http-server!HttpServer#port:member",
              "docComment": "/**\n * Port number of the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get port(): "
                },
                {
                  "kind": "Content",
                  "text": "number"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "port",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false
            },
            {
              "kind": "Property",
              "canonicalReference": "@loopback/http-server!HttpServer#protocol:member",
              "docComment": "/**\n * Protocol of the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get protocol(): "
                },
                {
                  "kind": "Reference",
                  "text": "HttpProtocol",
                  "canonicalReference": "@loopback/http-server!HttpProtocol:type"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "protocol",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false
            },
            {
              "kind": "Property",
              "canonicalReference": "@loopback/http-server!HttpServer#server:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly server: "
                },
                {
                  "kind": "Reference",
                  "text": "http.Server",
                  "canonicalReference": "!\"\\\"http\\\"\".Server:class"
                },
                {
                  "kind": "Content",
                  "text": " | "
                },
                {
                  "kind": "Reference",
                  "text": "https.Server",
                  "canonicalReference": "!\"\\\"https\\\"\".Server:class"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "server",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 4
              },
              "isStatic": false
            },
            {
              "kind": "Method",
              "canonicalReference": "@loopback/http-server!HttpServer#start:member(1)",
              "docComment": "/**\n * Starts the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "start(): "
                },
                {
                  "kind": "Reference",
                  "text": "Promise",
                  "canonicalReference": "!Promise:interface"
                },
                {
                  "kind": "Content",
                  "text": "<void>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "overloadIndex": 1,
              "parameters": [],
              "name": "start"
            },
            {
              "kind": "Method",
              "canonicalReference": "@loopback/http-server!HttpServer#stop:member(1)",
              "docComment": "/**\n * Stops the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "stop(): "
                },
                {
                  "kind": "Reference",
                  "text": "Promise",
                  "canonicalReference": "!Promise:interface"
                },
                {
                  "kind": "Content",
                  "text": "<void>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "isStatic": false,
              "returnTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 3
              },
              "releaseTag": "Public",
              "overloadIndex": 1,
              "parameters": [],
              "name": "stop"
            },
            {
              "kind": "Property",
              "canonicalReference": "@loopback/http-server!HttpServer#url:member",
              "docComment": "/**\n * URL of the HTTP / HTTPS server\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "get url(): "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "url",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "isStatic": false
            }
          ],
          "implementsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "@loopback/http-server!HttpServerOptions:type",
          "docComment": "/**\n * Possible server options\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare type HttpServerOptions = "
            },
            {
              "kind": "Reference",
              "text": "HttpOptions",
              "canonicalReference": "@loopback/http-server!HttpOptions:interface"
            },
            {
              "kind": "Content",
              "text": " | "
            },
            {
              "kind": "Reference",
              "text": "HttpsOptions",
              "canonicalReference": "@loopback/http-server!HttpsOptions:interface"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "releaseTag": "Public",
          "name": "HttpServerOptions",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 4
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "@loopback/http-server!HttpsOptions:interface",
          "docComment": "/**\n * HTTPS server options\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface HttpsOptions extends "
            },
            {
              "kind": "Reference",
              "text": "BaseHttpOptions",
              "canonicalReference": "@loopback/http-server!BaseHttpOptions:interface"
            },
            {
              "kind": "Content",
              "text": ", "
            },
            {
              "kind": "Reference",
              "text": "https.ServerOptions",
              "canonicalReference": "!\"\\\"https\\\"\".ServerOptions:type"
            },
            {
              "kind": "Content",
              "text": " "
            }
          ],
          "releaseTag": "Public",
          "name": "HttpsOptions",
          "members": [
            {
              "kind": "PropertySignature",
              "canonicalReference": "@loopback/http-server!HttpsOptions#protocol:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "protocol: "
                },
                {
                  "kind": "Content",
                  "text": "'https'"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "protocol",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": [
            {
              "startIndex": 1,
              "endIndex": 2
            },
            {
              "startIndex": 3,
              "endIndex": 5
            }
          ]
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "@loopback/http-server!RequestListener:type",
          "docComment": "/**\n * Request listener function for http/https requests\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare type RequestListener = "
            },
            {
              "kind": "Content",
              "text": "(req: "
            },
            {
              "kind": "Reference",
              "text": "IncomingMessage",
              "canonicalReference": "!\"\\\"http\\\"\".IncomingMessage:class"
            },
            {
              "kind": "Content",
              "text": ", res: "
            },
            {
              "kind": "Reference",
              "text": "ServerResponse",
              "canonicalReference": "!\"\\\"http\\\"\".ServerResponse:class"
            },
            {
              "kind": "Content",
              "text": ") => void"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "releaseTag": "Public",
          "name": "RequestListener",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        }
      ]
    }
  ]
}
