cdk-serverless 3.3.2 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/.agents/tasks/task-dependency-cve-upgrade/2026-10-12-233633-review.md +98 -0
  2. package/.agents/tasks/task-dependency-cve-upgrade/2026-10-12-234937-review.md +86 -0
  3. package/.agents/tasks/task-dependency-cve-upgrade/context.json +24 -0
  4. package/.agents/tasks/task-dependency-cve-upgrade/features/FEAT-001.json +28 -0
  5. package/.agents/tasks/task-dependency-cve-upgrade/features/FEAT-002.json +33 -0
  6. package/.agents/tasks/task-dependency-cve-upgrade/task.json +7 -0
  7. package/docs/constructs/assets/hierarchy.js +1 -1
  8. package/docs/constructs/assets/highlight.css +1 -1
  9. package/docs/constructs/assets/main.js +1 -1
  10. package/docs/constructs/assets/search.js +1 -1
  11. package/docs/constructs/assets/style.css +18 -3
  12. package/docs/constructs/classes/AssetCdn.html +161 -20
  13. package/docs/constructs/classes/BaseApi.html +153 -13
  14. package/docs/constructs/classes/CognitoAuthentication.html +188 -22
  15. package/docs/constructs/classes/GraphQlApi.html +349 -23
  16. package/docs/constructs/classes/LambdaFunction.html +1074 -106
  17. package/docs/constructs/classes/McpAuth.html +152 -16
  18. package/docs/constructs/classes/McpCognitoAuth.html +152 -16
  19. package/docs/constructs/classes/RestApi.html +344 -37
  20. package/docs/constructs/classes/SingleTableDatastore.html +173 -19
  21. package/docs/constructs/classes/Workflow.html +170 -21
  22. package/docs/constructs/hierarchy.html +47 -1
  23. package/docs/constructs/index.html +75 -2
  24. package/docs/constructs/interfaces/AssetCdnProps.html +61 -5
  25. package/docs/constructs/interfaces/BaseApiProps.html +141 -20
  26. package/docs/constructs/interfaces/CognitoAuthenticationProps.html +135 -20
  27. package/docs/constructs/interfaces/GraphQlApiProps.html +185 -22
  28. package/docs/constructs/interfaces/ICognitoAuthentication.html +57 -3
  29. package/docs/constructs/interfaces/IJwtAuthentication.html +63 -5
  30. package/docs/constructs/interfaces/ISingleTableDatastore.html +57 -3
  31. package/docs/constructs/interfaces/JsResolverOptions.html +66 -6
  32. package/docs/constructs/interfaces/LambdaFunctionProps.html +126 -18
  33. package/docs/constructs/interfaces/LambdaTracingOptions.html +57 -4
  34. package/docs/constructs/interfaces/McpAuthCognitoOptions.html +75 -8
  35. package/docs/constructs/interfaces/McpAuthFunctions.html +76 -8
  36. package/docs/constructs/interfaces/McpAuthGenericOptions.html +66 -6
  37. package/docs/constructs/interfaces/McpAuthOptions.html +107 -15
  38. package/docs/constructs/interfaces/McpAuthProps.html +123 -18
  39. package/docs/constructs/interfaces/McpCognitoAuthProps.html +127 -19
  40. package/docs/constructs/interfaces/RestApiProps.html +237 -37
  41. package/docs/constructs/interfaces/SingleTableDatastoreProps.html +77 -9
  42. package/docs/constructs/interfaces/SingleTableDesign.html +72 -7
  43. package/docs/constructs/interfaces/VtlResolverOptions.html +62 -5
  44. package/docs/constructs/interfaces/WorkflowProps.html +63 -2
  45. package/docs/constructs/modules.html +44 -1
  46. package/docs/constructs/types/LambdaOptions.html +31 -1
  47. package/docs/experiments/appsync-unit-resolver-error-probe.md +201 -0
  48. package/docs/lambda/assets/hierarchy.js +1 -1
  49. package/docs/lambda/assets/highlight.css +1 -1
  50. package/docs/lambda/assets/main.js +1 -1
  51. package/docs/lambda/assets/navigation.js +1 -1
  52. package/docs/lambda/assets/search.js +1 -1
  53. package/docs/lambda/assets/style.css +18 -3
  54. package/docs/lambda/classes/auth.ApiGatewayv1CognitoAuthorizer.html +248 -21
  55. package/docs/lambda/classes/auth.ApiGatewayv1JwtAuthorizer.html +247 -20
  56. package/docs/lambda/classes/auth.ApiGatewayv2CognitoAuthorizer.html +248 -21
  57. package/docs/lambda/classes/auth.ApiGatewayv2JwtAuthorizer.html +246 -20
  58. package/docs/lambda/classes/auth.AppSyncCognitoAuthorizer.html +242 -21
  59. package/docs/lambda/classes/auth.CognitoAuthorizer.html +235 -20
  60. package/docs/lambda/classes/auth.JwtAuthorizer.html +225 -20
  61. package/docs/lambda/classes/errors.BadRequestError.html +147 -11
  62. package/docs/lambda/classes/errors.ForbiddenError.html +147 -11
  63. package/docs/lambda/classes/errors.HttpError.html +154 -12
  64. package/docs/lambda/classes/errors.NotFoundError.html +147 -11
  65. package/docs/lambda/classes/errors.UnauthenticatedError.html +147 -11
  66. package/docs/lambda/classes/errors.appsync.AppSyncError.html +193 -0
  67. package/docs/lambda/classes/errors.appsync.ConflictError.html +184 -0
  68. package/docs/lambda/classes/errors.appsync.ForbiddenError.html +184 -0
  69. package/docs/lambda/classes/errors.appsync.NotFoundError.html +184 -0
  70. package/docs/lambda/classes/errors.appsync.ValidationError.html +184 -0
  71. package/docs/lambda/functions/api.createAppSyncHandler.html +50 -3
  72. package/docs/lambda/functions/api.createHttpHandler.html +48 -2
  73. package/docs/lambda/functions/api.createOpenApiHandler.html +48 -2
  74. package/docs/lambda/functions/api.createOpenApiHandlerWithRequestBody.html +48 -2
  75. package/docs/lambda/functions/api.createOpenApiHandlerWithRequestBodyNoResponse.html +47 -2
  76. package/docs/lambda/hierarchy.html +59 -1
  77. package/docs/lambda/index.html +75 -2
  78. package/docs/lambda/interfaces/api.AppSyncHandlerContext.html +68 -3
  79. package/docs/lambda/interfaces/api.HttpHandlerContext.html +67 -3
  80. package/docs/lambda/interfaces/api.HttpResponseContext.html +61 -3
  81. package/docs/lambda/interfaces/api.Operation.html +61 -3
  82. package/docs/lambda/interfaces/api.OperationWithRequestBody.html +65 -3
  83. package/docs/lambda/modules/api.html +45 -1
  84. package/docs/lambda/modules/auth.html +37 -1
  85. package/docs/lambda/modules/errors.appsync.html +38 -0
  86. package/docs/lambda/modules/errors.html +41 -1
  87. package/docs/lambda/modules.html +36 -1
  88. package/docs/lambda/types/api.APIGatewayv1Handler.html +34 -2
  89. package/docs/lambda/types/api.AppSyncHandler.html +51 -2
  90. package/docs/lambda/types/api.HttpHandler.html +52 -2
  91. package/docs/projen/assets/highlight.css +5 -12
  92. package/docs/projen/assets/main.js +1 -1
  93. package/docs/projen/assets/style.css +18 -3
  94. package/docs/projen/classes/Datastore.html +254 -18
  95. package/docs/projen/classes/GraphQlApi.html +238 -18
  96. package/docs/projen/classes/RestApi.html +325 -40
  97. package/docs/projen/classes/ServerlessProject.html +1021 -159
  98. package/docs/projen/classes/Workflow.html +288 -31
  99. package/docs/projen/hierarchy.html +29 -1
  100. package/docs/projen/index.html +75 -2
  101. package/docs/projen/interfaces/DatastoreOptions.html +54 -2
  102. package/docs/projen/interfaces/GraphQlApiOptions.html +54 -2
  103. package/docs/projen/interfaces/RestApiOptions.html +54 -2
  104. package/docs/projen/interfaces/ServerlessProjectOptions.html +2089 -692
  105. package/docs/projen/interfaces/WorkflowOptions.html +54 -2
  106. package/docs/projen/modules.html +44 -1
  107. package/docs/projen/variables/PACKAGE_NAME.html +31 -1
  108. package/lib/constructs/graphql.d.ts +17 -0
  109. package/lib/constructs/graphql.js +78 -2
  110. package/lib/lambda/appsync-errors.d.ts +67 -0
  111. package/lib/lambda/appsync-errors.js +91 -0
  112. package/lib/lambda/errors.d.ts +1 -0
  113. package/lib/lambda/errors.js +36 -2
  114. package/lib/lambda/handler.js +78 -1
  115. package/llm.md +31 -0
  116. package/package.json +26 -24
