{
  "metadata": {
    "toolPackage": "@microsoft/api-extractor",
    "toolVersion": "7.7.8",
    "schemaVersion": 1003,
    "oldestForwardsCompatibleVersion": 1001
  },
  "kind": "Package",
  "canonicalReference": "@loopback/model-api-builder!",
  "docComment": "",
  "name": "@loopback/model-api-builder",
  "members": [
    {
      "kind": "EntryPoint",
      "canonicalReference": "@loopback/model-api-builder!",
      "name": "",
      "members": [
        {
          "kind": "Variable",
          "canonicalReference": "@loopback/model-api-builder!asModelApiBuilder:var",
          "docComment": "/**\n * A binding template for model API extensions\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "asModelApiBuilder: "
            },
            {
              "kind": "Reference",
              "text": "BindingTemplate",
              "canonicalReference": "@loopback/context!BindingTemplate:type"
            }
          ],
          "releaseTag": "Public",
          "name": "asModelApiBuilder",
          "variableTypeTokenRange": {
            "startIndex": 1,
            "endIndex": 2
          }
        },
        {
          "kind": "Variable",
          "canonicalReference": "@loopback/model-api-builder!MODEL_API_BUILDER_PLUGINS:var",
          "docComment": "/**\n * Extension Point name for Model API builders.\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "MODEL_API_BUILDER_PLUGINS = \"model-api-builders\""
            }
          ],
          "releaseTag": "Public",
          "name": "MODEL_API_BUILDER_PLUGINS",
          "variableTypeTokenRange": {
            "startIndex": 0,
            "endIndex": 0
          }
        },
        {
          "kind": "Interface",
          "canonicalReference": "@loopback/model-api-builder!ModelApiBuilder:interface",
          "docComment": "/**\n * Interface for extensions contributing custom API flavors.\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export interface ModelApiBuilder "
            }
          ],
          "releaseTag": "Public",
          "name": "ModelApiBuilder",
          "members": [
            {
              "kind": "MethodSignature",
              "canonicalReference": "@loopback/model-api-builder!ModelApiBuilder#build:member(1)",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "build(application: "
                },
                {
                  "kind": "Reference",
                  "text": "ApplicationWithRepositories",
                  "canonicalReference": "@loopback/repository!ApplicationWithRepositories:interface"
                },
                {
                  "kind": "Content",
                  "text": ", modelClass: "
                },
                {
                  "kind": "Content",
                  "text": "typeof "
                },
                {
                  "kind": "Reference",
                  "text": "Model",
                  "canonicalReference": "@loopback/repository!Model:class"
                },
                {
                  "kind": "Content",
                  "text": " & {\n        prototype: "
                },
                {
                  "kind": "Reference",
                  "text": "Model",
                  "canonicalReference": "@loopback/repository!Model:class"
                },
                {
                  "kind": "Content",
                  "text": ";\n    }"
                },
                {
                  "kind": "Content",
                  "text": ", config: "
                },
                {
                  "kind": "Reference",
                  "text": "ModelApiConfig",
                  "canonicalReference": "@loopback/model-api-builder!ModelApiConfig:type"
                },
                {
                  "kind": "Content",
                  "text": "): "
                },
                {
                  "kind": "Reference",
                  "text": "Promise",
                  "canonicalReference": "!Promise:interface"
                },
                {
                  "kind": "Content",
                  "text": "<void>"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "returnTypeTokenRange": {
                "startIndex": 11,
                "endIndex": 13
              },
              "releaseTag": "Public",
              "overloadIndex": 1,
              "parameters": [
                {
                  "parameterName": "application",
                  "parameterTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  }
                },
                {
                  "parameterName": "modelClass",
                  "parameterTypeTokenRange": {
                    "startIndex": 3,
                    "endIndex": 8
                  }
                },
                {
                  "parameterName": "config",
                  "parameterTypeTokenRange": {
                    "startIndex": 9,
                    "endIndex": 10
                  }
                }
              ],
              "name": "build"
            },
            {
              "kind": "PropertySignature",
              "canonicalReference": "@loopback/model-api-builder!ModelApiBuilder#pattern:member",
              "docComment": "",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "readonly pattern: "
                },
                {
                  "kind": "Content",
                  "text": "string"
                },
                {
                  "kind": "Content",
                  "text": ";"
                }
              ],
              "releaseTag": "Public",
              "name": "pattern",
              "propertyTypeTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              }
            }
          ],
          "extendsTokenRanges": []
        },
        {
          "kind": "TypeAlias",
          "canonicalReference": "@loopback/model-api-builder!ModelApiConfig:type",
          "docComment": "/**\n * Configuration settings for individual model files. This type describes content of `public-models/{model-name}.config.json` files.\n */\n",
          "excerptTokens": [
            {
              "kind": "Content",
              "text": "export declare type ModelApiConfig = "
            },
            {
              "kind": "Content",
              "text": "{\n    model: typeof "
            },
            {
              "kind": "Reference",
              "text": "Model",
              "canonicalReference": "@loopback/repository!Model:class"
            },
            {
              "kind": "Content",
              "text": " & {\n        prototype: "
            },
            {
              "kind": "Reference",
              "text": "Model",
              "canonicalReference": "@loopback/repository!Model:class"
            },
            {
              "kind": "Content",
              "text": ";\n    };\n    pattern: string;\n    dataSource: string;\n    [patternSpecificSetting: string]: unknown;\n}"
            },
            {
              "kind": "Content",
              "text": ";"
            }
          ],
          "releaseTag": "Public",
          "name": "ModelApiConfig",
          "typeTokenRange": {
            "startIndex": 1,
            "endIndex": 6
          }
        }
      ]
    }
  ]
}
