@loopback/docs
Version:
Documentation for LoopBack 4
1,430 lines (1,429 loc) • 122 kB
JSON
{
"metadata": {
"toolPackage": "@microsoft/api-extractor",
"toolVersion": "7.7.10",
"schemaVersion": 1003,
"oldestForwardsCompatibleVersion": 1001
},
"kind": "Package",
"canonicalReference": "@loopback/openapi-v3!",
"docComment": "",
"name": "@loopback/openapi-v3",
"members": [
{
"kind": "EntryPoint",
"canonicalReference": "@loopback/openapi-v3!",
"name": "",
"members": [
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!api:function(1)",
"docComment": "/**\n * Decorate the given Controller constructor with metadata describing the HTTP/REST API the Controller implements/provides.\n *\n * `@api` can be applied to controller classes.\n *\n * @param spec - OpenAPI specification describing the endpoints handled by this controller\n *\n * @example\n * ```ts\n * @api({basePath: '/my'})\n * class MyController {\n * // ...\n * }\n * ```\n *\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function api(spec: "
},
{
"kind": "Reference",
"text": "ControllerSpec",
"canonicalReference": "@loopback/openapi-v3!ControllerSpec:interface"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "ClassDecorator",
"canonicalReference": "!ClassDecorator:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 3,
"endIndex": 4
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "spec",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"name": "api"
},
{
"kind": "Variable",
"canonicalReference": "@loopback/openapi-v3!asSpecEnhancer:var",
"docComment": "/**\n * A binding template for spec contributor extensions\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "asSpecEnhancer: "
},
{
"kind": "Reference",
"text": "BindingTemplate",
"canonicalReference": "@loopback/context!BindingTemplate:type"
}
],
"releaseTag": "Public",
"name": "asSpecEnhancer",
"variableTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
},
{
"kind": "Interface",
"canonicalReference": "@loopback/openapi-v3!ControllerSpec:interface",
"docComment": "",
"excerptTokens": [
{
"kind": "Content",
"text": "export interface ControllerSpec "
}
],
"releaseTag": "Public",
"name": "ControllerSpec",
"members": [
{
"kind": "PropertySignature",
"canonicalReference": "@loopback/openapi-v3!ControllerSpec#basePath:member",
"docComment": "/**\n * The base path on which the Controller API is served. If it is not included, the API is served directly under the host. The value MUST start with a leading slash (/).\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "basePath?: "
},
{
"kind": "Content",
"text": "string"
},
{
"kind": "Content",
"text": ";"
}
],
"releaseTag": "Public",
"name": "basePath",
"propertyTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
},
{
"kind": "PropertySignature",
"canonicalReference": "@loopback/openapi-v3!ControllerSpec#components:member",
"docComment": "/**\n * OpenAPI components.schemas generated from model metadata\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "components?: "
},
{
"kind": "Reference",
"text": "ComponentsObject",
"canonicalReference": "openapi3-ts!ComponentsObject:interface"
},
{
"kind": "Content",
"text": ";"
}
],
"releaseTag": "Public",
"name": "components",
"propertyTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
},
{
"kind": "PropertySignature",
"canonicalReference": "@loopback/openapi-v3!ControllerSpec#paths:member",
"docComment": "/**\n * The available paths and operations for the API.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "paths: "
},
{
"kind": "Reference",
"text": "PathObject",
"canonicalReference": "openapi3-ts!PathObject:type"
},
{
"kind": "Content",
"text": ";"
}
],
"releaseTag": "Public",
"name": "paths",
"propertyTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"extendsTokenRanges": []
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!createEmptyApiSpec:function(1)",
"docComment": "/**\n * Create an empty OpenApiSpec object that's still a valid openapi document.\n *\n * @deprecated\n *\n * Use `OpenApiBuilder` from `openapi3-ts` instead.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function createEmptyApiSpec(): "
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [],
"name": "createEmptyApiSpec"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!del:function(1)",
"docComment": "/**\n * Expose a Controller method as a REST API operation mapped to `DELETE` request method.\n *\n * @param path - The URL path of this operation, e.g. `/product/{id}`\n *\n * @param spec - The OpenAPI specification describing parameters and responses of this operation.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function del(path: "
},
{
"kind": "Content",
"text": "string"
},
{
"kind": "Content",
"text": ", spec?: "
},
{
"kind": "Reference",
"text": "OperationObject",
"canonicalReference": "openapi3-ts!OperationObject:interface"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "MethodDecorator",
"canonicalReference": "!MethodDecorator:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 5,
"endIndex": 6
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "path",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
},
{
"parameterName": "spec",
"parameterTypeTokenRange": {
"startIndex": 3,
"endIndex": 4
}
}
],
"name": "del"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!deprecated:function(1)",
"docComment": "/**\n * Marks an api path as deprecated. When applied to a class, this decorator marks all paths as deprecated.\n *\n * You can optionally mark all controllers in a class as deprecated, but use `@deprecated(false)` on a specific method to ensure it is not marked as deprecated in the specification.\n *\n * @param isDeprecated - whether or not the path should be marked as deprecated. This is useful for marking a class as deprecated, but a method as not deprecated.\n *\n * @example\n * ```ts\n * @oas.deprecated()\n * class MyController {\n * @get('/greet')\n * public async function greet() {\n * return 'Hello, World!'\n * }\n *\n * @get('/greet-v2')\n * @oas.deprecated(false)\n * public async function greetV2() {\n * return 'Hello, World!'\n * }\n * }\n *\n * class MyOtherController {\n * @get('/echo')\n * public async function echo() {\n * return 'Echo!'\n * }\n * }\n * ```\n *\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function deprecated(isDeprecated?: "
},
{
"kind": "Content",
"text": "boolean"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Content",
"text": "(target: any, method?: string | undefined, methodDescriptor?: "
},
{
"kind": "Reference",
"text": "TypedPropertyDescriptor",
"canonicalReference": "!TypedPropertyDescriptor:interface"
},
{
"kind": "Content",
"text": "<any> | undefined) => any"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 3,
"endIndex": 6
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "isDeprecated",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"name": "deprecated"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!get:function(1)",
"docComment": "/**\n * Expose a Controller method as a REST API operation mapped to `GET` request method.\n *\n * @param path - The URL path of this operation, e.g. `/product/{id}`\n *\n * @param spec - The OpenAPI specification describing parameters and responses of this operation.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function get(path: "
},
{
"kind": "Content",
"text": "string"
},
{
"kind": "Content",
"text": ", spec?: "
},
{
"kind": "Reference",
"text": "OperationObject",
"canonicalReference": "openapi3-ts!OperationObject:interface"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "MethodDecorator",
"canonicalReference": "!MethodDecorator:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 5,
"endIndex": 6
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "path",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
},
{
"parameterName": "spec",
"parameterTypeTokenRange": {
"startIndex": 3,
"endIndex": 4
}
}
],
"name": "get"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!getControllerSpec:function(1)",
"docComment": "/**\n * Get the controller spec for the given class\n *\n * @param constructor - Controller class\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function getControllerSpec(constructor: "
},
{
"kind": "Reference",
"text": "Function",
"canonicalReference": "!Function:interface"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "ControllerSpec",
"canonicalReference": "@loopback/openapi-v3!ControllerSpec:interface"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 3,
"endIndex": 4
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "constructor",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"name": "getControllerSpec"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!getFilterSchemaFor:function(1)",
"docComment": "/**\n * Build an OpenAPI schema describing the format of the \"filter\" object used to query model instances.\n *\n * Note we don't take the model properties into account yet and return a generic json schema allowing any \"where\" condition.\n *\n * @param modelCtor - The model constructor to build the filter schema for.\n *\n * @param options - Options to build the filter schema.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function getFilterSchemaFor(modelCtor: "
},
{
"kind": "Content",
"text": "typeof "
},
{
"kind": "Reference",
"text": "Model",
"canonicalReference": "@loopback/repository!Model:class"
},
{
"kind": "Content",
"text": ", options?: "
},
{
"kind": "Reference",
"text": "FilterSchemaOptions",
"canonicalReference": "@loopback/repository-json-schema!FilterSchemaOptions:interface"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "SchemaObject",
"canonicalReference": "openapi3-ts!SchemaObject:interface"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 6,
"endIndex": 7
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "modelCtor",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 3
}
},
{
"parameterName": "options",
"parameterTypeTokenRange": {
"startIndex": 4,
"endIndex": 5
}
}
],
"name": "getFilterSchemaFor"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!getModelSchemaRef:function(1)",
"docComment": "/**\n * Describe the provided Model as a reference to a definition shared by multiple endpoints. The definition is included in the returned schema.\n *\n * @param modelCtor - The model constructor (e.g. `Product`)\n *\n * @param options - Additional options\n *\n * @example\n * ```ts\n * const schema = {\n * $ref: '#/components/schemas/Product',\n * definitions: {\n * Product: {\n * title: 'Product',\n * properties: {\n * // etc.\n * }\n * }\n * }\n * }\n * ```\n *\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function getModelSchemaRef<T extends "
},
{
"kind": "Content",
"text": "object"
},
{
"kind": "Content",
"text": ">(modelCtor: "
},
{
"kind": "Reference",
"text": "Function",
"canonicalReference": "!Function:interface"
},
{
"kind": "Content",
"text": " & {\n prototype: T;\n}"
},
{
"kind": "Content",
"text": ", options?: "
},
{
"kind": "Reference",
"text": "JsonSchemaOptions",
"canonicalReference": "@loopback/repository-json-schema!JsonSchemaOptions:interface"
},
{
"kind": "Content",
"text": "<T>"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "SchemaRef",
"canonicalReference": "@loopback/openapi-v3!SchemaRef:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 9,
"endIndex": 10
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "modelCtor",
"parameterTypeTokenRange": {
"startIndex": 3,
"endIndex": 5
}
},
{
"parameterName": "options",
"parameterTypeTokenRange": {
"startIndex": 6,
"endIndex": 8
}
}
],
"typeParameters": [
{
"typeParameterName": "T",
"constraintTokenRange": {
"startIndex": 1,
"endIndex": 2
},
"defaultTypeTokenRange": {
"startIndex": 0,
"endIndex": 0
}
}
],
"name": "getModelSchemaRef"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!getWhereSchemaFor:function(1)",
"docComment": "/**\n * Build a OpenAPI schema describing the format of the \"where\" object used to filter model instances to query, update or delete.\n *\n * Note we don't take the model properties into account yet and return a generic json schema allowing any \"where\" condition.\n *\n * @param modelCtor - The model constructor to build the filter schema for.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function getWhereSchemaFor(modelCtor: "
},
{
"kind": "Content",
"text": "typeof "
},
{
"kind": "Reference",
"text": "Model",
"canonicalReference": "@loopback/repository!Model:class"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "SchemaObject",
"canonicalReference": "openapi3-ts!SchemaObject:interface"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 4,
"endIndex": 5
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "modelCtor",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 3
}
}
],
"name": "getWhereSchemaFor"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!jsonOrBooleanToJSON:function(1)",
"docComment": "/**\n * Helper function used to interpret boolean values as JSON Schemas. See http://json-schema.org/draft-06/json-schema-release-notes.html\n *\n * @param jsonOrBool - converts boolean values into their representative JSON Schemas\n *\n * @returns A JSON Schema document representing the input value.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function jsonOrBooleanToJSON(jsonOrBool: "
},
{
"kind": "Content",
"text": "boolean | "
},
{
"kind": "Reference",
"text": "JsonSchema",
"canonicalReference": "@types/json-schema!JSONSchema6:interface"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "JsonSchema",
"canonicalReference": "@types/json-schema!JSONSchema6:interface"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 4,
"endIndex": 5
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "jsonOrBool",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 3
}
}
],
"name": "jsonOrBooleanToJSON"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!jsonToSchemaObject:function(1)",
"docComment": "/**\n * Converts JSON Schemas into a SchemaObject\n *\n * @param json - JSON Schema to convert from\n *\n * @param visited - A map to keep track of mapped json schemas to handle circular references\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function jsonToSchemaObject(json: "
},
{
"kind": "Reference",
"text": "JsonSchema",
"canonicalReference": "@types/json-schema!JSONSchema6:interface"
},
{
"kind": "Content",
"text": ", visited?: "
},
{
"kind": "Reference",
"text": "Map",
"canonicalReference": "!Map:interface"
},
{
"kind": "Content",
"text": "<"
},
{
"kind": "Reference",
"text": "JsonSchema",
"canonicalReference": "@types/json-schema!JSONSchema6:interface"
},
{
"kind": "Content",
"text": ", "
},
{
"kind": "Reference",
"text": "SchemaObject",
"canonicalReference": "openapi3-ts!SchemaObject:interface"
},
{
"kind": "Content",
"text": " | "
},
{
"kind": "Reference",
"text": "SchemaRef",
"canonicalReference": "@loopback/openapi-v3!SchemaRef:type"
},
{
"kind": "Content",
"text": ">"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "SchemaObject",
"canonicalReference": "openapi3-ts!SchemaObject:interface"
},
{
"kind": "Content",
"text": " | "
},
{
"kind": "Reference",
"text": "SchemaRef",
"canonicalReference": "@loopback/openapi-v3!SchemaRef:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 12,
"endIndex": 15
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "json",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
},
{
"parameterName": "visited",
"parameterTypeTokenRange": {
"startIndex": 3,
"endIndex": 11
}
}
],
"name": "jsonToSchemaObject"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!mergeOpenAPISpec:function(1)",
"docComment": "/**\n * The default merge function to patch the current OpenAPI spec. It leverages module `json-merge-patch`'s merge API to merge two json objects. It returns a new merged object without modifying the original one.\n *\n * A list of merging rules can be found in test file: https://github.com/pierreinglebert/json-merge-patch/blob/master/test/lib/merge.js\n *\n * @param - currentSpec The original spec\n *\n * @param - patchSpec The patch spec to be merged into the original spec\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function mergeOpenAPISpec(currentSpec: "
},
{
"kind": "Reference",
"text": "Partial",
"canonicalReference": "!Partial:type"
},
{
"kind": "Content",
"text": "<"
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ">"
},
{
"kind": "Content",
"text": ", patchSpec: "
},
{
"kind": "Reference",
"text": "Partial",
"canonicalReference": "!Partial:type"
},
{
"kind": "Content",
"text": "<"
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ">"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Content",
"text": "any"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 11,
"endIndex": 12
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "currentSpec",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 5
}
},
{
"parameterName": "patchSpec",
"parameterTypeTokenRange": {
"startIndex": 6,
"endIndex": 10
}
}
],
"name": "mergeOpenAPISpec"
},
{
"kind": "Function",
"canonicalReference": "@loopback/openapi-v3!mergeSecuritySchemeToSpec:function(1)",
"docComment": "/**\n * Security scheme merge helper function to patch the current OpenAPI spec. It provides a direct route to add a security schema to the specs components. It returns a new merged object without modifying the original one.\n *\n * @param - currentSpec The original spec\n *\n * @param - schemeName The name of the security scheme to be added\n *\n * @param - schemeSpec The security scheme spec body to be added,\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare function mergeSecuritySchemeToSpec(spec: "
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ", schemeName: "
},
{
"kind": "Content",
"text": "string"
},
{
"kind": "Content",
"text": ", schemeSpec: "
},
{
"kind": "Reference",
"text": "SecuritySchemeObject",
"canonicalReference": "openapi3-ts!SecuritySchemeObject:interface"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 7,
"endIndex": 8
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "spec",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
},
{
"parameterName": "schemeName",
"parameterTypeTokenRange": {
"startIndex": 3,
"endIndex": 4
}
},
{
"parameterName": "schemeSpec",
"parameterTypeTokenRange": {
"startIndex": 5,
"endIndex": 6
}
}
],
"name": "mergeSecuritySchemeToSpec"
},
{
"kind": "Variable",
"canonicalReference": "@loopback/openapi-v3!oas:var",
"docComment": "",
"excerptTokens": [
{
"kind": "Content",
"text": "oas: "
},
{
"kind": "Content",
"text": "{\n api: typeof "
},
{
"kind": "Reference",
"text": "api",
"canonicalReference": "@loopback/openapi-v3!api:function"
},
{
"kind": "Content",
"text": ";\n operation: typeof "
},
{
"kind": "Reference",
"text": "operation",
"canonicalReference": "@loopback/openapi-v3!operation:function"
},
{
"kind": "Content",
"text": ";\n get: typeof "
},
{
"kind": "Reference",
"text": "get",
"canonicalReference": "@loopback/openapi-v3!get:function"
},
{
"kind": "Content",
"text": ";\n post: typeof "
},
{
"kind": "Reference",
"text": "post",
"canonicalReference": "@loopback/openapi-v3!post:function"
},
{
"kind": "Content",
"text": ";\n del: typeof "
},
{
"kind": "Reference",
"text": "del",
"canonicalReference": "@loopback/openapi-v3!del:function"
},
{
"kind": "Content",
"text": ";\n patch: typeof "
},
{
"kind": "Reference",
"text": "patch",
"canonicalReference": "@loopback/openapi-v3!patch:function"
},
{
"kind": "Content",
"text": ";\n put: typeof "
},
{
"kind": "Reference",
"text": "put",
"canonicalReference": "@loopback/openapi-v3!put:function"
},
{
"kind": "Content",
"text": ";\n param: typeof "
},
{
"kind": "Reference",
"text": "param",
"canonicalReference": "@loopback/openapi-v3!param:function"
},
{
"kind": "Content",
"text": ";\n requestBody: typeof "
},
{
"kind": "Reference",
"text": "requestBody",
"canonicalReference": "@loopback/openapi-v3!requestBody:function"
},
{
"kind": "Content",
"text": ";\n deprecated: typeof "
},
{
"kind": "Reference",
"text": "deprecated",
"canonicalReference": "@loopback/openapi-v3!deprecated:function"
},
{
"kind": "Content",
"text": ";\n response: typeof "
},
{
"kind": "Reference",
"text": "response",
"canonicalReference": "@loopback/openapi-v3!response:function"
},
{
"kind": "Content",
"text": ";\n tags: typeof "
},
{
"kind": "Reference",
"text": "tags",
"canonicalReference": "@loopback/openapi-v3!tags:function"
},
{
"kind": "Content",
"text": ";\n}"
}
],
"releaseTag": "Public",
"name": "oas",
"variableTypeTokenRange": {
"startIndex": 1,
"endIndex": 26
}
},
{
"kind": "Interface",
"canonicalReference": "@loopback/openapi-v3!OASEnhancer:interface",
"docComment": "/**\n * Typically an extension point defines an interface as the contract for extensions to implement\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export interface OASEnhancer "
}
],
"releaseTag": "Public",
"name": "OASEnhancer",
"members": [
{
"kind": "MethodSignature",
"canonicalReference": "@loopback/openapi-v3!OASEnhancer#modifySpec:member(1)",
"docComment": "",
"excerptTokens": [
{
"kind": "Content",
"text": "modifySpec(spec: "
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ";"
}
],
"returnTypeTokenRange": {
"startIndex": 3,
"endIndex": 4
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "spec",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"name": "modifySpec"
},
{
"kind": "PropertySignature",
"canonicalReference": "@loopback/openapi-v3!OASEnhancer#name:member",
"docComment": "",
"excerptTokens": [
{
"kind": "Content",
"text": "name: "
},
{
"kind": "Content",
"text": "string"
},
{
"kind": "Content",
"text": ";"
}
],
"releaseTag": "Public",
"name": "name",
"propertyTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"extendsTokenRanges": []
},
{
"kind": "Namespace",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerBindings:namespace",
"docComment": "",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare namespace OASEnhancerBindings "
}
],
"releaseTag": "Public",
"name": "OASEnhancerBindings",
"members": [
{
"kind": "Variable",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerBindings.OAS_ENHANCER_EXTENSION_POINT_NAME:var",
"docComment": "/**\n * Name/id of the OAS enhancer extension point\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "OAS_ENHANCER_EXTENSION_POINT_NAME = \"oas-enhancer\""
}
],
"releaseTag": "Public",
"name": "OAS_ENHANCER_EXTENSION_POINT_NAME",
"variableTypeTokenRange": {
"startIndex": 0,
"endIndex": 0
}
},
{
"kind": "Variable",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerBindings.OAS_ENHANCER_SERVICE:var",
"docComment": "/**\n * Strongly-typed binding key for SpecService\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "OAS_ENHANCER_SERVICE: "
},
{
"kind": "Reference",
"text": "BindingKey",
"canonicalReference": "@loopback/context!BindingKey:class"
},
{
"kind": "Content",
"text": "<"
},
{
"kind": "Reference",
"text": "OASEnhancerService",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerService:class"
},
{
"kind": "Content",
"text": ">"
}
],
"releaseTag": "Public",
"name": "OAS_ENHANCER_SERVICE",
"variableTypeTokenRange": {
"startIndex": 1,
"endIndex": 5
}
}
]
},
{
"kind": "Class",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerService:class",
"docComment": "/**\n * An extension point for OpenAPI Spec enhancement This service is used for enhancing an OpenAPI spec by loading and applying one or more registered enhancers.\n *\n * A typical use of it would be generating the OpenAPI spec for the endpoints on a server in the `@loopback/rest` module.\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "export declare class OASEnhancerService "
}
],
"releaseTag": "Public",
"name": "OASEnhancerService",
"members": [
{
"kind": "Constructor",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerService:constructor(1)",
"docComment": "/**\n * Constructs a new instance of the `OASEnhancerService` class\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "constructor(\n getEnhancers: "
},
{
"kind": "Reference",
"text": "Getter",
"canonicalReference": "@loopback/context!Getter:type"
},
{
"kind": "Content",
"text": "<"
},
{
"kind": "Reference",
"text": "OASEnhancer",
"canonicalReference": "@loopback/openapi-v3!OASEnhancer:interface"
},
{
"kind": "Content",
"text": "[]>"
},
{
"kind": "Content",
"text": ", \n options?: "
},
{
"kind": "Reference",
"text": "OASEnhancerServiceOptions",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerServiceOptions:interface"
},
{
"kind": "Content",
"text": " | undefined"
},
{
"kind": "Content",
"text": ");"
}
],
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "getEnhancers",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 5
}
},
{
"parameterName": "options",
"parameterTypeTokenRange": {
"startIndex": 6,
"endIndex": 8
}
}
]
},
{
"kind": "Method",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerService#applyAllEnhancers:member(1)",
"docComment": "/**\n * Generate OpenAPI spec by applying ALL registered enhancers TBD: load enhancers by group names\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "applyAllEnhancers(options?: "
},
{
"kind": "Content",
"text": "{}"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "Promise",
"canonicalReference": "!Promise:interface"
},
{
"kind": "Content",
"text": "<"
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ">"
},
{
"kind": "Content",
"text": ";"
}
],
"isStatic": false,
"returnTypeTokenRange": {
"startIndex": 3,
"endIndex": 7
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "options",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"name": "applyAllEnhancers"
},
{
"kind": "Method",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerService#applyEnhancerByName:member(1)",
"docComment": "/**\n * Apply a given enhancer's merge function. Return the latest _spec.\n *\n * @param - name The name of the enhancer you want to apply\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "applyEnhancerByName(name: "
},
{
"kind": "Content",
"text": "string"
},
{
"kind": "Content",
"text": "): "
},
{
"kind": "Reference",
"text": "Promise",
"canonicalReference": "!Promise:interface"
},
{
"kind": "Content",
"text": "<"
},
{
"kind": "Reference",
"text": "OpenApiSpec",
"canonicalReference": "@loopback/openapi-v3!OpenApiSpec:type"
},
{
"kind": "Content",
"text": ">"
},
{
"kind": "Content",
"text": ";"
}
],
"isStatic": false,
"returnTypeTokenRange": {
"startIndex": 3,
"endIndex": 7
},
"releaseTag": "Public",
"overloadIndex": 1,
"parameters": [
{
"parameterName": "name",
"parameterTypeTokenRange": {
"startIndex": 1,
"endIndex": 2
}
}
],
"name": "applyEnhancerByName"
},
{
"kind": "Method",
"canonicalReference": "@loopback/openapi-v3!OASEnhancerService#getEnhancerByName:member(1)",
"docComment": "/**\n * Find an enhancer by its name\n *\n * @param - name The name of the enhancer you want to find\n */\n",
"excerptTokens": [
{
"kind": "Content",
"text": "getEnhancerByName(name: "
},
{
"kind": "Content",
"text": "string"
},
{
"kind": "Content",
"text": "): "