@@ -1,20 +1,63 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>RestApi | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">cdk-serverless</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">RestApi</a></li></ul><h1>Class RestApi&lt;PATHS, OPS&gt;</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>The RestApi construct sets up an AWS API Gateway REST API using OpenAPI specification.
1
+ <!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>RestApi | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
2
+ <div class="tsd-toolbar-contents container"><a href="../index.html" class="title">cdk-serverless</a>
3
+ <div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
4
+ <ul role="listbox" id="tsd-search-results"></ul>
5
+ <div id="tsd-search-status" aria-live="polite" aria-atomic="true">
6
+ <div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
7
+ <div class="container container-main">
8
+ <div class="col-content">
9
+ <div class="tsd-page-title">
10
+ <ul class="tsd-breadcrumb" aria-label="Breadcrumb">
11
+ <li><a href="" aria-current="page">RestApi</a></li></ul>
12
+ <h1>Class RestApi&lt;PATHS, OPS&gt;</h1></div>
13
+ <section class="tsd-panel tsd-comment">
14
+ <div class="tsd-comment tsd-typography"><p>The RestApi construct sets up an AWS API Gateway REST API using OpenAPI specification.
2
15
  This construct facilitates the creation of a REST API with various configurations, including custom domain, CORS support, and integration with Lambda functions.
3
16
  It allows auto-generating routes based on the provided OpenAPI definition and provides methods to dynamically add custom routes and manage Lambda function integrations.</p>
4
- </div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link" id="example">Example<a href="#example" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">api</span><span class="hl-1"> = </span><span class="hl-5">new</span><span class="hl-1"> </span><span class="hl-0">RestApi</span><span class="hl-1">(</span><span class="hl-5">this</span><span class="hl-1">, </span><span class="hl-2">&#39;MyRestApi&#39;</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-4">apiName:</span><span class="hl-1"> </span><span class="hl-2">&#39;MyAPI&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">stageName:</span><span class="hl-1"> </span><span class="hl-2">&#39;dev&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">definitionFileName:</span><span class="hl-1"> </span><span class="hl-2">&#39;openapi.yaml&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">authentication:</span><span class="hl-1"> </span><span class="hl-4">myCognitoAuth</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">singleTableDatastore:</span><span class="hl-1"> </span><span class="hl-4">myDynamoDBTable</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">autoGenerateRoutes:</span><span class="hl-1"> </span><span class="hl-5">true</span><span class="hl-1">,</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-6">// Add a custom REST resource</span><br/><span class="hl-4">api</span><span class="hl-1">.</span><span class="hl-0">addRestResource</span><span class="hl-1">(</span><span class="hl-2">&#39;/items&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;get&#39;</span><span class="hl-1">);</span><br/><br/><span class="hl-6">// Get the Lambda function for a specific operation</span><br/><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">lambdaFunction</span><span class="hl-1"> = </span><span class="hl-4">api</span><span class="hl-1">.</span><span class="hl-0">getFunctionForOperation</span><span class="hl-1">(</span><span class="hl-2">&#39;getItems&#39;</span><span class="hl-1">);</span>
17
+ </div>
18
+ <div class="tsd-comment tsd-typography">
19
+ <div class="tsd-tag-example">
20
+ <h4 class="tsd-anchor-link" id="example">Example<a href="#example" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">api</span><span class="hl-1"> = </span><span class="hl-5">new</span><span class="hl-1"> </span><span class="hl-0">RestApi</span><span class="hl-1">(</span><span class="hl-5">this</span><span class="hl-1">, </span><span class="hl-2">&#39;MyRestApi&#39;</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-4">apiName:</span><span class="hl-1"> </span><span class="hl-2">&#39;MyAPI&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">stageName:</span><span class="hl-1"> </span><span class="hl-2">&#39;dev&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">definitionFileName:</span><span class="hl-1"> </span><span class="hl-2">&#39;openapi.yaml&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">authentication:</span><span class="hl-1"> </span><span class="hl-4">myCognitoAuth</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">singleTableDatastore:</span><span class="hl-1"> </span><span class="hl-4">myDynamoDBTable</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">autoGenerateRoutes:</span><span class="hl-1"> </span><span class="hl-5">true</span><span class="hl-1">,</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-6">// Add a custom REST resource</span><br/><span class="hl-4">api</span><span class="hl-1">.</span><span class="hl-0">addRestResource</span><span class="hl-1">(</span><span class="hl-2">&#39;/items&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;get&#39;</span><span class="hl-1">);</span><br/><br/><span class="hl-6">// Get the Lambda function for a specific operation</span><br/><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">lambdaFunction</span><span class="hl-1"> = </span><span class="hl-4">api</span><span class="hl-1">.</span><span class="hl-0">getFunctionForOperation</span><span class="hl-1">(</span><span class="hl-2">&#39;getItems&#39;</span><span class="hl-1">);</span>
5
21
  </code><button type="button">Copy</button></pre>
6
22
 
