{
  "author": {
    "email": "bestickley@gmail.com",
    "name": "Ben Stickley",
    "roles": [
      "author"
    ]
  },
  "dependencies": {
    "aws-cdk-lib": "^2.196.0",
    "constructs": "^10.0.5"
  },
  "dependencyClosure": {
    "@aws-cdk/asset-awscli-v1": {
      "targets": {
        "dotnet": {
          "namespace": "Amazon.CDK.Asset.AwsCliV1",
          "packageId": "Amazon.CDK.Asset.AwsCliV1"
        },
        "go": {
          "moduleName": "github.com/cdklabs/awscdk-asset-awscli-go",
          "packageName": "awscliv1"
        },
        "java": {
          "maven": {
            "artifactId": "cdk-asset-awscli-v1",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk.cdk.asset.awscli.v1"
        },
        "js": {
          "npm": "@aws-cdk/asset-awscli-v1"
        },
        "python": {
          "distName": "aws-cdk.asset-awscli-v1",
          "module": "aws_cdk.asset_awscli_v1"
        }
      }
    },
    "@aws-cdk/asset-node-proxy-agent-v6": {
      "targets": {
        "dotnet": {
          "namespace": "Amazon.CDK.Asset.NodeProxyAgentV6",
          "packageId": "Amazon.CDK.Asset.NodeProxyAgentV6"
        },
        "go": {
          "moduleName": "github.com/cdklabs/awscdk-asset-node-proxy-agent-go",
          "packageName": "nodeproxyagentv6"
        },
        "java": {
          "maven": {
            "artifactId": "cdk-asset-node-proxy-agent-v6",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk.cdk.asset.node.proxy.agent.v6"
        },
        "js": {
          "npm": "@aws-cdk/asset-node-proxy-agent-v6"
        },
        "python": {
          "distName": "aws-cdk.asset-node-proxy-agent-v6",
          "module": "aws_cdk.asset_node_proxy_agent_v6"
        }
      }
    },
    "@aws-cdk/cloud-assembly-schema": {
      "targets": {
        "dotnet": {
          "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png",
          "namespace": "Amazon.CDK.CloudAssembly.Schema",
          "packageId": "Amazon.CDK.CloudAssembly.Schema"
        },
        "go": {
          "moduleName": "github.com/cdklabs/cloud-assembly-schema-go"
        },
        "java": {
          "maven": {
            "artifactId": "cdk-cloud-assembly-schema",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk.cloudassembly.schema"
        },
        "js": {
          "npm": "@aws-cdk/cloud-assembly-schema"
        },
        "python": {
          "classifiers": [
            "Framework :: AWS CDK",
            "Framework :: AWS CDK :: 2"
          ],
          "distName": "aws-cdk.cloud-assembly-schema",
          "module": "aws_cdk.cloud_assembly_schema"
        }
      }
    },
    "aws-cdk-lib": {
      "submodules": {
        "aws-cdk-lib.alexa_ask": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Alexa.Ask"
            },
            "java": {
              "package": "software.amazon.awscdk.alexa.ask"
            },
            "python": {
              "module": "aws_cdk.alexa_ask"
            }
          }
        },
        "aws-cdk-lib.assertions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Assertions"
            },
            "java": {
              "package": "software.amazon.awscdk.assertions"
            },
            "python": {
              "module": "aws_cdk.assertions"
            }
          }
        },
        "aws-cdk-lib.assets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Assets"
            },
            "java": {
              "package": "software.amazon.awscdk.assets"
            },
            "python": {
              "module": "aws_cdk.assets"
            }
          }
        },
        "aws-cdk-lib.aws_accessanalyzer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AccessAnalyzer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.accessanalyzer"
            },
            "python": {
              "module": "aws_cdk.aws_accessanalyzer"
            }
          }
        },
        "aws-cdk-lib.aws_acmpca": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ACMPCA"
            },
            "java": {
              "package": "software.amazon.awscdk.services.acmpca"
            },
            "python": {
              "module": "aws_cdk.aws_acmpca"
            }
          }
        },
        "aws-cdk-lib.aws_amazonmq": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AmazonMQ"
            },
            "java": {
              "package": "software.amazon.awscdk.services.amazonmq"
            },
            "python": {
              "module": "aws_cdk.aws_amazonmq"
            }
          }
        },
        "aws-cdk-lib.aws_amplify": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Amplify"
            },
            "java": {
              "package": "software.amazon.awscdk.services.amplify"
            },
            "python": {
              "module": "aws_cdk.aws_amplify"
            }
          }
        },
        "aws-cdk-lib.aws_amplifyuibuilder": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AmplifyUIBuilder"
            },
            "java": {
              "package": "software.amazon.awscdk.services.amplifyuibuilder"
            },
            "python": {
              "module": "aws_cdk.aws_amplifyuibuilder"
            }
          }
        },
        "aws-cdk-lib.aws_apigateway": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.APIGateway"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apigateway"
            },
            "python": {
              "module": "aws_cdk.aws_apigateway"
            }
          }
        },
        "aws-cdk-lib.aws_apigatewayv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Apigatewayv2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apigatewayv2"
            },
            "python": {
              "module": "aws_cdk.aws_apigatewayv2"
            }
          }
        },
        "aws-cdk-lib.aws_apigatewayv2_authorizers": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AwsApigatewayv2Authorizers"
            },
            "java": {
              "package": "software.amazon.awscdk.aws_apigatewayv2_authorizers"
            },
            "python": {
              "module": "aws_cdk.aws_apigatewayv2_authorizers"
            }
          }
        },
        "aws-cdk-lib.aws_apigatewayv2_integrations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AwsApigatewayv2Integrations"
            },
            "java": {
              "package": "software.amazon.awscdk.aws_apigatewayv2_integrations"
            },
            "python": {
              "module": "aws_cdk.aws_apigatewayv2_integrations"
            }
          }
        },
        "aws-cdk-lib.aws_appconfig": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppConfig"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appconfig"
            },
            "python": {
              "module": "aws_cdk.aws_appconfig"
            }
          }
        },
        "aws-cdk-lib.aws_appflow": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppFlow"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appflow"
            },
            "python": {
              "module": "aws_cdk.aws_appflow"
            }
          }
        },
        "aws-cdk-lib.aws_appintegrations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppIntegrations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appintegrations"
            },
            "python": {
              "module": "aws_cdk.aws_appintegrations"
            }
          }
        },
        "aws-cdk-lib.aws_applicationautoscaling": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ApplicationAutoScaling"
            },
            "java": {
              "package": "software.amazon.awscdk.services.applicationautoscaling"
            },
            "python": {
              "module": "aws_cdk.aws_applicationautoscaling"
            }
          }
        },
        "aws-cdk-lib.aws_applicationinsights": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ApplicationInsights"
            },
            "java": {
              "package": "software.amazon.awscdk.services.applicationinsights"
            },
            "python": {
              "module": "aws_cdk.aws_applicationinsights"
            }
          }
        },
        "aws-cdk-lib.aws_applicationsignals": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.ApplicationSignals"
            },
            "java": {
              "package": "software.amazon.awscdk.services.applicationsignals"
            },
            "python": {
              "module": "aws_cdk.aws_applicationsignals"
            }
          }
        },
        "aws-cdk-lib.aws_appmesh": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppMesh"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appmesh"
            },
            "python": {
              "module": "aws_cdk.aws_appmesh"
            }
          }
        },
        "aws-cdk-lib.aws_apprunner": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppRunner"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apprunner"
            },
            "python": {
              "module": "aws_cdk.aws_apprunner"
            }
          }
        },
        "aws-cdk-lib.aws_appstream": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppStream"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appstream"
            },
            "python": {
              "module": "aws_cdk.aws_appstream"
            }
          }
        },
        "aws-cdk-lib.aws_appsync": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AppSync"
            },
            "java": {
              "package": "software.amazon.awscdk.services.appsync"
            },
            "python": {
              "module": "aws_cdk.aws_appsync"
            }
          }
        },
        "aws-cdk-lib.aws_apptest": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.AppTest"
            },
            "java": {
              "package": "software.amazon.awscdk.services.apptest"
            },
            "python": {
              "module": "aws_cdk.aws_apptest"
            }
          }
        },
        "aws-cdk-lib.aws_aps": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.APS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.aps"
            },
            "python": {
              "module": "aws_cdk.aws_aps"
            }
          }
        },
        "aws-cdk-lib.aws_arczonalshift": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.ARCZonalShift"
            },
            "java": {
              "package": "software.amazon.awscdk.services.arczonalshift"
            },
            "python": {
              "module": "aws_cdk.aws_arczonalshift"
            }
          }
        },
        "aws-cdk-lib.aws_athena": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Athena"
            },
            "java": {
              "package": "software.amazon.awscdk.services.athena"
            },
            "python": {
              "module": "aws_cdk.aws_athena"
            }
          }
        },
        "aws-cdk-lib.aws_auditmanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AuditManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.auditmanager"
            },
            "python": {
              "module": "aws_cdk.aws_auditmanager"
            }
          }
        },
        "aws-cdk-lib.aws_autoscaling": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScaling"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscaling"
            },
            "python": {
              "module": "aws_cdk.aws_autoscaling"
            }
          }
        },
        "aws-cdk-lib.aws_autoscaling_common": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScaling.Common"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscaling.common"
            },
            "python": {
              "module": "aws_cdk.aws_autoscaling_common"
            }
          }
        },
        "aws-cdk-lib.aws_autoscaling_hooktargets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScaling.HookTargets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscaling.hooktargets"
            },
            "python": {
              "module": "aws_cdk.aws_autoscaling_hooktargets"
            }
          }
        },
        "aws-cdk-lib.aws_autoscalingplans": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.AutoScalingPlans"
            },
            "java": {
              "package": "software.amazon.awscdk.services.autoscalingplans"
            },
            "python": {
              "module": "aws_cdk.aws_autoscalingplans"
            }
          }
        },
        "aws-cdk-lib.aws_b2bi": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.B2BI"
            },
            "java": {
              "package": "software.amazon.awscdk.services.b2bi"
            },
            "python": {
              "module": "aws_cdk.aws_b2bi"
            }
          }
        },
        "aws-cdk-lib.aws_backup": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Backup"
            },
            "java": {
              "package": "software.amazon.awscdk.services.backup"
            },
            "python": {
              "module": "aws_cdk.aws_backup"
            }
          }
        },
        "aws-cdk-lib.aws_backupgateway": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.BackupGateway"
            },
            "java": {
              "package": "software.amazon.awscdk.services.backupgateway"
            },
            "python": {
              "module": "aws_cdk.aws_backupgateway"
            }
          }
        },
        "aws-cdk-lib.aws_batch": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Batch"
            },
            "java": {
              "package": "software.amazon.awscdk.services.batch"
            },
            "python": {
              "module": "aws_cdk.aws_batch"
            }
          }
        },
        "aws-cdk-lib.aws_bcmdataexports": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.BCMDataExports"
            },
            "java": {
              "package": "software.amazon.awscdk.services.bcmdataexports"
            },
            "python": {
              "module": "aws_cdk.aws_bcmdataexports"
            }
          }
        },
        "aws-cdk-lib.aws_bedrock": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Bedrock"
            },
            "java": {
              "package": "software.amazon.awscdk.services.bedrock"
            },
            "python": {
              "module": "aws_cdk.aws_bedrock"
            }
          }
        },
        "aws-cdk-lib.aws_billingconductor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.BillingConductor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.billingconductor"
            },
            "python": {
              "module": "aws_cdk.aws_billingconductor"
            }
          }
        },
        "aws-cdk-lib.aws_budgets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Budgets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.budgets"
            },
            "python": {
              "module": "aws_cdk.aws_budgets"
            }
          }
        },
        "aws-cdk-lib.aws_cassandra": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Cassandra"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cassandra"
            },
            "python": {
              "module": "aws_cdk.aws_cassandra"
            }
          }
        },
        "aws-cdk-lib.aws_ce": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CE"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ce"
            },
            "python": {
              "module": "aws_cdk.aws_ce"
            }
          }
        },
        "aws-cdk-lib.aws_certificatemanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CertificateManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.certificatemanager"
            },
            "python": {
              "module": "aws_cdk.aws_certificatemanager"
            }
          }
        },
        "aws-cdk-lib.aws_chatbot": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Chatbot"
            },
            "java": {
              "package": "software.amazon.awscdk.services.chatbot"
            },
            "python": {
              "module": "aws_cdk.aws_chatbot"
            }
          }
        },
        "aws-cdk-lib.aws_cleanrooms": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.CleanRooms"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cleanrooms"
            },
            "python": {
              "module": "aws_cdk.aws_cleanrooms"
            }
          }
        },
        "aws-cdk-lib.aws_cleanroomsml": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.CleanRoomsML"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cleanroomsml"
            },
            "python": {
              "module": "aws_cdk.aws_cleanroomsml"
            }
          }
        },
        "aws-cdk-lib.aws_cloud9": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Cloud9"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloud9"
            },
            "python": {
              "module": "aws_cdk.aws_cloud9"
            }
          }
        },
        "aws-cdk-lib.aws_cloudformation": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudFormation"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudformation"
            },
            "python": {
              "module": "aws_cdk.aws_cloudformation"
            }
          }
        },
        "aws-cdk-lib.aws_cloudfront": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudFront"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudfront"
            },
            "python": {
              "module": "aws_cdk.aws_cloudfront"
            }
          }
        },
        "aws-cdk-lib.aws_cloudfront.experimental": {},
        "aws-cdk-lib.aws_cloudfront_origins": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudFront.Origins"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudfront.origins"
            },
            "python": {
              "module": "aws_cdk.aws_cloudfront_origins"
            }
          }
        },
        "aws-cdk-lib.aws_cloudtrail": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudTrail"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudtrail"
            },
            "python": {
              "module": "aws_cdk.aws_cloudtrail"
            }
          }
        },
        "aws-cdk-lib.aws_cloudwatch": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudWatch"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudwatch"
            },
            "python": {
              "module": "aws_cdk.aws_cloudwatch"
            }
          }
        },
        "aws-cdk-lib.aws_cloudwatch_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CloudWatch.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cloudwatch.actions"
            },
            "python": {
              "module": "aws_cdk.aws_cloudwatch_actions"
            }
          }
        },
        "aws-cdk-lib.aws_codeartifact": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeArtifact"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codeartifact"
            },
            "python": {
              "module": "aws_cdk.aws_codeartifact"
            }
          }
        },
        "aws-cdk-lib.aws_codebuild": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeBuild"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codebuild"
            },
            "python": {
              "module": "aws_cdk.aws_codebuild"
            }
          }
        },
        "aws-cdk-lib.aws_codecommit": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeCommit"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codecommit"
            },
            "python": {
              "module": "aws_cdk.aws_codecommit"
            }
          }
        },
        "aws-cdk-lib.aws_codeconnections": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.CodeConnections"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codeconnections"
            },
            "python": {
              "module": "aws_cdk.aws_codeconnections"
            }
          }
        },
        "aws-cdk-lib.aws_codedeploy": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeDeploy"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codedeploy"
            },
            "python": {
              "module": "aws_cdk.aws_codedeploy"
            }
          }
        },
        "aws-cdk-lib.aws_codeguruprofiler": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeGuruProfiler"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codeguruprofiler"
            },
            "python": {
              "module": "aws_cdk.aws_codeguruprofiler"
            }
          }
        },
        "aws-cdk-lib.aws_codegurureviewer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeGuruReviewer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codegurureviewer"
            },
            "python": {
              "module": "aws_cdk.aws_codegurureviewer"
            }
          }
        },
        "aws-cdk-lib.aws_codepipeline": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodePipeline"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codepipeline"
            },
            "python": {
              "module": "aws_cdk.aws_codepipeline"
            }
          }
        },
        "aws-cdk-lib.aws_codepipeline_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodePipeline.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codepipeline.actions"
            },
            "python": {
              "module": "aws_cdk.aws_codepipeline_actions"
            }
          }
        },
        "aws-cdk-lib.aws_codestar": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Codestar"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codestar"
            },
            "python": {
              "module": "aws_cdk.aws_codestar"
            }
          }
        },
        "aws-cdk-lib.aws_codestarconnections": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeStarConnections"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codestarconnections"
            },
            "python": {
              "module": "aws_cdk.aws_codestarconnections"
            }
          }
        },
        "aws-cdk-lib.aws_codestarnotifications": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CodeStarNotifications"
            },
            "java": {
              "package": "software.amazon.awscdk.services.codestarnotifications"
            },
            "python": {
              "module": "aws_cdk.aws_codestarnotifications"
            }
          }
        },
        "aws-cdk-lib.aws_cognito": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Cognito"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cognito"
            },
            "python": {
              "module": "aws_cdk.aws_cognito"
            }
          }
        },
        "aws-cdk-lib.aws_cognito_identitypool": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Cognito.Identitypool"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cognito.identitypool"
            },
            "python": {
              "module": "aws_cdk.aws_cognito_identitypool"
            }
          }
        },
        "aws-cdk-lib.aws_comprehend": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Comprehend"
            },
            "java": {
              "package": "software.amazon.awscdk.services.comprehend"
            },
            "python": {
              "module": "aws_cdk.aws_comprehend"
            }
          }
        },
        "aws-cdk-lib.aws_config": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Config"
            },
            "java": {
              "package": "software.amazon.awscdk.services.config"
            },
            "python": {
              "module": "aws_cdk.aws_config"
            }
          }
        },
        "aws-cdk-lib.aws_connect": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Connect"
            },
            "java": {
              "package": "software.amazon.awscdk.services.connect"
            },
            "python": {
              "module": "aws_cdk.aws_connect"
            }
          }
        },
        "aws-cdk-lib.aws_connectcampaigns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ConnectCampaigns"
            },
            "java": {
              "package": "software.amazon.awscdk.services.connectcampaigns"
            },
            "python": {
              "module": "aws_cdk.aws_connectcampaigns"
            }
          }
        },
        "aws-cdk-lib.aws_connectcampaignsv2": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.ConnectCampaignsV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.connectcampaignsv2"
            },
            "python": {
              "module": "aws_cdk.aws_connectcampaignsv2"
            }
          }
        },
        "aws-cdk-lib.aws_controltower": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ControlTower"
            },
            "java": {
              "package": "software.amazon.awscdk.services.controltower"
            },
            "python": {
              "module": "aws_cdk.aws_controltower"
            }
          }
        },
        "aws-cdk-lib.aws_cur": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CUR"
            },
            "java": {
              "package": "software.amazon.awscdk.services.cur"
            },
            "python": {
              "module": "aws_cdk.aws_cur"
            }
          }
        },
        "aws-cdk-lib.aws_customerprofiles": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.CustomerProfiles"
            },
            "java": {
              "package": "software.amazon.awscdk.services.customerprofiles"
            },
            "python": {
              "module": "aws_cdk.aws_customerprofiles"
            }
          }
        },
        "aws-cdk-lib.aws_databrew": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DataBrew"
            },
            "java": {
              "package": "software.amazon.awscdk.services.databrew"
            },
            "python": {
              "module": "aws_cdk.aws_databrew"
            }
          }
        },
        "aws-cdk-lib.aws_datapipeline": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DataPipeline"
            },
            "java": {
              "package": "software.amazon.awscdk.services.datapipeline"
            },
            "python": {
              "module": "aws_cdk.aws_datapipeline"
            }
          }
        },
        "aws-cdk-lib.aws_datasync": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DataSync"
            },
            "java": {
              "package": "software.amazon.awscdk.services.datasync"
            },
            "python": {
              "module": "aws_cdk.aws_datasync"
            }
          }
        },
        "aws-cdk-lib.aws_datazone": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.DataZone"
            },
            "java": {
              "package": "software.amazon.awscdk.services.datazone"
            },
            "python": {
              "module": "aws_cdk.aws_datazone"
            }
          }
        },
        "aws-cdk-lib.aws_dax": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DAX"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dax"
            },
            "python": {
              "module": "aws_cdk.aws_dax"
            }
          }
        },
        "aws-cdk-lib.aws_deadline": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Deadline"
            },
            "java": {
              "package": "software.amazon.awscdk.services.deadline"
            },
            "python": {
              "module": "aws_cdk.aws_deadline"
            }
          }
        },
        "aws-cdk-lib.aws_detective": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Detective"
            },
            "java": {
              "package": "software.amazon.awscdk.services.detective"
            },
            "python": {
              "module": "aws_cdk.aws_detective"
            }
          }
        },
        "aws-cdk-lib.aws_devicefarm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DeviceFarm"
            },
            "java": {
              "package": "software.amazon.awscdk.services.devicefarm"
            },
            "python": {
              "module": "aws_cdk.aws_devicefarm"
            }
          }
        },
        "aws-cdk-lib.aws_devopsguru": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DevOpsGuru"
            },
            "java": {
              "package": "software.amazon.awscdk.services.devopsguru"
            },
            "python": {
              "module": "aws_cdk.aws_devopsguru"
            }
          }
        },
        "aws-cdk-lib.aws_directoryservice": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DirectoryService"
            },
            "java": {
              "package": "software.amazon.awscdk.services.directoryservice"
            },
            "python": {
              "module": "aws_cdk.aws_directoryservice"
            }
          }
        },
        "aws-cdk-lib.aws_dlm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DLM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dlm"
            },
            "python": {
              "module": "aws_cdk.aws_dlm"
            }
          }
        },
        "aws-cdk-lib.aws_dms": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DMS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dms"
            },
            "python": {
              "module": "aws_cdk.aws_dms"
            }
          }
        },
        "aws-cdk-lib.aws_docdb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DocDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.docdb"
            },
            "python": {
              "module": "aws_cdk.aws_docdb"
            }
          }
        },
        "aws-cdk-lib.aws_docdbelastic": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DocDBElastic"
            },
            "java": {
              "package": "software.amazon.awscdk.services.docdbelastic"
            },
            "python": {
              "module": "aws_cdk.aws_docdbelastic"
            }
          }
        },
        "aws-cdk-lib.aws_dsql": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.DSQL"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dsql"
            },
            "python": {
              "module": "aws_cdk.aws_dsql"
            }
          }
        },
        "aws-cdk-lib.aws_dynamodb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.DynamoDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.dynamodb"
            },
            "python": {
              "module": "aws_cdk.aws_dynamodb"
            }
          }
        },
        "aws-cdk-lib.aws_ec2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EC2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ec2"
            },
            "python": {
              "module": "aws_cdk.aws_ec2"
            }
          }
        },
        "aws-cdk-lib.aws_ecr": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ECR"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecr"
            },
            "python": {
              "module": "aws_cdk.aws_ecr"
            }
          }
        },
        "aws-cdk-lib.aws_ecr_assets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Ecr.Assets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecr.assets"
            },
            "python": {
              "module": "aws_cdk.aws_ecr_assets"
            }
          }
        },
        "aws-cdk-lib.aws_ecs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ECS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecs"
            },
            "python": {
              "module": "aws_cdk.aws_ecs"
            }
          }
        },
        "aws-cdk-lib.aws_ecs_patterns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ECS.Patterns"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ecs.patterns"
            },
            "python": {
              "module": "aws_cdk.aws_ecs_patterns"
            }
          }
        },
        "aws-cdk-lib.aws_efs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EFS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.efs"
            },
            "python": {
              "module": "aws_cdk.aws_efs"
            }
          }
        },
        "aws-cdk-lib.aws_eks": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EKS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.eks"
            },
            "python": {
              "module": "aws_cdk.aws_eks"
            }
          }
        },
        "aws-cdk-lib.aws_elasticache": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElastiCache"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticache"
            },
            "python": {
              "module": "aws_cdk.aws_elasticache"
            }
          }
        },
        "aws-cdk-lib.aws_elasticbeanstalk": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticBeanstalk"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticbeanstalk"
            },
            "python": {
              "module": "aws_cdk.aws_elasticbeanstalk"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancing": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancing"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancing"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancing"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancingv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancingv2"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancingv2"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancingv2_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancingv2.actions"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancingv2_actions"
            }
          }
        },
        "aws-cdk-lib.aws_elasticloadbalancingv2_targets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Targets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticloadbalancingv2.targets"
            },
            "python": {
              "module": "aws_cdk.aws_elasticloadbalancingv2_targets"
            }
          }
        },
        "aws-cdk-lib.aws_elasticsearch": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Elasticsearch"
            },
            "java": {
              "package": "software.amazon.awscdk.services.elasticsearch"
            },
            "python": {
              "module": "aws_cdk.aws_elasticsearch"
            }
          }
        },
        "aws-cdk-lib.aws_emr": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EMR"
            },
            "java": {
              "package": "software.amazon.awscdk.services.emr"
            },
            "python": {
              "module": "aws_cdk.aws_emr"
            }
          }
        },
        "aws-cdk-lib.aws_emrcontainers": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EMRContainers"
            },
            "java": {
              "package": "software.amazon.awscdk.services.emrcontainers"
            },
            "python": {
              "module": "aws_cdk.aws_emrcontainers"
            }
          }
        },
        "aws-cdk-lib.aws_emrserverless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EMRServerless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.emrserverless"
            },
            "python": {
              "module": "aws_cdk.aws_emrserverless"
            }
          }
        },
        "aws-cdk-lib.aws_entityresolution": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.EntityResolution"
            },
            "java": {
              "package": "software.amazon.awscdk.services.entityresolution"
            },
            "python": {
              "module": "aws_cdk.aws_entityresolution"
            }
          }
        },
        "aws-cdk-lib.aws_events": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Events"
            },
            "java": {
              "package": "software.amazon.awscdk.services.events"
            },
            "python": {
              "module": "aws_cdk.aws_events"
            }
          }
        },
        "aws-cdk-lib.aws_events_targets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Events.Targets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.events.targets"
            },
            "python": {
              "module": "aws_cdk.aws_events_targets"
            }
          }
        },
        "aws-cdk-lib.aws_eventschemas": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.EventSchemas"
            },
            "java": {
              "package": "software.amazon.awscdk.services.eventschemas"
            },
            "python": {
              "module": "aws_cdk.aws_eventschemas"
            }
          }
        },
        "aws-cdk-lib.aws_evidently": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Evidently"
            },
            "java": {
              "package": "software.amazon.awscdk.services.evidently"
            },
            "python": {
              "module": "aws_cdk.aws_evidently"
            }
          }
        },
        "aws-cdk-lib.aws_finspace": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FinSpace"
            },
            "java": {
              "package": "software.amazon.awscdk.services.finspace"
            },
            "python": {
              "module": "aws_cdk.aws_finspace"
            }
          }
        },
        "aws-cdk-lib.aws_fis": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FIS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.fis"
            },
            "python": {
              "module": "aws_cdk.aws_fis"
            }
          }
        },
        "aws-cdk-lib.aws_fms": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FMS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.fms"
            },
            "python": {
              "module": "aws_cdk.aws_fms"
            }
          }
        },
        "aws-cdk-lib.aws_forecast": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Forecast"
            },
            "java": {
              "package": "software.amazon.awscdk.services.forecast"
            },
            "python": {
              "module": "aws_cdk.aws_forecast"
            }
          }
        },
        "aws-cdk-lib.aws_frauddetector": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FraudDetector"
            },
            "java": {
              "package": "software.amazon.awscdk.services.frauddetector"
            },
            "python": {
              "module": "aws_cdk.aws_frauddetector"
            }
          }
        },
        "aws-cdk-lib.aws_fsx": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.FSx"
            },
            "java": {
              "package": "software.amazon.awscdk.services.fsx"
            },
            "python": {
              "module": "aws_cdk.aws_fsx"
            }
          }
        },
        "aws-cdk-lib.aws_gamelift": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GameLift"
            },
            "java": {
              "package": "software.amazon.awscdk.services.gamelift"
            },
            "python": {
              "module": "aws_cdk.aws_gamelift"
            }
          }
        },
        "aws-cdk-lib.aws_gameliftstreams": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.GameLiftStreams"
            },
            "java": {
              "package": "software.amazon.awscdk.services.gameliftstreams"
            },
            "python": {
              "module": "aws_cdk.aws_gameliftstreams"
            }
          }
        },
        "aws-cdk-lib.aws_globalaccelerator": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GlobalAccelerator"
            },
            "java": {
              "package": "software.amazon.awscdk.services.globalaccelerator"
            },
            "python": {
              "module": "aws_cdk.aws_globalaccelerator"
            }
          }
        },
        "aws-cdk-lib.aws_globalaccelerator_endpoints": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GlobalAccelerator.Endpoints"
            },
            "java": {
              "package": "software.amazon.awscdk.services.globalaccelerator.endpoints"
            },
            "python": {
              "module": "aws_cdk.aws_globalaccelerator_endpoints"
            }
          }
        },
        "aws-cdk-lib.aws_glue": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Glue"
            },
            "java": {
              "package": "software.amazon.awscdk.services.glue"
            },
            "python": {
              "module": "aws_cdk.aws_glue"
            }
          }
        },
        "aws-cdk-lib.aws_grafana": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Grafana"
            },
            "java": {
              "package": "software.amazon.awscdk.services.grafana"
            },
            "python": {
              "module": "aws_cdk.aws_grafana"
            }
          }
        },
        "aws-cdk-lib.aws_greengrass": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Greengrass"
            },
            "java": {
              "package": "software.amazon.awscdk.services.greengrass"
            },
            "python": {
              "module": "aws_cdk.aws_greengrass"
            }
          }
        },
        "aws-cdk-lib.aws_greengrassv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GreengrassV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.greengrassv2"
            },
            "python": {
              "module": "aws_cdk.aws_greengrassv2"
            }
          }
        },
        "aws-cdk-lib.aws_groundstation": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GroundStation"
            },
            "java": {
              "package": "software.amazon.awscdk.services.groundstation"
            },
            "python": {
              "module": "aws_cdk.aws_groundstation"
            }
          }
        },
        "aws-cdk-lib.aws_guardduty": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.GuardDuty"
            },
            "java": {
              "package": "software.amazon.awscdk.services.guardduty"
            },
            "python": {
              "module": "aws_cdk.aws_guardduty"
            }
          }
        },
        "aws-cdk-lib.aws_healthimaging": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.HealthImaging"
            },
            "java": {
              "package": "software.amazon.awscdk.services.healthimaging"
            },
            "python": {
              "module": "aws_cdk.aws_healthimaging"
            }
          }
        },
        "aws-cdk-lib.aws_healthlake": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.HealthLake"
            },
            "java": {
              "package": "software.amazon.awscdk.services.healthlake"
            },
            "python": {
              "module": "aws_cdk.aws_healthlake"
            }
          }
        },
        "aws-cdk-lib.aws_iam": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IAM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iam"
            },
            "python": {
              "module": "aws_cdk.aws_iam"
            }
          }
        },
        "aws-cdk-lib.aws_identitystore": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IdentityStore"
            },
            "java": {
              "package": "software.amazon.awscdk.services.identitystore"
            },
            "python": {
              "module": "aws_cdk.aws_identitystore"
            }
          }
        },
        "aws-cdk-lib.aws_imagebuilder": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ImageBuilder"
            },
            "java": {
              "package": "software.amazon.awscdk.services.imagebuilder"
            },
            "python": {
              "module": "aws_cdk.aws_imagebuilder"
            }
          }
        },
        "aws-cdk-lib.aws_inspector": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Inspector"
            },
            "java": {
              "package": "software.amazon.awscdk.services.inspector"
            },
            "python": {
              "module": "aws_cdk.aws_inspector"
            }
          }
        },
        "aws-cdk-lib.aws_inspectorv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.InspectorV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.inspectorv2"
            },
            "python": {
              "module": "aws_cdk.aws_inspectorv2"
            }
          }
        },
        "aws-cdk-lib.aws_internetmonitor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.InternetMonitor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.internetmonitor"
            },
            "python": {
              "module": "aws_cdk.aws_internetmonitor"
            }
          }
        },
        "aws-cdk-lib.aws_invoicing": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Invoicing"
            },
            "java": {
              "package": "software.amazon.awscdk.services.invoicing"
            },
            "python": {
              "module": "aws_cdk.aws_invoicing"
            }
          }
        },
        "aws-cdk-lib.aws_iot": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoT"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iot"
            },
            "python": {
              "module": "aws_cdk.aws_iot"
            }
          }
        },
        "aws-cdk-lib.aws_iotanalytics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTAnalytics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotanalytics"
            },
            "python": {
              "module": "aws_cdk.aws_iotanalytics"
            }
          }
        },
        "aws-cdk-lib.aws_iotcoredeviceadvisor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTCoreDeviceAdvisor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotcoredeviceadvisor"
            },
            "python": {
              "module": "aws_cdk.aws_iotcoredeviceadvisor"
            }
          }
        },
        "aws-cdk-lib.aws_iotevents": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTEvents"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotevents"
            },
            "python": {
              "module": "aws_cdk.aws_iotevents"
            }
          }
        },
        "aws-cdk-lib.aws_iotfleethub": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTFleetHub"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotfleethub"
            },
            "python": {
              "module": "aws_cdk.aws_iotfleethub"
            }
          }
        },
        "aws-cdk-lib.aws_iotfleetwise": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTFleetWise"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotfleetwise"
            },
            "python": {
              "module": "aws_cdk.aws_iotfleetwise"
            }
          }
        },
        "aws-cdk-lib.aws_iotsitewise": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTSiteWise"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotsitewise"
            },
            "python": {
              "module": "aws_cdk.aws_iotsitewise"
            }
          }
        },
        "aws-cdk-lib.aws_iotthingsgraph": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTThingsGraph"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotthingsgraph"
            },
            "python": {
              "module": "aws_cdk.aws_iotthingsgraph"
            }
          }
        },
        "aws-cdk-lib.aws_iottwinmaker": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTTwinMaker"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iottwinmaker"
            },
            "python": {
              "module": "aws_cdk.aws_iottwinmaker"
            }
          }
        },
        "aws-cdk-lib.aws_iotwireless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IoTWireless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.iotwireless"
            },
            "python": {
              "module": "aws_cdk.aws_iotwireless"
            }
          }
        },
        "aws-cdk-lib.aws_ivs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Ivs"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ivs"
            },
            "python": {
              "module": "aws_cdk.aws_ivs"
            }
          }
        },
        "aws-cdk-lib.aws_ivschat": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.IVSChat"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ivschat"
            },
            "python": {
              "module": "aws_cdk.aws_ivschat"
            }
          }
        },
        "aws-cdk-lib.aws_kafkaconnect": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KafkaConnect"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kafkaconnect"
            },
            "python": {
              "module": "aws_cdk.aws_kafkaconnect"
            }
          }
        },
        "aws-cdk-lib.aws_kendra": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Kendra"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kendra"
            },
            "python": {
              "module": "aws_cdk.aws_kendra"
            }
          }
        },
        "aws-cdk-lib.aws_kendraranking": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KendraRanking"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kendraranking"
            },
            "python": {
              "module": "aws_cdk.aws_kendraranking"
            }
          }
        },
        "aws-cdk-lib.aws_kinesis": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Kinesis"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesis"
            },
            "python": {
              "module": "aws_cdk.aws_kinesis"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisanalytics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisAnalytics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisanalytics"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisanalytics"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisanalyticsv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisAnalyticsV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisanalyticsv2"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisanalyticsv2"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisfirehose": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisFirehose"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisfirehose"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisfirehose"
            }
          }
        },
        "aws-cdk-lib.aws_kinesisvideo": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KinesisVideo"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kinesisvideo"
            },
            "python": {
              "module": "aws_cdk.aws_kinesisvideo"
            }
          }
        },
        "aws-cdk-lib.aws_kms": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.KMS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.kms"
            },
            "python": {
              "module": "aws_cdk.aws_kms"
            }
          }
        },
        "aws-cdk-lib.aws_lakeformation": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LakeFormation"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lakeformation"
            },
            "python": {
              "module": "aws_cdk.aws_lakeformation"
            }
          }
        },
        "aws-cdk-lib.aws_lambda": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda"
            },
            "python": {
              "module": "aws_cdk.aws_lambda"
            }
          }
        },
        "aws-cdk-lib.aws_lambda_destinations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda.Destinations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda.destinations"
            },
            "python": {
              "module": "aws_cdk.aws_lambda_destinations"
            }
          }
        },
        "aws-cdk-lib.aws_lambda_event_sources": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda.EventSources"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda.eventsources"
            },
            "python": {
              "module": "aws_cdk.aws_lambda_event_sources"
            }
          }
        },
        "aws-cdk-lib.aws_lambda_nodejs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lambda.Nodejs"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lambda.nodejs"
            },
            "python": {
              "module": "aws_cdk.aws_lambda_nodejs"
            }
          }
        },
        "aws-cdk-lib.aws_launchwizard": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.LaunchWizard"
            },
            "java": {
              "package": "software.amazon.awscdk.services.launchwizard"
            },
            "python": {
              "module": "aws_cdk.aws_launchwizard"
            }
          }
        },
        "aws-cdk-lib.aws_lex": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lex"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lex"
            },
            "python": {
              "module": "aws_cdk.aws_lex"
            }
          }
        },
        "aws-cdk-lib.aws_licensemanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LicenseManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.licensemanager"
            },
            "python": {
              "module": "aws_cdk.aws_licensemanager"
            }
          }
        },
        "aws-cdk-lib.aws_lightsail": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Lightsail"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lightsail"
            },
            "python": {
              "module": "aws_cdk.aws_lightsail"
            }
          }
        },
        "aws-cdk-lib.aws_location": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Location"
            },
            "java": {
              "package": "software.amazon.awscdk.services.location"
            },
            "python": {
              "module": "aws_cdk.aws_location"
            }
          }
        },
        "aws-cdk-lib.aws_logs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Logs"
            },
            "java": {
              "package": "software.amazon.awscdk.services.logs"
            },
            "python": {
              "module": "aws_cdk.aws_logs"
            }
          }
        },
        "aws-cdk-lib.aws_logs_destinations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Logs.Destinations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.logs.destinations"
            },
            "python": {
              "module": "aws_cdk.aws_logs_destinations"
            }
          }
        },
        "aws-cdk-lib.aws_lookoutequipment": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LookoutEquipment"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lookoutequipment"
            },
            "python": {
              "module": "aws_cdk.aws_lookoutequipment"
            }
          }
        },
        "aws-cdk-lib.aws_lookoutmetrics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LookoutMetrics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lookoutmetrics"
            },
            "python": {
              "module": "aws_cdk.aws_lookoutmetrics"
            }
          }
        },
        "aws-cdk-lib.aws_lookoutvision": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.LookoutVision"
            },
            "java": {
              "package": "software.amazon.awscdk.services.lookoutvision"
            },
            "python": {
              "module": "aws_cdk.aws_lookoutvision"
            }
          }
        },
        "aws-cdk-lib.aws_m2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.M2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.m2"
            },
            "python": {
              "module": "aws_cdk.aws_m2"
            }
          }
        },
        "aws-cdk-lib.aws_macie": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Macie"
            },
            "java": {
              "package": "software.amazon.awscdk.services.macie"
            },
            "python": {
              "module": "aws_cdk.aws_macie"
            }
          }
        },
        "aws-cdk-lib.aws_managedblockchain": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ManagedBlockchain"
            },
            "java": {
              "package": "software.amazon.awscdk.services.managedblockchain"
            },
            "python": {
              "module": "aws_cdk.aws_managedblockchain"
            }
          }
        },
        "aws-cdk-lib.aws_mediaconnect": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaConnect"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediaconnect"
            },
            "python": {
              "module": "aws_cdk.aws_mediaconnect"
            }
          }
        },
        "aws-cdk-lib.aws_mediaconvert": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaConvert"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediaconvert"
            },
            "python": {
              "module": "aws_cdk.aws_mediaconvert"
            }
          }
        },
        "aws-cdk-lib.aws_medialive": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaLive"
            },
            "java": {
              "package": "software.amazon.awscdk.services.medialive"
            },
            "python": {
              "module": "aws_cdk.aws_medialive"
            }
          }
        },
        "aws-cdk-lib.aws_mediapackage": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaPackage"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediapackage"
            },
            "python": {
              "module": "aws_cdk.aws_mediapackage"
            }
          }
        },
        "aws-cdk-lib.aws_mediapackagev2": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.MediaPackageV2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediapackagev2"
            },
            "python": {
              "module": "aws_cdk.aws_mediapackagev2"
            }
          }
        },
        "aws-cdk-lib.aws_mediastore": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaStore"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediastore"
            },
            "python": {
              "module": "aws_cdk.aws_mediastore"
            }
          }
        },
        "aws-cdk-lib.aws_mediatailor": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MediaTailor"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mediatailor"
            },
            "python": {
              "module": "aws_cdk.aws_mediatailor"
            }
          }
        },
        "aws-cdk-lib.aws_memorydb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MemoryDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.memorydb"
            },
            "python": {
              "module": "aws_cdk.aws_memorydb"
            }
          }
        },
        "aws-cdk-lib.aws_msk": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MSK"
            },
            "java": {
              "package": "software.amazon.awscdk.services.msk"
            },
            "python": {
              "module": "aws_cdk.aws_msk"
            }
          }
        },
        "aws-cdk-lib.aws_mwaa": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.MWAA"
            },
            "java": {
              "package": "software.amazon.awscdk.services.mwaa"
            },
            "python": {
              "module": "aws_cdk.aws_mwaa"
            }
          }
        },
        "aws-cdk-lib.aws_neptune": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Neptune"
            },
            "java": {
              "package": "software.amazon.awscdk.services.neptune"
            },
            "python": {
              "module": "aws_cdk.aws_neptune"
            }
          }
        },
        "aws-cdk-lib.aws_neptunegraph": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.NeptuneGraph"
            },
            "java": {
              "package": "software.amazon.awscdk.services.neptunegraph"
            },
            "python": {
              "module": "aws_cdk.aws_neptunegraph"
            }
          }
        },
        "aws-cdk-lib.aws_networkfirewall": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.NetworkFirewall"
            },
            "java": {
              "package": "software.amazon.awscdk.services.networkfirewall"
            },
            "python": {
              "module": "aws_cdk.aws_networkfirewall"
            }
          }
        },
        "aws-cdk-lib.aws_networkmanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.NetworkManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.networkmanager"
            },
            "python": {
              "module": "aws_cdk.aws_networkmanager"
            }
          }
        },
        "aws-cdk-lib.aws_nimblestudio": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.NimbleStudio"
            },
            "java": {
              "package": "software.amazon.awscdk.services.nimblestudio"
            },
            "python": {
              "module": "aws_cdk.aws_nimblestudio"
            }
          }
        },
        "aws-cdk-lib.aws_notifications": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Notifications"
            },
            "java": {
              "package": "software.amazon.awscdk.services.notifications"
            },
            "python": {
              "module": "aws_cdk.aws_notifications"
            }
          }
        },
        "aws-cdk-lib.aws_notificationscontacts": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.NotificationsContacts"
            },
            "java": {
              "package": "software.amazon.awscdk.services.notificationscontacts"
            },
            "python": {
              "module": "aws_cdk.aws_notificationscontacts"
            }
          }
        },
        "aws-cdk-lib.aws_oam": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Oam"
            },
            "java": {
              "package": "software.amazon.awscdk.services.oam"
            },
            "python": {
              "module": "aws_cdk.aws_oam"
            }
          }
        },
        "aws-cdk-lib.aws_omics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Omics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.omics"
            },
            "python": {
              "module": "aws_cdk.aws_omics"
            }
          }
        },
        "aws-cdk-lib.aws_opensearchserverless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpenSearchServerless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opensearchserverless"
            },
            "python": {
              "module": "aws_cdk.aws_opensearchserverless"
            }
          }
        },
        "aws-cdk-lib.aws_opensearchservice": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpenSearchService"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opensearchservice"
            },
            "python": {
              "module": "aws_cdk.aws_opensearchservice"
            }
          }
        },
        "aws-cdk-lib.aws_opsworks": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpsWorks"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opsworks"
            },
            "python": {
              "module": "aws_cdk.aws_opsworks"
            }
          }
        },
        "aws-cdk-lib.aws_opsworkscm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.OpsWorksCM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.opsworkscm"
            },
            "python": {
              "module": "aws_cdk.aws_opsworkscm"
            }
          }
        },
        "aws-cdk-lib.aws_organizations": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Organizations"
            },
            "java": {
              "package": "software.amazon.awscdk.services.organizations"
            },
            "python": {
              "module": "aws_cdk.aws_organizations"
            }
          }
        },
        "aws-cdk-lib.aws_osis": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.OSIS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.osis"
            },
            "python": {
              "module": "aws_cdk.aws_osis"
            }
          }
        },
        "aws-cdk-lib.aws_panorama": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Panorama"
            },
            "java": {
              "package": "software.amazon.awscdk.services.panorama"
            },
            "python": {
              "module": "aws_cdk.aws_panorama"
            }
          }
        },
        "aws-cdk-lib.aws_paymentcryptography": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.PaymentCryptography"
            },
            "java": {
              "package": "software.amazon.awscdk.services.paymentcryptography"
            },
            "python": {
              "module": "aws_cdk.aws_paymentcryptography"
            }
          }
        },
        "aws-cdk-lib.aws_pcaconnectorad": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.PCAConnectorAD"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pcaconnectorad"
            },
            "python": {
              "module": "aws_cdk.aws_pcaconnectorad"
            }
          }
        },
        "aws-cdk-lib.aws_pcaconnectorscep": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.PCAConnectorSCEP"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pcaconnectorscep"
            },
            "python": {
              "module": "aws_cdk.aws_pcaconnectorscep"
            }
          }
        },
        "aws-cdk-lib.aws_pcs": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.PCS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pcs"
            },
            "python": {
              "module": "aws_cdk.aws_pcs"
            }
          }
        },
        "aws-cdk-lib.aws_personalize": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Personalize"
            },
            "java": {
              "package": "software.amazon.awscdk.services.personalize"
            },
            "python": {
              "module": "aws_cdk.aws_personalize"
            }
          }
        },
        "aws-cdk-lib.aws_pinpoint": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Pinpoint"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pinpoint"
            },
            "python": {
              "module": "aws_cdk.aws_pinpoint"
            }
          }
        },
        "aws-cdk-lib.aws_pinpointemail": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.PinpointEmail"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pinpointemail"
            },
            "python": {
              "module": "aws_cdk.aws_pinpointemail"
            }
          }
        },
        "aws-cdk-lib.aws_pipes": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Pipes"
            },
            "java": {
              "package": "software.amazon.awscdk.services.pipes"
            },
            "python": {
              "module": "aws_cdk.aws_pipes"
            }
          }
        },
        "aws-cdk-lib.aws_proton": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Proton"
            },
            "java": {
              "package": "software.amazon.awscdk.services.proton"
            },
            "python": {
              "module": "aws_cdk.aws_proton"
            }
          }
        },
        "aws-cdk-lib.aws_qbusiness": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.QBusiness"
            },
            "java": {
              "package": "software.amazon.awscdk.services.qbusiness"
            },
            "python": {
              "module": "aws_cdk.aws_qbusiness"
            }
          }
        },
        "aws-cdk-lib.aws_qldb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.QLDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.qldb"
            },
            "python": {
              "module": "aws_cdk.aws_qldb"
            }
          }
        },
        "aws-cdk-lib.aws_quicksight": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.QuickSight"
            },
            "java": {
              "package": "software.amazon.awscdk.services.quicksight"
            },
            "python": {
              "module": "aws_cdk.aws_quicksight"
            }
          }
        },
        "aws-cdk-lib.aws_ram": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RAM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ram"
            },
            "python": {
              "module": "aws_cdk.aws_ram"
            }
          }
        },
        "aws-cdk-lib.aws_rbin": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Rbin"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rbin"
            },
            "python": {
              "module": "aws_cdk.aws_rbin"
            }
          }
        },
        "aws-cdk-lib.aws_rds": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RDS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rds"
            },
            "python": {
              "module": "aws_cdk.aws_rds"
            }
          }
        },
        "aws-cdk-lib.aws_redshift": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Redshift"
            },
            "java": {
              "package": "software.amazon.awscdk.services.redshift"
            },
            "python": {
              "module": "aws_cdk.aws_redshift"
            }
          }
        },
        "aws-cdk-lib.aws_redshiftserverless": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RedshiftServerless"
            },
            "java": {
              "package": "software.amazon.awscdk.services.redshiftserverless"
            },
            "python": {
              "module": "aws_cdk.aws_redshiftserverless"
            }
          }
        },
        "aws-cdk-lib.aws_refactorspaces": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RefactorSpaces"
            },
            "java": {
              "package": "software.amazon.awscdk.services.refactorspaces"
            },
            "python": {
              "module": "aws_cdk.aws_refactorspaces"
            }
          }
        },
        "aws-cdk-lib.aws_rekognition": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Rekognition"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rekognition"
            },
            "python": {
              "module": "aws_cdk.aws_rekognition"
            }
          }
        },
        "aws-cdk-lib.aws_resiliencehub": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ResilienceHub"
            },
            "java": {
              "package": "software.amazon.awscdk.services.resiliencehub"
            },
            "python": {
              "module": "aws_cdk.aws_resiliencehub"
            }
          }
        },
        "aws-cdk-lib.aws_resourceexplorer2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ResourceExplorer2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.resourceexplorer2"
            },
            "python": {
              "module": "aws_cdk.aws_resourceexplorer2"
            }
          }
        },
        "aws-cdk-lib.aws_resourcegroups": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ResourceGroups"
            },
            "java": {
              "package": "software.amazon.awscdk.services.resourcegroups"
            },
            "python": {
              "module": "aws_cdk.aws_resourcegroups"
            }
          }
        },
        "aws-cdk-lib.aws_robomaker": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RoboMaker"
            },
            "java": {
              "package": "software.amazon.awscdk.services.robomaker"
            },
            "python": {
              "module": "aws_cdk.aws_robomaker"
            }
          }
        },
        "aws-cdk-lib.aws_rolesanywhere": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RolesAnywhere"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rolesanywhere"
            },
            "python": {
              "module": "aws_cdk.aws_rolesanywhere"
            }
          }
        },
        "aws-cdk-lib.aws_route53": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53"
            },
            "python": {
              "module": "aws_cdk.aws_route53"
            }
          }
        },
        "aws-cdk-lib.aws_route53_patterns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53.Patterns"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53.patterns"
            },
            "python": {
              "module": "aws_cdk.aws_route53_patterns"
            }
          }
        },
        "aws-cdk-lib.aws_route53_targets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53.Targets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53.targets"
            },
            "python": {
              "module": "aws_cdk.aws_route53_targets"
            }
          }
        },
        "aws-cdk-lib.aws_route53profiles": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Route53Profiles"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53profiles"
            },
            "python": {
              "module": "aws_cdk.aws_route53profiles"
            }
          }
        },
        "aws-cdk-lib.aws_route53recoverycontrol": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53RecoveryControl"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53recoverycontrol"
            },
            "python": {
              "module": "aws_cdk.aws_route53recoverycontrol"
            }
          }
        },
        "aws-cdk-lib.aws_route53recoveryreadiness": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53RecoveryReadiness"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53recoveryreadiness"
            },
            "python": {
              "module": "aws_cdk.aws_route53recoveryreadiness"
            }
          }
        },
        "aws-cdk-lib.aws_route53resolver": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Route53Resolver"
            },
            "java": {
              "package": "software.amazon.awscdk.services.route53resolver"
            },
            "python": {
              "module": "aws_cdk.aws_route53resolver"
            }
          }
        },
        "aws-cdk-lib.aws_rum": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.RUM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.rum"
            },
            "python": {
              "module": "aws_cdk.aws_rum"
            }
          }
        },
        "aws-cdk-lib.aws_s3": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3"
            },
            "python": {
              "module": "aws_cdk.aws_s3"
            }
          }
        },
        "aws-cdk-lib.aws_s3_assets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3.Assets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3.assets"
            },
            "python": {
              "module": "aws_cdk.aws_s3_assets"
            }
          }
        },
        "aws-cdk-lib.aws_s3_deployment": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3.Deployment"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3.deployment"
            },
            "python": {
              "module": "aws_cdk.aws_s3_deployment"
            }
          }
        },
        "aws-cdk-lib.aws_s3_notifications": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3.Notifications"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3.notifications"
            },
            "python": {
              "module": "aws_cdk.aws_s3_notifications"
            }
          }
        },
        "aws-cdk-lib.aws_s3express": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.S3Express"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3express"
            },
            "python": {
              "module": "aws_cdk.aws_s3express"
            }
          }
        },
        "aws-cdk-lib.aws_s3objectlambda": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3ObjectLambda"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3objectlambda"
            },
            "python": {
              "module": "aws_cdk.aws_s3objectlambda"
            }
          }
        },
        "aws-cdk-lib.aws_s3outposts": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.S3Outposts"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3outposts"
            },
            "python": {
              "module": "aws_cdk.aws_s3outposts"
            }
          }
        },
        "aws-cdk-lib.aws_s3tables": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.S3Tables"
            },
            "java": {
              "package": "software.amazon.awscdk.services.s3tables"
            },
            "python": {
              "module": "aws_cdk.aws_s3tables"
            }
          }
        },
        "aws-cdk-lib.aws_sagemaker": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Sagemaker"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sagemaker"
            },
            "python": {
              "module": "aws_cdk.aws_sagemaker"
            }
          }
        },
        "aws-cdk-lib.aws_sam": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SAM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sam"
            },
            "python": {
              "module": "aws_cdk.aws_sam"
            }
          }
        },
        "aws-cdk-lib.aws_scheduler": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Scheduler"
            },
            "java": {
              "package": "software.amazon.awscdk.services.scheduler"
            },
            "python": {
              "module": "aws_cdk.aws_scheduler"
            }
          }
        },
        "aws-cdk-lib.aws_scheduler_targets": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Scheduler.Targets"
            },
            "java": {
              "package": "software.amazon.awscdk.services.scheduler.targets"
            },
            "python": {
              "module": "aws_cdk.aws_scheduler_targets"
            }
          }
        },
        "aws-cdk-lib.aws_sdb": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SDB"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sdb"
            },
            "python": {
              "module": "aws_cdk.aws_sdb"
            }
          }
        },
        "aws-cdk-lib.aws_secretsmanager": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SecretsManager"
            },
            "java": {
              "package": "software.amazon.awscdk.services.secretsmanager"
            },
            "python": {
              "module": "aws_cdk.aws_secretsmanager"
            }
          }
        },
        "aws-cdk-lib.aws_securityhub": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SecurityHub"
            },
            "java": {
              "package": "software.amazon.awscdk.services.securityhub"
            },
            "python": {
              "module": "aws_cdk.aws_securityhub"
            }
          }
        },
        "aws-cdk-lib.aws_securitylake": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.SecurityLake"
            },
            "java": {
              "package": "software.amazon.awscdk.services.securitylake"
            },
            "python": {
              "module": "aws_cdk.aws_securitylake"
            }
          }
        },
        "aws-cdk-lib.aws_servicecatalog": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Servicecatalog"
            },
            "java": {
              "package": "software.amazon.awscdk.services.servicecatalog"
            },
            "python": {
              "module": "aws_cdk.aws_servicecatalog"
            }
          }
        },
        "aws-cdk-lib.aws_servicecatalogappregistry": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Servicecatalogappregistry"
            },
            "java": {
              "package": "software.amazon.awscdk.services.servicecatalogappregistry"
            },
            "python": {
              "module": "aws_cdk.aws_servicecatalogappregistry"
            }
          }
        },
        "aws-cdk-lib.aws_servicediscovery": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.ServiceDiscovery"
            },
            "java": {
              "package": "software.amazon.awscdk.services.servicediscovery"
            },
            "python": {
              "module": "aws_cdk.aws_servicediscovery"
            }
          }
        },
        "aws-cdk-lib.aws_ses": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SES"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ses"
            },
            "python": {
              "module": "aws_cdk.aws_ses"
            }
          }
        },
        "aws-cdk-lib.aws_ses_actions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SES.Actions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ses.actions"
            },
            "python": {
              "module": "aws_cdk.aws_ses_actions"
            }
          }
        },
        "aws-cdk-lib.aws_shield": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.Shield"
            },
            "java": {
              "package": "software.amazon.awscdk.services.shield"
            },
            "python": {
              "module": "aws_cdk.aws_shield"
            }
          }
        },
        "aws-cdk-lib.aws_signer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Signer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.signer"
            },
            "python": {
              "module": "aws_cdk.aws_signer"
            }
          }
        },
        "aws-cdk-lib.aws_simspaceweaver": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SimSpaceWeaver"
            },
            "java": {
              "package": "software.amazon.awscdk.services.simspaceweaver"
            },
            "python": {
              "module": "aws_cdk.aws_simspaceweaver"
            }
          }
        },
        "aws-cdk-lib.aws_sns": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SNS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sns"
            },
            "python": {
              "module": "aws_cdk.aws_sns"
            }
          }
        },
        "aws-cdk-lib.aws_sns_subscriptions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SNS.Subscriptions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sns.subscriptions"
            },
            "python": {
              "module": "aws_cdk.aws_sns_subscriptions"
            }
          }
        },
        "aws-cdk-lib.aws_sqs": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SQS"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sqs"
            },
            "python": {
              "module": "aws_cdk.aws_sqs"
            }
          }
        },
        "aws-cdk-lib.aws_ssm": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSM"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssm"
            },
            "python": {
              "module": "aws_cdk.aws_ssm"
            }
          }
        },
        "aws-cdk-lib.aws_ssmcontacts": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSMContacts"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssmcontacts"
            },
            "python": {
              "module": "aws_cdk.aws_ssmcontacts"
            }
          }
        },
        "aws-cdk-lib.aws_ssmguiconnect": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.SSMGuiConnect"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssmguiconnect"
            },
            "python": {
              "module": "aws_cdk.aws_ssmguiconnect"
            }
          }
        },
        "aws-cdk-lib.aws_ssmincidents": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSMIncidents"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssmincidents"
            },
            "python": {
              "module": "aws_cdk.aws_ssmincidents"
            }
          }
        },
        "aws-cdk-lib.aws_ssmquicksetup": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.SSMQuickSetup"
            },
            "java": {
              "package": "software.amazon.awscdk.services.ssmquicksetup"
            },
            "python": {
              "module": "aws_cdk.aws_ssmquicksetup"
            }
          }
        },
        "aws-cdk-lib.aws_sso": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SSO"
            },
            "java": {
              "package": "software.amazon.awscdk.services.sso"
            },
            "python": {
              "module": "aws_cdk.aws_sso"
            }
          }
        },
        "aws-cdk-lib.aws_stepfunctions": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.StepFunctions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.stepfunctions"
            },
            "python": {
              "module": "aws_cdk.aws_stepfunctions"
            }
          }
        },
        "aws-cdk-lib.aws_stepfunctions_tasks": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.StepFunctions.Tasks"
            },
            "java": {
              "package": "software.amazon.awscdk.services.stepfunctions.tasks"
            },
            "python": {
              "module": "aws_cdk.aws_stepfunctions_tasks"
            }
          }
        },
        "aws-cdk-lib.aws_supportapp": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SupportApp"
            },
            "java": {
              "package": "software.amazon.awscdk.services.supportapp"
            },
            "python": {
              "module": "aws_cdk.aws_supportapp"
            }
          }
        },
        "aws-cdk-lib.aws_synthetics": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Synthetics"
            },
            "java": {
              "package": "software.amazon.awscdk.services.synthetics"
            },
            "python": {
              "module": "aws_cdk.aws_synthetics"
            }
          }
        },
        "aws-cdk-lib.aws_systemsmanagersap": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.SystemsManagerSAP"
            },
            "java": {
              "package": "software.amazon.awscdk.services.systemsmanagersap"
            },
            "python": {
              "module": "aws_cdk.aws_systemsmanagersap"
            }
          }
        },
        "aws-cdk-lib.aws_timestream": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Timestream"
            },
            "java": {
              "package": "software.amazon.awscdk.services.timestream"
            },
            "python": {
              "module": "aws_cdk.aws_timestream"
            }
          }
        },
        "aws-cdk-lib.aws_transfer": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Transfer"
            },
            "java": {
              "package": "software.amazon.awscdk.services.transfer"
            },
            "python": {
              "module": "aws_cdk.aws_transfer"
            }
          }
        },
        "aws-cdk-lib.aws_verifiedpermissions": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.VerifiedPermissions"
            },
            "java": {
              "package": "software.amazon.awscdk.services.verifiedpermissions"
            },
            "python": {
              "module": "aws_cdk.aws_verifiedpermissions"
            }
          }
        },
        "aws-cdk-lib.aws_voiceid": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.VoiceID"
            },
            "java": {
              "package": "software.amazon.awscdk.services.voiceid"
            },
            "python": {
              "module": "aws_cdk.aws_voiceid"
            }
          }
        },
        "aws-cdk-lib.aws_vpclattice": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.VpcLattice"
            },
            "java": {
              "package": "software.amazon.awscdk.services.vpclattice"
            },
            "python": {
              "module": "aws_cdk.aws_vpclattice"
            }
          }
        },
        "aws-cdk-lib.aws_waf": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WAF"
            },
            "java": {
              "package": "software.amazon.awscdk.services.waf"
            },
            "python": {
              "module": "aws_cdk.aws_waf"
            }
          }
        },
        "aws-cdk-lib.aws_wafregional": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WAFRegional"
            },
            "java": {
              "package": "software.amazon.awscdk.services.waf.regional"
            },
            "python": {
              "module": "aws_cdk.aws_wafregional"
            }
          }
        },
        "aws-cdk-lib.aws_wafv2": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WAFv2"
            },
            "java": {
              "package": "software.amazon.awscdk.services.wafv2"
            },
            "python": {
              "module": "aws_cdk.aws_wafv2"
            }
          }
        },
        "aws-cdk-lib.aws_wisdom": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.Wisdom"
            },
            "java": {
              "package": "software.amazon.awscdk.services.wisdom"
            },
            "python": {
              "module": "aws_cdk.aws_wisdom"
            }
          }
        },
        "aws-cdk-lib.aws_workspaces": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.WorkSpaces"
            },
            "java": {
              "package": "software.amazon.awscdk.services.workspaces"
            },
            "python": {
              "module": "aws_cdk.aws_workspaces"
            }
          }
        },
        "aws-cdk-lib.aws_workspacesthinclient": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.WorkSpacesThinClient"
            },
            "java": {
              "package": "software.amazon.awscdk.services.workspacesthinclient"
            },
            "python": {
              "module": "aws_cdk.aws_workspacesthinclient"
            }
          }
        },
        "aws-cdk-lib.aws_workspacesweb": {
          "targets": {
            "dotnet": {
              "package": "Amazon.CDK.AWS.WorkSpacesWeb"
            },
            "java": {
              "package": "software.amazon.awscdk.services.workspacesweb"
            },
            "python": {
              "module": "aws_cdk.aws_workspacesweb"
            }
          }
        },
        "aws-cdk-lib.aws_xray": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.AWS.XRay"
            },
            "java": {
              "package": "software.amazon.awscdk.services.xray"
            },
            "python": {
              "module": "aws_cdk.aws_xray"
            }
          }
        },
        "aws-cdk-lib.cloud_assembly_schema": {},
        "aws-cdk-lib.cloudformation_include": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.CloudFormation.Include"
            },
            "java": {
              "package": "software.amazon.awscdk.cloudformation.include"
            },
            "python": {
              "module": "aws_cdk.cloudformation_include"
            }
          }
        },
        "aws-cdk-lib.custom_resources": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.CustomResources"
            },
            "java": {
              "package": "software.amazon.awscdk.customresources"
            },
            "python": {
              "module": "aws_cdk.custom_resources"
            }
          }
        },
        "aws-cdk-lib.cx_api": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.CXAPI"
            },
            "java": {
              "package": "software.amazon.awscdk.cxapi"
            },
            "python": {
              "module": "aws_cdk.cx_api"
            }
          }
        },
        "aws-cdk-lib.lambda_layer_awscli": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.LambdaLayer.AwsCli"
            },
            "java": {
              "package": "software.amazon.awscdk.lambdalayer.awscli"
            },
            "python": {
              "module": "aws_cdk.lambda_layer_awscli"
            }
          }
        },
        "aws-cdk-lib.lambda_layer_node_proxy_agent": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.LambdaLayer.NodeProxyAgent"
            },
            "java": {
              "package": "software.amazon.awscdk.lambda.layer.node.proxy.agent"
            },
            "python": {
              "module": "aws_cdk.lambda_layer_node_proxy_agent"
            }
          }
        },
        "aws-cdk-lib.pipelines": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Pipelines"
            },
            "java": {
              "package": "software.amazon.awscdk.pipelines"
            },
            "python": {
              "module": "aws_cdk.pipelines"
            }
          }
        },
        "aws-cdk-lib.region_info": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.RegionInfo"
            },
            "java": {
              "package": "software.amazon.awscdk.regioninfo"
            },
            "python": {
              "module": "aws_cdk.region_info"
            }
          }
        },
        "aws-cdk-lib.triggers": {
          "targets": {
            "dotnet": {
              "namespace": "Amazon.CDK.Triggers"
            },
            "java": {
              "package": "software.amazon.awscdk.triggers"
            },
            "python": {
              "module": "aws_cdk.triggers"
            }
          }
        }
      },
      "targets": {
        "dotnet": {
          "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png",
          "namespace": "Amazon.CDK",
          "packageId": "Amazon.CDK.Lib"
        },
        "go": {
          "moduleName": "github.com/aws/aws-cdk-go",
          "packageName": "awscdk"
        },
        "java": {
          "maven": {
            "artifactId": "aws-cdk-lib",
            "groupId": "software.amazon.awscdk"
          },
          "package": "software.amazon.awscdk"
        },
        "js": {
          "npm": "aws-cdk-lib"
        },
        "python": {
          "distName": "aws-cdk-lib",
          "module": "aws_cdk"
        }
      }
    },
    "constructs": {
      "targets": {
        "dotnet": {
          "namespace": "Constructs",
          "packageId": "Constructs"
        },
        "go": {
          "moduleName": "github.com/aws/constructs-go"
        },
        "java": {
          "maven": {
            "artifactId": "constructs",
            "groupId": "software.constructs"
          },
          "package": "software.constructs"
        },
        "js": {
          "npm": "constructs"
        },
        "python": {
          "distName": "constructs",
          "module": "constructs"
        }
      }
    }
  },
  "description": "Deploy Next.js apps on AWS with CDK",
  "docs": {
    "stability": "stable"
  },
  "homepage": "https://github.com/cdklabs/cdk-nextjs.git",
  "jsiiVersion": "5.8.17 (build 7212fc3)",
  "keywords": [
    "aws",
    "aws-cdk",
    "cdk",
    "next",
    "next.js",
    "nextjs"
  ],
  "license": "Apache-2.0",
  "metadata": {
    "jsii": {
      "pacmak": {
        "hasDefaultInterfaces": true
      }
    },
    "tscRootDir": "src"
  },
  "name": "cdk-nextjs",
  "readme": {
    "markdown": "![Version](https://img.shields.io/github/v/release/cdklabs/cdk-nextjs)\n[![npm version](https://img.shields.io/npm/v/cdk-nextjs.svg?style=flat-square)](https://www.npmjs.org/package/cdk-nextjs)\n![License](https://img.shields.io/github/license/cdklabs/cdk-nextjs)\n\n# CDK Next.js Construct Library\n\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n![cdk-constructs: Experimental](https://img.shields.io/badge/cdk--constructs-experimental-important.svg?style=for-the-badge)\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nDeploy [Next.js](https://nextjs.org/) apps on [AWS](https://aws.amazon.com/) with the [AWS CDK](https://aws.amazon.com/cdk/).\n\n## Features\n\n- Supports all features of Next.js App and Pages Router for [Node.js Runtime](https://nextjs.org/docs/app/building-your-application/rendering/edge-and-nodejs-runtimes#nodejs-runtime). One exception is `NextjsGlobalFunctions` does not currently support [ISR](https://nextjs.org/docs/app/guides/incremental-static-regeneration) - waiting for [Official Next.js Deployment Adapters API](https://github.com/vercel/next.js/discussions/77740).\n- Choose your AWS architecture for Next.js with the supported constructs: `NextjsGlobalFunctions`, `NextjsGlobalContainers`, `NextjsRegionalContainers`, `NextjsRegionalFunctions`.\n- Global Content Delivery Network (CDN) built with [Amazon CloudFront](https://aws.amazon.com/cloudfront/) to deliver content with low latency and high transfer speeds.\n- Serverless functions powered by [AWS Lambda](https://aws.amazon.com/lambda/) or serverless containers powered by [AWS Fargate](https://aws.amazon.com/fargate/).\n- Static assets (JS, CSS, public folder) are stored and served from [Amazon Simple Storage Service (S3)](https://aws.amazon.com/s3/) for global constructs to decrease latency and reduce compute costs.\n- [Optimized images](https://nextjs.org/docs/pages/building-your-application/optimizing/images), [data cache](https://nextjs.org/docs/app/building-your-application/caching#data-cache), and [full route cache](https://nextjs.org/docs/app/building-your-application/caching#full-route-cache) are shared across compute with [Amazon Elastic File System (EFS)](https://aws.amazon.com/efs/).\n- Customize every construct via `overrides`.\n- AWS security and operational best practices are utilized, guided by [cdk-nag](https://github.com/cdklabs/cdk-nag).\n- First class support for [monorepos](https://monorepo.tools/).\n- [AWS GovCloud (US)](https://aws.amazon.com/govcloud-us) compatible (with `NextjsRegionalContainers`).\n\n## Getting Started\n\n1. If you don’t have a Next.js project yet, follow [these steps](https://nextjs.org/docs/getting-started) to create one.\n1. Install [Docker](https://www.docker.com/). We recommend [Rancher Desktop](https://rancherdesktop.io/) with dockerd (moby) container engine enabled.\n1. Install [Node.js](https://nodejs.org/en). We recommend the long term support (LTS) version.\n1. Set your [next.config.js](https://nextjs.org/docs/pages/api-reference/next-config-js) [output](https://nextjs.org/docs/pages/api-reference/next-config-js/output) key to `\"standalone\"`. Learn more here about [Standalone Output](https://nextjs.org/docs/pages/api-reference/next-config-js/output#automatically-copying-traced-files).\n1. Setup [AWS Cloud Development Kit](https://docs.aws.amazon.com/cdk/v2/guide/home.html) app.\n1. Install the construct package: `npm install cdk-nextjs`\n1. `cdk deploy`\n1. Visit URL printed in terminal (CloudFormation Output) to view your Next.js app!\n\n## Basic Example CDK App\n\n```ts\nimport { App, Stack, StackProps } from \"aws-cdk-lib\";\nimport { Construct } from \"constructs\";\nimport { NextjsGlobalFunctions } from \"cdk-nextjs\";\nimport { join } from \"node:path\";\n\nclass NextjsStack extends Stack {\n  constructor(scope: Construct, id: string, props?: StackProps) {\n    super(scope, id, props);\n    new NextjsGlobalFunctions(this, \"Nextjs\", {\n      healthCheckPath: \"/api/health\",\n      buildContext: join(import.meta.dirname, \"..\"),\n    });\n  }\n}\n\nconst app = new App();\n\nnew NextjsStack(app, \"nextjs\");\n```\n\nSee [examples/](./examples/) for more usage examples.\n\n## Architecture\n\n### `NextjsGlobalFunctions`\n\nArchitecture includes [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) Functions to respond to dynamic requests and [CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html) Distribution to globally serve requests and distribute static assets. Use this construct when you have unpredictable traffic, can afford occasional latency (i.e. cold starts - [typically 1% of production traffic](https://aws.amazon.com/blogs/compute/operating-lambda-performance-optimization-part-1/)), and/or want the most granular pricing model. ([code](./src/root-constructs/nextjs-global-functions.ts))\n\n![NextjsGlobalFunctions](./docs/cdk-nextjs-NextjsGlobalFunctions.png)\n\n### `NextjsGlobalContainers`\n\nArchitecture includes [ECS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html) containers to respond to dynamic requests and [CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html) Distribution to globally serve requests and distribute static assets. Use this option when you have predictable traffic, need the lowest latency, and/or can afford a less granular pricing model. ([code](./src/root-constructs/nextjs-global-containers.ts))\n\n![NextjsGlobalContainers](./docs/cdk-nextjs-NextjsGlobalContainers.png)\n\n### `NextjsRegionalContainers`\n\nArchitecture includes [ECS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html) containers to respond to dynamic requests and [Application Load Balancer](https://aws.amazon.com/elasticloadbalancing/application-load-balancer/) to regionally serve requests. Use this options when you cannot use Amazon CloudFront (i.e. [AWS GovCloud](https://aws.amazon.com/govcloud-us/?whats-new.sort-by=item.additionalFields.postDateTime&whats-new.sort-order=desc)). ([code](./src/root-constructs/nextjs-regional-containers.ts#L41))\n\n![NextjsRegionalContainers](./docs/cdk-nextjs-NextjsRegionalContainers.png)\n\n### `NextjsRegionalFunctions`\n\nArchitecture includes [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) Functions to respond to dynamic requests and [API Gateway REST API](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-rest-api.html) to regionally serve requests and distribute static assets. Use this options when you cannot use Amazon CloudFront (i.e. [AWS GovCloud](https://aws.amazon.com/govcloud-us/?whats-new.sort-by=item.additionalFields.postDateTime&whats-new.sort-order=desc)). ([code](./src/root-constructs/nextjs-regional-functions.ts))\n\n![NextjsRegionalFunctions](./docs/cdk-nextjs-NextjsRegionalFunctions.png)\n\n## Why\n\nThe simplest path to deploy Next.js is on [Vercel](https://vercel.com/) - the Platform-as-a-Service company behind Next.js. However, deploying to Vercel can be expensive and some developers want all of their workloads running _directly_ on AWS. Developers can deploy Next.js on AWS through [AWS Amplify Hosting](https://docs.aws.amazon.com/amplify/latest/userguide/ssr-Amplifysupport.html), but Amplify does not support all Next.js features and manages AWS resources for you so they cannot be customized. If Amplify meets your requirements we recommend you use it, but if you want to use all Next.js features or want more visibility into the AWS resources then this construct is for you.\n\n## Design Principles\n\n- Treat Next.js as black box. Minimize reliance on Next.js internal APIs to reduce chance of incompatibility between this construct and future versions of Next.js.\n- Security first.\n- One architecture does not fit all.\n- Enable customization everywhere.\n\n## Limitations\n\n- If using `NextjsGlobalFunctions` or `NextjsGlobalContainers` (which use CloudFront), the number of top level files/directories cannot exceed 25, the max number of behaviors a CloudFront Distribution supports. We recommend you put all of your public assets into one top level directory (i.e. public/static) so you don't reach this limit. See [CloudFront Quotas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cloudfront-limits.html) for more information.\n- If using `NextjsGlobalFunctions`, when [revalidating data in Next.js](https://nextjs.org/docs/app/building-your-application/data-fetching/fetching-caching-and-revalidating#on-demand-revalidation) (i.e. [revalidatePath](https://nextjs.org/docs/app/api-reference/functions/revalidatePath)), the CloudFront Cache will still hold stale data. You'll need to use AWS SDK JS V3 [CreateInvalidationCommand](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cloudfront/Class/CreateInvalidationCommand/) to manually invalidate the path in CloudFront. See more [here](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html).\n- If using `NextjsGlobalFunctions`, setting an Authorization header won't work by default because of Lambda Function URL with IAM Auth is already using the Authorization header. You can use the `AWS_LWA_AUTHORIZATION_SOURCE` environment variable of [AWS Lambda Web Adapter](https://github.com/awslabs/aws-lambda-web-adapter) to set an alternative Authorization header in the client which will then be set to the Authorization header when it reaches your app.\n- `NextjsRegionalFunctions` doesn't support streaming because API Gateway doesn't support streaming yet.\n- If using `NextjsRegionalFunctions` without a custom domain, API Gateway REST APIs require a [stage name](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-stages.html) (default: `/prod`) to be specified. This causes links to pages and static assets to break because they're not prefixed with the stage name. You can work around this issue by specifying [basePath](https://nextjs.org/docs/app/api-reference/config/next-config-js/basePath) in next.config.js as your stage name. Additionally, you'll need to add middleware logic to rewrite requests to include the stage name because API Gateway does not include the stage name in the path passed to Lambda. See [examples/app-playground/middleware.ts](./examples/app-playground/middleware.ts).\n\n## Additional Security Recommendations\n\nThis construct by default implements all AWS security best practices that a CDK construct library reasonably can considering cost and complexity. Below are additional security practices we recommend you implement within your CDK app. Please see them below:\n\n- [VPC Flow Logs](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html). See [examples/](./examples) for sample implementation.\n- [Scan ECR Images For Vulnerabilities](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html).\n- For `NextjsGlobalFunctions` and `NextjsGlobalContainers`, [CloudFront Access Logs](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html). See [examples/](./examples) for sample implementation.\n- For `NextjsGlobalContainers` and `NextjsRegionalContainers`, use [ALB HTTPS Listener](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html)\n- If using `NextjsGlobalContainers` and `NextjsRegionalContainers`, enable `ReadonlyRootFilesystem`. This will remove ability to use Static On-Demand feature of Next.js so it's not enabled by default, but is recommended for security.\n\n## Estimated Costs\n\n### Assumptions\n\nThe following basic assumptions were used for a typical medium Next.js app. See [docs/usage.xlsx](./docs/usage.xlsx) for detailed assumptions and usage per construct type that you can plug into AWS Pricing Calculator.\n\n| Metric                                                       | Value |\n| ------------------------------------------------------------ | ----- |\n| Monthly Active Users                                         | 1K    |\n| Pages Visited Per Month Per User                             | 100   |\n| Avg Request Size                                             | 50KB  |\n| Static Requests Per Page (js, css, etc)                      | 15    |\n| Static Requests Cache Hit %                                  | 50%   |\n| Static Assets Size                                           | 10GB  |\n| Dynamic Requests Per Page (document, optimized images, etc.) | 5     |\n| Dynamic Cache Read %                                         | 50%   |\n| Dynamic Cache Write %                                        | 5%    |\n| Dynamic Cache Data Size                                      | 10GB  |\n| Average Dynamic Cache Request Size                           | 100KB |\n\nMore Details:\n\n- Assume ARM architecture for compute\n- AWS Region: us-east-1\n- Excludes charges related to: CloudWatch Logs, NAT Gateway data processing\n\n#### NAT Gateway and Alternatives\n\n[NAT Gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) enable compute within private subnets to access the internet without directly exposing that compute to the internet. NAT Gateways prevent you from having to manage your own NAT Instances however they cost $0.045/hr/AZ resulting in charge of $64.80/month for 2 AZs (.045 x 24 x 30 x 2). While NAT Gateways are recommended by AWS to ensure maximum reliability and scalability, some customers may desire less expensive alternatives:\n\n1. $0.00 - if you're Next.js app does not need to access the internet, remove the NAT Gateway. Trade-off: less functionality.\n2. $6.05 - managing your own [NAT Instance](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_NAT_Instance.html). See [examples/low-cost](./examples/low-cost/) for how to use [fck-nat](https://fck-nat.dev/stable/). Trade-off: less reliable.\n3. $32.40 - use 1 AZ instead of 2. Trade-off: less reliable.\n\n### NextjsGlobalFunctions\n\n[AWS Pricing Calculator](https://calculator.aws/#/estimate?id=cbabcb1142ad9b29345b82b33b3cf552eddc966a)\n\n| Service    | Monthly Usage                                  | Estimated Monthly Cost (USD) |\n| ---------- | ---------------------------------------------- | ---------------------------- |\n| Lambda     | 500K requests, 2 GB memory, 150ms avg duration | $0.00 (Always Free Tier)     |\n| CloudFront | 2M requests, 100 GB transfer to internet       | $0.00 (Always Free Tier)     |\n| S3         | 10 GB storage, 750K GET requests               | $0.53                        |\n| EFS        | 10 GB storage, 25/2.5 GB Read/Write Throughput | $3.90                        |\n| VPC        | NAT Gateway, 2 AZs                             | $64.80                       |\n| Total      |                                                | $69.32                       |\n\n### NextjsGlobalContainers\n\n[AWS Pricing Calculator](https://calculator.aws/#/estimate?id=1354220e3d611a726139bee4af4277debacd365c)\n\n| Service     | Monthly Usage                                  | Estimated Monthly Cost (USD) |\n| ----------- | ---------------------------------------------- | ---------------------------- |\n| ECS Fargate | 1 task (1 vCPU, 2 GB)                          | $28.44                       |\n| ALB         | 1 LB, 1.04GB/hr, 5.79 conn/sec                 | $22.50                       |\n| CloudFront  | 2M requests, 100 GB transfer to internet       | $0.00 (Always Free Tier)     |\n| S3          | 10 GB storage, 750K GET requests               | $0.53                        |\n| EFS         | 10 GB storage, 25/2.5 GB Read/Write Throughput | $3.90                        |\n| VPC         | NAT Gateway, 2 AZs                             | $64.80                       |\n| Total       |                                                | $120.53                      |\n\n### NextjsRegionalContainers\n\n[AWS Pricing Calculator](https://calculator.aws/#/estimate?id=f53440707350f74cf478ca9e45a3ad32f5e16710)\n\n| Service     | Monthly Usage                                  | Estimated Monthly Cost (USD) |\n| ----------- | ---------------------------------------------- | ---------------------------- |\n| ECS Fargate | 1 task (2 vCPU, 4 GB), always on               | $28.44                       |\n| ALB         | 1 LB, 4.17 GB/hr, 23.15 conn/sec               | $40.78                       |\n| EFS         | 10 GB storage, 25/2.5 GB Read/Write Throughput | $4.05                        |\n| VPC         | NAT Gateway, 2 AZs                             | $64.80                       |\n| Total       |                                                | $138.07                      |\n\n### NextjsRegionalFunctions\n\n[AWS Pricing Calculator](https://calculator.aws/#/estimate?id=a6d21afbb983c7efa53da096aa608739da113247)\n\n| Service     | Monthly Usage                                  | Estimated Monthly Cost (USD) |\n| ----------- | ---------------------------------------------- | ---------------------------- |\n| Lambda      | 500K requests, 2 GB memory, 150ms avg duration | $0.00 (Always Free Tier)     |\n| API Gateway | 2M requests                                    | $7.00                        |\n| EFS         | 10 GB storage, 25/2.5 GB Read/Write Throughput | $4.05                        |\n| VPC         | NAT Gateway, 2 AZs                             | $64.80                       |\n| Total       |                                                | $75.85                       |\n\n## Performance\n\n[Artillery Playwright](https://www.artillery.io/docs/reference/engines/playwright#overview) app playground example load tests results with 1K concurrent users. Reproduce with `pnpm test-fargate:lg` within `examples/load-tests`.\n\n### NextjsGlobalFunctions\n\n<details>\n<summary>`NextjsGlobalFunctions` Performance Details</summary>\n\n```bash\nbrowser.page.TTFB.https://abc123.cloudfront.net/isr:\n  min: ......................................................................... 6.3\n  max: ......................................................................... 5017.4\n  mean: ........................................................................ 11.5\n  median: ...................................................................... 10.3\n  p95: ......................................................................... 15.6\n  p99: ......................................................................... 22.9\nbrowser.page.TTFB.https://abc123.cloudfront.net/isr/1:\n  min: ......................................................................... 3.2\n  max: ......................................................................... 560.6\n  mean: ........................................................................ 9.4\n  median: ...................................................................... 5.4\n  p95: ......................................................................... 11.1\n  p99: ......................................................................... 162.4\nbrowser.page.TTFB.https://abc123.cloudfront.net/isr/2:\n  min: ......................................................................... 3.1\n  max: ......................................................................... 1511.9\n  mean: ........................................................................ 9.2\n  median: ...................................................................... 5.2\n  p95: ......................................................................... 10.7\n  p99: ......................................................................... 149.9\nbrowser.page.TTFB.https://abc123.cloudfront.net/isr/3:\n  min: ......................................................................... 3.4\n  max: ......................................................................... 131.1\n  mean: ........................................................................ 7.1\n  median: ...................................................................... 5.3\n  p95: ......................................................................... 10.1\n  p99: ......................................................................... 64.7\nbrowser.page.TTFB.https://abc123.cloudfront.net/ssg:\n  min: ......................................................................... 6.4\n  max: ......................................................................... 5015.1\n  mean: ........................................................................ 11.5\n  median: ...................................................................... 10.3\n  p95: ......................................................................... 15.6\n  p99: ......................................................................... 23.3\nbrowser.page.TTFB.https://abc123.cloudfront.net/ssg/3:\n  min: ......................................................................... 2.9\n  max: ......................................................................... 98\n  mean: ........................................................................ 5.1\n  median: ...................................................................... 4.6\n  p95: ......................................................................... 8.2\n  p99: ......................................................................... 12.8\nbrowser.page.TTFB.https://abc123.cloudfront.net/ssr:\n  min: ......................................................................... 6.4\n  max: ......................................................................... 5018.6\n  mean: ........................................................................ 11.3\n  median: ...................................................................... 10.3\n  p95: ......................................................................... 15.6\n  p99: ......................................................................... 23.3\nbrowser.page.TTFB.https://abc123.cloudfront.net/ssr/2:\n  min: ......................................................................... 83.4\n  max: ......................................................................... 150.7\n  mean: ........................................................................ 119\n  median: ...................................................................... 111.1\n  p95: ......................................................................... 147\n  p99: ......................................................................... 147\nbrowser.page.TTFB.https://abc123.cloudfront.net/streaming:\n  min: ......................................................................... 6.4\n  max: ......................................................................... 5015.2\n  mean: ........................................................................ 11.8\n  median: ...................................................................... 10.3\n  p95: ......................................................................... 15.6\n  p99: ......................................................................... 23.3\n```\n\n</details>\n\n![1K concurrent users](./docs/1k-concurrent-users-executions.png)\n\n### NextjsGlobalContainers\n\n<details>\n<summary>`NextjsGlobalContainers` Performance Details</summary>\n\n```bash\nTODO\n```\n\n</details>\n\n### NextjsRegionalContainers\n\n<details>\n<summary>`NextjsRegionalContainers` Performance Details</summary>\n\n```bash\nTODO\n```\n\n### NextjsRegionalFunctions\n\n<details>\n<summary>`NextjsRegionalFunctions` Performance Details</summary>\n\n```bash\nTODO\n```\n\n</details>\n\n## Contributing\n\nSteps to build locally:\n\n1. `git clone https://github.com/cdklabs/cdk-nextjs.git`\n2. `cd cdk-nextjs`\n3. `pnpm i && pnpm compile && pnpm build`\n\nThis project uses Projen, so make sure to not edit [Projen](https://projen.io/) created files and only edit .projenrc.ts.\n\n## FAQ\n\nQ: How does this compare to [cdk-nextjs-standalone](https://github.com/jetbridge/cdk-nextjs)?<br/>\nA: cdk-nextjs-standalone relies on [OpenNext](https://github.com/sst/open-next). OpenNext injects custom code to interact with private Next.js APIs. While OpenNext is able to make some optimizations that are great for serverless environments, this comes at an increase maintenance cost and increased chances for breaking changes. A goal of cdk-nextjs is to customize Next.js as little as possible to reduce the maintenance burden and decrease chances of breaking changes.\n\nQ: Why not offer API Gateway version of construct?<br/>\nA: API Gateway does not support streaming.\n\nQ: How does cdk-nextjs support caching in Next.js?<br/>\nA: Next.js has 3 types of server caching that are persisted to disk: [data cache](https://nextjs.org/docs/app/building-your-application/caching#data-cache), [full route cache](https://nextjs.org/docs/app/building-your-application/caching#full-route-cache), and [image optimization cache](https://nextjs.org/docs/pages/building-your-application/optimizing/images). By default this cached data is persisted on individual compute instances and is not shared - reducing cache hits. cdk-nextjs uses the [custom Next.js cache handler](https://nextjs.org/docs/app/api-reference/next-config-js/incrementalCacheHandlerPath) for data and full route cache and symlinking for image optimization cache to modify Next.js to read/write from a mounted file system\n\nQ: Why EFS instead of S3?<br/>\nA: cdk-nextjs uses [Amazon Elastic File System (EFS)](https://aws.amazon.com/efs/) to mount a file system to functions or containers as a shared cache. The custom Next.js cache handler could be modified to read/write data to [Amazon S3](https://aws.amazon.com/pm/serv-s3), but there is no way to modify the location of the image optimization cache without modifying Next.js internals. Other factors to compare:\n\n| Factor                        | EFS                       | S3                    |\n| ----------------------------- | ------------------------- | --------------------- |\n| Performance                   | 1-10ms per file operation | 100-200ms per request |\n| Cold Start Impact             | 50-100ms to mount         | No impact             |\n| Storage Cost                  | $0.30 / GB-month          | $0.023 / GB-month     |\n| Read Throughput/Request Cost  | $0.03 / GB-month          | $0.04 / M requests    |\n| Write Throughput/Request Cost | $0.06 / GB-month          | $5.00 / M requests    |\n\nQ: How customizable is the `cdk-nextjs` package for different use cases?<br/>\nA: The `cdk-nextjs` package offers deep customization through _prop-based_ overrides. These can be accessed in the construct props, allowing you to override settings like VPC configurations, CloudFront distribution, and ECS/Fargate setup. For example, you can modify `nextjsBuildProps` to customize the build process or use `nextjsDistributionProps` to adjust how CloudFront handles caching and routing. This level of control makes it easy to adapt the infrastructure to your application’s specific performance, networking, or deployment needs.\n\nQ: How can I use a custom domain with `cdk-nextjs`?<br/>\nA: See [low-cost example](./examples/low-cost/app.ts).\n\nQ: What is difference between `NextjsGlobalFunctionsProps.overrides.nextjsDistribution` and `NextjsGlobalFunctionsProps.overrides.nextjsGlobalFunctions.nextjsDistributionProps`<br/>\nA: `NextjsGlobalFunctionsProps.overrides.nextjsDistribution` allows you to customize any construct's props _within_ `NextjsDistribution` and is likely what you want whereas `NextjsGlobalFunctionsProps.overrides.nextjsGlobalFunctions.nextjsDistributionProps` allows you to customize the props passed into the construct: `NextjsDistribution`. This principle also applies to other similarly named overrides.\n\nQ: Why use container image for `NextjsGlobalFunctions`?<br />\nA: Read [The case for containers on Lambda (with benchmarks)](https://aaronstuyvenberg.com/posts/containers-on-lambda).\n\nQ: How can I `cdk bootstrap --cloudformation-execution-policies ...` my AWS Account with limited permissions for cdk-nextjs to deploy?<br />\nA: See [docs/cdk-nextjs-cfn-exec-policy.json](./docs/cdk-nextjs-cfn-exec-policy.json). Note, this IAM Policy is scoped to all cdk-nextjs constructs so you can remove services if you know the construct you're using doesn't use that service.\n\n## Acknowledgements\n\nThis construct was built on the shoulders of giants. Thank you to the contributors of [cdk-nextjs-standalone](https://github.com/jetbridge/cdk-nextjs) and [open-next](https://github.com/sst/open-next).\n\n## 🥂 Thanks Contributors\n\nThank you for helping other developers deploy Next.js apps on AWS\n\n<a href=\"https://github.com/cdklabs/cdk-nextjs/graphs/contributors\">\n  <img src=\"https://contrib.rocks/image?repo=cdklabs/cdk-nextjs\" />\n</a>\n"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/cdklabs/cdk-nextjs.git"
  },
  "schema": "jsii/0.10.0",
  "targets": {
    "js": {
      "npm": "cdk-nextjs"
    }
  },
  "types": {
    "cdk-nextjs.AllowComputeProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.AllowComputeProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-file-system.ts",
        "line": 23
      },
      "name": "AllowComputeProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 24
          },
          "name": "connections",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.Connections"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 25
          },
          "name": "role",
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        }
      ],
      "symbolId": "src/nextjs-file-system:AllowComputeProps"
    },
    "cdk-nextjs.BuilderImageProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.BuilderImageProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-build/nextjs-build.ts",
        "line": 35
      },
      "name": "BuilderImageProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "see": "https://docs.docker.com/build/building/variables/#build-arguments",
            "stability": "stable",
            "summary": "Build Args to be passed to `docker build` command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 40
          },
          "name": "buildArgs",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "`docker build ...` command to run in {@link NextBaseProps.buildContext }. Default interpolates other props. If you override, other props will have no effect on command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 46
          },
          "name": "command",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "example": "[\"MY_API_KEY\"]",
            "remarks": "These variable names will be set before the build command in builder.Dockerfile\nlike: `API_KEY=\"MY_API_KEY\" npm run build`",
            "stability": "stable",
            "summary": "Environment variables names to pass from host to container during build process."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 55
          },
          "name": "envVarNames",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "[\"node_modules\", \".git\", \".gitignore\", \".md\"]",
            "stability": "stable",
            "summary": "Lines in .dockerignore file which will be created in your {@link NextBaseProps.buildContext }."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 60
          },
          "name": "exclude",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"builder.Dockerfile\"",
            "remarks": "If specified, you are responsible\nfor ensuring it exists in build context before construct is instantiated.",
            "stability": "stable",
            "summary": "Name of Dockerfile in builder build context."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 66
          },
          "name": "file",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 67
          },
          "name": "platform",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.Platform"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "stable",
            "summary": "Skip building the builder image."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 72
          },
          "name": "skipBuild",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        }
      ],
      "symbolId": "src/nextjs-build/nextjs-build:BuilderImageProps"
    },
    "cdk-nextjs.NextjsApi": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable",
        "summary": "Creates an API Gateway REST API for Next.js applications."
      },
      "fqn": "cdk-nextjs.NextjsApi",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-api.ts",
          "line": 74
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsApiProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-api.ts",
        "line": 64
      },
      "name": "NextjsApi",
      "properties": [
        {
          "docs": {
            "stability": "stable",
            "summary": "The API Gateway REST API."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 68
          },
          "name": "api",
          "type": {
            "fqn": "aws-cdk-lib.aws_apigateway.RestApi"
          }
        }
      ],
      "symbolId": "src/nextjs-api:NextjsApi"
    },
    "cdk-nextjs.NextjsApiOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsApiOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-api.ts",
        "line": 26
      },
      "name": "NextjsApiOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 30
          },
          "name": "dynamicIntegrationProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_apigateway.LambdaIntegrationOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 27
          },
          "name": "restApiProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_apigateway.RestApiProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 29
          },
          "name": "s3MethodOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_apigateway.MethodOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 28
          },
          "name": "staticIntegrationProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_apigateway.AwsIntegrationProps"
          }
        }
      ],
      "symbolId": "src/nextjs-api:NextjsApiOverrides"
    },
    "cdk-nextjs.NextjsApiProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsApiProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-api.ts",
        "line": 33
      },
      "name": "NextjsApiProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Path to directory of Next.js app's public directory. Used to add resources to API Gateway REST API for public directory to go directly to S3."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 46
          },
          "name": "publicDirEntries",
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "cdk-nextjs.PublicDirEntry"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "The S3 bucket containing static assets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 54
          },
          "name": "staticAssetsBucket",
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.IBucket"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Optional base path for the application."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 37
          },
          "name": "basePath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override props for every construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 41
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsApiOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "The Lambda function for server-side rendering",
            "stability": "stable",
            "summary": "Required if `NextjsRegionalFunctions`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 50
          },
          "name": "serverFunction",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IFunction"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "VPC to create VPC Link and ECS Service Discovery",
            "stability": "stable",
            "summary": "[Future] Required if `NextjsRegionalContainers`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-api.ts",
            "line": 58
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/nextjs-api:NextjsApiProps"
    },
    "cdk-nextjs.NextjsAssetDeploymentOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsAssetDeploymentOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-assets-deployment.ts",
        "line": 27
      },
      "name": "NextjsAssetDeploymentOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Props that define the custom resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 31
          },
          "name": "customResourceProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalCustomResourceProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 34
          },
          "name": "dockerImageFunctionProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalDockerImageFunctionProps"
          }
        }
      ],
      "symbolId": "src/nextjs-assets-deployment:NextjsAssetDeploymentOverrides"
    },
    "cdk-nextjs.NextjsAssetsDeployment": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable",
        "summary": "Deploys static assets to S3 and cache assets to EFS in Lambda Custom Resource."
      },
      "fqn": "cdk-nextjs.NextjsAssetsDeployment",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-assets-deployment.ts",
          "line": 110
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsAssetsDeploymentProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-assets-deployment.ts",
        "line": 104
      },
      "name": "NextjsAssetsDeployment",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 105
          },
          "name": "customResource",
          "type": {
            "fqn": "aws-cdk-lib.CustomResource"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 106
          },
          "name": "dockerImageFunction",
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageFunction"
          }
        }
      ],
      "symbolId": "src/nextjs-assets-deployment:NextjsAssetsDeployment"
    },
    "cdk-nextjs.NextjsAssetsDeploymentProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsAssetsDeploymentProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-assets-deployment.ts",
        "line": 37
      },
      "name": "NextjsAssetsDeploymentProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 38
          },
          "name": "accessPoint",
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPoint"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 44
          },
          "name": "buildId",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBuild.buildImageDigest }",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 48
          },
          "name": "buildImageDigest",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 54
          },
          "name": "dockerImageCode",
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageCode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 55
          },
          "name": "nextjsType",
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 65
          },
          "name": "vpc",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "example": "\"/my-base-path\"",
            "stability": "stable",
            "summary": "Prefix to the URI path the app will be served at."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 43
          },
          "name": "basePath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "If true, logs details in custom resource lambda."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 53
          },
          "name": "debug",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 56
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsAssetDeploymentOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBaseProps.relativePathToPackage }",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 60
          },
          "name": "relativePathToPackage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required for `NextjsType.GlobalFunctions` and `NextjsType.GlobalContainers`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-assets-deployment.ts",
            "line": 64
          },
          "name": "staticAssetsBucket",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.Bucket"
          }
        }
      ],
      "symbolId": "src/nextjs-assets-deployment:NextjsAssetsDeploymentProps"
    },
    "cdk-nextjs.NextjsBaseConstruct": {
      "abstract": true,
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable",
        "summary": "Base class for all Next.js root constructs."
      },
      "fqn": "cdk-nextjs.NextjsBaseConstruct",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/root-constructs/nextjs-base-construct.ts",
          "line": 152
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsBaseConstructProps"
            }
          },
          {
            "name": "nextjsType",
            "type": {
              "fqn": "cdk-nextjs.NextjsType"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-base-construct.ts",
        "line": 137
      },
      "name": "NextjsBaseConstruct",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 149
          },
          "name": "baseProps",
          "protected": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsBaseConstructProps"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 147
          },
          "name": "nextjsType",
          "protected": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 145
          },
          "name": "url",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 150
          },
          "name": "constructOverrides",
          "optional": true,
          "protected": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsBaseConstructOverrides"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 142
          },
          "name": "nextjsAssetsDeployment",
          "type": {
            "fqn": "cdk-nextjs.NextjsAssetsDeployment"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 138
          },
          "name": "nextjsBuild",
          "type": {
            "fqn": "cdk-nextjs.NextjsBuild"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 141
          },
          "name": "nextjsFileSystem",
          "type": {
            "fqn": "cdk-nextjs.NextjsFileSystem"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 143
          },
          "name": "nextjsPostDeploy",
          "type": {
            "fqn": "cdk-nextjs.NextjsPostDeploy"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 139
          },
          "name": "nextjsStaticAssets",
          "type": {
            "fqn": "cdk-nextjs.NextjsStaticAssets"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 140
          },
          "name": "nextjsVpc",
          "type": {
            "fqn": "cdk-nextjs.NextjsVpc"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-base-construct:NextjsBaseConstruct"
    },
    "cdk-nextjs.NextjsBaseConstructOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "Base overrides for the props passed to constructs within root/top-level Next.js constructs."
      },
      "fqn": "cdk-nextjs.NextjsBaseConstructOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-base-construct.ts",
        "line": 35
      },
      "name": "NextjsBaseConstructOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 39
          },
          "name": "nextjsAssetsDeploymentProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsAssetsDeploymentProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 36
          },
          "name": "nextjsBuildProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsBuildProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 38
          },
          "name": "nextjsFileSystemProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsFileSystemProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 40
          },
          "name": "nextjsPostDeployProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsPostDeployProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 41
          },
          "name": "nextjsStaticAssetsProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsStaticAssetsProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 37
          },
          "name": "nextjsVpcProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsVpcProps"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-base-construct:NextjsBaseConstructOverrides"
    },
    "cdk-nextjs.NextjsBaseConstructProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "Required because if we add `overrides` onto `NextjsBaseProps` we get jsii error: `Interface ... re-declares member \"overrides\"`."
      },
      "fqn": "cdk-nextjs.NextjsBaseConstructProps",
      "interfaces": [
        "cdk-nextjs.NextjsBaseProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-base-construct.ts",
        "line": 130
      },
      "name": "NextjsBaseConstructProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 131
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsBaseOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-base-construct:NextjsBaseConstructProps"
    },
    "cdk-nextjs.NextjsBaseOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "Base overrides for constructs shared between all root/top-level Next.js constructs."
      },
      "fqn": "cdk-nextjs.NextjsBaseOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-base-construct.ts",
        "line": 47
      },
      "name": "NextjsBaseOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 51
          },
          "name": "nextjsAssetsDeployment",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsAssetDeploymentOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 48
          },
          "name": "nextjsBuild",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsBuildOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 49
          },
          "name": "nextjsFileSystem",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsFileSystemOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 52
          },
          "name": "nextjsPostDeploy",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsPostDeployOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 53
          },
          "name": "nextjsStaticAssets",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsStaticAssetsOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 50
          },
          "name": "nextjsVpc",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsVpcOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-base-construct:NextjsBaseOverrides"
    },
    "cdk-nextjs.NextjsBaseProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsBaseProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-base-construct.ts",
        "line": 56
      },
      "name": "NextjsBaseProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "example": "join(import.meta.dirname, \"..\") (monorepo)",
            "remarks": "Note, by default cdk-nextjs' `builder.Dockerfile` is used to build your\nNext.js app. You can customize this by specifying `overrides.{nextjs...}.nextjsBuildProps.builderImageProps.file`.\nIf you override the default, then you are responsible for ensuring the\nDockerfile is in the build context directory before cdk-nextjs construct\nis instantiated.",
            "stability": "stable",
            "summary": "[Build context](https://docs.docker.com/build/building/context/) for `docker build`. This directory should contain your lockfile (i.e. pnpm-lock.yaml) for your Next.js app. If you're not in a monorepo, then this will be the same directory as your Next.js app. If you are in a monorepo, then this value should be the root of your monorepo. You then must pass the relative path to your Next.js app via {@link NextjsBaseProps.relativePathToPackage}."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 82
          },
          "name": "buildContext",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "example": "// api/health/route.ts\nimport { NextResponse } from \"next/server\";\n\nexport function GET() {\n  return NextResponse.json(\"\");\n}",
            "stability": "stable",
            "summary": "Path to API Route Handler that returns HTTP 200 to ensure compute health."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 94
          },
          "name": "healthCheckPath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "example": "\"/my-base-path\"",
            "stability": "stable",
            "summary": "Prefix to the URI path the app will be served at."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 61
          },
          "name": "basePath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"npm run build\"",
            "stability": "stable",
            "summary": "Command to generate optimized version of your Next.js app in container;"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 66
          },
          "name": "buildCommand",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "example": "\"./packages/ui\"",
            "remarks": "This is the relative path from\n{@link NextjsBaseProps.buildContext} or root workspace to nested package\ncontaining Next.js app. See example below:\n\nLet's say you have a monorepo with the following folder structure:\n- my-monorepo/\n  - packages/\n    - ui/\n      - package.json (nested)\n  - package.json (root)\n\nAnd your Next.js app directory is the ui folder. Then you would set {@link NextjsBaseProps.buildContext}\nto `\"/absolute/path/to/my-monorepo\"` and {@link NextjsBaseProps.relativePathToPackage}\nto `\"./packages/ui\"`.\n\nNote, setting {@link NextjsBaseProps.buildContext} to the root of your\nmonorepo will invalidate container runtime (i.e. docker) build cache when any file is\nchanged in your monorepo. This is slows down deployments. Checkout how you\ncan use [turbo](https://turbo.build/) in [Deploying with Docker Guide](https://turbo.build/repo/docs/handbook/deploying-with-docker)\nin the cdk-nextjs/examples/turbo.",
            "stability": "stable",
            "summary": "Use this if building in monorepo."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 119
          },
          "name": "relativePathToPackage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "deprecated": "use relativePathToPackage",
            "stability": "deprecated"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-base-construct.ts",
            "line": 123
          },
          "name": "relativePathToWorkspace",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-base-construct:NextjsBaseProps"
    },
    "cdk-nextjs.NextjsBuild": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "custom": {
          "link": "https://nextjs.org/docs/pages/api-reference/next-config-js/output"
        },
        "stability": "stable",
        "summary": "Builds Next.js assets."
      },
      "fqn": "cdk-nextjs.NextjsBuild",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-build/nextjs-build.ts",
          "line": 193
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsBuildProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-build/nextjs-build.ts",
        "line": 141
      },
      "name": "NextjsBuild",
      "properties": [
        {
          "docs": {
            "stability": "stable",
            "summary": "Image alias of builder image Next.js app which is built for other images to be built `FROM`. This image isn't built with CDK Assets construct b/c it doesn't need to be uploaded to ECR. We still need to include slice of `node.addr` in tag in case multiple cdk-nextjs constructs are used."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 148
          },
          "name": "builderImageAlias",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable",
            "summary": "Unique id for Next.js build. Used to partition EFS FileSystem."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 152
          },
          "name": "buildId",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "remarks": "Useful\nfor passing to properties of custom resources that depend upon the builder\nimage to re-run when build image changes.",
            "stability": "stable",
            "summary": "Hash of builder image which will change whenever the image changes."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 158
          },
          "name": "buildImageDigest",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable",
            "summary": "Docker image built for `NextjsAssetsDeployment`."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 170
          },
          "name": "imageForNextjsAssetsDeployment",
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageCode"
          }
        },
        {
          "docs": {
            "example": "\"/Users/john/myapp/public\"",
            "remarks": "Use by CloudFront/ALB to create behaviors/rules",
            "stability": "stable",
            "summary": "Absolute path to public."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 175
          },
          "name": "publicDirEntries",
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "cdk-nextjs.PublicDirEntry"
              },
              "kind": "array"
            }
          }
        },
        {
          "docs": {
            "example": "\"./packages/ui/server.js\" (monorepo)",
            "stability": "stable",
            "summary": "The entrypoint JavaScript file used as an argument for Node.js to run the Next.js standalone server relative to the standalone directory."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 182
          },
          "name": "relativePathToEntrypoint",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable",
            "summary": "Docker image built if using Fargate."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 162
          },
          "name": "imageForNextjsContainers",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.DockerImageAsset"
          }
        },
        {
          "docs": {
            "stability": "stable",
            "summary": "Docker image built if using Lambda."
          },
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 166
          },
          "name": "imageForNextjsFunctions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageCode"
          }
        }
      ],
      "symbolId": "src/nextjs-build/nextjs-build:NextjsBuild"
    },
    "cdk-nextjs.NextjsBuildOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsBuildOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-build/nextjs-build.ts",
        "line": 75
      },
      "name": "NextjsBuildOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "\"cdk-nextjs/lib/nextjs-build\"",
            "stability": "stable",
            "summary": "Default folder for build context is the \"lib/nextjs-build\" folder in the installed cdk-nextjs library which has the \"assets-deployment.Dockerfile\". Note, if you specify this then you're responsible for ensuring the dockerfile is present in the build context directory and any referenced files are present as well. You can specify dockerfile name with adjacent `nextjsAssetDeploymentAssetImageCodeProps.file` property."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 98
          },
          "name": "assetsDeploymentImageBuildContext",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"cdk-nextjs/lib/nextjs-build\"",
            "stability": "stable",
            "summary": "Default folder for build context is the \"assets/lambdas/assets-deployment/assets-deployment.lambda\" folder in the installed cdk-nextjs library which has the \"{...}-containers.Dockerfile\". Note, if you specify this then you're responsible for ensuring the dockerfile is present in the build context directory and any referenced files are present as well. You can specify dockerfile name with adjacent `nextjsContainersDockerImageAssetProps.file` property."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 108
          },
          "name": "containersImageBuildContext",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"cdk-nextjs/lib/nextjs-build\"",
            "stability": "stable",
            "summary": "Default folder for build context is the \"lib/nextjs-build\" folder in the installed cdk-nextjs library which has the \"global-functions.Dockerfile\". Note, if you specify this then you're responsible for ensuring the dockerfile is present in the build context directory and any referenced files are present as well. You can specify dockerfile name with adjacent `nextjsFunctionsAssetImageCodeProps.file` property."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 88
          },
          "name": "functionsImageBuildContext",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 78
          },
          "name": "nextjsAssetDeploymentAssetImageCodeProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.AssetImageCodeProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 76
          },
          "name": "nextjsContainersDockerImageAssetProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalDockerImageAssetProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 77
          },
          "name": "nextjsFunctionsAssetImageCodeProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.AssetImageCodeProps"
          }
        }
      ],
      "symbolId": "src/nextjs-build/nextjs-build:NextjsBuildOverrides"
    },
    "cdk-nextjs.NextjsBuildProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsBuildProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-build/nextjs-build.ts",
        "line": 111
      },
      "name": "NextjsBuildProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBaseProps [\"buildContext\"]}",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 119
          },
          "name": "buildContext",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 128
          },
          "name": "nextjsType",
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBaseProps [\"buildCommand\"]}",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 115
          },
          "name": "buildCommand",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 123
          },
          "name": "builderImageProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.BuilderImageProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 129
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsBuildOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBaseProps.relativePathToPackage }",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 127
          },
          "name": "relativePathToPackage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/nextjs-build/nextjs-build:NextjsBuildProps"
    },
    "cdk-nextjs.NextjsComputeBaseProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsComputeBaseProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-compute/nextjs-compute-base-props.ts",
        "line": 4
      },
      "name": "NextjsComputeBaseProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-compute-base-props.ts",
            "line": 5
          },
          "name": "accessPoint",
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPoint"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-compute-base-props.ts",
            "line": 6
          },
          "name": "healthCheckPath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-compute-base-props.ts",
            "line": 7
          },
          "name": "vpc",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/nextjs-compute/nextjs-compute-base-props:NextjsComputeBaseProps"
    },
    "cdk-nextjs.NextjsContainers": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable",
        "summary": "Next.js load balanced via Application Load Balancer with containers via AWS Fargate."
      },
      "fqn": "cdk-nextjs.NextjsContainers",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-compute/nextjs-containers.ts",
          "line": 56
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsContainersProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-compute/nextjs-containers.ts",
        "line": 49
      },
      "name": "NextjsContainers",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 50
          },
          "name": "albFargateService",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs_patterns.ApplicationLoadBalancedFargateService"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 51
          },
          "name": "ecsCluster",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.Cluster"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 52
          },
          "name": "url",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/nextjs-compute/nextjs-containers:NextjsContainers"
    },
    "cdk-nextjs.NextjsContainersOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsContainersOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-compute/nextjs-containers.ts",
        "line": 30
      },
      "name": "NextjsContainersOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 32
          },
          "name": "albFargateServiceProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs_patterns.ApplicationLoadBalancedFargateServiceProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 31
          },
          "name": "ecsClusterProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalClusterProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 33
          },
          "name": "taskImageOptions",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalApplicationLoadBalancedTaskImageOptions"
          }
        }
      ],
      "symbolId": "src/nextjs-compute/nextjs-containers:NextjsContainersOverrides"
    },
    "cdk-nextjs.NextjsContainersProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsContainersProps",
      "interfaces": [
        "cdk-nextjs.NextjsComputeBaseProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-compute/nextjs-containers.ts",
        "line": 36
      },
      "name": "NextjsContainersProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 42
          },
          "name": "buildId",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 37
          },
          "name": "dockerImageAsset",
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.DockerImageAsset"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 38
          },
          "name": "fileSystem",
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.FileSystem"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 39
          },
          "name": "nextjsType",
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 41
          },
          "name": "relativeEntrypointPath",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-containers.ts",
            "line": 40
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsContainersOverrides"
          }
        }
      ],
      "symbolId": "src/nextjs-compute/nextjs-containers:NextjsContainersProps"
    },
    "cdk-nextjs.NextjsDistribution": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsDistribution",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-distribution.ts",
          "line": 130
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsDistributionProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-distribution.ts",
        "line": 94
      },
      "name": "NextjsDistribution",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 95
          },
          "name": "distribution",
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.Distribution"
          }
        }
      ],
      "symbolId": "src/nextjs-distribution:NextjsDistribution"
    },
    "cdk-nextjs.NextjsDistributionOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsDistributionOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-distribution.ts",
        "line": 47
      },
      "name": "NextjsDistributionOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 48
          },
          "name": "distributionProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalDistributionProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 52
          },
          "name": "dynamicBehaviorOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.AddBehaviorOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 53
          },
          "name": "dynamicCachePolicyProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.CachePolicyProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 55
          },
          "name": "dynamicFunctionUrlOriginWithOACProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront_origins.FunctionUrlOriginWithOACProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 54
          },
          "name": "dynamicResponseHeadersPolicyProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.ResponseHeadersPolicyProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 56
          },
          "name": "dynamicVpcOriginWithEndpointProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront_origins.VpcOriginWithEndpointProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 49
          },
          "name": "imageBehaviorOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.AddBehaviorOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 50
          },
          "name": "imageCachePolicyProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.CachePolicyProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 51
          },
          "name": "imageResponseHeadersPolicyProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.ResponseHeadersPolicyProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 59
          },
          "name": "s3BucketOriginProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalS3OriginBucketWithOACProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 57
          },
          "name": "staticBehaviorOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.AddBehaviorOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 58
          },
          "name": "staticResponseHeadersPolicyProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.ResponseHeadersPolicyProps"
          }
        }
      ],
      "symbolId": "src/nextjs-distribution:NextjsDistributionOverrides"
    },
    "cdk-nextjs.NextjsDistributionProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsDistributionProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-distribution.ts",
        "line": 62
      },
      "name": "NextjsDistributionProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Must be provided if you want to serve static files.",
            "stability": "stable",
            "summary": "Bucket containing static assets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 67
          },
          "name": "assetsBucket",
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.IBucket"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 82
          },
          "name": "nextjsType",
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Entries (files/directories) within Next.js app's public directory. Used to add static behaviors to distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 91
          },
          "name": "publicDirEntries",
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "cdk-nextjs.PublicDirEntry"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 68
          },
          "name": "basePath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Optional but only applicable for `NextjsType.GLOBAL_CONTAINERS`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 72
          },
          "name": "certificate",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_certificatemanager.ICertificate"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 73
          },
          "name": "distribution",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.Distribution"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required if `NextjsType.GLOBAL_FUNCTIONS`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 77
          },
          "name": "functionUrl",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IFunctionUrl"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required if `NextjsType.GLOBAL_CONTAINERS` or `NextjsType.REGIONAL_CONTAINERS`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 81
          },
          "name": "loadBalancer",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationLoadBalancer"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override props for every construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-distribution.ts",
            "line": 86
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsDistributionOverrides"
          }
        }
      ],
      "symbolId": "src/nextjs-distribution:NextjsDistributionProps"
    },
    "cdk-nextjs.NextjsFileSystem": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable",
        "summary": "Next.js Network File System enabling sharing of image optimization cache, data cach, and pages cache."
      },
      "fqn": "cdk-nextjs.NextjsFileSystem",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-file-system.ts",
          "line": 37
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsFileSystemProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-file-system.ts",
        "line": 32
      },
      "methods": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 90
          },
          "name": "allowCompute",
          "parameters": [
            {
              "name": "__0",
              "type": {
                "fqn": "cdk-nextjs.AllowComputeProps"
              }
            }
          ]
        }
      ],
      "name": "NextjsFileSystem",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 34
          },
          "name": "accessPoint",
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPoint"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 33
          },
          "name": "fileSystem",
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.FileSystem"
          }
        }
      ],
      "symbolId": "src/nextjs-file-system:NextjsFileSystem"
    },
    "cdk-nextjs.NextjsFileSystemOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsFileSystemOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-file-system.ts",
        "line": 13
      },
      "name": "NextjsFileSystemOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 15
          },
          "name": "accessPointProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPointProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 14
          },
          "name": "fileSystemProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.FileSystemProps"
          }
        }
      ],
      "symbolId": "src/nextjs-file-system:NextjsFileSystemOverrides"
    },
    "cdk-nextjs.NextjsFileSystemProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsFileSystemProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-file-system.ts",
        "line": 18
      },
      "name": "NextjsFileSystemProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 20
          },
          "name": "vpc",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-file-system.ts",
            "line": 19
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsFileSystemOverrides"
          }
        }
      ],
      "symbolId": "src/nextjs-file-system:NextjsFileSystemProps"
    },
    "cdk-nextjs.NextjsFunctions": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable",
        "summary": "Run Next.js in functions on AWS with AWS Lambda."
      },
      "fqn": "cdk-nextjs.NextjsFunctions",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-compute/nextjs-functions.ts",
          "line": 44
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsFunctionsProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-compute/nextjs-functions.ts",
        "line": 38
      },
      "name": "NextjsFunctions",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 39
          },
          "name": "function",
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageFunction"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 40
          },
          "name": "functionUrl",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.FunctionUrl"
          }
        }
      ],
      "symbolId": "src/nextjs-compute/nextjs-functions:NextjsFunctions"
    },
    "cdk-nextjs.NextjsFunctionsOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsFunctionsOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-compute/nextjs-functions.ts",
        "line": 23
      },
      "name": "NextjsFunctionsOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 24
          },
          "name": "dockerImageFunctionProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalDockerImageFunctionProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 25
          },
          "name": "functionUrlProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalFunctionUrlProps"
          }
        }
      ],
      "symbolId": "src/nextjs-compute/nextjs-functions:NextjsFunctionsOverrides"
    },
    "cdk-nextjs.NextjsFunctionsProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsFunctionsProps",
      "interfaces": [
        "cdk-nextjs.NextjsComputeBaseProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-compute/nextjs-functions.ts",
        "line": 28
      },
      "name": "NextjsFunctionsProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 31
          },
          "name": "buildId",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 29
          },
          "name": "dockerImageCode",
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageCode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 32
          },
          "name": "nextjsType",
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-compute/nextjs-functions.ts",
            "line": 30
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsFunctionsOverrides"
          }
        }
      ],
      "symbolId": "src/nextjs-compute/nextjs-functions:NextjsFunctionsProps"
    },
    "cdk-nextjs.NextjsGlobalContainers": {
      "assembly": "cdk-nextjs",
      "base": "cdk-nextjs.NextjsBaseConstruct",
      "docs": {
        "stability": "stable",
        "summary": "Deploy Next.js globally distributed with containers. Uses [CloudFront Distribution](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-working-with.html) as Content Delivery Network (CDN) for global distribution and [AWS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html) for containers."
      },
      "fqn": "cdk-nextjs.NextjsGlobalContainers",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/root-constructs/nextjs-global-containers.ts",
          "line": 65
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsGlobalContainersProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-containers.ts",
        "line": 56
      },
      "name": "NextjsGlobalContainers",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 59
          },
          "name": "url",
          "overrides": "cdk-nextjs.NextjsBaseConstruct",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 57
          },
          "name": "nextjsContainers",
          "type": {
            "fqn": "cdk-nextjs.NextjsContainers"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 58
          },
          "name": "nextjsDistribution",
          "type": {
            "fqn": "cdk-nextjs.NextjsDistribution"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-containers:NextjsGlobalContainers"
    },
    "cdk-nextjs.NextjsGlobalContainersConstructOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsGlobalContainersConstructOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseConstructOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-containers.ts",
        "line": 21
      },
      "name": "NextjsGlobalContainersConstructOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 23
          },
          "name": "nextjsContainersProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsContainersProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 24
          },
          "name": "nextjsDistributionProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsDistributionProps"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-containers:NextjsGlobalContainersConstructOverrides"
    },
    "cdk-nextjs.NextjsGlobalContainersOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "remarks": "Overrides are lower level than\nprops and are passed directly to CDK Constructs giving you more control. It's\nrecommended to use caution and review source code so you know how they're used.",
        "stability": "stable",
        "summary": "Overrides for `NextjsGlobalContainers`."
      },
      "fqn": "cdk-nextjs.NextjsGlobalContainersOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-containers.ts",
        "line": 32
      },
      "name": "NextjsGlobalContainersOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 34
          },
          "name": "nextjsContainers",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsContainersOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 35
          },
          "name": "nextjsDistribution",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsDistributionOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 33
          },
          "name": "nextjsGlobalContainers",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsGlobalContainersConstructOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-containers:NextjsGlobalContainersOverrides"
    },
    "cdk-nextjs.NextjsGlobalContainersProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsGlobalContainersProps",
      "interfaces": [
        "cdk-nextjs.NextjsBaseProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-containers.ts",
        "line": 38
      },
      "name": "NextjsGlobalContainersProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Can be used with `basePath` to host multiple\napps on the same CloudFront distribution.",
            "stability": "stable",
            "summary": "Bring your own distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 43
          },
          "name": "distribution",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.Distribution"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override props of any construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-containers.ts",
            "line": 47
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsGlobalContainersOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-containers:NextjsGlobalContainersProps"
    },
    "cdk-nextjs.NextjsGlobalFunctions": {
      "assembly": "cdk-nextjs",
      "base": "cdk-nextjs.NextjsBaseConstruct",
      "docs": {
        "stability": "stable",
        "summary": "Deploy Next.js globally distributed with functions. Uses [CloudFront Distribution](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-working-with.html) as Content Delivery Network (CDN) for global distribution and [AWS Lambda Functions](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) for functions."
      },
      "fqn": "cdk-nextjs.NextjsGlobalFunctions",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/root-constructs/nextjs-global-functions.ts",
          "line": 65
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsGlobalFunctionsProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-functions.ts",
        "line": 56
      },
      "name": "NextjsGlobalFunctions",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 59
          },
          "name": "url",
          "overrides": "cdk-nextjs.NextjsBaseConstruct",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 58
          },
          "name": "nextjsDistribution",
          "type": {
            "fqn": "cdk-nextjs.NextjsDistribution"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 57
          },
          "name": "nextjsFunctions",
          "type": {
            "fqn": "cdk-nextjs.NextjsFunctions"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-functions:NextjsGlobalFunctions"
    },
    "cdk-nextjs.NextjsGlobalFunctionsConstructOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsGlobalFunctionsConstructOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseConstructOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-functions.ts",
        "line": 21
      },
      "name": "NextjsGlobalFunctionsConstructOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 24
          },
          "name": "nextjsDistributionProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsDistributionProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 23
          },
          "name": "nextjsFunctionsProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsFunctionsProps"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-functions:NextjsGlobalFunctionsConstructOverrides"
    },
    "cdk-nextjs.NextjsGlobalFunctionsOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "remarks": "Overrides are lower level than\nprops and are passed directly to CDK Constructs giving you more control. It's\nrecommended to use caution and review source code so you know how they're used.",
        "stability": "stable",
        "summary": "Overrides for `NextjsGlobalFunctions`."
      },
      "fqn": "cdk-nextjs.NextjsGlobalFunctionsOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-functions.ts",
        "line": 32
      },
      "name": "NextjsGlobalFunctionsOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 35
          },
          "name": "nextjsDistribution",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsDistributionOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 34
          },
          "name": "nextjsFunctions",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsFunctionsOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 33
          },
          "name": "nextjsGlobalFunctions",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsGlobalFunctionsConstructOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-functions:NextjsGlobalFunctionsOverrides"
    },
    "cdk-nextjs.NextjsGlobalFunctionsProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsGlobalFunctionsProps",
      "interfaces": [
        "cdk-nextjs.NextjsBaseProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-global-functions.ts",
        "line": 38
      },
      "name": "NextjsGlobalFunctionsProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Can be used with `basePath` to host multiple\napps on the same CloudFront distribution.",
            "stability": "stable",
            "summary": "Bring your own distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 43
          },
          "name": "distribution",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.Distribution"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override props of any construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-global-functions.ts",
            "line": 47
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsGlobalFunctionsOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-global-functions:NextjsGlobalFunctionsProps"
    },
    "cdk-nextjs.NextjsPostDeploy": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "1. CloudFront Invalidation (defaults to /*)\n2. Prunes FileSystem by removing directories that don't match this deployments BUILD_ID\n3. Prune S3 by removing objects that don't have next-build-id metadata of\ncurrent build id AND are older than `msTtl`",
        "stability": "stable",
        "summary": "Performs post deployment tasks in custom resource."
      },
      "fqn": "cdk-nextjs.NextjsPostDeploy",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-post-deploy.ts",
          "line": 113
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsPostDeployProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-post-deploy.ts",
        "line": 107
      },
      "name": "NextjsPostDeploy",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 108
          },
          "name": "customResource",
          "type": {
            "fqn": "aws-cdk-lib.CustomResource"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 109
          },
          "name": "lambdaFunction",
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Function"
          }
        }
      ],
      "symbolId": "src/nextjs-post-deploy:NextjsPostDeploy"
    },
    "cdk-nextjs.NextjsPostDeployOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsPostDeployOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-post-deploy.ts",
        "line": 21
      },
      "name": "NextjsPostDeployOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Properties passed into custom resource that are passed to Lambda event handler."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 30
          },
          "name": "customResourceProperties",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalPostDeployCustomResourceProperties"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Props that define the custom resource."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 26
          },
          "name": "customResourceProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalCustomResourceProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 22
          },
          "name": "functionProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalFunctionProps"
          }
        }
      ],
      "symbolId": "src/nextjs-post-deploy:NextjsPostDeployOverrides"
    },
    "cdk-nextjs.NextjsPostDeployProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsPostDeployProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-post-deploy.ts",
        "line": 33
      },
      "name": "NextjsPostDeployProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 34
          },
          "name": "accessPoint",
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPoint"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 35
          },
          "name": "buildId",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBuild.buildImageDigest }",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 39
          },
          "name": "buildImageDigest",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 61
          },
          "name": "vpc",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "If true, logs details in custom resource lambda."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 44
          },
          "name": "debug",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "CloudFront Distribution to invalidate."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 48
          },
          "name": "distribution",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.IDistribution"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override props for every construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 52
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsPostDeployOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBaseProps.relativePathToPackage }",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 56
          },
          "name": "relativePathToPackage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required for `NextjsType.GlobalFunctions` and `NextjsType.GlobalContainers`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 60
          },
          "name": "staticAssetsBucket",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.Bucket"
          }
        }
      ],
      "symbolId": "src/nextjs-post-deploy:NextjsPostDeployProps"
    },
    "cdk-nextjs.NextjsRegionalContainers": {
      "assembly": "cdk-nextjs",
      "base": "cdk-nextjs.NextjsBaseConstruct",
      "docs": {
        "stability": "stable",
        "summary": "Deploy Next.js load balanced with containers. Uses [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) for load balancing and [AWS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html) for containers."
      },
      "fqn": "cdk-nextjs.NextjsRegionalContainers",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/root-constructs/nextjs-regional-containers.ts",
          "line": 53
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsRegionalContainersProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-containers.ts",
        "line": 43
      },
      "name": "NextjsRegionalContainers",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-containers.ts",
            "line": 45
          },
          "name": "url",
          "overrides": "cdk-nextjs.NextjsBaseConstruct",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-containers.ts",
            "line": 44
          },
          "name": "nextjsContainers",
          "type": {
            "fqn": "cdk-nextjs.NextjsContainers"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-containers:NextjsRegionalContainers"
    },
    "cdk-nextjs.NextjsRegionalContainersConstructOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsRegionalContainersConstructOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseConstructOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-containers.ts",
        "line": 15
      },
      "name": "NextjsRegionalContainersConstructOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-containers.ts",
            "line": 17
          },
          "name": "nextjsContainerProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalNextjsContainersProps"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-containers:NextjsRegionalContainersConstructOverrides"
    },
    "cdk-nextjs.NextjsRegionalContainersOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "remarks": "Overrides are lower level than\nprops and are passed directly to CDK Constructs giving you more control. It's\nrecommended to use caution and review source code so you know how they're used.",
        "stability": "stable",
        "summary": "Overrides for `NextjsRegionalContainers`."
      },
      "fqn": "cdk-nextjs.NextjsRegionalContainersOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-containers.ts",
        "line": 25
      },
      "name": "NextjsRegionalContainersOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-containers.ts",
            "line": 27
          },
          "name": "nextjsContainers",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsContainersOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-containers.ts",
            "line": 26
          },
          "name": "nextjsRegionalContainers",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsRegionalContainersConstructOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-containers:NextjsRegionalContainersOverrides"
    },
    "cdk-nextjs.NextjsRegionalContainersProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsRegionalContainersProps",
      "interfaces": [
        "cdk-nextjs.NextjsBaseProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-containers.ts",
        "line": 30
      },
      "name": "NextjsRegionalContainersProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override props of any construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-containers.ts",
            "line": 34
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsRegionalContainersOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-containers:NextjsRegionalContainersProps"
    },
    "cdk-nextjs.NextjsRegionalFunctions": {
      "assembly": "cdk-nextjs",
      "base": "cdk-nextjs.NextjsBaseConstruct",
      "docs": {
        "stability": "stable",
        "summary": "Deploy Next.js regionally with functions. Uses API Gateway REST API for routing requests and AWS Lambda Functions for server-side rendering."
      },
      "fqn": "cdk-nextjs.NextjsRegionalFunctions",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/root-constructs/nextjs-regional-functions.ts",
          "line": 54
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsRegionalFunctionsProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-functions.ts",
        "line": 45
      },
      "name": "NextjsRegionalFunctions",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 48
          },
          "name": "url",
          "overrides": "cdk-nextjs.NextjsBaseConstruct",
          "type": {
            "primitive": "string"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 47
          },
          "name": "nextjsApi",
          "type": {
            "fqn": "cdk-nextjs.NextjsApi"
          }
        },
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 46
          },
          "name": "nextjsFunctions",
          "type": {
            "fqn": "cdk-nextjs.NextjsFunctions"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-functions:NextjsRegionalFunctions"
    },
    "cdk-nextjs.NextjsRegionalFunctionsConstructOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsRegionalFunctionsConstructOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseConstructOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-functions.ts",
        "line": 17
      },
      "name": "NextjsRegionalFunctionsConstructOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 20
          },
          "name": "nextjsApiProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsApiProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 19
          },
          "name": "nextjsFunctionsProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsFunctionsProps"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-functions:NextjsRegionalFunctionsConstructOverrides"
    },
    "cdk-nextjs.NextjsRegionalFunctionsOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "remarks": "Overrides are lower level than\nprops and are passed directly to CDK Constructs giving you more control. It's\nrecommended to use caution and review source code so you know how they're used.",
        "stability": "stable",
        "summary": "Overrides for `NextjsRegionalFunctions`."
      },
      "fqn": "cdk-nextjs.NextjsRegionalFunctionsOverrides",
      "interfaces": [
        "cdk-nextjs.NextjsBaseOverrides"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-functions.ts",
        "line": 28
      },
      "name": "NextjsRegionalFunctionsOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 31
          },
          "name": "nextjsApi",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsApiOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 30
          },
          "name": "nextjsFunctions",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsFunctionsOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 29
          },
          "name": "nextjsRegionalFunctions",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsRegionalFunctionsConstructOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-functions:NextjsRegionalFunctionsOverrides"
    },
    "cdk-nextjs.NextjsRegionalFunctionsProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsRegionalFunctionsProps",
      "interfaces": [
        "cdk-nextjs.NextjsBaseProps"
      ],
      "kind": "interface",
      "locationInModule": {
        "filename": "src/root-constructs/nextjs-regional-functions.ts",
        "line": 34
      },
      "name": "NextjsRegionalFunctionsProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override props of any construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/root-constructs/nextjs-regional-functions.ts",
            "line": 38
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsRegionalFunctionsOverrides"
          }
        }
      ],
      "symbolId": "src/root-constructs/nextjs-regional-functions:NextjsRegionalFunctionsProps"
    },
    "cdk-nextjs.NextjsStaticAssets": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "stability": "stable",
        "summary": "Creates S3 Bucket for public and _next/static assets."
      },
      "fqn": "cdk-nextjs.NextjsStaticAssets",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-static-assets.ts",
          "line": 26
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsStaticAssetsProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-static-assets.ts",
        "line": 21
      },
      "name": "NextjsStaticAssets",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-static-assets.ts",
            "line": 22
          },
          "name": "bucket",
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.Bucket"
          }
        }
      ],
      "symbolId": "src/nextjs-static-assets:NextjsStaticAssets"
    },
    "cdk-nextjs.NextjsStaticAssetsOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsStaticAssetsOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-static-assets.ts",
        "line": 10
      },
      "name": "NextjsStaticAssetsOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-static-assets.ts",
            "line": 11
          },
          "name": "bucketProps",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.BucketProps"
          }
        }
      ],
      "symbolId": "src/nextjs-static-assets:NextjsStaticAssetsOverrides"
    },
    "cdk-nextjs.NextjsStaticAssetsProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsStaticAssetsProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-static-assets.ts",
        "line": 14
      },
      "name": "NextjsStaticAssetsProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-static-assets.ts",
            "line": 15
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsStaticAssetsOverrides"
          }
        }
      ],
      "symbolId": "src/nextjs-static-assets:NextjsStaticAssetsProps"
    },
    "cdk-nextjs.NextjsType": {
      "assembly": "cdk-nextjs",
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsType",
      "kind": "enum",
      "locationInModule": {
        "filename": "src/constants.ts",
        "line": 1
      },
      "members": [
        {
          "docs": {
            "stability": "stable"
          },
          "name": "GLOBAL_CONTAINERS"
        },
        {
          "docs": {
            "stability": "stable"
          },
          "name": "GLOBAL_FUNCTIONS"
        },
        {
          "docs": {
            "stability": "stable"
          },
          "name": "REGIONAL_CONTAINERS"
        },
        {
          "docs": {
            "stability": "stable"
          },
          "name": "REGIONAL_FUNCTIONS"
        }
      ],
      "name": "NextjsType",
      "symbolId": "src/constants:NextjsType"
    },
    "cdk-nextjs.NextjsVpc": {
      "assembly": "cdk-nextjs",
      "base": "constructs.Construct",
      "docs": {
        "remarks": "Note, if you use `NextjsVpc` then the default CDK VPC will be created\nfor you with 2 AZs of all 3 types of subnets with a NAT Gateway in your\n`SubnetType.PUBLIC` subnet to allow for secure internet access from your\n`SubnetType.PRIVATE_WITH_EGRESS` subnet. This is recommended by AWS, but\nit costs $65/month for 2 AZs. See examples/low-cost for alternative.",
        "see": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ec2-readme.html#subnet-types",
        "stability": "stable",
        "summary": "cdk-nextjs requires a VPC because of the use of EFS but if you're building on AWS you probably already need one for other resources (i.e. RDS/Aurora). You can provide your own VPC via `overrides.nextjsVpc.vpc` but you'll be responsible for creating the VPC. All cdk-nextjs constructs require a `SubnetType.PRIVATE_ISOLATED` subnet for EFS and `SubnetType.PRIVATE_WITH_EGRESS` for compute. `NextjsRegionalContainers` requires a `SubnetType.PUBLIC` subnet for CloudFront to reach the ALB. `NextjsGlobalFunctions` and `NextjsGlobalContainers` don't require a `SubnetType.PUBLIC` subnet because CloudFront accesses their compute securely through Function URL and VPC Origin Access."
      },
      "fqn": "cdk-nextjs.NextjsVpc",
      "initializer": {
        "docs": {
          "stability": "stable"
        },
        "locationInModule": {
          "filename": "src/nextjs-vpc.ts",
          "line": 52
        },
        "parameters": [
          {
            "name": "scope",
            "type": {
              "fqn": "constructs.Construct"
            }
          },
          {
            "name": "id",
            "type": {
              "primitive": "string"
            }
          },
          {
            "name": "props",
            "type": {
              "fqn": "cdk-nextjs.NextjsVpcProps"
            }
          }
        ]
      },
      "kind": "class",
      "locationInModule": {
        "filename": "src/nextjs-vpc.ts",
        "line": 47
      },
      "name": "NextjsVpc",
      "properties": [
        {
          "docs": {
            "stability": "stable"
          },
          "locationInModule": {
            "filename": "src/nextjs-vpc.ts",
            "line": 48
          },
          "name": "vpc",
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/nextjs-vpc:NextjsVpc"
    },
    "cdk-nextjs.NextjsVpcOverrides": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsVpcOverrides",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-vpc.ts",
        "line": 11
      },
      "name": "NextjsVpcOverrides",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-vpc.ts",
            "line": 12
          },
          "name": "vpcProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.OptionalVpcProps"
          }
        }
      ],
      "symbolId": "src/nextjs-vpc:NextjsVpcOverrides"
    },
    "cdk-nextjs.NextjsVpcProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.NextjsVpcProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-vpc.ts",
        "line": 15
      },
      "name": "NextjsVpcProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-vpc.ts",
            "line": 16
          },
          "name": "nextjsType",
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Override any construct."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-vpc.ts",
            "line": 20
          },
          "name": "overrides",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsVpcOverrides"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Bring your own VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-vpc.ts",
            "line": 24
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/nextjs-vpc:NextjsVpcProps"
    },
    "cdk-nextjs.OptionalApplicationLoadBalancedTaskImageOptions": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalApplicationLoadBalancedTaskImageOptions."
      },
      "fqn": "cdk-nextjs.OptionalApplicationLoadBalancedTaskImageOptions",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
        "line": 7
      },
      "name": "OptionalApplicationLoadBalancedTaskImageOptions",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "none",
            "remarks": "If there are multiple arguments, make sure that each argument is a separated string in the array.\n\nThis parameter maps to `Cmd` in the [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) section\nof the [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) and the `COMMAND` parameter to\n[docker run](https://docs.docker.com/engine/reference/commandline/run/).\n\nFor more information about the Docker `CMD` parameter, see https://docs.docker.com/engine/reference/builder/#cmd.",
            "stability": "stable",
            "summary": "The command that's passed to the container."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 100
          },
          "name": "command",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- none",
            "stability": "stable",
            "summary": "The container name value to be specified in the task definition."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 87
          },
          "name": "containerName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "80",
            "remarks": "If you are using containers in a task with the awsvpc or host network mode, exposed ports should be specified using containerPort.\nIf you are using containers in a task with the bridge network mode and you specify a container port and not a host port,\nyour container automatically receives a host port in the ephemeral port range.\n\nPort mappings that are automatically assigned in this way do not count toward the 100 reserved ports limit of a container instance.\n\nFor more information, see\n[hostPort](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PortMapping.html#ECS-Type-PortMapping-hostPort).",
            "stability": "stable",
            "summary": "The port number on the container that is bound to the user-specified or automatically assigned host port."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 81
          },
          "name": "containerPort",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No labels.",
            "stability": "stable",
            "summary": "A key/value map of labels to add to the container."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 67
          },
          "name": "dockerLabels",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "Flag to indicate whether to enable logging."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 61
          },
          "name": "enableLogging",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "none",
            "remarks": "This parameter maps to `Entrypoint` in the [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) section\nof the [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) and the `--entrypoint` option to\n[docker run](https://docs.docker.com/engine/reference/commandline/run/).\n\nFor more information about the Docker `ENTRYPOINT` parameter, see https://docs.docker.com/engine/reference/builder/#entrypoint.",
            "stability": "stable",
            "summary": "The entry point that's passed to the container."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 55
          },
          "name": "entryPoint",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No environment variables.",
            "stability": "stable",
            "summary": "The environment variables to pass to the container."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 44
          },
          "name": "environment",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No value",
            "stability": "stable",
            "summary": "The name of the task execution IAM role that grants the Amazon ECS container agent permission to call AWS APIs on your behalf."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 38
          },
          "name": "executionRole",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Automatically generated name.",
            "remarks": "A family groups multiple versions of a task definition.",
            "stability": "stable",
            "summary": "The name of a family that this task definition is registered to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 32
          },
          "name": "family",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- none",
            "remarks": "Image or taskDefinition must be specified, not both.",
            "stability": "stable",
            "summary": "The image used to start a container."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 107
          },
          "name": "image",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.ContainerImage"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AwsLogDriver if enableLogging is true",
            "stability": "stable",
            "summary": "The log driver to use."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 25
          },
          "name": "logDriver",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.LogDriver"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No secret environment variables.",
            "stability": "stable",
            "summary": "The secret to expose to the container as an environment variable."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 19
          },
          "name": "secrets",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ecs.Secret"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A task role is automatically created for you.",
            "stability": "stable",
            "summary": "The name of the task IAM role that grants containers in the task permission to call AWS APIs on your behalf."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions.ts",
            "line": 13
          },
          "name": "taskRole",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalApplicationLoadBalancedTaskImageOptions:OptionalApplicationLoadBalancedTaskImageOptions"
    },
    "cdk-nextjs.OptionalCloudFrontFunctionProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalCloudFrontFunctionProps."
      },
      "fqn": "cdk-nextjs.OptionalCloudFrontFunctionProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalCloudFrontFunctionProps.ts",
        "line": 7
      },
      "name": "OptionalCloudFrontFunctionProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- true",
            "stability": "stable",
            "summary": "A flag that determines whether to automatically publish the function to the LIVE stage when it’s created."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCloudFrontFunctionProps.ts",
            "line": 39
          },
          "name": "autoPublish",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "The source code of the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCloudFrontFunctionProps.ts",
            "line": 44
          },
          "name": "code",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.FunctionCode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- same as `functionName`",
            "stability": "stable",
            "summary": "A comment to describe the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCloudFrontFunctionProps.ts",
            "line": 33
          },
          "name": "comment",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- generated from the `id`",
            "stability": "stable",
            "summary": "A name to identify the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCloudFrontFunctionProps.ts",
            "line": 27
          },
          "name": "functionName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no key value store is associated",
            "remarks": "In order to associate a Key Value Store, the `runtime` must be\n`cloudfront-js-2.0` or newer.",
            "stability": "stable",
            "summary": "The Key Value Store to associate with this function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCloudFrontFunctionProps.ts",
            "line": 21
          },
          "name": "keyValueStore",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.IKeyValueStore"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "FunctionRuntime.JS_1_0 (unless `keyValueStore` is specified, then `FunctionRuntime.JS_2_0`)",
            "stability": "stable",
            "summary": "The runtime environment for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCloudFrontFunctionProps.ts",
            "line": 13
          },
          "name": "runtime",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.FunctionRuntime"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalCloudFrontFunctionProps:OptionalCloudFrontFunctionProps"
    },
    "cdk-nextjs.OptionalClusterProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalClusterProps."
      },
      "fqn": "cdk-nextjs.OptionalClusterProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalClusterProps.ts",
        "line": 7
      },
      "name": "OptionalClusterProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- no EC2 capacity will be added, you can use `addCapacity` to add capacity later.",
            "stability": "stable",
            "summary": "The ec2 capacity to add to the cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 63
          },
          "name": "capacity",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.AddCapacityOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "CloudFormation-generated name",
            "stability": "stable",
            "summary": "The name for the cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 57
          },
          "name": "clusterName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Container Insights will be disabled for this cluster.",
            "deprecated": "See {@link containerInsightsV2 }",
            "stability": "deprecated",
            "summary": "If true CloudWatch Container Insights will be enabled for the cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 51
          },
          "name": "containerInsights",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "{@link ContainerInsights.DISABLED } This may be overridden by ECS account level settings.",
            "stability": "stable",
            "summary": "The CloudWatch Container Insights configuration for the cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 44
          },
          "name": "containerInsightsV2",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.ContainerInsights"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no service discovery namespace created, you can use `addDefaultCloudMapNamespace` to add a\ndefault service discovery namespace later.",
            "stability": "stable",
            "summary": "The service discovery namespace created in this cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 38
          },
          "name": "defaultCloudMapNamespace",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.CloudMapNamespaceOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "stable",
            "summary": "Whether to enable Fargate Capacity Providers."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 31
          },
          "name": "enableFargateCapacityProviders",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no configuration will be provided.",
            "stability": "stable",
            "summary": "The execute command configuration for the cluster."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 25
          },
          "name": "executeCommandConfiguration",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.ExecuteCommandConfiguration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no encryption will be applied.",
            "stability": "stable",
            "summary": "Encryption configuration for ECS Managed storage."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 19
          },
          "name": "managedStorageConfiguration",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecs.ManagedStorageConfiguration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- creates a new VPC with two AZs",
            "stability": "stable",
            "summary": "The VPC where your ECS instances will be running or your ENIs will be deployed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalClusterProps.ts",
            "line": 13
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalClusterProps:OptionalClusterProps"
    },
    "cdk-nextjs.OptionalCustomResourceProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalCustomResourceProps."
      },
      "fqn": "cdk-nextjs.OptionalCustomResourceProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalCustomResourceProps.ts",
        "line": 7
      },
      "name": "OptionalCustomResourceProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "stable",
            "summary": "Convert all property keys to pascal case."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCustomResourceProps.ts",
            "line": 57
          },
          "name": "pascalCaseProperties",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No properties.",
            "remarks": "Values in this `properties` dictionary can possibly overwrite other values in `CustomResourceProps`\nE.g. `ServiceToken` and `ServiceTimeout`\nIt is recommended to avoid using same keys that exist in `CustomResourceProps`",
            "stability": "stable",
            "summary": "Properties to pass to the Lambda."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCustomResourceProps.ts",
            "line": 51
          },
          "name": "properties",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "any"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "cdk.RemovalPolicy.Destroy",
            "stability": "stable",
            "summary": "The policy to apply when this resource is removed from the application."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCustomResourceProps.ts",
            "line": 42
          },
          "name": "removalPolicy",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.RemovalPolicy"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AWS::CloudFormation::CustomResource",
            "remarks": "For example, you can use \"Custom::MyCustomResourceTypeName\".\n\nCustom resource type names must begin with \"Custom::\" and can include\nalphanumeric characters and the following characters: _@-. You can specify\na custom resource type name up to a maximum length of 60 characters. You\ncannot change the type during an update.\n\nUsing your own resource type names helps you quickly differentiate the\ntypes of custom resources in your stack. For example, if you had two custom\nresources that conduct two different ping tests, you could name their type\nas Custom::PingTester to make them easily identifiable as ping testers\n(instead of using AWS::CloudFormation::CustomResource).",
            "stability": "stable",
            "summary": "For custom resources, you can specify AWS::CloudFormation::CustomResource (the default) as the resource type, or you can specify your own resource type name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCustomResourceProps.ts",
            "line": 36
          },
          "name": "resourceType",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.seconds(3600)",
            "remarks": "The value must be between 1 second and 3600 seconds.\n\nMaps to [ServiceTimeout](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-customresource.html#cfn-cloudformation-customresource-servicetimeout) property for the `AWS::CloudFormation::CustomResource` resource\n\nA token can be specified for this property, but it must be specified with `Duration.seconds()`.",
            "stability": "stable",
            "summary": "The maximum time that can elapse before a custom resource operation times out."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCustomResourceProps.ts",
            "line": 18
          },
          "name": "serviceTimeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "You can implement a provider by listening to raw AWS CloudFormation events\nand specify the ARN of an SNS topic (`topic.topicArn`) or the ARN of an AWS\nLambda function (`lambda.functionArn`) or use the CDK's custom [resource\nprovider framework] which makes it easier to implement robust providers.\n\n[resource provider framework]:\nhttps://docs.aws.amazon.com/cdk/api/latest/docs/custom-resources-readme.html\n\nProvider framework:\n\n```ts\n// use the provider framework from aws-cdk/custom-resources:\nconst provider = new customresources.Provider(this, 'ResourceProvider', {\n  onEventHandler,\n  isCompleteHandler, // optional\n});\n\nnew CustomResource(this, 'MyResource', {\n  serviceToken: provider.serviceToken,\n});\n```\n\nAWS Lambda function (not recommended to use AWS Lambda Functions directly,\nsee the module README):\n\n```ts\n// invoke an AWS Lambda function when a lifecycle event occurs:\nnew CustomResource(this, 'MyResource', {\n  serviceToken: myFunction.functionArn,\n});\n```\n\nSNS topic (not recommended to use AWS Lambda Functions directly, see the\nmodule README):\n\n```ts\n// publish lifecycle events to an SNS topic:\nnew CustomResource(this, 'MyResource', {\n  serviceToken: myTopic.topicArn,\n});\n```\n\nMaps to [ServiceToken](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-customresource.html#cfn-cloudformation-customresource-servicetoken) property for the `AWS::CloudFormation::CustomResource` resource",
            "stability": "stable",
            "summary": "The ARN of the provider which implements this custom resource type."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalCustomResourceProps.ts",
            "line": 105
          },
          "name": "serviceToken",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalCustomResourceProps:OptionalCustomResourceProps"
    },
    "cdk-nextjs.OptionalDistributionProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalDistributionProps."
      },
      "fqn": "cdk-nextjs.OptionalDistributionProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalDistributionProps.ts",
        "line": 7
      },
      "name": "OptionalDistributionProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- no additional behaviors are added.",
            "stability": "stable",
            "summary": "Additional behaviors for the distribution, mapped by the pathPattern that specifies which requests to apply the behavior to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 151
          },
          "name": "additionalBehaviors",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_cloudfront.BehaviorOptions"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- the CloudFront wildcard certificate (*.cloudfront.net) will be used.",
            "remarks": "The certificate must be located in N. Virginia (us-east-1).",
            "stability": "stable",
            "summary": "A certificate to associate with the distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 145
          },
          "name": "certificate",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_certificatemanager.ICertificate"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no comment",
            "stability": "stable",
            "summary": "Any comments you want to include about the distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 138
          },
          "name": "comment",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "The default behavior for the distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 156
          },
          "name": "defaultBehavior",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.BehaviorOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no default root object",
            "stability": "stable",
            "summary": "The object that you want CloudFront to request from your origin (for example, index.html) when a viewer requests the root URL for your distribution. If no default object is set, the request goes to the origin's root (e.g., example.com/)."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 132
          },
          "name": "defaultRootObject",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- The distribution will only support the default generated name (e.g., d111111abcdef8.cloudfront.net)",
            "remarks": "If you want to use your own domain name, such as www.example.com, instead of the cloudfront.net domain name,\nyou can add an alternate domain name to your distribution. If you attach a certificate to the distribution,\nyou should add (at least one of) the domain names of the certificate to this list.\n\nWhen you want to move a domain name between distributions, you can associate a certificate without specifying any domain names.\nFor more information, see the _Moving an alternate domain name to a different distribution_ section in the README.",
            "stability": "stable",
            "summary": "Alternative domain names for this distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 126
          },
          "name": "domainNames",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "Enable or disable the distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 114
          },
          "name": "enabled",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "If you specify false, CloudFront responds to IPv6 DNS requests with the DNS response code NOERROR and with no IP addresses.\nThis allows viewers to submit a second request, for an IPv4 address for your distribution.",
            "stability": "stable",
            "summary": "Whether CloudFront will respond to IPv6 DNS requests with an IPv6 address."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 108
          },
          "name": "enableIpv6",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- false, unless `logBucket` is specified.",
            "stability": "stable",
            "summary": "Enable access logging for the distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 100
          },
          "name": "enableLogging",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No custom error responses.",
            "stability": "stable",
            "summary": "How CloudFront should handle requests that are not successful (e.g., PageNotFound)."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 94
          },
          "name": "errorResponses",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_cloudfront.ErrorResponse"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No geographic restrictions",
            "stability": "stable",
            "summary": "Controls the countries in which your content is distributed."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 88
          },
          "name": "geoRestriction",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.GeoRestriction"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "HttpVersion.HTTP2",
            "remarks": "For viewers and CloudFront to use HTTP/2, viewers must support TLS 1.2 or later, and must support server name identification (SNI).",
            "stability": "stable",
            "summary": "Specify the maximum HTTP version that you want viewers to use to communicate with CloudFront."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 82
          },
          "name": "httpVersion",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.HttpVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A bucket is created if `enableLogging` is true",
            "remarks": "Make sure to set `objectOwnership` to `s3.ObjectOwnership.OBJECT_WRITER` in your custom bucket.",
            "stability": "stable",
            "summary": "The Amazon S3 bucket to store the access logs in."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 75
          },
          "name": "logBucket",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.IBucket"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no prefix",
            "stability": "stable",
            "summary": "An optional string that you want CloudFront to prefix to the access log filenames for this distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 68
          },
          "name": "logFilePrefix",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "stable",
            "summary": "Specifies whether you want CloudFront to include cookies in access logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 62
          },
          "name": "logIncludesCookies",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- SecurityPolicyProtocol.TLS_V1_2_2021 if the '@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021' feature flag is set; otherwise, SecurityPolicyProtocol.TLS_V1_2_2019.",
            "remarks": "CloudFront serves your objects only to browsers or devices that support at\nleast the SSL version that you specify.",
            "stability": "stable",
            "summary": "The minimum version of the SSL protocol that you want CloudFront to use for HTTPS connections."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 56
          },
          "name": "minimumProtocolVersion",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.SecurityPolicyProtocol"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "PriceClass.PRICE_CLASS_ALL",
            "remarks": "If you specify PriceClass_All, CloudFront responds to requests for your objects from all CloudFront edge locations.\nIf you specify a price class other than PriceClass_All, CloudFront serves your objects from the CloudFront edge location\nthat has the lowest latency among the edge locations in your price class.",
            "stability": "stable",
            "summary": "The price class that corresponds with the maximum price that you want to pay for CloudFront service."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 48
          },
          "name": "priceClass",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.PriceClass"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "stability": "stable",
            "summary": "Whether to enable additional CloudWatch metrics."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 39
          },
          "name": "publishAdditionalMetrics",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "SSLMethod.SNI",
            "remarks": "Server Name Indication (SNI) - is an extension to the TLS computer networking protocol by which a client indicates\nwhich hostname it is attempting to connect to at the start of the handshaking process. This allows a server to present\nmultiple certificates on the same IP address and TCP port number and hence allows multiple secure (HTTPS) websites\n(or any other service over TLS) to be served by the same IP address without requiring all those sites to use the same certificate.\n\nCloudFront can use SNI to host multiple distributions on the same IP - which a large majority of clients will support.\n\nIf your clients cannot support SNI however - CloudFront can use dedicated IPs for your distribution - but there is a prorated monthly charge for\nusing this feature. By default, we use SNI - but you can optionally enable dedicated IPs (VIP).\n\nSee the CloudFront SSL for more details about pricing : https://aws.amazon.com/cloudfront/custom-ssl-domains/",
            "stability": "stable",
            "summary": "The SSL method CloudFront will use for your distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 33
          },
          "name": "sslSupportMethod",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.SSLMethod"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No AWS Web Application Firewall web access control list (web ACL).",
            "remarks": "To specify a web ACL created using the latest version of AWS WAF, use the ACL ARN, for example\n`arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a`.\nTo specify a web ACL created using AWS WAF Classic, use the ACL ID, for example `473e64fd-f30b-4765-81a0-62ad96dd167a`.",
            "stability": "stable",
            "summary": "Unique identifier that specifies the AWS WAF web ACL to associate with this CloudFront distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDistributionProps.ts",
            "line": 16
          },
          "name": "webAclId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalDistributionProps:OptionalDistributionProps"
    },
    "cdk-nextjs.OptionalDockerImageAssetProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalDockerImageAssetProps."
      },
      "fqn": "cdk-nextjs.OptionalDockerImageAssetProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
        "line": 7
      },
      "name": "OptionalDockerImageAssetProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- no asset name",
            "remarks": "Required if using AppScopedStagingSynthesizer.",
            "stability": "stable",
            "summary": "Unique identifier of the docker image asset and its potential revisions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 120
          },
          "name": "assetName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no build args are passed",
            "remarks": "Since Docker build arguments are resolved before deployment, keys and\nvalues cannot refer to unresolved tokens (such as `lambda.functionArn` or\n`queue.queueUrl`).",
            "stability": "stable",
            "summary": "Build args to pass to the `docker build` command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 113
          },
          "name": "buildArgs",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no build secrets",
            "remarks": "Docker BuildKit must be enabled to use build secrets.",
            "stability": "stable",
            "summary": "Build secrets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 104
          },
          "name": "buildSecrets",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no --ssh flag",
            "remarks": "Docker BuildKit must be enabled to use the ssh flag",
            "stability": "stable",
            "summary": "SSH agent socket or keys to pass to the `docker build` command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 97
          },
          "name": "buildSsh",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- cache is used",
            "stability": "stable",
            "summary": "Disable the cache and pass `--no-cache` to the `docker build` command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 90
          },
          "name": "cacheDisabled",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no cache from options are passed to the build command",
            "stability": "stable",
            "summary": "Cache from options to pass to the `docker build` command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 84
          },
          "name": "cacheFrom",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ecr_assets.DockerCacheOption"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no cache to options are passed to the build command",
            "stability": "stable",
            "summary": "Cache to options to pass to the `docker build` command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 78
          },
          "name": "cacheTo",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.DockerCacheOption"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "Any directory inside with a name that matches the CDK output folder (cdk.out by default) will be excluded from the asset",
            "stability": "stable",
            "summary": "The directory where the Dockerfile is stored."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 13
          },
          "name": "directory",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Stack-relative construct path",
            "remarks": "If supplied, the display name will be used in locations where the asset\nidentifier is printed, like in the CLI progress information. If the same\nasset is added multiple times, the display name of the first occurrence is\nused.\n\nIf `assetName` is given, it will also be used as the default `displayName`.\nOtherwise, the default is the construct path of the ImageAsset construct,\nwith respect to the enclosing stack. If the asset is produced by a\nconstruct helper function (such as `lambda.Code.fromAssetImage()`), this\nwill look like `MyFunction/AssetImage`.\n\nWe use the stack-relative construct path so that in the common case where\nyou have multiple stacks with the same asset, we won't show something like\n`/MyBetaStack/MyFunction/Code` when you are actually deploying to\nproduction.",
            "stability": "stable",
            "summary": "A display name for this asset."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 72
          },
          "name": "displayName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- nothing is excluded",
            "remarks": "See `ignoreMode` to set the matching behavior.\nHas no effect on Assets bundled using the `bundling` property.",
            "stability": "stable",
            "summary": "File paths matching the patterns will be excluded."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 146
          },
          "name": "exclude",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- hash is only based on source content",
            "stability": "stable",
            "summary": "Extra information to encode into the fingerprint (e.g. build instructions and other inputs)."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 126
          },
          "name": "extraHash",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "'Dockerfile'",
            "stability": "stable",
            "summary": "Path to the Dockerfile (relative to the directory)."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 51
          },
          "name": "file",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "SymlinkFollowMode.NEVER",
            "stability": "stable",
            "summary": "A strategy for how to handle symlinks."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 138
          },
          "name": "followSymlinks",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.SymlinkFollowMode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "IgnoreMode.GLOB",
            "stability": "stable",
            "summary": "The ignore behavior to use for `exclude` patterns."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 132
          },
          "name": "ignoreMode",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.IgnoreMode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- hash all parameters",
            "stability": "stable",
            "summary": "Options to control which parameters are used to invalidate the asset hash."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 45
          },
          "name": "invalidation",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.DockerImageAssetInvalidationOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no networking mode specified (the default networking mode `NetworkMode.DEFAULT` will be used)",
            "remarks": "Support docker API 1.25+.",
            "stability": "stable",
            "summary": "Networking mode for the RUN commands during build."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 39
          },
          "name": "networkMode",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.NetworkMode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no outputs are passed to the build command (default outputs are used)",
            "stability": "stable",
            "summary": "Outputs to pass to the `docker build` command."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 32
          },
          "name": "outputs",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no platform specified (the current machine architecture will be used)",
            "remarks": "_Requires Docker Buildx_.",
            "stability": "stable",
            "summary": "Platform to build for."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 26
          },
          "name": "platform",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.Platform"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no target",
            "stability": "stable",
            "summary": "Docker target to build to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageAssetProps.ts",
            "line": 19
          },
          "name": "target",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalDockerImageAssetProps:OptionalDockerImageAssetProps"
    },
    "cdk-nextjs.OptionalDockerImageFunctionProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalDockerImageFunctionProps."
      },
      "fqn": "cdk-nextjs.OptionalDockerImageFunctionProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
        "line": 7
      },
      "name": "OptionalDockerImageFunctionProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- No ADOT instrumentation",
            "stability": "stable",
            "summary": "Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 372
          },
          "name": "adotInstrumentation",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.AdotInstrumentationConfig"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "If set to true, there will only be a single egress rule which allows all\noutbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the\nLambda to connect to network targets using ipv6.\n\nDo not specify this property if the `securityGroups` or `securityGroup` property is set.\nInstead, configure `allowAllIpv6Outbound` directly on the security group.",
            "stability": "stable",
            "summary": "Whether to allow the Lambda to send all ipv6 network traffic."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 366
          },
          "name": "allowAllIpv6Outbound",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "If set to false, you must individually add traffic rules to allow the\nLambda to connect to network targets.\n\nDo not specify this property if the `securityGroups` or `securityGroup` property is set.\nInstead, configure `allowAllOutbound` directly on the security group.",
            "stability": "stable",
            "summary": "Whether to allow the Lambda to send all network traffic (except ipv6)."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 354
          },
          "name": "allowAllOutbound",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Use this property to acknowledge this limitation and still place the function in a public subnet.",
            "stability": "stable",
            "summary": "Lambda Functions in a public subnet can NOT access the internet."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 343
          },
          "name": "allowPublicSubnet",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"INFO\"",
            "deprecated": "Use `applicationLogLevelV2` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the application log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 336
          },
          "name": "applicationLogLevel",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "ApplicationLogLevel.INFO",
            "stability": "stable",
            "summary": "Sets the application log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 329
          },
          "name": "applicationLogLevelV2",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ApplicationLogLevel"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Architecture.X86_64",
            "stability": "stable",
            "summary": "The system architectures compatible with this lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 323
          },
          "name": "architecture",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "You can point to a file in an\nAmazon Simple Storage Service (Amazon S3) bucket or specify your source\ncode as inline text.",
            "stability": "stable",
            "summary": "The source code of your Lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 15
          },
          "name": "code",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageCode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Not Sign the Code",
            "stability": "stable",
            "summary": "Code signing config associated with this function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 317
          },
          "name": "codeSigningConfig",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ICodeSigningConfig"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- default options as described in `VersionOptions`",
            "stability": "stable",
            "summary": "Options for the `lambda.Version` resource automatically created by the `fn.currentVersion` method."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 311
          },
          "name": "currentVersionOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.VersionOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- SQS queue with 14 day retention period if `deadLetterQueueEnabled` is `true`",
            "remarks": "If SNS topic is desired, specify `deadLetterTopic` property instead.",
            "stability": "stable",
            "summary": "The SQS queue to use if DLQ is enabled."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 305
          },
          "name": "deadLetterQueue",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_sqs.IQueue"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- false unless `deadLetterQueue` is set, which implies DLQ is enabled.",
            "remarks": "If `deadLetterQueue` is undefined,\nan SQS queue with default options will be defined for your Function.",
            "stability": "stable",
            "summary": "Enabled DLQ."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 298
          },
          "name": "deadLetterQueueEnabled",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no SNS topic",
            "remarks": "Note that if `deadLetterQueueEnabled` is set to `true`, an SQS queue will be created\nrather than an SNS topic. Using an SNS topic as a DLQ requires this property to be set explicitly.",
            "stability": "stable",
            "summary": "The SNS topic to use as a DLQ."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 290
          },
          "name": "deadLetterTopic",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_sns.ITopic"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No description.",
            "stability": "stable",
            "summary": "A description of the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 282
          },
          "name": "description",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No environment variables.",
            "remarks": "Use environment variables to apply configuration changes, such\nas test and production environment configurations, without changing your\nLambda function source code.",
            "stability": "stable",
            "summary": "Key-value pairs that Lambda caches and makes available for your Lambda functions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 276
          },
          "name": "environment",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AWS Lambda creates and uses an AWS managed customer master key (CMK).",
            "stability": "stable",
            "summary": "The AWS KMS key that's used to encrypt your function's environment variables."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 267
          },
          "name": "environmentEncryption",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_kms.IKey"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "512 MiB",
            "stability": "stable",
            "summary": "The size of the function’s /tmp directory in MiB."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 261
          },
          "name": "ephemeralStorageSize",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Size"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No event sources.",
            "remarks": "You can also add event sources using `addEventSource`.",
            "stability": "stable",
            "summary": "Event sources for this function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 255
          },
          "name": "events",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_lambda.IEventSource"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- will not mount any filesystem",
            "stability": "stable",
            "summary": "The filesystem configuration for the lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 248
          },
          "name": "filesystem",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.FileSystem"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AWS CloudFormation generates a unique physical ID and uses that\nID for the function's name. For more information, see Name Type.",
            "stability": "stable",
            "summary": "A name for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 242
          },
          "name": "functionName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No policy statements are added to the created Lambda role.",
            "remarks": "You can call `addToRolePolicy` to the created lambda to add statements post creation.",
            "stability": "stable",
            "summary": "Initial policy statements to add to the created Lambda Role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 235
          },
          "name": "initialPolicy",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_iam.PolicyStatement"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No Lambda Insights",
            "stability": "stable",
            "summary": "Specify the version of CloudWatch Lambda insights to use for monitoring."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 228
          },
          "name": "insightsVersion",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LambdaInsightsVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Only used if 'vpc' is supplied.",
            "stability": "stable",
            "summary": "Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 222
          },
          "name": "ipv6AllowedForDualStack",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No layers.",
            "remarks": "You can configure your Lambda function to pull in\nadditional code during initialization in the form of layers. Layers are packages of libraries or other dependencies\nthat can be used by multiple functions.",
            "stability": "stable",
            "summary": "A list of layers to add to the function's execution environment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 215
          },
          "name": "layers",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_lambda.ILayerVersion"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"Text\"",
            "deprecated": "Use `loggingFormat` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the logFormat for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 206
          },
          "name": "logFormat",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "LoggingFormat.TEXT",
            "stability": "stable",
            "summary": "Sets the loggingFormat for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 199
          },
          "name": "loggingFormat",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LoggingFormat"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "`/aws/lambda/${this.functionName}` - default log group created by Lambda",
            "remarks": "By default, Lambda functions send logs to an automatically created default log group named /aws/lambda/\\<function name\\>.\nHowever you cannot change the properties of this auto-created log group using the AWS CDK, e.g. you cannot set a different log retention.\n\nUse the `logGroup` property to create a fully customizable LogGroup ahead of time, and instruct the Lambda function to send logs to it.\n\nProviding a user-controlled log group was rolled out to commercial regions on 2023-11-16.\nIf you are deploying to another type of region, please check regional availability first.",
            "stability": "stable",
            "summary": "The log group the function sends logs to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 193
          },
          "name": "logGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.INFINITE",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.\n\nThis is a legacy API and we strongly recommend you move away from it if you can.\nInstead create a fully customizable log group with `logs.LogGroup` and use the `logGroup` property\nto instruct the Lambda function to send logs to it.\nMigrating from `logRetention` to `logGroup` will cause the name of the log group to change.\nUsers and code and referencing the name verbatim will have to adjust.\n\nIn AWS CDK code, you can access the log group name directly from the LogGroup construct:\n```ts\nimport * as logs from 'aws-cdk-lib/aws-logs';\n\ndeclare const myLogGroup: logs.LogGroup;\nmyLogGroup.logGroupName;\n```",
            "stability": "stable",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 180
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Default AWS SDK retry options.",
            "remarks": "These options control the retry policy when interacting with CloudWatch APIs.\n\nThis is a legacy API and we strongly recommend you migrate to `logGroup` if you can.\n`logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.",
            "stability": "stable",
            "summary": "When log retention is specified, a custom resource attempts to create the CloudWatch log group."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 157
          },
          "name": "logRetentionRetryOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LogRetentionRetryOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A new role is created.",
            "remarks": "This is a legacy API and we strongly recommend you migrate to `logGroup` if you can.\n`logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.",
            "stability": "stable",
            "summary": "The IAM role for the Lambda function associated with the custom resource that sets the retention policy."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 147
          },
          "name": "logRetentionRole",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.hours(6)",
            "remarks": "Minimum: 60 seconds\nMaximum: 6 hours",
            "stability": "stable",
            "summary": "The maximum age of a request that Lambda sends to a function for processing."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 400
          },
          "name": "maxEventAge",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "128",
            "remarks": "Lambda uses this value to proportionally allocate the amount of CPU\npower. For more information, see Resource Model in the AWS Lambda\nDeveloper Guide.",
            "stability": "stable",
            "summary": "The amount of memory, in MB, that is allocated to your Lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 139
          },
          "name": "memorySize",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no destination",
            "stability": "stable",
            "summary": "The destination for failed invocations."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 392
          },
          "name": "onFailure",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IDestination"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no destination",
            "stability": "stable",
            "summary": "The destination for successful invocations."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 386
          },
          "name": "onSuccess",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IDestination"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No Parameters and Secrets Extension",
            "stability": "stable",
            "summary": "Specify the configuration of Parameters and Secrets Extension."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 130
          },
          "name": "paramsAndSecrets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ParamsAndSecretsLayerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No profiling.",
            "stability": "stable",
            "summary": "Enable profiling."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 124
          },
          "name": "profiling",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A new profiling group will be created if `profiling` is set.",
            "stability": "stable",
            "summary": "Profiling Group."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 118
          },
          "name": "profilingGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codeguruprofiler.IProfilingGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "RecursiveLoop.Terminate",
            "remarks": "It lets Lambda detect and terminate unintended recursive loops.",
            "stability": "stable",
            "summary": "Sets the Recursive Loop Protection for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 112
          },
          "name": "recursiveLoop",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.RecursiveLoop"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No specific limit - account limit.",
            "stability": "stable",
            "summary": "The maximum of concurrent executions you want to reserve for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 105
          },
          "name": "reservedConcurrentExecutions",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "2",
            "remarks": "Minimum: 0\nMaximum: 2",
            "stability": "stable",
            "summary": "The maximum number of times to retry when the function returns an error."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 380
          },
          "name": "retryAttempts",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A unique role will be generated for this lambda function.\nBoth supplied and generated roles can always be changed by calling `addToRolePolicy`.",
            "remarks": "This is the role that will be assumed by the function upon execution.\nIt controls the permissions that the function will have. The Role must\nbe assumable by the 'lambda.amazonaws.com' service principal.\n\nThe default Role automatically has permissions granted for Lambda execution. If you\nprovide a Role, you must add the relevant AWS managed policies yourself.\n\nThe relevant managed policies are \"service-role/AWSLambdaBasicExecutionRole\" and\n\"service-role/AWSLambdaVPCAccessExecutionRole\".",
            "stability": "stable",
            "summary": "Lambda execution role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 99
          },
          "name": "role",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Auto",
            "stability": "stable",
            "summary": "Sets the runtime management configuration for a function's version."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 83
          },
          "name": "runtimeManagementMode",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.RuntimeManagementMode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- If the function is placed within a VPC and a security group is\nnot specified, either by this or securityGroup prop, a dedicated security\ngroup will be created for this function.",
            "remarks": "Only used if 'vpc' is supplied.",
            "stability": "stable",
            "summary": "The list of security groups to associate with the Lambda's network interfaces."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 77
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No snapstart",
            "remarks": "SnapStart is currently supported for Java 11, Java 17, Python 3.12, Python 3.13, and .NET 8 runtime",
            "stability": "stable",
            "summary": "Enable SnapStart for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 68
          },
          "name": "snapStart",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.SnapStartConf"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"INFO\"",
            "deprecated": "Use `systemLogLevelV2` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the system log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 61
          },
          "name": "systemLogLevel",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "SystemLogLevel.INFO",
            "stability": "stable",
            "summary": "Sets the system log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 54
          },
          "name": "systemLogLevelV2",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.SystemLogLevel"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.seconds(3)",
            "remarks": "Because the execution time affects cost, set this value\nbased on the function's expected execution time.",
            "stability": "stable",
            "summary": "The function execution time (in seconds) after which Lambda terminates the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 48
          },
          "name": "timeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Tracing.Disabled",
            "stability": "stable",
            "summary": "Enable AWS X-Ray Tracing for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 40
          },
          "name": "tracing",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Tracing"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Function is not placed within a VPC.",
            "remarks": "Specify this if the Lambda function needs to access resources in a VPC.\nThis is required when `vpcSubnets` is specified.",
            "stability": "stable",
            "summary": "VPC network to place Lambda network interfaces."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 34
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- the Vpc default strategy if not specified",
            "remarks": "This requires `vpc` to be specified in order for interfaces to actually be\nplaced in the subnets. If `vpc` is not specify, this will raise an error.\n\nNote: Internet access for Lambda Functions requires a NAT Gateway, so picking\npublic subnets is not allowed (unless `allowPublicSubnet` is set to `true`).",
            "stability": "stable",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalDockerImageFunctionProps.ts",
            "line": 26
          },
          "name": "vpcSubnets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalDockerImageFunctionProps:OptionalDockerImageFunctionProps"
    },
    "cdk-nextjs.OptionalEdgeFunctionProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalEdgeFunctionProps."
      },
      "fqn": "cdk-nextjs.OptionalEdgeFunctionProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
        "line": 7
      },
      "name": "OptionalEdgeFunctionProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- No ADOT instrumentation",
            "stability": "stable",
            "summary": "Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 401
          },
          "name": "adotInstrumentation",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.AdotInstrumentationConfig"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "If set to true, there will only be a single egress rule which allows all\noutbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the\nLambda to connect to network targets using ipv6.\n\nDo not specify this property if the `securityGroups` or `securityGroup` property is set.\nInstead, configure `allowAllIpv6Outbound` directly on the security group.",
            "stability": "stable",
            "summary": "Whether to allow the Lambda to send all ipv6 network traffic."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 395
          },
          "name": "allowAllIpv6Outbound",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "If set to false, you must individually add traffic rules to allow the\nLambda to connect to network targets.\n\nDo not specify this property if the `securityGroups` or `securityGroup` property is set.\nInstead, configure `allowAllOutbound` directly on the security group.",
            "stability": "stable",
            "summary": "Whether to allow the Lambda to send all network traffic (except ipv6)."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 383
          },
          "name": "allowAllOutbound",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Use this property to acknowledge this limitation and still place the function in a public subnet.",
            "stability": "stable",
            "summary": "Lambda Functions in a public subnet can NOT access the internet."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 372
          },
          "name": "allowPublicSubnet",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"INFO\"",
            "deprecated": "Use `applicationLogLevelV2` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the application log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 365
          },
          "name": "applicationLogLevel",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "ApplicationLogLevel.INFO",
            "stability": "stable",
            "summary": "Sets the application log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 358
          },
          "name": "applicationLogLevelV2",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ApplicationLogLevel"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Architecture.X86_64",
            "stability": "stable",
            "summary": "The system architectures compatible with this lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 352
          },
          "name": "architecture",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "You can point to a file in an\nAmazon Simple Storage Service (Amazon S3) bucket or specify your source\ncode as inline text.",
            "stability": "stable",
            "summary": "The source code of your Lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 44
          },
          "name": "code",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Code"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Not Sign the Code",
            "stability": "stable",
            "summary": "Code signing config associated with this function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 346
          },
          "name": "codeSigningConfig",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ICodeSigningConfig"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- default options as described in `VersionOptions`",
            "stability": "stable",
            "summary": "Options for the `lambda.Version` resource automatically created by the `fn.currentVersion` method."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 340
          },
          "name": "currentVersionOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.VersionOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- SQS queue with 14 day retention period if `deadLetterQueueEnabled` is `true`",
            "remarks": "If SNS topic is desired, specify `deadLetterTopic` property instead.",
            "stability": "stable",
            "summary": "The SQS queue to use if DLQ is enabled."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 334
          },
          "name": "deadLetterQueue",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_sqs.IQueue"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- false unless `deadLetterQueue` is set, which implies DLQ is enabled.",
            "remarks": "If `deadLetterQueue` is undefined,\nan SQS queue with default options will be defined for your Function.",
            "stability": "stable",
            "summary": "Enabled DLQ."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 327
          },
          "name": "deadLetterQueueEnabled",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no SNS topic",
            "remarks": "Note that if `deadLetterQueueEnabled` is set to `true`, an SQS queue will be created\nrather than an SNS topic. Using an SNS topic as a DLQ requires this property to be set explicitly.",
            "stability": "stable",
            "summary": "The SNS topic to use as a DLQ."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 319
          },
          "name": "deadLetterTopic",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_sns.ITopic"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No description.",
            "stability": "stable",
            "summary": "A description of the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 311
          },
          "name": "description",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No environment variables.",
            "remarks": "Use environment variables to apply configuration changes, such\nas test and production environment configurations, without changing your\nLambda function source code.",
            "stability": "stable",
            "summary": "Key-value pairs that Lambda caches and makes available for your Lambda functions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 305
          },
          "name": "environment",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AWS Lambda creates and uses an AWS managed customer master key (CMK).",
            "stability": "stable",
            "summary": "The AWS KMS key that's used to encrypt your function's environment variables."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 296
          },
          "name": "environmentEncryption",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_kms.IKey"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "512 MiB",
            "stability": "stable",
            "summary": "The size of the function’s /tmp directory in MiB."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 290
          },
          "name": "ephemeralStorageSize",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Size"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No event sources.",
            "remarks": "You can also add event sources using `addEventSource`.",
            "stability": "stable",
            "summary": "Event sources for this function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 284
          },
          "name": "events",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_lambda.IEventSource"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- will not mount any filesystem",
            "stability": "stable",
            "summary": "The filesystem configuration for the lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 277
          },
          "name": "filesystem",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.FileSystem"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AWS CloudFormation generates a unique physical ID and uses that\nID for the function's name. For more information, see Name Type.",
            "stability": "stable",
            "summary": "A name for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 271
          },
          "name": "functionName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "The format includes the file name. It can also include\nnamespaces and other qualifiers, depending on the runtime.\nFor more information, see https://docs.aws.amazon.com/lambda/latest/dg/foundation-progmodel.html.\n\nUse `Handler.FROM_IMAGE` when defining a function from a Docker image.\n\nNOTE: If you specify your source code as inline text by specifying the\nZipFile property within the Code property, specify index.function_name as\nthe handler.",
            "stability": "stable",
            "summary": "The name of the method within your code that Lambda calls to execute your function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 36
          },
          "name": "handler",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No policy statements are added to the created Lambda role.",
            "remarks": "You can call `addToRolePolicy` to the created lambda to add statements post creation.",
            "stability": "stable",
            "summary": "Initial policy statements to add to the created Lambda Role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 264
          },
          "name": "initialPolicy",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_iam.PolicyStatement"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No Lambda Insights",
            "stability": "stable",
            "summary": "Specify the version of CloudWatch Lambda insights to use for monitoring."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 257
          },
          "name": "insightsVersion",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LambdaInsightsVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Only used if 'vpc' is supplied.",
            "stability": "stable",
            "summary": "Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 251
          },
          "name": "ipv6AllowedForDualStack",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No layers.",
            "remarks": "You can configure your Lambda function to pull in\nadditional code during initialization in the form of layers. Layers are packages of libraries or other dependencies\nthat can be used by multiple functions.",
            "stability": "stable",
            "summary": "A list of layers to add to the function's execution environment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 244
          },
          "name": "layers",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_lambda.ILayerVersion"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"Text\"",
            "deprecated": "Use `loggingFormat` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the logFormat for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 235
          },
          "name": "logFormat",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "LoggingFormat.TEXT",
            "stability": "stable",
            "summary": "Sets the loggingFormat for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 228
          },
          "name": "loggingFormat",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LoggingFormat"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "`/aws/lambda/${this.functionName}` - default log group created by Lambda",
            "remarks": "By default, Lambda functions send logs to an automatically created default log group named /aws/lambda/\\<function name\\>.\nHowever you cannot change the properties of this auto-created log group using the AWS CDK, e.g. you cannot set a different log retention.\n\nUse the `logGroup` property to create a fully customizable LogGroup ahead of time, and instruct the Lambda function to send logs to it.\n\nProviding a user-controlled log group was rolled out to commercial regions on 2023-11-16.\nIf you are deploying to another type of region, please check regional availability first.",
            "stability": "stable",
            "summary": "The log group the function sends logs to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 222
          },
          "name": "logGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.INFINITE",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.\n\nThis is a legacy API and we strongly recommend you move away from it if you can.\nInstead create a fully customizable log group with `logs.LogGroup` and use the `logGroup` property\nto instruct the Lambda function to send logs to it.\nMigrating from `logRetention` to `logGroup` will cause the name of the log group to change.\nUsers and code and referencing the name verbatim will have to adjust.\n\nIn AWS CDK code, you can access the log group name directly from the LogGroup construct:\n```ts\nimport * as logs from 'aws-cdk-lib/aws-logs';\n\ndeclare const myLogGroup: logs.LogGroup;\nmyLogGroup.logGroupName;\n```",
            "stability": "stable",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 209
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Default AWS SDK retry options.",
            "remarks": "These options control the retry policy when interacting with CloudWatch APIs.\n\nThis is a legacy API and we strongly recommend you migrate to `logGroup` if you can.\n`logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.",
            "stability": "stable",
            "summary": "When log retention is specified, a custom resource attempts to create the CloudWatch log group."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 186
          },
          "name": "logRetentionRetryOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LogRetentionRetryOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A new role is created.",
            "remarks": "This is a legacy API and we strongly recommend you migrate to `logGroup` if you can.\n`logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.",
            "stability": "stable",
            "summary": "The IAM role for the Lambda function associated with the custom resource that sets the retention policy."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 176
          },
          "name": "logRetentionRole",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.hours(6)",
            "remarks": "Minimum: 60 seconds\nMaximum: 6 hours",
            "stability": "stable",
            "summary": "The maximum age of a request that Lambda sends to a function for processing."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 429
          },
          "name": "maxEventAge",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "128",
            "remarks": "Lambda uses this value to proportionally allocate the amount of CPU\npower. For more information, see Resource Model in the AWS Lambda\nDeveloper Guide.",
            "stability": "stable",
            "summary": "The amount of memory, in MB, that is allocated to your Lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 168
          },
          "name": "memorySize",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no destination",
            "stability": "stable",
            "summary": "The destination for failed invocations."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 421
          },
          "name": "onFailure",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IDestination"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no destination",
            "stability": "stable",
            "summary": "The destination for successful invocations."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 415
          },
          "name": "onSuccess",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IDestination"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No Parameters and Secrets Extension",
            "stability": "stable",
            "summary": "Specify the configuration of Parameters and Secrets Extension."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 159
          },
          "name": "paramsAndSecrets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ParamsAndSecretsLayerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No profiling.",
            "stability": "stable",
            "summary": "Enable profiling."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 153
          },
          "name": "profiling",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A new profiling group will be created if `profiling` is set.",
            "stability": "stable",
            "summary": "Profiling Group."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 147
          },
          "name": "profilingGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codeguruprofiler.IProfilingGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "RecursiveLoop.Terminate",
            "remarks": "It lets Lambda detect and terminate unintended recursive loops.",
            "stability": "stable",
            "summary": "Sets the Recursive Loop Protection for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 141
          },
          "name": "recursiveLoop",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.RecursiveLoop"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No specific limit - account limit.",
            "stability": "stable",
            "summary": "The maximum of concurrent executions you want to reserve for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 134
          },
          "name": "reservedConcurrentExecutions",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "2",
            "remarks": "Minimum: 0\nMaximum: 2",
            "stability": "stable",
            "summary": "The maximum number of times to retry when the function returns an error."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 409
          },
          "name": "retryAttempts",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A unique role will be generated for this lambda function.\nBoth supplied and generated roles can always be changed by calling `addToRolePolicy`.",
            "remarks": "This is the role that will be assumed by the function upon execution.\nIt controls the permissions that the function will have. The Role must\nbe assumable by the 'lambda.amazonaws.com' service principal.\n\nThe default Role automatically has permissions granted for Lambda execution. If you\nprovide a Role, you must add the relevant AWS managed policies yourself.\n\nThe relevant managed policies are \"service-role/AWSLambdaBasicExecutionRole\" and\n\"service-role/AWSLambdaVPCAccessExecutionRole\".",
            "stability": "stable",
            "summary": "Lambda execution role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 128
          },
          "name": "role",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "For valid values, see the Runtime property in the AWS Lambda Developer\nGuide.\n\nUse `Runtime.FROM_IMAGE` when defining a function from a Docker image.",
            "stability": "stable",
            "summary": "The runtime environment for the Lambda function that you are uploading."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 22
          },
          "name": "runtime",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Runtime"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Auto",
            "stability": "stable",
            "summary": "Sets the runtime management configuration for a function's version."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 112
          },
          "name": "runtimeManagementMode",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.RuntimeManagementMode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- If the function is placed within a VPC and a security group is\nnot specified, either by this or securityGroup prop, a dedicated security\ngroup will be created for this function.",
            "remarks": "Only used if 'vpc' is supplied.",
            "stability": "stable",
            "summary": "The list of security groups to associate with the Lambda's network interfaces."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 106
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No snapstart",
            "remarks": "SnapStart is currently supported for Java 11, Java 17, Python 3.12, Python 3.13, and .NET 8 runtime",
            "stability": "stable",
            "summary": "Enable SnapStart for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 97
          },
          "name": "snapStart",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.SnapStartConf"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- `edge-lambda-stack-${region}`",
            "stability": "stable",
            "summary": "The stack ID of Lambda@Edge function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 13
          },
          "name": "stackId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"INFO\"",
            "deprecated": "Use `systemLogLevelV2` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the system log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 90
          },
          "name": "systemLogLevel",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "SystemLogLevel.INFO",
            "stability": "stable",
            "summary": "Sets the system log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 83
          },
          "name": "systemLogLevelV2",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.SystemLogLevel"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.seconds(3)",
            "remarks": "Because the execution time affects cost, set this value\nbased on the function's expected execution time.",
            "stability": "stable",
            "summary": "The function execution time (in seconds) after which Lambda terminates the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 77
          },
          "name": "timeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Tracing.Disabled",
            "stability": "stable",
            "summary": "Enable AWS X-Ray Tracing for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 69
          },
          "name": "tracing",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Tracing"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Function is not placed within a VPC.",
            "remarks": "Specify this if the Lambda function needs to access resources in a VPC.\nThis is required when `vpcSubnets` is specified.",
            "stability": "stable",
            "summary": "VPC network to place Lambda network interfaces."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 63
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- the Vpc default strategy if not specified",
            "remarks": "This requires `vpc` to be specified in order for interfaces to actually be\nplaced in the subnets. If `vpc` is not specify, this will raise an error.\n\nNote: Internet access for Lambda Functions requires a NAT Gateway, so picking\npublic subnets is not allowed (unless `allowPublicSubnet` is set to `true`).",
            "stability": "stable",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalEdgeFunctionProps.ts",
            "line": 55
          },
          "name": "vpcSubnets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalEdgeFunctionProps:OptionalEdgeFunctionProps"
    },
    "cdk-nextjs.OptionalFunctionProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalFunctionProps."
      },
      "fqn": "cdk-nextjs.OptionalFunctionProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalFunctionProps.ts",
        "line": 7
      },
      "name": "OptionalFunctionProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- No ADOT instrumentation",
            "stability": "stable",
            "summary": "Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 395
          },
          "name": "adotInstrumentation",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.AdotInstrumentationConfig"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "If set to true, there will only be a single egress rule which allows all\noutbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the\nLambda to connect to network targets using ipv6.\n\nDo not specify this property if the `securityGroups` or `securityGroup` property is set.\nInstead, configure `allowAllIpv6Outbound` directly on the security group.",
            "stability": "stable",
            "summary": "Whether to allow the Lambda to send all ipv6 network traffic."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 389
          },
          "name": "allowAllIpv6Outbound",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "If set to false, you must individually add traffic rules to allow the\nLambda to connect to network targets.\n\nDo not specify this property if the `securityGroups` or `securityGroup` property is set.\nInstead, configure `allowAllOutbound` directly on the security group.",
            "stability": "stable",
            "summary": "Whether to allow the Lambda to send all network traffic (except ipv6)."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 377
          },
          "name": "allowAllOutbound",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Use this property to acknowledge this limitation and still place the function in a public subnet.",
            "stability": "stable",
            "summary": "Lambda Functions in a public subnet can NOT access the internet."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 366
          },
          "name": "allowPublicSubnet",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"INFO\"",
            "deprecated": "Use `applicationLogLevelV2` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the application log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 359
          },
          "name": "applicationLogLevel",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "ApplicationLogLevel.INFO",
            "stability": "stable",
            "summary": "Sets the application log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 352
          },
          "name": "applicationLogLevelV2",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ApplicationLogLevel"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Architecture.X86_64",
            "stability": "stable",
            "summary": "The system architectures compatible with this lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 346
          },
          "name": "architecture",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Architecture"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "You can point to a file in an\nAmazon Simple Storage Service (Amazon S3) bucket or specify your source\ncode as inline text.",
            "stability": "stable",
            "summary": "The source code of your Lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 38
          },
          "name": "code",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Code"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Not Sign the Code",
            "stability": "stable",
            "summary": "Code signing config associated with this function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 340
          },
          "name": "codeSigningConfig",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ICodeSigningConfig"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- default options as described in `VersionOptions`",
            "stability": "stable",
            "summary": "Options for the `lambda.Version` resource automatically created by the `fn.currentVersion` method."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 334
          },
          "name": "currentVersionOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.VersionOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- SQS queue with 14 day retention period if `deadLetterQueueEnabled` is `true`",
            "remarks": "If SNS topic is desired, specify `deadLetterTopic` property instead.",
            "stability": "stable",
            "summary": "The SQS queue to use if DLQ is enabled."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 328
          },
          "name": "deadLetterQueue",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_sqs.IQueue"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- false unless `deadLetterQueue` is set, which implies DLQ is enabled.",
            "remarks": "If `deadLetterQueue` is undefined,\nan SQS queue with default options will be defined for your Function.",
            "stability": "stable",
            "summary": "Enabled DLQ."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 321
          },
          "name": "deadLetterQueueEnabled",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no SNS topic",
            "remarks": "Note that if `deadLetterQueueEnabled` is set to `true`, an SQS queue will be created\nrather than an SNS topic. Using an SNS topic as a DLQ requires this property to be set explicitly.",
            "stability": "stable",
            "summary": "The SNS topic to use as a DLQ."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 313
          },
          "name": "deadLetterTopic",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_sns.ITopic"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No description.",
            "stability": "stable",
            "summary": "A description of the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 305
          },
          "name": "description",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No environment variables.",
            "remarks": "Use environment variables to apply configuration changes, such\nas test and production environment configurations, without changing your\nLambda function source code.",
            "stability": "stable",
            "summary": "Key-value pairs that Lambda caches and makes available for your Lambda functions."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 299
          },
          "name": "environment",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AWS Lambda creates and uses an AWS managed customer master key (CMK).",
            "stability": "stable",
            "summary": "The AWS KMS key that's used to encrypt your function's environment variables."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 290
          },
          "name": "environmentEncryption",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_kms.IKey"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "512 MiB",
            "stability": "stable",
            "summary": "The size of the function’s /tmp directory in MiB."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 284
          },
          "name": "ephemeralStorageSize",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Size"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No event sources.",
            "remarks": "You can also add event sources using `addEventSource`.",
            "stability": "stable",
            "summary": "Event sources for this function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 278
          },
          "name": "events",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_lambda.IEventSource"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- will not mount any filesystem",
            "stability": "stable",
            "summary": "The filesystem configuration for the lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 271
          },
          "name": "filesystem",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.FileSystem"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- AWS CloudFormation generates a unique physical ID and uses that\nID for the function's name. For more information, see Name Type.",
            "stability": "stable",
            "summary": "A name for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 265
          },
          "name": "functionName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "The format includes the file name. It can also include\nnamespaces and other qualifiers, depending on the runtime.\nFor more information, see https://docs.aws.amazon.com/lambda/latest/dg/foundation-progmodel.html.\n\nUse `Handler.FROM_IMAGE` when defining a function from a Docker image.\n\nNOTE: If you specify your source code as inline text by specifying the\nZipFile property within the Code property, specify index.function_name as\nthe handler.",
            "stability": "stable",
            "summary": "The name of the method within your code that Lambda calls to execute your function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 30
          },
          "name": "handler",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No policy statements are added to the created Lambda role.",
            "remarks": "You can call `addToRolePolicy` to the created lambda to add statements post creation.",
            "stability": "stable",
            "summary": "Initial policy statements to add to the created Lambda Role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 258
          },
          "name": "initialPolicy",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_iam.PolicyStatement"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No Lambda Insights",
            "stability": "stable",
            "summary": "Specify the version of CloudWatch Lambda insights to use for monitoring."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 251
          },
          "name": "insightsVersion",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LambdaInsightsVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "false",
            "remarks": "Only used if 'vpc' is supplied.",
            "stability": "stable",
            "summary": "Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 245
          },
          "name": "ipv6AllowedForDualStack",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No layers.",
            "remarks": "You can configure your Lambda function to pull in\nadditional code during initialization in the form of layers. Layers are packages of libraries or other dependencies\nthat can be used by multiple functions.",
            "stability": "stable",
            "summary": "A list of layers to add to the function's execution environment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 238
          },
          "name": "layers",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_lambda.ILayerVersion"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"Text\"",
            "deprecated": "Use `loggingFormat` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the logFormat for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 229
          },
          "name": "logFormat",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "LoggingFormat.TEXT",
            "stability": "stable",
            "summary": "Sets the loggingFormat for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 222
          },
          "name": "loggingFormat",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LoggingFormat"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "`/aws/lambda/${this.functionName}` - default log group created by Lambda",
            "remarks": "By default, Lambda functions send logs to an automatically created default log group named /aws/lambda/\\<function name\\>.\nHowever you cannot change the properties of this auto-created log group using the AWS CDK, e.g. you cannot set a different log retention.\n\nUse the `logGroup` property to create a fully customizable LogGroup ahead of time, and instruct the Lambda function to send logs to it.\n\nProviding a user-controlled log group was rolled out to commercial regions on 2023-11-16.\nIf you are deploying to another type of region, please check regional availability first.",
            "stability": "stable",
            "summary": "The log group the function sends logs to."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 216
          },
          "name": "logGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.ILogGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "logs.RetentionDays.INFINITE",
            "remarks": "When updating\nthis property, unsetting it doesn't remove the log retention policy. To\nremove the retention policy, set the value to `INFINITE`.\n\nThis is a legacy API and we strongly recommend you move away from it if you can.\nInstead create a fully customizable log group with `logs.LogGroup` and use the `logGroup` property\nto instruct the Lambda function to send logs to it.\nMigrating from `logRetention` to `logGroup` will cause the name of the log group to change.\nUsers and code and referencing the name verbatim will have to adjust.\n\nIn AWS CDK code, you can access the log group name directly from the LogGroup construct:\n```ts\nimport * as logs from 'aws-cdk-lib/aws-logs';\n\ndeclare const myLogGroup: logs.LogGroup;\nmyLogGroup.logGroupName;\n```",
            "stability": "stable",
            "summary": "The number of days log events are kept in CloudWatch Logs."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 203
          },
          "name": "logRetention",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_logs.RetentionDays"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Default AWS SDK retry options.",
            "remarks": "These options control the retry policy when interacting with CloudWatch APIs.\n\nThis is a legacy API and we strongly recommend you migrate to `logGroup` if you can.\n`logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.",
            "stability": "stable",
            "summary": "When log retention is specified, a custom resource attempts to create the CloudWatch log group."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 180
          },
          "name": "logRetentionRetryOptions",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.LogRetentionRetryOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A new role is created.",
            "remarks": "This is a legacy API and we strongly recommend you migrate to `logGroup` if you can.\n`logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.",
            "stability": "stable",
            "summary": "The IAM role for the Lambda function associated with the custom resource that sets the retention policy."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 170
          },
          "name": "logRetentionRole",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.hours(6)",
            "remarks": "Minimum: 60 seconds\nMaximum: 6 hours",
            "stability": "stable",
            "summary": "The maximum age of a request that Lambda sends to a function for processing."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 423
          },
          "name": "maxEventAge",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "128",
            "remarks": "Lambda uses this value to proportionally allocate the amount of CPU\npower. For more information, see Resource Model in the AWS Lambda\nDeveloper Guide.",
            "stability": "stable",
            "summary": "The amount of memory, in MB, that is allocated to your Lambda function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 162
          },
          "name": "memorySize",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no destination",
            "stability": "stable",
            "summary": "The destination for failed invocations."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 415
          },
          "name": "onFailure",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IDestination"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no destination",
            "stability": "stable",
            "summary": "The destination for successful invocations."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 409
          },
          "name": "onSuccess",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IDestination"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No Parameters and Secrets Extension",
            "stability": "stable",
            "summary": "Specify the configuration of Parameters and Secrets Extension."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 153
          },
          "name": "paramsAndSecrets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.ParamsAndSecretsLayerVersion"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No profiling.",
            "stability": "stable",
            "summary": "Enable profiling."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 147
          },
          "name": "profiling",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A new profiling group will be created if `profiling` is set.",
            "stability": "stable",
            "summary": "Profiling Group."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 141
          },
          "name": "profilingGroup",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_codeguruprofiler.IProfilingGroup"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "RecursiveLoop.Terminate",
            "remarks": "It lets Lambda detect and terminate unintended recursive loops.",
            "stability": "stable",
            "summary": "Sets the Recursive Loop Protection for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 135
          },
          "name": "recursiveLoop",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.RecursiveLoop"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No specific limit - account limit.",
            "stability": "stable",
            "summary": "The maximum of concurrent executions you want to reserve for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 128
          },
          "name": "reservedConcurrentExecutions",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "2",
            "remarks": "Minimum: 0\nMaximum: 2",
            "stability": "stable",
            "summary": "The maximum number of times to retry when the function returns an error."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 403
          },
          "name": "retryAttempts",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- A unique role will be generated for this lambda function.\nBoth supplied and generated roles can always be changed by calling `addToRolePolicy`.",
            "remarks": "This is the role that will be assumed by the function upon execution.\nIt controls the permissions that the function will have. The Role must\nbe assumable by the 'lambda.amazonaws.com' service principal.\n\nThe default Role automatically has permissions granted for Lambda execution. If you\nprovide a Role, you must add the relevant AWS managed policies yourself.\n\nThe relevant managed policies are \"service-role/AWSLambdaBasicExecutionRole\" and\n\"service-role/AWSLambdaVPCAccessExecutionRole\".",
            "stability": "stable",
            "summary": "Lambda execution role."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 122
          },
          "name": "role",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_iam.IRole"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "For valid values, see the Runtime property in the AWS Lambda Developer\nGuide.\n\nUse `Runtime.FROM_IMAGE` when defining a function from a Docker image.",
            "stability": "stable",
            "summary": "The runtime environment for the Lambda function that you are uploading."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 16
          },
          "name": "runtime",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Runtime"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Auto",
            "stability": "stable",
            "summary": "Sets the runtime management configuration for a function's version."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 106
          },
          "name": "runtimeManagementMode",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.RuntimeManagementMode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- If the function is placed within a VPC and a security group is\nnot specified, either by this or securityGroup prop, a dedicated security\ngroup will be created for this function.",
            "remarks": "Only used if 'vpc' is supplied.",
            "stability": "stable",
            "summary": "The list of security groups to associate with the Lambda's network interfaces."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 100
          },
          "name": "securityGroups",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No snapstart",
            "remarks": "SnapStart is currently supported for Java 11, Java 17, Python 3.12, Python 3.13, and .NET 8 runtime",
            "stability": "stable",
            "summary": "Enable SnapStart for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 91
          },
          "name": "snapStart",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.SnapStartConf"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "\"INFO\"",
            "deprecated": "Use `systemLogLevelV2` as a property instead.",
            "stability": "deprecated",
            "summary": "Sets the system log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 84
          },
          "name": "systemLogLevel",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "SystemLogLevel.INFO",
            "stability": "stable",
            "summary": "Sets the system log level for the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 77
          },
          "name": "systemLogLevelV2",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.SystemLogLevel"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.seconds(3)",
            "remarks": "Because the execution time affects cost, set this value\nbased on the function's expected execution time.",
            "stability": "stable",
            "summary": "The function execution time (in seconds) after which Lambda terminates the function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 71
          },
          "name": "timeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Tracing.Disabled",
            "stability": "stable",
            "summary": "Enable AWS X-Ray Tracing for Lambda Function."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 63
          },
          "name": "tracing",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.Tracing"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Function is not placed within a VPC.",
            "remarks": "Specify this if the Lambda function needs to access resources in a VPC.\nThis is required when `vpcSubnets` is specified.",
            "stability": "stable",
            "summary": "VPC network to place Lambda network interfaces."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 57
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- the Vpc default strategy if not specified",
            "remarks": "This requires `vpc` to be specified in order for interfaces to actually be\nplaced in the subnets. If `vpc` is not specify, this will raise an error.\n\nNote: Internet access for Lambda Functions requires a NAT Gateway, so picking\npublic subnets is not allowed (unless `allowPublicSubnet` is set to `true`).",
            "stability": "stable",
            "summary": "Where to place the network interfaces within the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionProps.ts",
            "line": 49
          },
          "name": "vpcSubnets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalFunctionProps:OptionalFunctionProps"
    },
    "cdk-nextjs.OptionalFunctionUrlProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalFunctionUrlProps."
      },
      "fqn": "cdk-nextjs.OptionalFunctionUrlProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalFunctionUrlProps.ts",
        "line": 7
      },
      "name": "OptionalFunctionUrlProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "FunctionUrlAuthType.AWS_IAM",
            "stability": "stable",
            "summary": "The type of authentication that your function URL uses."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionUrlProps.ts",
            "line": 31
          },
          "name": "authType",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.FunctionUrlAuthType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No CORS configuration.",
            "stability": "stable",
            "summary": "The cross-origin resource sharing (CORS) settings for your function URL."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionUrlProps.ts",
            "line": 25
          },
          "name": "cors",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.FunctionUrlCorsOptions"
          }
        },
        {
          "abstract": true,
          "docs": {
            "remarks": "It can also be an `Alias` but not a `Version`.",
            "stability": "stable",
            "summary": "The function to which this url refers."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionUrlProps.ts",
            "line": 13
          },
          "name": "function",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IFunction"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "InvokeMode.BUFFERED",
            "stability": "stable",
            "summary": "The type of invocation mode that your Lambda function uses."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalFunctionUrlProps.ts",
            "line": 19
          },
          "name": "invokeMode",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.InvokeMode"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalFunctionUrlProps:OptionalFunctionUrlProps"
    },
    "cdk-nextjs.OptionalNextjsAssetsDeploymentProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalNextjsAssetsDeploymentProps."
      },
      "fqn": "cdk-nextjs.OptionalNextjsAssetsDeploymentProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
        "line": 8
      },
      "name": "OptionalNextjsAssetsDeploymentProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 52
          },
          "name": "accessPoint",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPoint"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Prefix to the URI path the app will be served at."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 28
          },
          "name": "basePath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 48
          },
          "name": "buildId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 44
          },
          "name": "buildImageDigest",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "If true, logs details in custom resource lambda."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 23
          },
          "name": "debug",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 40
          },
          "name": "dockerImageCode",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.DockerImageCode"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 36
          },
          "name": "nextjsType",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 17
          },
          "name": "relativePathToPackage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required for `NextjsType.GlobalFunctions` and `NextjsType.GlobalContainers`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 13
          },
          "name": "staticAssetsBucket",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.Bucket"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsAssetsDeploymentProps.ts",
            "line": 32
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalNextjsAssetsDeploymentProps:OptionalNextjsAssetsDeploymentProps"
    },
    "cdk-nextjs.OptionalNextjsBuildProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalNextjsBuildProps."
      },
      "fqn": "cdk-nextjs.OptionalNextjsBuildProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalNextjsBuildProps.ts",
        "line": 7
      },
      "name": "OptionalNextjsBuildProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsBuildProps.ts",
            "line": 19
          },
          "name": "buildCommand",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsBuildProps.ts",
            "line": 27
          },
          "name": "buildContext",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsBuildProps.ts",
            "line": 15
          },
          "name": "builderImageProps",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.BuilderImageProps"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsBuildProps.ts",
            "line": 23
          },
          "name": "nextjsType",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsBuildProps.ts",
            "line": 11
          },
          "name": "relativePathToPackage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalNextjsBuildProps:OptionalNextjsBuildProps"
    },
    "cdk-nextjs.OptionalNextjsContainersProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalNextjsContainersProps."
      },
      "fqn": "cdk-nextjs.OptionalNextjsContainersProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
        "line": 8
      },
      "name": "OptionalNextjsContainersProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 40
          },
          "name": "accessPoint",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPoint"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 28
          },
          "name": "buildId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 24
          },
          "name": "dockerImageAsset",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ecr_assets.DockerImageAsset"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 20
          },
          "name": "fileSystem",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.FileSystem"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 36
          },
          "name": "healthCheckPath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 16
          },
          "name": "nextjsType",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 12
          },
          "name": "relativeEntrypointPath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsContainersProps.ts",
            "line": 32
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalNextjsContainersProps:OptionalNextjsContainersProps"
    },
    "cdk-nextjs.OptionalNextjsDistributionProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalNextjsDistributionProps."
      },
      "fqn": "cdk-nextjs.OptionalNextjsDistributionProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
        "line": 8
      },
      "name": "OptionalNextjsDistributionProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Must be provided if you want to serve static files.",
            "stability": "stable",
            "summary": "Bucket containing static assets."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 46
          },
          "name": "assetsBucket",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.IBucket"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 31
          },
          "name": "basePath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Optional but only applicable for `NextjsType.GLOBAL_CONTAINERS`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 27
          },
          "name": "certificate",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_certificatemanager.ICertificate"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 22
          },
          "name": "distribution",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.Distribution"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required if `NextjsType.GLOBAL_FUNCTIONS`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 18
          },
          "name": "functionUrl",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_lambda.IFunctionUrl"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required if `NextjsType.GLOBAL_CONTAINERS` or `NextjsType.REGIONAL_CONTAINERS`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 13
          },
          "name": "loadBalancer",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_elasticloadbalancingv2.ApplicationLoadBalancer"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 40
          },
          "name": "nextjsType",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Entries (files/directories) within Next.js app's public directory. Used to add static behaviors to distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsDistributionProps.ts",
            "line": 36
          },
          "name": "publicDirEntries",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "cdk-nextjs.PublicDirEntry"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalNextjsDistributionProps:OptionalNextjsDistributionProps"
    },
    "cdk-nextjs.OptionalNextjsFileSystemProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalNextjsFileSystemProps."
      },
      "fqn": "cdk-nextjs.OptionalNextjsFileSystemProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalNextjsFileSystemProps.ts",
        "line": 7
      },
      "name": "OptionalNextjsFileSystemProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsFileSystemProps.ts",
            "line": 11
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalNextjsFileSystemProps:OptionalNextjsFileSystemProps"
    },
    "cdk-nextjs.OptionalNextjsPostDeployProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalNextjsPostDeployProps."
      },
      "fqn": "cdk-nextjs.OptionalNextjsPostDeployProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
        "line": 7
      },
      "name": "OptionalNextjsPostDeployProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 43
          },
          "name": "accessPoint",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_efs.AccessPoint"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 39
          },
          "name": "buildId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 35
          },
          "name": "buildImageDigest",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "If true, logs details in custom resource lambda."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 27
          },
          "name": "debug",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "CloudFront Distribution to invalidate."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 21
          },
          "name": "distribution",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.IDistribution"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 16
          },
          "name": "relativePathToPackage",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Required for `NextjsType.GlobalFunctions` and `NextjsType.GlobalContainers`."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 12
          },
          "name": "staticAssetsBucket",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_s3.Bucket"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsPostDeployProps.ts",
            "line": 31
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalNextjsPostDeployProps:OptionalNextjsPostDeployProps"
    },
    "cdk-nextjs.OptionalNextjsVpcProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalNextjsVpcProps."
      },
      "fqn": "cdk-nextjs.OptionalNextjsVpcProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalNextjsVpcProps.ts",
        "line": 8
      },
      "name": "OptionalNextjsVpcProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsVpcProps.ts",
            "line": 17
          },
          "name": "nextjsType",
          "optional": true,
          "type": {
            "fqn": "cdk-nextjs.NextjsType"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable",
            "summary": "Bring your own VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalNextjsVpcProps.ts",
            "line": 13
          },
          "name": "vpc",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IVpc"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalNextjsVpcProps:OptionalNextjsVpcProps"
    },
    "cdk-nextjs.OptionalPostDeployCustomResourceProperties": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalPostDeployCustomResourceProperties."
      },
      "fqn": "cdk-nextjs.OptionalPostDeployCustomResourceProperties",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalPostDeployCustomResourceProperties.ts",
        "line": 6
      },
      "name": "OptionalPostDeployCustomResourceProperties",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Used to prune FileSystem of directories\nwith old build ids and prune S3 based on metadat and `msTtl`",
            "stability": "stable",
            "summary": "Build ID of current deployment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalPostDeployCustomResourceProperties.ts",
            "line": 42
          },
          "name": "buildId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalPostDeployCustomResourceProperties.ts",
            "line": 35
          },
          "name": "buildImageDigest",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "{\ndistributionId: this.props.distribution?.distributionId,\ninvalidationBatch: {\ncallerReference: new Date().toISOString(),\npaths: {\nquantity: 1,\nitems: [\"/*\"], // invalidate all paths\n},\n},\n}",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalPostDeployCustomResourceProperties.ts",
            "line": 24
          },
          "name": "createInvalidationCommandInput",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "any"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "(1000 * 60 * 60 * 24 * 30).toString()",
            "remarks": "Must be string because of CloudFormation Custom Resource limitation",
            "stability": "stable",
            "summary": "Time to live in milliseconds."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalPostDeployCustomResourceProperties.ts",
            "line": 31
          },
          "name": "msTtl",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalPostDeployCustomResourceProperties.ts",
            "line": 10
          },
          "name": "staticAssetsBucketName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalPostDeployCustomResourceProperties:OptionalPostDeployCustomResourceProperties"
    },
    "cdk-nextjs.OptionalS3OriginBucketWithOACProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalS3OriginBucketWithOACProps."
      },
      "fqn": "cdk-nextjs.OptionalS3OriginBucketWithOACProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
        "line": 7
      },
      "name": "OptionalS3OriginBucketWithOACProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "3",
            "remarks": "valid values are 1, 2, or 3 attempts.",
            "stability": "stable",
            "summary": "The number of times that CloudFront attempts to connect to the origin;"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 71
          },
          "name": "connectionAttempts",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Duration.seconds(10)",
            "remarks": "Valid values are 1-10 seconds, inclusive.",
            "stability": "stable",
            "summary": "The number of seconds that CloudFront waits when trying to establish a connection to the origin."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 64
          },
          "name": "connectionTimeout",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.Duration"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "{}",
            "stability": "stable",
            "summary": "A list of HTTP header names and values that CloudFront adds to requests it sends to the origin."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 57
          },
          "name": "customHeaders",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- an Origin Access Control will be created.",
            "stability": "stable",
            "summary": "An optional Origin Access Control."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 19
          },
          "name": "originAccessControl",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_cloudfront.IOriginAccessControl"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- no origin access control",
            "stability": "stable",
            "summary": "The unique identifier of an origin access control for this origin."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 51
          },
          "name": "originAccessControlId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "[AccessLevel.READ]",
            "stability": "stable",
            "summary": "The level of permissions granted in the bucket policy and key policy (if applicable) to the CloudFront distribution."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 13
          },
          "name": "originAccessLevels",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_cloudfront.AccessLevel"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- an originid will be generated for you",
            "remarks": "This value must be unique within the distribution.",
            "stability": "stable",
            "summary": "A unique identifier for the origin."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 45
          },
          "name": "originId",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "'/'",
            "remarks": "Must begin, but not end, with '/' (e.g., '/production/images').",
            "stability": "stable",
            "summary": "An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 26
          },
          "name": "originPath",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- true",
            "stability": "stable",
            "summary": "Origin Shield is enabled by setting originShieldRegion to a valid region, after this to disable Origin Shield again you must set this flag to false."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 38
          },
          "name": "originShieldEnabled",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- origin shield not enabled",
            "stability": "stable",
            "summary": "When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalS3OriginBucketWithOACProps.ts",
            "line": 32
          },
          "name": "originShieldRegion",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalS3OriginBucketWithOACProps:OptionalS3OriginBucketWithOACProps"
    },
    "cdk-nextjs.OptionalVpcProps": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable",
        "summary": "OptionalVpcProps."
      },
      "fqn": "cdk-nextjs.OptionalVpcProps",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/generated-structs/OptionalVpcProps.ts",
        "line": 7
      },
      "name": "OptionalVpcProps",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "default": "- a subset of AZs of the stack",
            "remarks": "Specify this option only if you do not specify `maxAzs`.",
            "stability": "stable",
            "summary": "Availability zones this VPC spans."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 225
          },
          "name": "availabilityZones",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "string"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Vpc.DEFAULT_CIDR_RANGE",
            "deprecated": "Use ipAddresses instead",
            "stability": "deprecated",
            "summary": "The CIDR range to use for the VPC, e.g. '10.0.0.0/16'. Should be a minimum of /28 and maximum size of /16. The range will be split across all subnets per Availability Zone."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 218
          },
          "name": "cidr",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "stability": "stable",
            "summary": "If set to false then disable the creation of the default internet gateway."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 209
          },
          "name": "createInternetGateway",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "DefaultInstanceTenancy.Default (shared) tenancy",
            "remarks": "By setting this to dedicated tenancy, instances will be launched on\nhardware dedicated to a single AWS customer, unless specifically specified\nat instance launch time. Please note, not all instance types are usable\nwith Dedicated tenancy.",
            "stability": "stable",
            "summary": "The default tenancy of instances launched into the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 203
          },
          "name": "defaultInstanceTenancy",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.DefaultInstanceTenancy"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "If this attribute is true, instances in the VPC get public DNS hostnames,\nbut only if the enableDnsSupport attribute is also set to true.",
            "stability": "stable",
            "summary": "Indicates whether the instances launched in the VPC get public DNS hostnames."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 193
          },
          "name": "enableDnsHostnames",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true",
            "remarks": "If this attribute is false, the Amazon-provided DNS server in the VPC that\nresolves public DNS hostnames to IP addresses is not enabled. If this\nattribute is true, queries to the Amazon provided DNS server at the\n169.254.169.253 IP address, or the reserved IP address at the base of the\nVPC IPv4 network range plus two will succeed.",
            "stability": "stable",
            "summary": "Indicates whether the DNS resolution is supported for the VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 185
          },
          "name": "enableDnsSupport",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No flow logs.",
            "stability": "stable",
            "summary": "Flow logs to add to this VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 174
          },
          "name": "flowLogs",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.FlowLogOptions"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- None.",
            "stability": "stable",
            "summary": "Gateway endpoints to add to this VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 168
          },
          "name": "gatewayEndpoints",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.GatewayVpcEndpointOptions"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "ec2.IpAddresses.cidr",
            "remarks": "Note this is specific to IPv4 addresses.",
            "stability": "stable",
            "summary": "The Provider to use to allocate IPv4 Space to your VPC. Options include static allocation or from a pool."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 162
          },
          "name": "ipAddresses",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IIpAddresses"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "IpProtocol.IPV4_ONLY",
            "remarks": "Options are IPv4 only or dual stack.",
            "stability": "stable",
            "summary": "The protocol of the vpc."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 153
          },
          "name": "ipProtocol",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IpProtocol"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "Ipv6Addresses.amazonProvided",
            "remarks": "Note this is specific to IPv6 addresses.",
            "stability": "stable",
            "summary": "The Provider to use to allocate IPv6 Space to your VPC. Options include amazon provided CIDR block."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 146
          },
          "name": "ipv6Addresses",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.IIpv6Addresses"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "3",
            "remarks": "If the region has more AZs than you want to use (for example, because of\nEIP limits), pick a lower number here. The AZs will be sorted and picked\nfrom the start of the list.\n\nIf you pick a higher number than the number of AZs in the region, all AZs\nin the region will be selected. To use \"all AZs\" available to your\naccount, use a high number (such as 99).\n\nBe aware that environment-agnostic stacks will be created with access to\nonly 2 AZs, so to use more than 2 AZs, be sure to specify the account and\nregion on your stack.\n\nSpecify this option only if you do not specify `availabilityZones`.",
            "stability": "stable",
            "summary": "Define the maximum number of AZs to use in this region."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 137
          },
          "name": "maxAzs",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "NatProvider.gateway()",
            "remarks": "Select between NAT gateways or NAT instances. NAT gateways\nmay not be available in all AWS regions.",
            "stability": "stable",
            "summary": "What type of NAT provider to use."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 118
          },
          "name": "natGatewayProvider",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.NatProvider"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- One NAT gateway/instance per Availability Zone",
            "remarks": "You can set this number lower than the number of Availability Zones in your\nVPC in order to save on NAT cost. Be aware you may be charged for\ncross-AZ data traffic instead.",
            "stability": "stable",
            "summary": "The number of NAT Gateways/Instances to create. The type of NAT gateway or instance will be determined by the `natGatewayProvider` parameter."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 110
          },
          "name": "natGateways",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- All public subnets.",
            "remarks": "You can pick a specific group of subnets by specifying the group name;\nthe picked subnets must be public subnets.\n\nOnly necessary if you have more than one public subnet group.",
            "stability": "stable",
            "summary": "Configures the subnets which will have NAT Gateways/Instances."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 98
          },
          "name": "natGatewaySubnets",
          "optional": true,
          "type": {
            "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "0",
            "remarks": "When specified, the IP space is reserved for the azs but no actual\nresources are provisioned.",
            "stability": "stable",
            "summary": "Define the number of AZs to reserve."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 88
          },
          "name": "reservedAzs",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "true if '@aws-cdk/aws-ec2:restrictDefaultSecurityGroup' is enabled, false otherwise",
            "stability": "stable",
            "summary": "If set to true then the default inbound & outbound rules will be removed from the default security group."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 80
          },
          "name": "restrictDefaultSecurityGroup",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- The VPC CIDR will be evenly divided between 1 public and 1\nprivate subnet per AZ.",
            "remarks": "Each entry in this list configures a Subnet Group; each group will contain a\nsubnet for each Availability Zone.\n\nFor example, if you want 1 public subnet, 1 private subnet, and 1 isolated\nsubnet in each AZ provide the following:\n\n```ts\nnew ec2.Vpc(this, 'VPC', {\n  subnetConfiguration: [\n     {\n       cidrMask: 24,\n       name: 'ingress',\n       subnetType: ec2.SubnetType.PUBLIC,\n     },\n     {\n       cidrMask: 24,\n       name: 'application',\n       subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS,\n     },\n     {\n       cidrMask: 28,\n       name: 'rds',\n       subnetType: ec2.SubnetType.PRIVATE_ISOLATED,\n     }\n  ]\n});\n```",
            "stability": "stable",
            "summary": "Configure the subnets to build for each AZ."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 74
          },
          "name": "subnetConfiguration",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.SubnetConfiguration"
              },
              "kind": "array"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "this.node.path",
            "remarks": "Since the VPC resource doesn't support providing a physical name, the value provided here will be recorded in the `Name` tag",
            "stability": "stable",
            "summary": "The VPC name."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 40
          },
          "name": "vpcName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- No connections.",
            "stability": "stable",
            "summary": "VPN connections to this VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 33
          },
          "name": "vpnConnections",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.VpnConnectionOptions"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- true when vpnGatewayAsn or vpnConnections is specified",
            "stability": "stable",
            "summary": "Indicates whether a VPN gateway should be created and attached to this VPC."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 27
          },
          "name": "vpnGateway",
          "optional": true,
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- Amazon default ASN.",
            "stability": "stable",
            "summary": "The private Autonomous System Number (ASN) for the VPN gateway."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 21
          },
          "name": "vpnGatewayAsn",
          "optional": true,
          "type": {
            "primitive": "number"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "- On the route tables associated with private subnets. If no\nprivate subnets exists, isolated subnets are used. If no isolated subnets\nexists, public subnets are used.",
            "stability": "stable",
            "summary": "Where to propagate VPN routes."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/generated-structs/OptionalVpcProps.ts",
            "line": 15
          },
          "name": "vpnRoutePropagation",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
              },
              "kind": "array"
            }
          }
        }
      ],
      "symbolId": "src/generated-structs/OptionalVpcProps:OptionalVpcProps"
    },
    "cdk-nextjs.PostDeployCustomResourceProperties": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.PostDeployCustomResourceProperties",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-post-deploy.ts",
        "line": 64
      },
      "name": "PostDeployCustomResourceProperties",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "remarks": "Used to prune FileSystem of directories\nwith old build ids and prune S3 based on metadat and `msTtl`",
            "stability": "stable",
            "summary": "Build ID of current deployment."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 69
          },
          "name": "buildId",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "see": "{@link NextjsBuild.buildImageDigest }",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 73
          },
          "name": "buildImageDigest",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "(1000 * 60 * 60 * 24 * 30).toString()",
            "remarks": "Must be string because of CloudFormation Custom Resource limitation",
            "stability": "stable",
            "summary": "Time to live in milliseconds."
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 95
          },
          "name": "msTtl",
          "type": {
            "primitive": "string"
          }
        },
        {
          "abstract": true,
          "docs": {
            "default": "{\n   distributionId: this.props.distribution?.distributionId,\n   invalidationBatch: {\n     callerReference: new Date().toISOString(),\n     paths: {\n       quantity: 1,\n       items: [\"/*\"], // invalidate all paths\n     },\n   },\n }",
            "see": "https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cloudfront/command/CreateInvalidationCommand/",
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 88
          },
          "name": "createInvalidationCommandInput",
          "optional": true,
          "type": {
            "collection": {
              "elementtype": {
                "primitive": "any"
              },
              "kind": "map"
            }
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-post-deploy.ts",
            "line": 96
          },
          "name": "staticAssetsBucketName",
          "optional": true,
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/nextjs-post-deploy:PostDeployCustomResourceProperties"
    },
    "cdk-nextjs.PublicDirEntry": {
      "assembly": "cdk-nextjs",
      "datatype": true,
      "docs": {
        "stability": "stable"
      },
      "fqn": "cdk-nextjs.PublicDirEntry",
      "kind": "interface",
      "locationInModule": {
        "filename": "src/nextjs-build/nextjs-build.ts",
        "line": 132
      },
      "name": "PublicDirEntry",
      "properties": [
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 134
          },
          "name": "isDirectory",
          "type": {
            "primitive": "boolean"
          }
        },
        {
          "abstract": true,
          "docs": {
            "stability": "stable"
          },
          "immutable": true,
          "locationInModule": {
            "filename": "src/nextjs-build/nextjs-build.ts",
            "line": 133
          },
          "name": "name",
          "type": {
            "primitive": "string"
          }
        }
      ],
      "symbolId": "src/nextjs-build/nextjs-build:PublicDirEntry"
    }
  },
  "version": "0.4.10",
  "fingerprint": "ErNwL4GkU3lNdU5CwbZkJepDdYEq4DgLJYq9w/MkiNI="
}