7
- </div></div></section><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span id="paths"><span class="tsd-kind-type-parameter">PATHS</span></span><div class="tsd-comment tsd-typography"><p>The type definition for the API paths.</p>
8
- </div></li><li><span id="ops"><span class="tsd-kind-type-parameter">OPS</span></span><div class="tsd-comment tsd-typography"><p>The type definition for the API operations.</p>
9
- </div></li></ul></section><section class="tsd-panel tsd-hierarchy" data-refl="628"><h4>Hierarchy (<a href="../hierarchy.html#RestApi">View Summary</a>)</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><a href="BaseApi.html" class="tsd-signature-type tsd-kind-class">BaseApi</a><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">RestApi</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h5 class="tsd-index-heading uppercase">Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Constructor"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
10
- </div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="#api" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api</span></a>
23
+ </div></div></section>
24
+ <section class="tsd-panel">
25
+ <h4>Type Parameters</h4>
26
+ <ul class="tsd-type-parameter-list">
27
+ <li><span id="paths"><span class="tsd-kind-type-parameter">PATHS</span></span>
28
+ <div class="tsd-comment tsd-typography"><p>The type definition for the API paths.</p>
29
+ </div></li>
30
+ <li><span id="ops"><span class="tsd-kind-type-parameter">OPS</span></span>
31
+ <div class="tsd-comment tsd-typography"><p>The type definition for the API operations.</p>
32
+ </div></li></ul></section>
33
+ <section class="tsd-panel tsd-hierarchy" data-refl="632">
34
+ <h4>Hierarchy (<a href="../hierarchy.html#RestApi">View Summary</a>)</h4>
35
+ <ul class="tsd-hierarchy">
36
+ <li class="tsd-hierarchy-item"><a href="BaseApi.html" class="tsd-signature-type tsd-kind-class">BaseApi</a>
37
+ <ul class="tsd-hierarchy">
38
+ <li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">RestApi</span></li></ul></li></ul></section>
39
+ <section class="tsd-panel-group tsd-index-group">
40
+ <section class="tsd-panel tsd-index-panel">
41
+ <details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
42
+ <h5 class="tsd-index-heading uppercase">Index</h5></summary>
43
+ <div class="tsd-accordion-details">
44
+ <section class="tsd-index-section">
45
+ <h3 class="tsd-index-heading tsd-anchor-link" id="constructors">Constructors<a href="#constructors" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
46
+ <div class="tsd-index-list"><a href="#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Constructor"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
47
+ </div></section>
48
+ <section class="tsd-index-section">
49
+ <h3 class="tsd-index-heading tsd-anchor-link" id="properties">Properties<a href="#properties" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
50
+ <div class="tsd-index-list"><a href="#api" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api</span></a>
11
51
  <a href="#apidomainname" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Domain<wbr/>Name?</span></a>
12
52
  <a href="#apifqdn" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>FQDN?</span></a>
13
53
  <a href="#apihostname" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Host<wbr/>Name?</span></a>
14
54
  <a href="#apispec" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Spec</span></a>
15
55
  <a href="#hostedzone" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>hosted<wbr/>Zone?</span></a>
16
56
  <a href="#node" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a>
17
- </div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Methods</h3><div class="tsd-index-list"><a href="#addanonymousoperations" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Anonymous<wbr/>Operations</span></a>
57
+ </div></section>
58
+ <section class="tsd-index-section">
59
+ <h3 class="tsd-index-heading tsd-anchor-link" id="methods">Methods<a href="#methods" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
60
+ <div class="tsd-index-list"><a href="#addanonymousoperations" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Anonymous<wbr/>Operations</span></a>
18
61
  <a href="#addcustomrestresource" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Custom<wbr/>Rest<wbr/>Resource</span></a>
19
62
  <a href="#addrestresource" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Rest<wbr/>Resource</span></a>
20
63
  <a href="#cleanupspec" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>cleanup<wbr/>Spec</span></a>
@@ -28,55 +71,285 @@ It allows auto-generating routes based on the provided OpenAPI definition and pr
28
71
  <a href="#tostring" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>String</span></a>
29
72
  <a href="#with" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>with</span></a>
30
73
  <a href="#isconstruct" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Construct</span></a>
31
- </div></section></div></details></section></section><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Constructors</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="constructor"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="constructorrestapi"><span class="tsd-signature-keyword">new</span> <span class="tsd-kind-constructor-signature">RestApi</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#constructorrestapipaths">PATHS</a><span class="tsd-signature-symbol">,</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#constructorrestapiops">OPS</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">scope</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Construct</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">id</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">props</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/RestApiProps.html" class="tsd-signature-type tsd-kind-interface">RestApiProps</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="" class="tsd-signature-type tsd-kind-class">RestApi</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">,</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span><a href="#constructorrestapi" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Creates an instance of RestApi.</p>
32
- </div><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span id="constructorrestapipaths"><span class="tsd-kind-type-parameter">PATHS</span></span><div class="tsd-comment tsd-typography"><p>The type definition for the API paths.</p>
33
- </div></li><li><span id="constructorrestapiops"><span class="tsd-kind-type-parameter">OPS</span></span><div class="tsd-comment tsd-typography"><p>The type definition for the API operations.</p>
34
- </div></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">scope</span>: <span class="tsd-signature-type">Construct</span></span><div class="tsd-comment tsd-typography"><p>The scope in which this construct is defined.</p>
35
- </div></li><li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span><div class="tsd-comment tsd-typography"><p>The scoped construct ID.</p>
36
- </div></li><li><span><span class="tsd-kind-parameter">props</span>: <a href="../interfaces/RestApiProps.html" class="tsd-signature-type tsd-kind-interface">RestApiProps</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span></span><div class="tsd-comment tsd-typography"><p>The properties of the RestApi construct.</p>
37
- </div></li></ul></div><h4 class="tsd-returns-title">Returns <a href="" class="tsd-signature-type tsd-kind-class">RestApi</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">,</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources"><p>Overrides <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#constructor">constructor</a></p></aside></div></li></ul></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Properties</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="api"><code class="tsd-tag">Readonly</code><span>api</span><a href="#api" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">api</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">SpecRestApi</span></div><div class="tsd-comment tsd-typography"><p>The AWS API Gateway REST API instance.</p>
38
- </div></section><section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><h3 class="tsd-anchor-link" id="apidomainname"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>api<wbr/>Domain<wbr/>Name</span><a href="#apidomainname" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">apiDomainName</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#apidomainname">apiDomainName</a></p></aside></section><section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><h3 class="tsd-anchor-link" id="apifqdn"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>api<wbr/>FQDN</span><a href="#apifqdn" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">apiFQDN</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#apifqdn">apiFQDN</a></p></aside></section><section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><h3 class="tsd-anchor-link" id="apihostname"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>api<wbr/>Host<wbr/>Name</span><a href="#apihostname" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">apiHostName</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#apihostname">apiHostName</a></p></aside></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="apispec"><code class="tsd-tag">Readonly</code><span>api<wbr/>Spec</span><a href="#apispec" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">apiSpec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OpenAPI3</span></div><div class="tsd-comment tsd-typography"><p>The OpenAPI specification for the REST API.</p>
39
- </div></section><section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited"><h3 class="tsd-anchor-link" id="hostedzone"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>hosted<wbr/>Zone</span><a href="#hostedzone" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">hostedZone</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span></div><aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#hostedzone">hostedZone</a></p></aside></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><h3 class="tsd-anchor-link" id="node"><code class="tsd-tag">Readonly</code><span>node</span><a href="#node" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">node</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Node</span></div><div class="tsd-comment tsd-typography"><p>The tree node.</p>
40
- </div><aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#node">node</a></p></aside></section></section></details><details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h2>Methods</h2></summary><section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="addanonymousoperations"><span>add<wbr/>Anonymous<wbr/>Operations</span><a href="#addanonymousoperations" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="addanonymousoperations-1"><span class="tsd-kind-call-signature">addAnonymousOperations</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">operationIds</span><span class="tsd-signature-symbol">:</span> (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#addanonymousoperations-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Add additional operations to the set of anonymous operations.
74
+ </div></section></div></details></section></section>
75
+ <details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
76
+ <h2 class="tsd-anchor-link" id="constructors-1">Constructors<a href="#constructors-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h2></summary>
77
+ <section>
78
+ <section class="tsd-panel tsd-member">
79
+ <h3 class="tsd-anchor-link" id="constructor"><span>constructor</span><a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
80
+ <ul class="tsd-signatures">
81
+ <li class="">
82
+ <div class="tsd-signature tsd-anchor-link" id="constructorrestapi"><span class="tsd-signature-keyword">new</span> <span class="tsd-kind-constructor-signature">RestApi</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#constructorrestapipaths">PATHS</a><span class="tsd-signature-symbol">,</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#constructorrestapiops">OPS</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">scope</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Construct</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">id</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">props</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/RestApiProps.html" class="tsd-signature-type tsd-kind-interface">RestApiProps</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="" class="tsd-signature-type tsd-kind-class">RestApi</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">,</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span><a href="#constructorrestapi" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
83
+ <div class="tsd-description">
84
+ <div class="tsd-comment tsd-typography"><p>Creates an instance of RestApi.</p>
85
+ </div>
86
+ <section class="tsd-panel">
87
+ <h4>Type Parameters</h4>
88
+ <ul class="tsd-type-parameter-list">
89
+ <li><span id="constructorrestapipaths"><span class="tsd-kind-type-parameter">PATHS</span></span>
90
+ <div class="tsd-comment tsd-typography"><p>The type definition for the API paths.</p>
91
+ </div></li>
92
+ <li><span id="constructorrestapiops"><span class="tsd-kind-type-parameter">OPS</span></span>
93
+ <div class="tsd-comment tsd-typography"><p>The type definition for the API operations.</p>
94
+ </div></li></ul></section>
95
+ <div class="tsd-parameters">
96
+ <h4 class="tsd-parameters-title">Parameters</h4>
97
+ <ul class="tsd-parameter-list">
98
+ <li><span><span class="tsd-kind-parameter">scope</span>: <span class="tsd-signature-type">Construct</span></span>
99
+ <div class="tsd-comment tsd-typography"><p>The scope in which this construct is defined.</p>
100
+ </div></li>
101
+ <li><span><span class="tsd-kind-parameter">id</span>: <span class="tsd-signature-type">string</span></span>
102
+ <div class="tsd-comment tsd-typography"><p>The scoped construct ID.</p>
103
+ </div></li>
104
+ <li><span><span class="tsd-kind-parameter">props</span>: <a href="../interfaces/RestApiProps.html" class="tsd-signature-type tsd-kind-interface">RestApiProps</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span></span>
105
+ <div class="tsd-comment tsd-typography"><p>The properties of the RestApi construct.</p>
106
+ </div></li></ul></div>
107
+ <h4 class="tsd-returns-title">Returns <a href="" class="tsd-signature-type tsd-kind-class">RestApi</a><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">,</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">&gt;</span></h4><aside class="tsd-sources">
108
+ <p>Overrides <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#constructor">constructor</a></p></aside></div></li></ul></section></section></details>
109
+ <details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
110
+ <h2 class="tsd-anchor-link" id="properties-1">Properties<a href="#properties-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h2></summary>
111
+ <section>
112
+ <section class="tsd-panel tsd-member">
113
+ <h3 class="tsd-anchor-link" id="api"><code class="tsd-tag">Readonly</code><span>api</span><a href="#api" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
114
+ <div class="tsd-signature"><span class="tsd-kind-property">api</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">SpecRestApi</span></div>
115
+ <div class="tsd-comment tsd-typography"><p>The AWS API Gateway REST API instance.</p>
116
+ </div></section>
117
+ <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited">
118
+ <h3 class="tsd-anchor-link" id="apidomainname"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>api<wbr/>Domain<wbr/>Name</span><a href="#apidomainname" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
119
+ <div class="tsd-signature"><span class="tsd-kind-property">apiDomainName</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources">
120
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#apidomainname">apiDomainName</a></p></aside></section>
121
+ <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited">
122
+ <h3 class="tsd-anchor-link" id="apifqdn"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>api<wbr/>FQDN</span><a href="#apifqdn" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
123
+ <div class="tsd-signature"><span class="tsd-kind-property">apiFQDN</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources">
124
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#apifqdn">apiFQDN</a></p></aside></section>
125
+ <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited">
126
+ <h3 class="tsd-anchor-link" id="apihostname"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>api<wbr/>Host<wbr/>Name</span><a href="#apihostname" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
127
+ <div class="tsd-signature"><span class="tsd-kind-property">apiHostName</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span></div><aside class="tsd-sources">
128
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#apihostname">apiHostName</a></p></aside></section>
129
+ <section class="tsd-panel tsd-member">
130
+ <h3 class="tsd-anchor-link" id="apispec"><code class="tsd-tag">Readonly</code><span>api<wbr/>Spec</span><a href="#apispec" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
131
+ <div class="tsd-signature"><span class="tsd-kind-property">apiSpec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OpenAPI3</span></div>
132
+ <div class="tsd-comment tsd-typography"><p>The OpenAPI specification for the REST API.</p>
133
+ </div></section>
134
+ <section class="tsd-panel tsd-member tsd-is-protected tsd-is-inherited">
135
+ <h3 class="tsd-anchor-link" id="hostedzone"><code class="tsd-tag">Protected</code> <code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>hosted<wbr/>Zone</span><a href="#hostedzone" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
136
+ <div class="tsd-signature"><span class="tsd-kind-property">hostedZone</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span></div><aside class="tsd-sources">
137
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#hostedzone">hostedZone</a></p></aside></section>
138
+ <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external">
139
+ <h3 class="tsd-anchor-link" id="node"><code class="tsd-tag">Readonly</code><span>node</span><a href="#node" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
140
+ <div class="tsd-signature"><span class="tsd-kind-property">node</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Node</span></div>
141
+ <div class="tsd-comment tsd-typography"><p>The tree node.</p>
142
+ </div><aside class="tsd-sources">
143
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#node">node</a></p></aside></section></section></details>
144
+ <details class="tsd-panel-group tsd-member-group tsd-accordion" open><summary class="tsd-accordion-summary" data-key="section-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
145
+ <h2 class="tsd-anchor-link" id="methods-1">Methods<a href="#methods-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h2></summary>
146
+ <section>
147
+ <section class="tsd-panel tsd-member">
148
+ <h3 class="tsd-anchor-link" id="addanonymousoperations"><span>add<wbr/>Anonymous<wbr/>Operations</span><a href="#addanonymousoperations" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
149
+ <ul class="tsd-signatures">
150
+ <li class="">
151
+ <div class="tsd-signature tsd-anchor-link" id="addanonymousoperations-1"><span class="tsd-kind-call-signature">addAnonymousOperations</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">operationIds</span><span class="tsd-signature-symbol">:</span> (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#addanonymousoperations-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
152
+ <div class="tsd-description">
153
+ <div class="tsd-comment tsd-typography"><p>Add additional operations to the set of anonymous operations.
41
154
  Newly added operations will have <code>security: []</code> applied in the OpenAPI spec.</p>
42
155
  <p>Since CDK serializes the OpenAPI spec at synth time (fromInline stores the
43
156
  object reference), mutations after SpecRestApi construction still take effect.</p>
44
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">operationIds</span>: (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span></span><div class="tsd-comment tsd-typography"><p>The operation IDs to add to the anonymous set.</p>
45
- </div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="addcustomrestresource"><span>add<wbr/>Custom<wbr/>Rest<wbr/>Resource</span><a href="#addcustomrestresource" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="addcustomrestresource-1"><span class="tsd-kind-call-signature">addCustomRestResource</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">operation</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationObject</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">method</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">description</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">additionalLambdaOptions</span><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span><a href="#addcustomrestresource-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">operation</span>: <span class="tsd-signature-type">OperationObject</span></span></li><li><span><span class="tsd-kind-parameter">method</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">description</span>: <span class="tsd-signature-type">string</span></span></li><li><span><span class="tsd-kind-parameter">additionalLambdaOptions</span>: <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol"> = {}</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span></h4></div></li></ul></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="addrestresource"><span>add<wbr/>Rest<wbr/>Resource</span><a href="#addrestresource" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="addrestresource-1"><span class="tsd-kind-call-signature">addRestResource</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a> <span class="tsd-signature-keyword">extends</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">path</span><span class="tsd-signature-symbol">:</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">method</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span><a href="#addrestresource-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span id="addrestresourcep"><span class="tsd-kind-type-parameter">P</span> <span class="tsd-signature-keyword">extends</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">symbol</span></span></li></ul></section><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">path</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a></span></li><li><span><span class="tsd-kind-parameter">method</span>: <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a><span class="tsd-signature-symbol">]</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span></h4></div></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><h3 class="tsd-anchor-link" id="cleanupspec"><code class="tsd-tag">Protected</code><span>cleanup<wbr/>Spec</span><a href="#cleanupspec" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class=""><div class="tsd-signature tsd-anchor-link" id="cleanupspec-1"><span class="tsd-kind-call-signature">cleanupSpec</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">spec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span><a href="#cleanupspec-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">spec</span>: <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span></h4></div></li></ul></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="getfunctionforoperation"><span>get<wbr/>Function<wbr/>For<wbr/>Operation</span><a href="#getfunctionforoperation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="getfunctionforoperation-1"><span class="tsd-kind-call-signature">getFunctionForOperation</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">operationId</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#getfunctionforoperation-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>return the generated Lambda function for the specified API operation</p>
46
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">operationId</span>: <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a></span></li></ul></div><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></div></li></ul></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="getfunctions"><span>get<wbr/>Functions</span><a href="#getfunctions" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="getfunctions-1"><span class="tsd-kind-call-signature">getFunctions</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">[]</span><a href="#getfunctions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>return a list of all generated Lambda functions</p>
47
- </div><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">[]</span></h4></div></li></ul></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="getmcpauth"><span>get<wbr/>Mcp<wbr/>Auth</span><a href="#getmcpauth" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="getmcpauth-1"><span class="tsd-kind-call-signature">getMcpAuth</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="McpAuth.html" class="tsd-signature-type tsd-kind-class">McpAuth</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span><a href="#getmcpauth-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns the MCP auth construct if mcpAuth was configured.
157
+ </div>
158
+ <div class="tsd-parameters">
159
+ <h4 class="tsd-parameters-title">Parameters</h4>
160
+ <ul class="tsd-parameter-list">
161
+ <li><span><span class="tsd-kind-parameter">operationIds</span>: (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span></span>
162
+ <div class="tsd-comment tsd-typography"><p>The operation IDs to add to the anonymous set.</p>
163
+ </div></li></ul></div>
164
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section>
165
+ <section class="tsd-panel tsd-member">
166
+ <h3 class="tsd-anchor-link" id="addcustomrestresource"><span>add<wbr/>Custom<wbr/>Rest<wbr/>Resource</span><a href="#addcustomrestresource" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
167
+ <ul class="tsd-signatures">
168
+ <li class="">
169
+ <div class="tsd-signature tsd-anchor-link" id="addcustomrestresource-1"><span class="tsd-kind-call-signature">addCustomRestResource</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">operation</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OperationObject</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">method</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">description</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">additionalLambdaOptions</span><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span><a href="#addcustomrestresource-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
170
+ <div class="tsd-description">
171
+ <div class="tsd-parameters">
172
+ <h4 class="tsd-parameters-title">Parameters</h4>
173
+ <ul class="tsd-parameter-list">
174
+ <li><span><span class="tsd-kind-parameter">operation</span>: <span class="tsd-signature-type">OperationObject</span></span></li>
175
+ <li><span><span class="tsd-kind-parameter">method</span>: <span class="tsd-signature-type">string</span></span></li>
176
+ <li><span><span class="tsd-kind-parameter">description</span>: <span class="tsd-signature-type">string</span></span></li>
177
+ <li><span><span class="tsd-kind-parameter">additionalLambdaOptions</span>: <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol"> = {}</span></span></li></ul></div>
178
+ <h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span></h4></div></li></ul></section>
179
+ <section class="tsd-panel tsd-member">
180
+ <h3 class="tsd-anchor-link" id="addrestresource"><span>add<wbr/>Rest<wbr/>Resource</span><a href="#addrestresource" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
181
+ <ul class="tsd-signatures">
182
+ <li class="">
183
+ <div class="tsd-signature tsd-anchor-link" id="addrestresource-1"><span class="tsd-kind-call-signature">addRestResource</span><span class="tsd-signature-symbol">&lt;</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a> <span class="tsd-signature-keyword">extends</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">path</span><span class="tsd-signature-symbol">:</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">method</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span><a href="#addrestresource-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
184
+ <div class="tsd-description">
185
+ <section class="tsd-panel">
186
+ <h4>Type Parameters</h4>
187
+ <ul class="tsd-type-parameter-list">
188
+ <li><span id="addrestresourcep"><span class="tsd-kind-type-parameter">P</span> <span class="tsd-signature-keyword">extends</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">symbol</span></span></li></ul></section>
189
+ <div class="tsd-parameters">
190
+ <h4 class="tsd-parameters-title">Parameters</h4>
191
+ <ul class="tsd-parameter-list">
192
+ <li><span><span class="tsd-kind-parameter">path</span>: <a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a></span></li>
193
+ <li><span><span class="tsd-kind-parameter">method</span>: <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#paths">PATHS</a><span class="tsd-signature-symbol">[</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#addrestresourcep">P</a><span class="tsd-signature-symbol">]</span></span></li></ul></div>
194
+ <h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span></h4></div></li></ul></section>
195
+ <section class="tsd-panel tsd-member tsd-is-protected">
196
+ <h3 class="tsd-anchor-link" id="cleanupspec"><code class="tsd-tag">Protected</code><span>cleanup<wbr/>Spec</span><a href="#cleanupspec" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
197
+ <ul class="tsd-signatures tsd-is-protected">
198
+ <li class="">
199
+ <div class="tsd-signature tsd-anchor-link" id="cleanupspec-1"><span class="tsd-kind-call-signature">cleanupSpec</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">spec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span><a href="#cleanupspec-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
200
+ <div class="tsd-description">
201
+ <div class="tsd-parameters">
202
+ <h4 class="tsd-parameters-title">Parameters</h4>
203
+ <ul class="tsd-parameter-list">
204
+ <li><span><span class="tsd-kind-parameter">spec</span>: <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span></span></li></ul></div>
205
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">any</span> <span class="tsd-signature-symbol">}</span></h4></div></li></ul></section>
206
+ <section class="tsd-panel tsd-member">
207
+ <h3 class="tsd-anchor-link" id="getfunctionforoperation"><span>get<wbr/>Function<wbr/>For<wbr/>Operation</span><a href="#getfunctionforoperation" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
208
+ <ul class="tsd-signatures">
209
+ <li class="">
210
+ <div class="tsd-signature tsd-anchor-link" id="getfunctionforoperation-1"><span class="tsd-kind-call-signature">getFunctionForOperation</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">operationId</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#getfunctionforoperation-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
211
+ <div class="tsd-description">
212
+ <div class="tsd-comment tsd-typography"><p>return the generated Lambda function for the specified API operation</p>
213
+ </div>
214
+ <div class="tsd-parameters">
215
+ <h4 class="tsd-parameters-title">Parameters</h4>
216
+ <ul class="tsd-parameter-list">
217
+ <li><span><span class="tsd-kind-parameter">operationId</span>: <span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a></span></li></ul></div>
218
+ <h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></div></li></ul></section>
219
+ <section class="tsd-panel tsd-member">
220
+ <h3 class="tsd-anchor-link" id="getfunctions"><span>get<wbr/>Functions</span><a href="#getfunctions" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
221
+ <ul class="tsd-signatures">
222
+ <li class="">
223
+ <div class="tsd-signature tsd-anchor-link" id="getfunctions-1"><span class="tsd-kind-call-signature">getFunctions</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">[]</span><a href="#getfunctions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
224
+ <div class="tsd-description">
225
+ <div class="tsd-comment tsd-typography"><p>return a list of all generated Lambda functions</p>
226
+ </div>
227
+ <h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">[]</span></h4></div></li></ul></section>
228
+ <section class="tsd-panel tsd-member">
229
+ <h3 class="tsd-anchor-link" id="getmcpauth"><span>get<wbr/>Mcp<wbr/>Auth</span><a href="#getmcpauth" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
230
+ <ul class="tsd-signatures">
231
+ <li class="">
232
+ <div class="tsd-signature tsd-anchor-link" id="getmcpauth-1"><span class="tsd-kind-call-signature">getMcpAuth</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="McpAuth.html" class="tsd-signature-type tsd-kind-class">McpAuth</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span><a href="#getmcpauth-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
233
+ <div class="tsd-description">
234
+ <div class="tsd-comment tsd-typography"><p>Returns the MCP auth construct if mcpAuth was configured.
48
235
  Useful for accessing the created Lambda functions or env vars.</p>
49
- </div><h4 class="tsd-returns-title">Returns <a href="McpAuth.html" class="tsd-signature-type tsd-kind-class">McpAuth</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span></h4></div></li></ul></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="modifyoperationfunctions"><span>modify<wbr/>Operation<wbr/>Functions</span><a href="#modifyoperationfunctions" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="modifyoperationfunctions-1"><span class="tsd-kind-call-signature">modifyOperationFunctions</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">operationIds</span><span class="tsd-signature-symbol">:</span> (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">op</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">fn</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#modifyoperationfunctions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Visitor method to modify the given functions</p>
50
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">operationIds</span>: (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span></span><div class="tsd-comment tsd-typography"><p>the list of functions to visit</p>
51
- </div></li><li><span><span class="tsd-kind-parameter">op</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">fn</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span></span><div class="tsd-comment tsd-typography"><p>the function to call for every function</p>
52
- </div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><h3 class="tsd-anchor-link" id="patchsecurity"><code class="tsd-tag">Protected</code><span>patch<wbr/>Security</span><a href="#patchsecurity" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class=""><div class="tsd-signature tsd-anchor-link" id="patchsecurity-1"><span class="tsd-kind-call-signature">patchSecurity</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">spec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OpenAPI3</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#patchsecurity-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>AWS does not properly apply the 'security' option to every single path-method.
236
+ </div>
237
+ <h4 class="tsd-returns-title">Returns <a href="McpAuth.html" class="tsd-signature-type tsd-kind-class">McpAuth</a> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">undefined</span></h4></div></li></ul></section>
238
+ <section class="tsd-panel tsd-member">
239
+ <h3 class="tsd-anchor-link" id="modifyoperationfunctions"><span>modify<wbr/>Operation<wbr/>Functions</span><a href="#modifyoperationfunctions" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
240
+ <ul class="tsd-signatures">
241
+ <li class="">
242
+ <div class="tsd-signature tsd-anchor-link" id="modifyoperationfunctions-1"><span class="tsd-kind-call-signature">modifyOperationFunctions</span><span class="tsd-signature-symbol">(</span><br/>    <span class="tsd-kind-parameter">operationIds</span><span class="tsd-signature-symbol">:</span> (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">,</span><br/>    <span class="tsd-kind-parameter">op</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">fn</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#modifyoperationfunctions-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
243
+ <div class="tsd-description">
244
+ <div class="tsd-comment tsd-typography"><p>Visitor method to modify the given functions</p>
245
+ </div>
246
+ <div class="tsd-parameters">
247
+ <h4 class="tsd-parameters-title">Parameters</h4>
248
+ <ul class="tsd-parameter-list">
249
+ <li><span><span class="tsd-kind-parameter">operationIds</span>: (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span></span>
250
+ <div class="tsd-comment tsd-typography"><p>the list of functions to visit</p>
251
+ </div></li>
252
+ <li><span><span class="tsd-kind-parameter">op</span>: <span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">fn</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=&gt;</span> <span class="tsd-signature-type">void</span></span>
253
+ <div class="tsd-comment tsd-typography"><p>the function to call for every function</p>
254
+ </div></li></ul></div>
255
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section>
256
+ <section class="tsd-panel tsd-member tsd-is-protected">
257
+ <h3 class="tsd-anchor-link" id="patchsecurity"><code class="tsd-tag">Protected</code><span>patch<wbr/>Security</span><a href="#patchsecurity" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
258
+ <ul class="tsd-signatures tsd-is-protected">
259
+ <li class="">
260
+ <div class="tsd-signature tsd-anchor-link" id="patchsecurity-1"><span class="tsd-kind-call-signature">patchSecurity</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">spec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OpenAPI3</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#patchsecurity-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
261
+ <div class="tsd-description">
262
+ <div class="tsd-comment tsd-typography"><p>AWS does not properly apply the 'security' option to every single path-method.
53
263
  According to documentation, global security gets applied, if there is no security
54
264
  set for the particular path-method. If there is any, even empty, it will get precedence.
55
265
  THIS DOES NOT HAPPEN ON AWS. IT JUST ALWAYS USES THE GLOBAL SETTING!</p>
56
266
  <p>'security applies [...] schemes globally to all API operations, unless overridden on the operation level'</p>
57
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">spec</span>: <span class="tsd-signature-type">OpenAPI3</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4><div class="tsd-comment tsd-typography"><div class="tsd-tag-see"><h4 class="tsd-anchor-link" id="see">See<a href="#see" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><p><a href="https://swagger.io/docs/specification/authentication/">https://swagger.io/docs/specification/authentication/</a></p>
58
- </div></div></div></li></ul></section><section class="tsd-panel tsd-member tsd-is-protected"><h3 class="tsd-anchor-link" id="patchsecurityschemes"><code class="tsd-tag">Protected</code><span>patch<wbr/>Security<wbr/>Schemes</span><a href="#patchsecurityschemes" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-protected"><li class=""><div class="tsd-signature tsd-anchor-link" id="patchsecurityschemes-1"><span class="tsd-kind-call-signature">patchSecuritySchemes</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">spec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OpenAPI3</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#patchsecurityschemes-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Injects the authorizer security scheme into the OpenAPI spec based on the
267
+ </div>
268
+ <div class="tsd-parameters">
269
+ <h4 class="tsd-parameters-title">Parameters</h4>
270
+ <ul class="tsd-parameter-list">
271
+ <li><span><span class="tsd-kind-parameter">spec</span>: <span class="tsd-signature-type">OpenAPI3</span></span></li></ul></div>
272
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
273
+ <div class="tsd-comment tsd-typography">
274
+ <div class="tsd-tag-see">
275
+ <h4 class="tsd-anchor-link" id="see">See<a href="#see" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><p><a href="https://swagger.io/docs/specification/authentication/">https://swagger.io/docs/specification/authentication/</a></p>
276
+ </div></div></div></li></ul></section>
277
+ <section class="tsd-panel tsd-member tsd-is-protected">
278
+ <h3 class="tsd-anchor-link" id="patchsecurityschemes"><code class="tsd-tag">Protected</code><span>patch<wbr/>Security<wbr/>Schemes</span><a href="#patchsecurityschemes" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
279
+ <ul class="tsd-signatures tsd-is-protected">
280
+ <li class="">
281
+ <div class="tsd-signature tsd-anchor-link" id="patchsecurityschemes-1"><span class="tsd-kind-call-signature">patchSecuritySchemes</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">spec</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">OpenAPI3</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#patchsecurityschemes-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
282
+ <div class="tsd-description">
283
+ <div class="tsd-comment tsd-typography"><p>Injects the authorizer security scheme into the OpenAPI spec based on the
59
284
  authentication type, placing it where API Gateway expects it for the spec
60
285
  version: <code>components.securitySchemes</code> for OpenAPI 3.x, or the root
61
286
  <code>securityDefinitions</code> for Swagger 2.0. An authorizer written to the wrong
62
287
  location is silently ignored on import, deploying an unauthenticated API.</p>
63
288
  <p>For Cognito: adds a cognito_user_pools authorizer referencing the user pool ARN.
64
289
  For JWT: creates a Lambda authorizer function and adds a token authorizer referencing its ARN.</p>
65
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">spec</span>: <span class="tsd-signature-type">OpenAPI3</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section><section class="tsd-panel tsd-member"><h3 class="tsd-anchor-link" id="setanonymousoperations"><span>set<wbr/>Anonymous<wbr/>Operations</span><a href="#setanonymousoperations" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class=""><div class="tsd-signature tsd-anchor-link" id="setanonymousoperations-1"><span class="tsd-kind-call-signature">setAnonymousOperations</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">operationIds</span><span class="tsd-signature-symbol">:</span> (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#setanonymousoperations-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Replace the full set of anonymous operations.
290
+ </div>
291
+ <div class="tsd-parameters">
292
+ <h4 class="tsd-parameters-title">Parameters</h4>
293
+ <ul class="tsd-parameter-list">
294
+ <li><span><span class="tsd-kind-parameter">spec</span>: <span class="tsd-signature-type">OpenAPI3</span></span></li></ul></div>
295
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section>
296
+ <section class="tsd-panel tsd-member">
297
+ <h3 class="tsd-anchor-link" id="setanonymousoperations"><span>set<wbr/>Anonymous<wbr/>Operations</span><a href="#setanonymousoperations" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
298
+ <ul class="tsd-signatures">
299
+ <li class="">
300
+ <div class="tsd-signature tsd-anchor-link" id="setanonymousoperations-1"><span class="tsd-kind-call-signature">setAnonymousOperations</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">operationIds</span><span class="tsd-signature-symbol">:</span> (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#setanonymousoperations-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
301
+ <div class="tsd-description">
302
+ <div class="tsd-comment tsd-typography"><p>Replace the full set of anonymous operations.
66
303
  Anonymous operations will have <code>security: []</code> applied in the OpenAPI spec,
67
304
  making them publicly accessible without authentication.</p>
68
305
  <p>Since CDK serializes the OpenAPI spec at synth time (fromInline stores the
69
306
  object reference), mutations after SpecRestApi construction still take effect.</p>
70
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">operationIds</span>: (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span></span><div class="tsd-comment tsd-typography"><p>The operation IDs to mark as anonymous. Replaces any previously set anonymous operations.</p>
71
- </div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><h3 class="tsd-anchor-link" id="tostring"><span>to<wbr/>String</span><a href="#tostring" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-is-inherited tsd-is-external"><div class="tsd-signature tsd-anchor-link" id="tostring-1"><span class="tsd-kind-call-signature">toString</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><a href="#tostring-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Returns a string representation of this construct.</p>
72
- </div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#tostring">toString</a></p></aside></div></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><h3 class="tsd-anchor-link" id="with"><span>with</span><a href="#with" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-is-inherited tsd-is-external"><div class="tsd-signature tsd-anchor-link" id="with-1"><span class="tsd-kind-call-signature">with</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">mixins</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IMixin</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IConstruct</span><a href="#with-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Applies one or more mixins to this construct.</p>
307
+ </div>
308
+ <div class="tsd-parameters">
309
+ <h4 class="tsd-parameters-title">Parameters</h4>
310
+ <ul class="tsd-parameter-list">
311
+ <li><span><span class="tsd-kind-parameter">operationIds</span>: (<span class="tsd-signature-keyword">keyof</span> <a class="tsd-signature-type tsd-kind-type-parameter" href="#ops">OPS</a>)<span class="tsd-signature-symbol">[]</span></span>
312
+ <div class="tsd-comment tsd-typography"><p>The operation IDs to mark as anonymous. Replaces any previously set anonymous operations.</p>
313
+ </div></li></ul></div>
314
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></div></li></ul></section>
315
+ <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external">
316
+ <h3 class="tsd-anchor-link" id="tostring"><span>to<wbr/>String</span><a href="#tostring" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
317
+ <ul class="tsd-signatures tsd-is-inherited tsd-is-external">
318
+ <li class="tsd-is-inherited tsd-is-external">
319
+ <div class="tsd-signature tsd-anchor-link" id="tostring-1"><span class="tsd-kind-call-signature">toString</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><a href="#tostring-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
320
+ <div class="tsd-description">
321
+ <div class="tsd-comment tsd-typography"><p>Returns a string representation of this construct.</p>
322
+ </div>
323
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><aside class="tsd-sources">
324
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#tostring">toString</a></p></aside></div></li></ul></section>
325
+ <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external">
326
+ <h3 class="tsd-anchor-link" id="with"><span>with</span><a href="#with" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
327
+ <ul class="tsd-signatures tsd-is-inherited tsd-is-external">
328
+ <li class="tsd-is-inherited tsd-is-external">
329
+ <div class="tsd-signature tsd-anchor-link" id="with-1"><span class="tsd-kind-call-signature">with</span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">mixins</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IMixin</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IConstruct</span><a href="#with-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
330
+ <div class="tsd-description">
331
+ <div class="tsd-comment tsd-typography"><p>Applies one or more mixins to this construct.</p>
73
332
  <p>Mixins are applied in order. The list of constructs is captured at the
74
333
  start of the call, so constructs added by a mixin will not be visited.
75
334
  Use multiple <code>with()</code> calls if subsequent mixins should apply to added
76
335
  constructs.</p>
77
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">mixins</span>: <span class="tsd-signature-type">IMixin</span><span class="tsd-signature-symbol">[]</span></span><div class="tsd-comment tsd-typography"><p>The mixins to apply</p>
78
- </div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">IConstruct</span></h4><p>This construct for chaining</p>
79
- <aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#with">with</a></p></aside></div></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><h3 class="tsd-anchor-link" id="isconstruct"><code class="tsd-tag">Static</code><span>is<wbr/>Construct</span><a href="#isconstruct" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-is-inherited tsd-is-external"><div class="tsd-signature tsd-anchor-link" id="isconstruct-1"><span class="tsd-kind-call-signature">isConstruct</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">x</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-kind-parameter">x</span> <span class="tsd-signature-keyword">is</span> <span class="tsd-signature-type">Construct</span><a href="#isconstruct-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div><div class="tsd-description"><div class="tsd-comment tsd-typography"><p>Checks if <code>x</code> is a construct.</p>
336
+ </div>
337
+ <div class="tsd-parameters">
338
+ <h4 class="tsd-parameters-title">Parameters</h4>
339
+ <ul class="tsd-parameter-list">
340
+ <li><span><span class="tsd-signature-symbol">...</span><span class="tsd-kind-parameter">mixins</span>: <span class="tsd-signature-type">IMixin</span><span class="tsd-signature-symbol">[]</span></span>
341
+ <div class="tsd-comment tsd-typography"><p>The mixins to apply</p>
342
+ </div></li></ul></div>
343
+ <h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">IConstruct</span></h4><p>This construct for chaining</p>
344
+ <aside class="tsd-sources">
345
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#with">with</a></p></aside></div></li></ul></section>
346
+ <section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external">
347
+ <h3 class="tsd-anchor-link" id="isconstruct"><code class="tsd-tag">Static</code><span>is<wbr/>Construct</span><a href="#isconstruct" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3>
348
+ <ul class="tsd-signatures tsd-is-inherited tsd-is-external">
349
+ <li class="tsd-is-inherited tsd-is-external">
350
+ <div class="tsd-signature tsd-anchor-link" id="isconstruct-1"><span class="tsd-kind-call-signature">isConstruct</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">x</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-kind-parameter">x</span> <span class="tsd-signature-keyword">is</span> <span class="tsd-signature-type">Construct</span><a href="#isconstruct-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></div>
351
+ <div class="tsd-description">
352
+ <div class="tsd-comment tsd-typography"><p>Checks if <code>x</code> is a construct.</p>
80
353
  <p>Use this method instead of <code>instanceof</code> to properly detect <code>Construct</code>
81
354
  instances, even when the construct library is symlinked.</p>
82
355
  <p>Explanation: in JavaScript, multiple copies of the <code>constructs</code> library on
@@ -89,6 +362,40 @@ use a monorepo tool: in those cases, multiple copies of the <code>constructs</co
89
362
  library can be accidentally installed, and <code>instanceof</code> will behave
90
363
  unpredictably. It is safest to avoid using <code>instanceof</code>, and using
91
364
  this type-testing method instead.</p>
92
- </div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">x</span>: <span class="tsd-signature-type">any</span></span><div class="tsd-comment tsd-typography"><p>Any object</p>
93
- </div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-kind-parameter">x</span> <span class="tsd-signature-keyword">is</span> <span class="tsd-signature-type">Construct</span></h4><p>true if <code>x</code> is an object created from a class which extends <code>Construct</code>.</p>
94
- <aside class="tsd-sources"><p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#isconstruct">isConstruct</a></p></aside></div></li></ul></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Constructors</summary><div><a href="#constructor"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Constructor"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#api"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api</span></a><a href="#apidomainname" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Domain<wbr/>Name</span></a><a href="#apifqdn" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>FQDN</span></a><a href="#apihostname" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Host<wbr/>Name</span></a><a href="#apispec"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Spec</span></a><a href="#hostedzone" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>hosted<wbr/>Zone</span></a><a href="#node" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Methods</summary><div><a href="#addanonymousoperations"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Anonymous<wbr/>Operations</span></a><a href="#addcustomrestresource"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Custom<wbr/>Rest<wbr/>Resource</span></a><a href="#addrestresource"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Rest<wbr/>Resource</span></a><a href="#cleanupspec" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>cleanup<wbr/>Spec</span></a><a href="#getfunctionforoperation"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Function<wbr/>For<wbr/>Operation</span></a><a href="#getfunctions"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Functions</span></a><a href="#getmcpauth"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Mcp<wbr/>Auth</span></a><a href="#modifyoperationfunctions"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>modify<wbr/>Operation<wbr/>Functions</span></a><a href="#patchsecurity" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>patch<wbr/>Security</span></a><a href="#patchsecurityschemes" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>patch<wbr/>Security<wbr/>Schemes</span></a><a href="#setanonymousoperations"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Anonymous<wbr/>Operations</span></a><a href="#tostring" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>String</span></a><a href="#with" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>with</span></a><a href="#isconstruct" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Construct</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">cdk-serverless</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
365
+ </div>
366
+ <div class="tsd-parameters">
367
+ <h4 class="tsd-parameters-title">Parameters</h4>
368
+ <ul class="tsd-parameter-list">
369
+ <li><span><span class="tsd-kind-parameter">x</span>: <span class="tsd-signature-type">any</span></span>
370
+ <div class="tsd-comment tsd-typography"><p>Any object</p>
371
+ </div></li></ul></div>
372
+ <h4 class="tsd-returns-title">Returns <span class="tsd-kind-parameter">x</span> <span class="tsd-signature-keyword">is</span> <span class="tsd-signature-type">Construct</span></h4><p>true if <code>x</code> is an object created from a class which extends <code>Construct</code>.</p>
373
+ <aside class="tsd-sources">
374
+ <p>Inherited from <a href="BaseApi.html">BaseApi</a>.<a href="BaseApi.html#isconstruct">isConstruct</a></p></aside></div></li></ul></section></section></details></div>
375
+ <div class="col-sidebar">
376
+ <div class="page-menu">
377
+ <div class="tsd-navigation settings">
378
+ <details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
379
+ <h3>Settings</h3></summary>
380
+ <div class="tsd-accordion-details">
381
+ <div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
382
+ <ul id="tsd-filter-options">
383
+ <li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
384
+ <li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
385
+ <li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
386
+ <div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div>
387
+ <details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
388
+ <h3>On This Page</h3></summary>
389
+ <div class="tsd-accordion-details">
390
+ <details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Constructors</summary>
391
+ <div><a href="#constructor"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Constructor"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></div></details>
392
+ <details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary>
393
+ <div><a href="#api"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api</span></a><a href="#apidomainname" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Domain<wbr/>Name</span></a><a href="#apifqdn" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>FQDN</span></a><a href="#apihostname" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Host<wbr/>Name</span></a><a href="#apispec"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Spec</span></a><a href="#hostedzone" class="tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>hosted<wbr/>Zone</span></a><a href="#node" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Property"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a></div></details>
394
+ <details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Methods</summary>
395
+ <div><a href="#addanonymousoperations"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Anonymous<wbr/>Operations</span></a><a href="#addcustomrestresource"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Custom<wbr/>Rest<wbr/>Resource</span></a><a href="#addrestresource"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Rest<wbr/>Resource</span></a><a href="#cleanupspec" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>cleanup<wbr/>Spec</span></a><a href="#getfunctionforoperation"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Function<wbr/>For<wbr/>Operation</span></a><a href="#getfunctions"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Functions</span></a><a href="#getmcpauth"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Mcp<wbr/>Auth</span></a><a href="#modifyoperationfunctions"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>modify<wbr/>Operation<wbr/>Functions</span></a><a href="#patchsecurity" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>patch<wbr/>Security</span></a><a href="#patchsecurityschemes" class="tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>patch<wbr/>Security<wbr/>Schemes</span></a><a href="#setanonymousoperations"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Anonymous<wbr/>Operations</span></a><a href="#tostring" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>String</span></a><a href="#with" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>with</span></a><a href="#isconstruct" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24" aria-label="Method"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Construct</span></a></div></details></div></details></div>
396
+ <div class="site-menu">
397
+ <nav class="tsd-navigation"><a href="../modules.html">cdk-serverless</a>
398
+ <ul class="tsd-small-nested-navigation" id="tsd-nav-container">
399
+ <li>Loading...</li></ul></nav></div></div></div><footer>
400
+ <p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer>
401
+ <div class="overlay"></div></body></html>