{ "author": { "email": "aws-cdk-dev@amazon.com", "name": "Amazon Web Services", "organization": true, "roles": [ "author" ] }, "dependencies": { "@aws-cdk/aws-lambda-python-alpha": "^2.218.0-alpha.0", "aws-cdk-lib": "^2.218.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/aws-lambda-python-alpha": { "targets": { "dotnet": { "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png", "namespace": "Amazon.CDK.AWS.Lambda.Python.Alpha", "packageId": "Amazon.CDK.AWS.Lambda.Python.Alpha" }, "go": { "moduleName": "github.com/aws/aws-cdk-go", "packageName": "awscdklambdapythonalpha" }, "java": { "maven": { "artifactId": "lambda-python-alpha", "groupId": "software.amazon.awscdk" }, "package": "software.amazon.awscdk.services.lambda.python.alpha" }, "js": { "npm": "@aws-cdk/aws-lambda-python-alpha" }, "python": { "classifiers": [ "Framework :: AWS CDK", "Framework :: AWS CDK :: 2" ], "distName": "aws-cdk.aws-lambda-python-alpha", "module": "aws_cdk.aws_lambda_python_alpha" } } }, "@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_aiops": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.AIOps" }, "java": { "package": "software.amazon.awscdk.services.aiops" }, "python": { "module": "aws_cdk.aws_aiops" } } }, "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_arcregionswitch": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.ARCRegionSwitch" }, "java": { "package": "software.amazon.awscdk.services.arcregionswitch" }, "python": { "module": "aws_cdk.aws_arcregionswitch" } } }, "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_bedrockagentcore": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.BedrockAgentCore" }, "java": { "package": "software.amazon.awscdk.services.bedrockagentcore" }, "python": { "module": "aws_cdk.aws_bedrockagentcore" } } }, "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_evs": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.EVS" }, "java": { "package": "software.amazon.awscdk.services.evs" }, "python": { "module": "aws_cdk.aws_evs" } } }, "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_mpa": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.MPA" }, "java": { "package": "software.amazon.awscdk.services.mpa" }, "python": { "module": "aws_cdk.aws_mpa" } } }, "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_observabilityadmin": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.ObservabilityAdmin" }, "java": { "package": "software.amazon.awscdk.services.observabilityadmin" }, "python": { "module": "aws_cdk.aws_observabilityadmin" } } }, "aws-cdk-lib.aws_odb": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.ODB" }, "java": { "package": "software.amazon.awscdk.services.odb" }, "python": { "module": "aws_cdk.aws_odb" } } }, "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_smsvoice": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.SMSVOICE" }, "java": { "package": "software.amazon.awscdk.services.smsvoice" }, "python": { "module": "aws_cdk.aws_smsvoice" } } }, "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_workspacesinstances": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.WorkspacesInstances" }, "java": { "package": "software.amazon.awscdk.services.workspacesinstances" }, "python": { "module": "aws_cdk.aws_workspacesinstances" } } }, "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": "Serverless infrastructure components organized by business use cases", "docs": { "stability": "experimental" }, "homepage": "https://github.com/cdklabs/cdk-appmod-catalog-blueprints.git", "jsiiVersion": "5.9.34 (build 8773a22)", "keywords": [ "cdk" ], "license": "Apache-2.0", "metadata": { "jsii": { "pacmak": { "hasDefaultInterfaces": true } }, "tscRootDir": "use-cases" }, "name": "@cdklabs/cdk-appmod-catalog-blueprints", "readme": { "markdown": "# AppMod Catalog Blueprints\n\n> **Build customizable, well-architected applications on AWS in minutes, not months.**\n\n[![GitHub](https://img.shields.io/badge/code-GitHub-green)](https://github.com/cdklabs/cdk-appmod-catalog-blueprints)\n[![Construct Hub](https://img.shields.io/badge/construct--hub-cdklabs-orange)](https://constructs.dev/packages/@cdklabs/cdk-appmod-catalog-blueprints/)\n[![Documentation](https://img.shields.io/badge/docs-cdklabs.github.io-blue)](https://cdklabs.github.io/cdk-appmod-catalog-blueprints/)\n[![npm version](https://img.shields.io/npm/v/@cdklabs/cdk-appmod-catalog-blueprints?label=npm)](https://www.npmjs.com/package/@cdklabs/cdk-appmod-catalog-blueprints)\n[![npm downloads](https://img.shields.io/npm/dt/@cdklabs/cdk-appmod-catalog-blueprints?label=npm%20downloads)](https://www.npmjs.com/package/@cdklabs/cdk-appmod-catalog-blueprints)\n[![PyPI version](https://img.shields.io/pypi/v/appmod-catalog-blueprints?label=pypi)](https://pypi.org/project/appmod-catalog-blueprints/)\n[![PyPI downloads](https://img.shields.io/pepy/dt/appmod-catalog-blueprints?label=pypi%20downloads)](https://pepy.tech/project/appmod-catalog-blueprints)\n[![NuGet version](https://img.shields.io/nuget/v/CdklabsAppmodCatalogBlueprints?label=nuget)](https://www.nuget.org/packages/CdklabsAppmodCatalogBlueprints)\n[![NuGet downloads](https://img.shields.io/nuget/dt/CdklabsAppmodCatalogBlueprints?label=nuget%20downloads)](https://www.nuget.org/packages/CdklabsAppmodCatalogBlueprints)\n[![Maven version](https://img.shields.io/maven-central/v/io.github.cdklabs/appmod-catalog-blueprints?label=maven)](https://central.sonatype.com/artifact/io.github.cdklabs/appmod-catalog-blueprints)\n\nApplication Modernization (AppMod) Catalog Blueprints is a comprehensive library of **use case-driven infrastructure blueprints** and **industry-aligned solutions** built on AWS Well-Architected best practices. Designed as composable, multi-layered [AWS CDK](https://aws.amazon.com/cdk/) [L3 constructs](https://docs.aws.amazon.com/cdk/v2/guide/constructs.html), these blueprints accelerate serverless development and modernization with multiple implementation pathways — from ready-to-deploy solutions to fully customizable building blocks.\n\n**Why This Library?**\n- **Use case-driven**: Purpose-built for real business problems — AI workflows, document processing, event-driven architectures, web applications\n- **Multi-layered approach**: Infrastructure Foundation → General Use Cases → Industry Solutions — start with proven patterns, customize as needed\n- **Composable architecture**: Mix and match independent components with standardized interfaces\n- **Enterprise-ready security**: Built-in compliance, encryption, least-privilege IAM, and CDK Nag validation\n- **Multi-language**: TypeScript, Python, Java, .NET via [JSII](https://aws.github.io/jsii/)\n\n---\n\n## How to Use This Library\n\n| Approach | Best For | Get Started |\n|----------|----------|-------------|\n| **Deploy a Solution** | Quick evaluation, proof-of-concepts | Pick from [ready-to-deploy examples](#what-you-can-build) — deploy in minutes with 3 commands |\n| **Build Custom** | Enterprise integration, tailored applications | Use [individual constructs](#building-blocks) — override defaults, extend and inject custom logic |\n| **AI-Assisted** | Faster development with AI coding assistants | Use the [MCP Server](./mcp-appmod-catalog-blueprints/) + [Skills](./skills/) with genAI coding agents (Kiro, Claude Code, Codex etc.) |\n\nRefer to [Getting Started](#getting-started) for more details.\n\n---\n\n## What You Can Build\n\n### AI Chatbots & Assistants\n\n| Solution | What It Does | Constructs Used |\n|----------|--------------|-----------------|\n| [**Customer Service Chatbot**](./examples/chatbot/customer-service-chatbot/) | Real-time chatbot with streaming and session management | [InteractiveAgent](./use-cases/framework/agents/), [Frontend](./use-cases/webapp/) |\n| [**Retail Banking Chatbot**](./examples/chatbot/retail-banking-chatbot/) | Banking chatbot with RAG knowledge base and transaction lookup | [InteractiveAgent](./use-cases/framework/agents/), [BedrockKnowledgeBase](./use-cases/framework/agents/knowledge-base/), [Frontend](./use-cases/webapp/) |\n| [**Retail Banking Chatbot (AgentCore)**](./examples/chatbot/retail-banking-chatbot-agentcore/) | High-availability banking bot on AgentCore Runtime | [InteractiveAgent](./use-cases/framework/agents/), [BedrockKnowledgeBase](./use-cases/framework/agents/knowledge-base/) |\n| [**RAG Customer Support**](./examples/rag-customer-support/) | Knowledge-powered Q&A for e-commerce support | [BatchAgent](./use-cases/framework/agents/), [BedrockKnowledgeBase](./use-cases/framework/agents/knowledge-base/) |\n\n### Intelligent Document Processing\n\n| Solution | What It Does | Constructs Used |\n|----------|--------------|-----------------|\n| [**Insurance Claims Portal**](./examples/document-processing/doc-processing-fullstack-webapp/) | End-to-end claims processing with web UI | [AgenticDocumentProcessing](./use-cases/document-processing/), [Frontend](./use-cases/webapp/) |\n| [**Fraud Detection**](./examples/document-processing/fraud-detection/) | AI-powered document fraud analysis with risk scoring | [AgenticDocumentProcessing](./use-cases/document-processing/) |\n| [**Document Summarization**](./examples/document-processing/summarization-pipeline/) | Multi-format summarization with semantic search | [BedrockDocumentProcessing](./use-cases/document-processing/) |\n| [**Agentic Document Processing**](./examples/document-processing/agentic-document-processing/) | Advanced document processing with AI reasoning | [AgenticDocumentProcessing](./use-cases/document-processing/) |\n| [**Bedrock Document Processing**](./examples/document-processing/bedrock-document-processing/) | Document classification and extraction pipeline | [BedrockDocumentProcessing](./use-cases/document-processing/) |\n| [**Minimal Document Processing**](./examples/document-processing/minimal-bedrock-doc-processing/) | Zero-config document processing starter | [BedrockDocumentProcessing](./use-cases/document-processing/) |\n\n### Data Generation\n\n| Solution | What It Does | Constructs Used |\n|----------|--------------|-----------------|\n| [**Synthetic Dataset Generator**](./examples/synthetic-dataset-generator/) | AI-powered synthetic data generation through conversation | [InteractiveAgent](./use-cases/framework/agents/), [BatchAgent](./use-cases/framework/agents/), [Frontend](./use-cases/webapp/) |\n\n---\n\n## Building Blocks\n\nUse individual constructs to build custom applications:\n\n```bash\nnpm install @cdklabs/cdk-appmod-catalog-blueprints\n```\n\n```typescript\nimport { InteractiveAgent } from '@cdklabs/cdk-appmod-catalog-blueprints';\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\n\nnew InteractiveAgent(this, 'MyChatbot', {\n agentName: 'support-bot',\n agentDefinition: {\n bedrockModel: { useCrossRegionInference: true },\n systemPrompt: new Asset(this, 'Prompt', { path: './prompt.txt' }),\n },\n});\n```\n\n### Available Constructs\n\n| Construct | What It Does |\n|-----------|--------------|\n| [**InteractiveAgent**](./use-cases/framework/agents/) | Real-time chatbots with SSE streaming, sessions, and auth |\n| [**BatchAgent**](./use-cases/framework/agents/) | Async AI processing for document analysis |\n| [**BaseAgent**](./use-cases/framework/agents/) | Abstract base for custom agent implementations |\n| [**AgenticDocumentProcessing**](./use-cases/document-processing/) | Document workflows with AI agents and tools |\n| [**BedrockDocumentProcessing**](./use-cases/document-processing/) | Document classification and extraction |\n| [**BaseDocumentProcessing**](./use-cases/document-processing/) | Abstract base for custom document processing |\n| [**BedrockKnowledgeBase**](./use-cases/framework/agents/knowledge-base/) | RAG retrieval with access control |\n| [**Frontend**](./use-cases/webapp/) | Static web hosting with CloudFront CDN |\n\n### Foundation & Utilities\n\n| Component | What It Does |\n|-----------|--------------|\n| [**Network**](./use-cases/framework/foundation/) | VPC with subnets and endpoints |\n| [**Observability**](./use-cases/utilities/) | Logging, tracing, monitoring with Lambda Powertools |\n| [**DataMasking**](./use-cases/utilities/) | PII protection Lambda layer |\n\n---\n\n## Architecture\n\n### How It Works\n\n```\n┌─────────────────────────────────────────────────────────────────────┐\n│ Your Application │\n├─────────────────────────────────────────────────────────────────────┤\n│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │\n│ │ Interactive │ │ Batch │ │ Document │ │ Frontend │ │\n│ │ Agent │ │ Agent │ │ Processing │ │ (React) │ │\n│ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │\n├─────────┼────────────────┼────────────────┼────────────────┼────────┤\n│ │ │ │ │ │\n│ ┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐ │\n│ │ Bedrock │ │ Step │ │ Lambda │ │ CloudFront │ │\n│ │ + Cognito │ │ Functions │ │ + S3 │ │ + S3 │ │\n│ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ │\n├─────────────────────────────────────────────────────────────────────┤\n│ Foundation (Network, Observability) │\n└─────────────────────────────────────────────────────────────────────┘\n```\n\n### Multi-Layered Design\n\n| Layer | What It Is | Purpose |\n|-------|------------|---------|\n| **Infrastructure Foundation** | Abstract base classes (`BaseAgent`, `BaseDocumentProcessing`) | Standardized interfaces and contracts — extend for custom implementations |\n| **General Use Case Implementation** | Concrete classes (`InteractiveAgent`, `BedrockDocumentProcessing`) | Configurable implementations for common patterns — use directly or extend |\n| **Industry-Aligned Solutions** | Deployable examples (`examples/`) | Pre-configured for specific domains (insurance, banking, e-commerce) — deploy as-is or use as reference |\n\n### Composable Architecture\n\nBuild complex systems by combining independent, reusable components:\n\n- **Independent components** with clear interfaces and loose coupling\n- **Mix and match** constructs across different contexts and use cases\n- **Pluggable strategies** for networking, observability, and event handling\n- **Scalable composition** — incremental adoption and gradual modernization\n\n---\n\n## Getting Started\n\n### Prerequisites\n\n```bash\n# Configure AWS credentials\naws configure\n# OR: export AWS_PROFILE=your-profile-name\n\n# Bootstrap CDK (one-time per account/region)\nnpx cdk bootstrap\n```\n\n### Deploy a Solution\n\nClone the repo, pick an example from [the catalog](#what-you-can-build), and deploy:\n\n```bash\ngit clone https://github.com/cdklabs/cdk-appmod-catalog-blueprints.git\ncd cdk-appmod-catalog-blueprints/examples/chatbot/customer-service-chatbot\nnpm install && npm run deploy\n```\n\nThat's it — you now have a well-architected AI chatbot with streaming, authentication, and a React frontend. Swap the path for any other solution.\n\n### Build Custom\n\nImport constructs into your own CDK project:\n\n```bash\nnpm install @cdklabs/cdk-appmod-catalog-blueprints\n```\n\n```typescript\nimport { InteractiveAgent } from '@cdklabs/cdk-appmod-catalog-blueprints';\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\n\nnew InteractiveAgent(this, 'MyChatbot', {\n agentName: 'my-bot',\n agentDefinition: {\n bedrockModel: { useCrossRegionInference: true },\n systemPrompt: new Asset(this, 'Prompt', { path: './prompt.txt' }),\n },\n});\n```\n\nOverride defaults, extend base classes, and inject custom logic as needed. See [Building Blocks](#building-blocks) for available constructs.\n\n### AI-Assisted\n\nUse AI coding assistants to scaffold and compose constructs with correct props and dependency wiring. The [MCP Server](./mcp-appmod-catalog-blueprints/) exposes tools for genAI coding agents (Kiro, Claude Code, Codex etc.) via the [Model Context Protocol](https://modelcontextprotocol.io/).\n\nSee the [MCP Server README](./mcp-appmod-catalog-blueprints/README.md) for setup, or install the [appmod-blueprints-builder skill](./skills/appmod-blueprints-builder/) for guided workflows.\n\n---\n\n## Security & Compliance\n\nAll constructs include enterprise-grade security by default:\n\n| Feature | What You Get |\n|---------|--------------|\n| **CDK Nag Integration** | Automated security compliance checking |\n| **AWS Well-Architected** | Security, reliability, and performance best practices |\n| **Encryption** | KMS at rest, TLS in transit — always on |\n| **IAM** | Least-privilege, resource-scoped permissions |\n| **Compliance Reports** | Generate with `npm test -- --testPathPattern=\"nag.test.ts\"` |\n\n---\n\n## Documentation\n\n- [**Website**](https://cdklabs.github.io/cdk-appmod-catalog-blueprints/) — Full documentation and guides\n- [**Construct Hub**](https://constructs.dev/packages/@cdklabs/cdk-appmod-catalog-blueprints/) — API reference\n- [**Examples**](./examples/) — Complete deployable solutions\n- [**Building Blocks**](./use-cases/) — Individual construct documentation\n- [**MCP Server**](./mcp-appmod-catalog-blueprints/) — AI-assisted development tools\n- [**Agent Skills**](./skills/) — AI assistant skills\n\n---\n\n## Contributing\n\nWe welcome contributions! See [CONTRIBUTING.md](https://github.com/cdklabs/cdk-appmod-catalog-blueprints/blob/main/CONTRIBUTING.md) for guidelines.\n\n## Disclaimer\n\nThese solutions are examples to help you build applications, not supported products. Any applications you build should be thoroughly tested, secured, and optimized according to your security standards before production use.\n\n## License\n\nApache License 2.0 — see [LICENSE](https://github.com/cdklabs/cdk-appmod-catalog-blueprints/blob/main/LICENSE) for details.\n" }, "repository": { "type": "git", "url": "https://github.com/cdklabs/cdk-appmod-catalog-blueprints.git" }, "schema": "jsii/0.10.0", "targets": { "dotnet": { "namespace": "CdklabsAppmodCatalogBlueprints", "packageId": "CdklabsAppmodCatalogBlueprints" }, "java": { "maven": { "artifactId": "appmod-catalog-blueprints", "groupId": "io.github.cdklabs" }, "package": "io.github.cdklabs.appmod.catalog.blueprints" }, "js": { "npm": "@cdklabs/cdk-appmod-catalog-blueprints" }, "python": { "distName": "appmod-catalog-blueprints", "module": "appmod_catalog_blueprints" } }, "types": { "@cdklabs/cdk-appmod-catalog-blueprints.AccessLog": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "remarks": "This construct creates a secure S3 bucket with appropriate policies for AWS services\nto deliver access logs.\n\nUsage:\n\nconst accessLog = new AccessLog(this, 'AccessLog');\nconst bucket = accessLog.bucket;\nconst bucketName = accessLog.bucketName;", "stability": "experimental", "summary": "AccessLog construct that provides a centralized S3 bucket for storing access logs." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AccessLog", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 64 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AccessLogProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 48 }, "methods": [ { "docs": { "returns": "The S3 path for the service's access logs", "stability": "experimental", "summary": "Get the S3 bucket path for a specific service's access logs." }, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 150 }, "name": "getLogPath", "parameters": [ { "docs": { "summary": "The name of the service (e.g., 'alb', 'cloudfront', 's3')." }, "name": "serviceName", "type": { "primitive": "string" } }, { "docs": { "summary": "Optional resource name for further organization." }, "name": "resourceName", "optional": true, "type": { "primitive": "string" } } ], "returns": { "type": { "primitive": "string" } } }, { "docs": { "returns": "The S3 URI for the service's access logs", "stability": "experimental", "summary": "Get the S3 URI for a specific service's access logs." }, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 162 }, "name": "getLogUri", "parameters": [ { "docs": { "summary": "The name of the service (e.g., 'alb', 'cloudfront', 's3')." }, "name": "serviceName", "type": { "primitive": "string" } }, { "docs": { "summary": "Optional resource name for further organization." }, "name": "resourceName", "optional": true, "type": { "primitive": "string" } } ], "returns": { "type": { "primitive": "string" } } } ], "name": "AccessLog", "properties": [ { "docs": { "stability": "experimental", "summary": "The S3 bucket for storing access logs." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 52 }, "name": "bucket", "type": { "fqn": "aws-cdk-lib.aws_s3.Bucket" } }, { "docs": { "stability": "experimental", "summary": "The name of the S3 bucket." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 57 }, "name": "bucketName", "type": { "primitive": "string" } }, { "docs": { "stability": "experimental", "summary": "The bucket prefix used for organizing access logs." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 62 }, "name": "bucketPrefix", "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/foundation/access-log:AccessLog" }, "@cdklabs/cdk-appmod-catalog-blueprints.AccessLogProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration options for the AccessLog construct." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AccessLogProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 11 }, "name": "AccessLogProps", "properties": [ { "abstract": true, "docs": { "default": "'access-logs'", "stability": "experimental", "summary": "The name of the S3 bucket for access logs." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 16 }, "name": "bucketName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'access-logs'", "stability": "experimental", "summary": "Custom bucket prefix for organizing access logs." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 34 }, "name": "bucketPrefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "Transition to IA after 30 days, delete after 90 days", "stability": "experimental", "summary": "Lifecycle rules for the access logs." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 22 }, "name": "lifecycleRules", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_s3.LifecycleRule" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "false", "stability": "experimental", "summary": "Whether to enable versioning on the access logs bucket." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/access-log.ts", "line": 28 }, "name": "versioned", "optional": true, "type": { "primitive": "boolean" } } ], "symbolId": "use-cases/framework/foundation/access-log:AccessLogProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.AclConfiguration": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "When enabled, retrieval queries will be filtered based on user identity\ncontext, ensuring users only retrieve documents they have permission to access.", "stability": "experimental", "summary": "Configuration for Access Control List (ACL) based filtering." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AclConfiguration", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 39 }, "name": "AclConfiguration", "properties": [ { "abstract": true, "docs": { "default": "false", "remarks": "When true, the retrieval tool will require user context and apply\nmetadata filters based on user permissions.", "stability": "experimental", "summary": "Enable ACL-based filtering for retrieval queries." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 48 }, "name": "enabled", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "'group'", "remarks": "This field in the document metadata should contain the group or\npermission identifier that controls access. The retrieval tool\nwill filter results where this field matches the user's permissions.", "stability": "experimental", "summary": "Metadata field containing access permissions." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 59 }, "name": "metadataField", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:AclConfiguration" }, "@cdklabs/cdk-appmod-catalog-blueprints.AdditionalDistributionProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Additional CloudFront distribution properties." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AdditionalDistributionProps", "kind": "interface", "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 58 }, "name": "AdditionalDistributionProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional comment for the distribution." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 60 }, "name": "comment", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional enabled flag for the distribution." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 62 }, "name": "enabled", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional price class for the distribution." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 64 }, "name": "priceClass", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_cloudfront.PriceClass" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional web ACL ID for the distribution." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 66 }, "name": "webAclId", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/webapp/frontend-construct:AdditionalDistributionProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreJwtAuthorizerConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Custom JWT authorizer configuration for AgentCore Runtime." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreJwtAuthorizerConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1255 }, "name": "AgentCoreJwtAuthorizerConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "OIDC discovery URL." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1257 }, "name": "discoveryUrl", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Allowed audiences." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1259 }, "name": "allowedAudience", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Allowed client IDs." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1261 }, "name": "allowedClients", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "symbolId": "use-cases/framework/agents/interactive-agent:AgentCoreJwtAuthorizerConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreRuntimeHostingAdapter": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Deploys the agent as a container running on AgentCore Runtime (microVM).\nUses L1 constructs `CfnRuntime` and `CfnRuntimeEndpoint` from\n`aws-cdk-lib/aws-bedrockagentcore`.\n\n## Architecture\n\n```\nClient → AgentCore Runtime Endpoint → Container (FastAPI on port 8080) → Bedrock\n```\n\n## Features\n\n- **Session Isolation**: microVM provides per-session isolation (no S3 session bucket needed)\n- **Managed Infrastructure**: No Lambda cold starts or timeout limits\n- **Multiple Protocols**: HTTP, MCP, or A2A protocol support\n- **Container-Based**: Standard Docker image deployment\n- **VPC Support**: Run inside a VPC with private subnets for network isolation\n\n## Usage\n\n```typescript\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\nimport { InteractiveAgent, AgentCoreRuntimeHostingAdapter, NetworkMode } from '@cdklabs/cdk-appmod-catalog-blueprints';\n\ndeclare const myPrompt: Asset;\n\nnew InteractiveAgent(this, 'Agent', {\n agentName: 'MyChatbot',\n agentDefinition: { bedrockModel: {}, systemPrompt: myPrompt },\n hostingAdapter: new AgentCoreRuntimeHostingAdapter({\n networkMode: NetworkMode.PUBLIC,\n }),\n});\n```", "stability": "experimental", "summary": "AgentCore Runtime hosting adapter for InteractiveAgent." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreRuntimeHostingAdapter", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1412 }, "parameters": [ { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreRuntimeHostingAdapterProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1409 }, "methods": [ { "docs": { "stability": "experimental", "summary": "Deploy AgentCore Runtime hosting infrastructure." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1421 }, "name": "deploy", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter", "parameters": [ { "name": "config", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingConfig" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingResult" } } } ], "name": "AgentCoreRuntimeHostingAdapter", "properties": [ { "docs": { "remarks": "BaseAgent uses this to create the agent role with the correct trust policy.\nFor example, Lambda hosting requires `lambda.amazonaws.com` while AgentCore\nhosting requires `bedrock-agentcore.amazonaws.com`.", "stability": "experimental", "summary": "The IAM service principal that this hosting backend requires." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1416 }, "name": "servicePrincipal", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter", "type": { "fqn": "aws-cdk-lib.aws_iam.ServicePrincipal" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:AgentCoreRuntimeHostingAdapter" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreRuntimeHostingAdapterProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreRuntimeHostingAdapterProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1295 }, "name": "AgentCoreRuntimeHostingAdapterProps", "properties": [ { "abstract": true, "docs": { "default": "Builds from agentcore-agent-handler directory", "remarks": "If not provided, builds from the bundled handler source.", "stability": "experimental", "summary": "ECR container image URI." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1301 }, "name": "containerImageUri", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "Omit for IAM-only auth.", "stability": "experimental", "summary": "Custom JWT authorizer configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1354 }, "name": "customJwtAuthorizer", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentCoreJwtAuthorizerConfig" } }, { "abstract": true, "docs": { "default": "Auto-generated from agent name", "stability": "experimental", "summary": "Runtime endpoint name." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1368 }, "name": "endpointName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "NetworkMode.PUBLIC", "remarks": "When set to `NetworkMode.VPC`, the runtime runs inside a VPC and AgentCore creates\nENIs in the specified subnets. You must provide either explicit `vpcSubnets`\nand `securityGroups`, or pass a `Network` construct via `AgentHostingConfig.network`\n(which is set automatically by `InteractiveAgent` when `network` is provided).\n\nFor VPC mode, use private subnets with a NAT Gateway for internet access.\nPublic subnets do NOT provide internet access to AgentCore ENIs.", "see": "https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/agentcore-vpc.html", "stability": "experimental", "summary": "Network mode for the AgentCore Runtime." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1317 }, "name": "networkMode", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.NetworkMode" } }, { "abstract": true, "docs": { "default": "'HTTP'", "stability": "experimental", "summary": "Protocol configuration: 'HTTP' | 'MCP' | 'A2A'." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1361 }, "name": "protocolConfiguration", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- A new security group allowing all outbound traffic is created\nfrom AgentHostingConfig.network if available", "remarks": "Attached to the AgentCore Runtime ENIs. Maximum 16 security groups.\n\nWhen both `securityGroups` and `AgentHostingConfig.network` are provided,\n`securityGroups` takes precedence.", "stability": "experimental", "summary": "Security groups for VPC network mode." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1348 }, "name": "securityGroups", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- Derived from AgentHostingConfig.network.applicationSubnetSelection() if available", "remarks": "Selects which subnets the AgentCore Runtime ENIs are placed in.\nRequires a VPC to be provided via `AgentHostingConfig.network`\n(set automatically by `InteractiveAgent` when `network` is provided)\nso that subnets can be resolved.\n\nBest practice is to select private subnets with a NAT Gateway\nin at least 2 Availability Zones. Maximum 16 subnets.\n\nWhen both `vpcSubnets` and `AgentHostingConfig.network` are provided,\n`vpcSubnets` takes precedence over the network's default application subnets.", "stability": "experimental", "summary": "Subnet selection for VPC network mode." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1335 }, "name": "vpcSubnets", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:AgentCoreRuntimeHostingAdapterProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgentDefinitionProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Parameters that influences the behavior of the agent." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentDefinitionProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 29 }, "name": "AgentDefinitionProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Configuration for the Bedrock Model to be used." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 33 }, "name": "bedrockModel", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The system prompt of the agent." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 39 }, "name": "systemPrompt", "type": { "fqn": "aws-cdk-lib.aws_s3_assets.Asset" } }, { "abstract": true, "docs": { "default": "- Only auto-generated permissions from knowledge bases", "remarks": "Use this when knowledge bases require permissions beyond what is\nautomatically generated by the IKnowledgeBase implementations.\nThese statements will be added to the agent's IAM role in addition\nto the auto-generated permissions.", "stability": "experimental", "summary": "Additional IAM policy statements for knowledge base access." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 83 }, "name": "additionalPolicyStatementsForKnowledgeBases", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "If tools need additional IAM permissions, these statements would be attached to the Agent's IAM role." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 57 }, "name": "additionalPolicyStatementsForTools", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "- No knowledge bases configured", "remarks": "When configured, the agent will have access to a built-in retrieval tool\nthat can query these knowledge bases. The agent's system prompt will be\nautomatically augmented with information about available knowledge bases.\n\nEach knowledge base must implement the IKnowledgeBase interface, which\nhandles IAM permission generation and runtime configuration.", "stability": "experimental", "summary": "Knowledge bases available to the agent for Retrieval-Augmented Generation (RAG)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 71 }, "name": "knowledgeBases", "optional": true, "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Any dependencies needed by the provided tools." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 51 }, "name": "lambdaLayers", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.LayerVersion" }, "kind": "array" } } }, { "abstract": true, "docs": { "remarks": "This tools would automatically\nbe loaded by the agent. You can also use this to incorporate other specialized\nagents as tools.", "stability": "experimental", "summary": "List of tools defined in python files." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 46 }, "name": "tools", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_s3_assets.Asset" }, "kind": "array" } } } ], "symbolId": "use-cases/framework/agents/base-agent:AgentDefinitionProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration passed to a hosting adapter's deploy method." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 940 }, "name": "AgentHostingConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Agent name identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 944 }, "name": "agentName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "IAM role for the agent runtime." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 946 }, "name": "agentRole", "type": { "fqn": "aws-cdk-lib.aws_iam.Role" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "KMS encryption key." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 950 }, "name": "encryptionKey", "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Environment variables to set on the runtime." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 948 }, "name": "environment", "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "CDK scope for creating resources." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 942 }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "System prompt S3 bucket name." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 970 }, "name": "systemPromptBucket", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "System prompt S3 key." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 972 }, "name": "systemPromptKey", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Agent tools location definitions (JSON serialized)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 968 }, "name": "toolsConfig", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Lambda architecture (Lambda hosting only)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 954 }, "name": "architecture", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Architecture" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Whether observability is enabled." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 966 }, "name": "enableObservability", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Knowledge base configs (JSON serialized)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 974 }, "name": "knowledgeBaseConfigs", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Lambda layers from knowledge bases (Lambda hosting only)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 964 }, "name": "knowledgeBaseLayers", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.ILayerVersion" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Knowledge base system prompt addition." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 976 }, "name": "knowledgeBaseSystemPromptAddition", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Lambda layers from agent definition (Lambda hosting only)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 962 }, "name": "lambdaLayers", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.ILayerVersion" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Lambda memory size in MB (Lambda hosting only)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 956 }, "name": "memorySize", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional VPC network configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 952 }, "name": "network", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Network" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Removal policy for resources." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 978 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Reserved concurrent executions (Lambda hosting only)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 960 }, "name": "reservedConcurrentExecutions", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Lambda timeout (Lambda hosting only)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 958 }, "name": "timeout", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:AgentHostingConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingResult": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Result returned by a hosting adapter's deploy method." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingResult", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 984 }, "name": "AgentHostingResult", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "The agent endpoint URL or ARN." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 986 }, "name": "endpoint", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The Lambda function (if Lambda-hosted)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 988 }, "name": "agentFunction", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The AgentCore CfnRuntime (if AgentCore-hosted)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 990 }, "name": "cfnRuntime", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_bedrockagentcore.CfnRuntime" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:AgentHostingResult" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgentToolsLocationDefinition": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentToolsLocationDefinition", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 19 }, "name": "AgentToolsLocationDefinition", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 20 }, "name": "bucketName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 22 }, "name": "isFile", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 23 }, "name": "isZipArchive", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 21 }, "name": "key", "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/agents/base-agent:AgentToolsLocationDefinition" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessing": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessing", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessing", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/agentic-document-processing.ts", "line": 22 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "Configuration properties for the document processing pipeline." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessingProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/document-processing/agentic-document-processing.ts", "line": 16 }, "methods": [ { "docs": { "remarks": "Creates a Lambda function that invokes the configured Bedrock model to extract\nstructured data from the document. Uses the classification result from the\nprevious step to provide context for more accurate extraction.\n\nThis method caches the Lambda function to avoid creating duplicate resources,\nbut creates a new LambdaInvoke task each time to allow proper state chaining.", "stability": "experimental", "summary": "Implements the document extraction step using Amazon Bedrock." }, "locationInModule": { "filename": "use-cases/document-processing/agentic-document-processing.ts", "line": 26 }, "name": "processingStep", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessing", "protected": true, "returns": { "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } } ], "name": "AgenticDocumentProcessing", "symbolId": "use-cases/document-processing/agentic-document-processing:AgenticDocumentProcessing" }, "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessingProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessingProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessingProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/agentic-document-processing.ts", "line": 8 }, "name": "AgenticDocumentProcessingProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "This parameter takes precedence over the `processingBedrockModel` parameter." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/agentic-document-processing.ts", "line": 13 }, "name": "processingAgentParameters", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgentProps" } } ], "symbolId": "use-cases/document-processing/agentic-document-processing:AgenticDocumentProcessingProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.AggregatedResult": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Combines classification and extraction results into final output.", "stability": "experimental", "summary": "Aggregated result from processing all chunks." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AggregatedResult", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 637 }, "name": "AggregatedResult", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Summary of chunk processing results." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 664 }, "name": "chunksSummary", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunksSummary" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Final document classification (from majority vote or other strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 646 }, "name": "classification", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "For majority vote: (count of majority / total chunks)", "stability": "experimental", "summary": "Confidence score for the classification (0-1)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 652 }, "name": "classificationConfidence", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Document identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 641 }, "name": "documentId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "Entities without page numbers are deduplicated by (type, value).\nEntities with page numbers are preserved even if duplicated.", "stability": "experimental", "summary": "Deduplicated entities from all chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 659 }, "name": "entities", "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Entity" }, "kind": "array" } } }, { "abstract": true, "docs": { "remarks": "True if fewer than minSuccessThreshold chunks succeeded.", "stability": "experimental", "summary": "Indicates if result is partial due to chunk failures." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 670 }, "name": "partialResult", "type": { "primitive": "boolean" } } ], "symbolId": "use-cases/document-processing/chunking-config:AggregatedResult" }, "@cdklabs/cdk-appmod-catalog-blueprints.AggregationRequest": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Contains results from all processed chunks.", "stability": "experimental", "summary": "Request payload for aggregation Lambda." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AggregationRequest", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 590 }, "name": "AggregationRequest", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Results from all processed chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 599 }, "name": "chunkResults", "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkResult" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Document identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 594 }, "name": "documentId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'majority-vote'", "stability": "experimental", "summary": "Strategy to use for aggregation." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 605 }, "name": "aggregationStrategy", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/document-processing/chunking-config:AggregationRequest" }, "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgent": { "abstract": true, "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "remarks": "Provides common infrastructure for AI agents including:\n- IAM role and permissions management\n- Encryption key for environment variables\n- Tool integration and S3 asset management\n- Knowledge base integration for RAG (Retrieval-Augmented Generation)\n- Observability configuration (Lambda Powertools + AgentCore)\n\nSubclasses must implement the agent-specific Lambda function creation.\n\n**Observability**: When `enableObservability: true`, BaseAgent configures both\nLambda Powertools (function-level) and AWS Bedrock AgentCore (agent-level)\nobservability. Both systems work together to provide complete visibility:\n- Lambda Powertools captures function execution, logs, and custom metrics\n- AgentCore captures agent reasoning, tool usage, and token consumption\n- Both publish to CloudWatch with correlated service names for unified monitoring\n\nThe observability integration includes:\n- Automatic IAM permission grants for CloudWatch Logs and X-Ray\n- Environment variable configuration for OpenTelemetry\n- ADOT Lambda Layer attachment (handled by concrete implementations)", "see": "https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/observability-configure.html", "stability": "experimental", "summary": "Base class for all agent types in the framework." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgent", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 231 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgentProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 195 }, "methods": [ { "docs": { "custom": { "throws": "Error if the region is not supported" }, "remarks": "The ADOT layer provides automatic instrumentation for observability.\nLayer versions vary by region - some regions have newer versions with\nbetter Python 3.13 support. If you encounter compatibility issues,\nthe layer ARNs can be found at:\nhttps://aws-otel.github.io/docs/getting-started/lambda#adot-lambda-layer-arns", "returns": "The ADOT Lambda Layer for the current region", "stability": "experimental", "summary": "Creates the AWS Distro for OpenTelemetry (ADOT) Lambda Layer." }, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 382 }, "name": "createADOTLayer", "protected": true, "returns": { "type": { "fqn": "aws-cdk-lib.aws_lambda.ILayerVersion" } } } ], "name": "BaseAgent", "properties": [ { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 202 }, "name": "agentRole", "type": { "fqn": "aws-cdk-lib.aws_iam.Role" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 206 }, "name": "agentToolsLocationDefinitions", "protected": true, "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentToolsLocationDefinition" }, "kind": "array" } } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 203 }, "name": "encryptionKey", "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } }, { "docs": { "remarks": "This array contains the exported configurations from all configured\nknowledge bases. Subclasses use this to set the KNOWLEDGE_BASES_CONFIG\nenvironment variable on the agent Lambda function.", "stability": "experimental", "summary": "Knowledge base configurations for runtime use." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 214 }, "name": "knowledgeBaseConfigs", "protected": true, "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.KnowledgeBaseRuntimeConfig" }, "kind": "array" } } }, { "docs": { "remarks": "This array contains Lambda layers from all configured knowledge bases.\nSubclasses should add these layers to the agent Lambda function to\nensure retrieval tools have access to required dependencies.", "stability": "experimental", "summary": "Lambda layers required by knowledge base retrieval tools." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 229 }, "name": "knowledgeBaseLayers", "protected": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.LayerVersion" }, "kind": "array" } } }, { "docs": { "stability": "experimental", "summary": "log group data protection configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 205 }, "name": "logGroupDataProtection", "protected": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } }, { "abstract": true, "docs": { "remarks": "May be undefined for non-Lambda hosting backends (e.g. AgentCore Runtime).", "stability": "experimental", "summary": "The Lambda function for the agent (when using Lambda hosting)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 200 }, "name": "agentFunction", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 201 }, "name": "bedrockModel", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps" } }, { "docs": { "remarks": "This is automatically created when knowledge bases are configured.\nThe asset is added to the agent's tools and granted read access.", "stability": "experimental", "summary": "Asset containing the knowledge base retrieval tool." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 221 }, "name": "knowledgeBaseToolAsset", "optional": true, "protected": true, "type": { "fqn": "aws-cdk-lib.aws_s3_assets.Asset" } } ], "symbolId": "use-cases/framework/agents/base-agent:BaseAgent" }, "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgentProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgentProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.ObservableProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 86 }, "name": "BaseAgentProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Agent related parameters." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 106 }, "name": "agentDefinition", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentDefinitionProps" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Name of the agent." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 91 }, "name": "agentName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "Architecture.ARM_64", "stability": "experimental", "summary": "The architecture used by the Lambda function where the agent is hosted." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 166 }, "name": "agentArchitecture", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Architecture" } }, { "abstract": true, "docs": { "default": "false", "remarks": "When enabled, configures both Lambda Powertools and AWS Bedrock AgentCore observability:\n- **Lambda Powertools**: Provides function-level observability including structured logging,\n distributed tracing with X-Ray, and custom metrics\n- **AgentCore Observability**: Provides agent-specific observability including agent invocations,\n reasoning steps, tool usage, token consumption, and agent latency\n\nBoth systems publish to Amazon CloudWatch and use the same service name and namespace\nfor correlation. This provides complete visibility at both function and agent levels.\n\n**Environment Variables Set** (AgentCore):\n- `AGENT_OBSERVABILITY_ENABLED`: Enables AgentCore observability\n- `OTEL_RESOURCE_ATTRIBUTES`: Service identification for OpenTelemetry\n- `OTEL_EXPORTER_OTLP_LOGS_HEADERS`: Agent identification headers\n- `AWS_LAMBDA_EXEC_WRAPPER`: ADOT wrapper for automatic instrumentation\n\n**IAM Permissions Granted** (AgentCore):\n- CloudWatch Logs: `logs:CreateLogGroup`, `logs:CreateLogStream`, `logs:PutLogEvents`\n- X-Ray: `xray:PutTraceSegments`, `xray:PutTelemetryRecords`\n\n**Additional Requirements**:\n- BatchAgent automatically adds ADOT (AWS Distro for OpenTelemetry) Lambda Layer", "see": "https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/observability-configure.html", "stability": "experimental", "summary": "Enable observability for the agent." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 136 }, "name": "enableObservability", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "new KMS Key would be created", "stability": "experimental", "summary": "Encryption key to encrypt agent environment variables." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 150 }, "name": "encryptionKey", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } }, { "abstract": true, "docs": { "default": "Agent would not be in a VPC", "stability": "experimental", "summary": "If the Agent would be running inside a VPC." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 143 }, "name": "network", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Network" } }, { "abstract": true, "docs": { "default": "RemovalPolicy.DESTROY", "stability": "experimental", "summary": "Removal policy for resources created by this construct." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 158 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "default": "ServicePrincipal('lambda.amazonaws.com')", "remarks": "This is typically set by the hosting adapter (e.g., `lambda.amazonaws.com`\nfor Lambda hosting, `bedrock-agentcore.amazonaws.com` for AgentCore).", "stability": "experimental", "summary": "The IAM service principal for the agent role's trust policy." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/base-agent.ts", "line": 101 }, "name": "servicePrincipal", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_iam.ServicePrincipal" } } ], "symbolId": "use-cases/framework/agents/base-agent:BaseAgentProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing": { "abstract": true, "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "remarks": "Provides a complete document processing pipeline with:\n- **S3 Storage**: Organized with prefixes (raw/, processed/, failed/) for document lifecycle management\n- **SQS Queue**: Reliable message processing with configurable visibility timeout and dead letter queue\n- **DynamoDB Table**: Workflow metadata tracking with DocumentId as partition key\n- **Step Functions**: Orchestrated workflow with automatic file movement based on processing outcome\n- **Auto-triggering**: S3 event notifications automatically start processing when files are uploaded to raw/ prefix\n- **Error Handling**: Failed documents are moved to failed/ prefix with error details stored in DynamoDB\n- **EventBridge Integration**: Optional custom event publishing for workflow state changes\n\n## Architecture Flow\nS3 Upload (raw/) → SQS → Lambda Consumer → Step Functions → Processing Steps → S3 (processed/failed/)\n\n## Implementation Requirements\nSubclasses must implement four abstract methods to define the processing workflow:\n- `classificationStep()`: Document type classification\n- `extractionStep()`: Data extraction from documents\n- `enrichmentStep()`: Optional data enrichment (return undefined to skip)\n- `postProcessingStep()`: Optional post-processing (return undefined to skip)", "stability": "experimental", "summary": "Abstract base class for serverless document processing workflows." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "initializer": { "docs": { "remarks": "Initializes the complete document processing infrastructure including S3 bucket,\nSQS queue, DynamoDB table, and sets up S3 event notifications to trigger processing.", "stability": "experimental", "summary": "Creates a new BaseDocumentProcessing construct." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 130 }, "parameters": [ { "docs": { "summary": "- The scope in which to define this construct." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "remarks": "Must be unique within the scope.", "summary": "- The scoped construct ID." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "- Configuration properties for the document processing pipeline." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IObservable" ], "kind": "class", "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 104 }, "methods": [ { "abstract": true, "docs": { "remarks": "**CRITICAL**: Must set `outputPath` to preserve workflow state for subsequent steps.\nThe classification result should be available at `$.classificationResult` for DynamoDB storage.", "returns": "Step Functions task for document classification", "stability": "experimental", "summary": "Defines the document classification step of the workflow." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 546 }, "name": "classificationStep", "protected": true, "returns": { "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "abstract": true, "docs": { "remarks": "Concrete implementations can customize this to handle preprocessing results.\nFor example, BedrockDocumentProcessing uses this to add conditional branching\nfor chunked vs non-chunked documents.\n\nImplementations can call `createStandardProcessingWorkflow()` to reuse the\nstandard processing flow (Classification → Processing → Enrichment → PostProcessing).", "returns": "Step Functions chain for processing the document", "stability": "experimental", "summary": "Creates the processing workflow after preprocessing and initialization." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 339 }, "name": "createProcessingWorkflow", "protected": true, "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable" } } }, { "docs": { "remarks": "This is the existing workflow: Classification → Processing → Enrichment → PostProcessing\nConcrete classes can call this method to reuse the standard flow when they don't\nneed custom workflow branching.", "returns": "Step Functions chain for standard processing", "stability": "experimental", "summary": "Creates the standard processing workflow (no preprocessing customization)." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 351 }, "name": "createStandardProcessingWorkflow", "parameters": [ { "docs": { "summary": "Optional prefix for construct IDs to ensure uniqueness when called multiple times." }, "name": "idPrefix", "optional": true, "type": { "primitive": "string" } } ], "protected": true, "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable" } } }, { "abstract": true, "docs": { "remarks": "**CRITICAL**: If implemented, must set `outputPath` to preserve workflow state.\nThe enrichment result should be available at `$.enrichedResult` for DynamoDB storage.", "returns": "Step Functions task for document enrichment, or undefined to skip this step", "stability": "experimental", "summary": "Defines the optional document enrichment step of the workflow." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 566 }, "name": "enrichmentStep", "protected": true, "returns": { "optional": true, "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 179 }, "name": "handleStateMachineCreation", "parameters": [ { "name": "stateMachineId", "type": { "primitive": "string" } } ], "protected": true, "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.StateMachine" } } }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 289 }, "name": "metrics", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IObservable", "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_cloudwatch.IMetric" }, "kind": "array" } } } }, { "abstract": true, "docs": { "remarks": "**CRITICAL**: If implemented, must set `outputPath` to preserve workflow state.\nThe post-processing result should be available at `$.postProcessedResult` for DynamoDB storage.", "returns": "Step Functions task for post-processing, or undefined to skip this step", "stability": "experimental", "summary": "Defines the optional post-processing step of the workflow." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 576 }, "name": "postProcessingStep", "protected": true, "returns": { "optional": true, "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "default": "{} (no additional metadata)", "remarks": "This method is called during InitMetadata creation and allows subclasses to extend\nthe DynamoDB schema with their own fields without the base class knowing the details.\n\nThe base class provides the core document fields (DocumentId, ContentType, etc.),\nand subclasses can add their own fields (e.g., chunking metadata) by overriding this method.", "returns": "Record of additional DynamoDB attribute values to include in InitMetadata", "stability": "experimental", "summary": "Hook for concrete implementations to add preprocessing-specific metadata to DynamoDB." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 321 }, "name": "preprocessingMetadata", "protected": true, "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.DynamoAttributeValue" }, "kind": "map" } } } }, { "abstract": true, "docs": { "remarks": "This step runs BEFORE Init Metadata and can be used for:\n- Document chunking for large files\n- Document validation\n- Format conversion\n- Any other preprocessing needed before classification\n\nConcrete implementations can return undefined to skip preprocessing,\nmaintaining backward compatibility with existing workflows.", "returns": "Step Functions task for preprocessing, or undefined to skip this step", "stability": "experimental", "summary": "Defines the optional preprocessing step of the workflow." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 307 }, "name": "preprocessingStep", "protected": true, "returns": { "optional": true, "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "abstract": true, "docs": { "remarks": "**CRITICAL**: Must set `outputPath` to preserve workflow state for subsequent steps.\nThe extraction result should be available at `$.processingResult` for DynamoDB storage.", "returns": "Step Functions task for document extraction", "stability": "experimental", "summary": "Defines the document processing step of the workflow." }, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 556 }, "name": "processingStep", "protected": true, "returns": { "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } } ], "name": "BaseDocumentProcessing", "properties": [ { "docs": { "stability": "experimental", "summary": "DynamoDB table for storing document processing metadata and workflow state." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 112 }, "name": "documentProcessingTable", "type": { "fqn": "aws-cdk-lib.aws_dynamodb.Table" } }, { "docs": { "stability": "experimental", "summary": "KMS key." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 116 }, "name": "encryptionKey", "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } }, { "docs": { "stability": "experimental", "summary": "Ingress adapter, responsible for triggering workflow." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 118 }, "name": "ingressAdapter", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter" } }, { "docs": { "stability": "experimental", "summary": "log group data protection configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 110 }, "name": "logGroupDataProtection", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IObservable", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } }, { "docs": { "stability": "experimental", "summary": "Business metric namespace." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 108 }, "name": "metricNamespace", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IObservable", "type": { "primitive": "string" } }, { "docs": { "remarks": "This is part of the initial service dimension", "stability": "experimental", "summary": "Business metric service name." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 106 }, "name": "metricServiceName", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IObservable", "type": { "primitive": "string" } } ], "symbolId": "use-cases/document-processing/base-document-processing:BaseDocumentProcessing" }, "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration properties for BaseDocumentProcessing construct." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.ObservableProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 26 }, "name": "BaseDocumentProcessingProps", "properties": [ { "abstract": true, "docs": { "remarks": "If not provided, a new table will be created with DocumentId as partition key.", "stability": "experimental", "summary": "DynamoDB table for storing document processing metadata and workflow state." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 39 }, "name": "documentProcessingTable", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_dynamodb.Table" } }, { "abstract": true, "docs": { "default": "false", "stability": "experimental", "summary": "Enable logging and tracing for all supporting resource." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 61 }, "name": "enableObservability", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "A new key would be created", "stability": "experimental", "summary": "KMS key to be used." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 73 }, "name": "encryptionKey", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } }, { "abstract": true, "docs": { "remarks": "If not provided, no custom events will be sent out.", "stability": "experimental", "summary": "Optional EventBridge broker for publishing custom events during processing." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 55 }, "name": "eventbridgeBroker", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBroker" } }, { "abstract": true, "docs": { "default": "QueuedS3Adapter", "stability": "experimental", "summary": "Adapter that defines how the document processing workflow is triggered." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 33 }, "name": "ingressAdapter", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter" } }, { "abstract": true, "docs": { "default": "resources will run outside of a VPC", "stability": "experimental", "summary": "Resources that can run inside a VPC will follow the provided network configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 67 }, "name": "network", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Network" } }, { "abstract": true, "docs": { "default": "RemovalPolicy.DESTROY", "stability": "experimental", "summary": "Removal policy for created resources (bucket, table, queue)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 50 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "default": "Duration.minutes(30)", "stability": "experimental", "summary": "Maximum execution time for the Step Functions workflow." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/base-document-processing.ts", "line": 45 }, "name": "workflowTimeout", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/document-processing/base-document-processing:BaseDocumentProcessingProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBase": { "abstract": true, "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "remarks": "This class provides common functionality for all knowledge base implementations,\nincluding configuration management, validation, and default behaviors. Concrete\nimplementations (like BedrockKnowledgeBase) extend this class and implement\nthe abstract methods.\n\nThe base class handles:\n- Props validation (name and description are required)\n- Default retrieval configuration (numberOfResults defaults to 5)\n- ACL configuration storage\n- Base runtime configuration export\n\nSubclasses must implement:\n- `generateIamPermissions()`: Return IAM permissions specific to the KB type", "stability": "experimental", "summary": "Abstract base class for knowledge base implementations." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBase", "initializer": { "docs": { "custom": { "throws": "Error if description is empty or not provided" }, "stability": "experimental", "summary": "Creates a new BaseKnowledgeBase instance." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 75 }, "parameters": [ { "docs": { "summary": "- The scope in which to define this construct." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "- The scoped construct ID." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "- Configuration properties for the knowledge base." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBaseProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 33 }, "methods": [ { "docs": { "remarks": "Returns a configuration object containing the base knowledge base\nsettings. Subclasses should override this method to add implementation-\nspecific configuration, calling super.exportConfiguration() to include\nthe base configuration.", "returns": "Runtime configuration object for the retrieval tool", "stability": "experimental", "summary": "Export configuration for runtime use by the retrieval tool." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 126 }, "name": "exportConfiguration", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase", "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.KnowledgeBaseRuntimeConfig" } } }, { "abstract": true, "docs": { "remarks": "This abstract method must be implemented by subclasses to return the\nspecific IAM permissions needed for their knowledge base type.", "returns": "Array of IAM PolicyStatement objects granting necessary permissions", "stability": "experimental", "summary": "Generate IAM policy statements required for accessing this knowledge base." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 114 }, "name": "generateIamPermissions", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase", "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } } }, { "docs": { "remarks": "By default, returns undefined to use the framework's default retrieval\ntool. Subclasses can override this method to provide a custom retrieval\ntool implementation.", "returns": "undefined to use the default retrieval tool", "stability": "experimental", "summary": "Provide the retrieval tool asset for this knowledge base type." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 144 }, "name": "retrievalToolAsset", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase", "returns": { "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3_assets.Asset" } } }, { "docs": { "remarks": "By default, returns undefined indicating no additional layers are needed.\nSubclasses can override this method to provide Lambda layers containing\ndependencies required by their retrieval tool.", "returns": "undefined indicating no additional layers needed", "stability": "experimental", "summary": "Provide Lambda layers required by the retrieval tool." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 157 }, "name": "retrievalToolLayers", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase", "returns": { "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.LayerVersion" }, "kind": "array" } } } }, { "docs": { "custom": { "throws": "Error if description is empty or not provided" }, "remarks": "Ensures that required fields (name and description) are provided\nand not empty. Subclasses can override this method to add additional\nvalidation, but should call super.validateProps() first.", "stability": "experimental", "summary": "Validates the provided props at construction time." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 97 }, "name": "validateProps", "parameters": [ { "docs": { "summary": "- The props to validate." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBaseProps" } } ], "protected": true } ], "name": "BaseKnowledgeBase", "properties": [ { "docs": { "remarks": "This description is included in the agent's system prompt to help\nthe agent decide when to query this knowledge base.", "stability": "experimental", "summary": "Human-readable description of what this knowledge base contains." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 48 }, "name": "description", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase", "type": { "primitive": "string" } }, { "docs": { "remarks": "This name is used for logging, display purposes, and to help the agent\nidentify which knowledge base to query.", "stability": "experimental", "summary": "Human-readable name for this knowledge base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 40 }, "name": "name", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase", "type": { "primitive": "string" } }, { "docs": { "remarks": "Contains settings like numberOfResults and optional metadata filters.\nDefaults to { numberOfResults: 5 } if not provided.", "stability": "experimental", "summary": "Retrieval configuration for this knowledge base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 56 }, "name": "retrievalConfig", "protected": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.RetrievalConfiguration" } }, { "docs": { "remarks": "When enabled, retrieval queries will be filtered based on user\nidentity context.", "stability": "experimental", "summary": "ACL configuration for identity-aware retrieval." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/base-knowledge-base.ts", "line": 64 }, "name": "aclConfig", "optional": true, "protected": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AclConfiguration" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/base-knowledge-base:BaseKnowledgeBase" }, "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBaseProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "This interface defines the common properties shared by all knowledge\nbase types. Specific implementations (like BedrockKnowledgeBase) extend\nthis with additional properties.", "stability": "experimental", "summary": "Base configuration for all knowledge base implementations." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBaseProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 210 }, "name": "BaseKnowledgeBaseProps", "properties": [ { "abstract": true, "docs": { "example": "'Contains product documentation, user guides, and FAQs. Use when answering questions about product features or troubleshooting.'", "remarks": "This description is shown to the agent in its system prompt to help\nit decide when to query this knowledge base. Be specific about the\ntype of information contained and appropriate use cases.", "stability": "experimental", "summary": "Description of what this knowledge base contains and when to use it." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 231 }, "name": "description", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "example": "'product-documentation'", "remarks": "Used for logging, display purposes, and to help the agent identify\nwhich knowledge base to query. Should be unique within the set of\nknowledge bases configured for an agent.", "stability": "experimental", "summary": "Human-readable name/identifier for this knowledge base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 220 }, "name": "name", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- ACL disabled", "remarks": "When enabled, retrieval queries will be filtered based on user\nidentity context to ensure users only access permitted documents.", "stability": "experimental", "summary": "Access control configuration for identity-aware retrieval." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 250 }, "name": "acl", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AclConfiguration" } }, { "abstract": true, "docs": { "default": "{ numberOfResults: 5 }", "remarks": "Controls the number of results returned and optional metadata filtering.", "stability": "experimental", "summary": "Retrieval configuration options." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 240 }, "name": "retrieval", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.RetrievalConfiguration" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:BaseKnowledgeBaseProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgent": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgent", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgent", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 77 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgentProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 74 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 168 }, "name": "resolveAgentRuntimeEntry", "protected": true, "returns": { "type": { "primitive": "string" } } } ], "name": "BatchAgent", "properties": [ { "docs": { "remarks": "May be undefined for non-Lambda hosting backends (e.g. AgentCore Runtime).", "stability": "experimental", "summary": "The Lambda function for the agent (when using Lambda hosting)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 75 }, "name": "agentFunction", "optional": true, "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgent", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ], "symbolId": "use-cases/framework/agents/batch-agent:BatchAgent" }, "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgentProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgentProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgentProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 18 }, "name": "BatchAgentProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 19 }, "name": "prompt", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 20 }, "name": "expectJson", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "InvokeType.BATCH", "remarks": "Defines how the agent is invoked and what processing mode to use.", "stability": "experimental", "summary": "Agent invocation type." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/batch-agent.ts", "line": 29 }, "name": "invokeType", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.InvokeType" } } ], "symbolId": "use-cases/framework/agents/batch-agent:BatchAgentProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.BedrockCrossRegionInferencePrefix": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Used to configure inference profiles for improved availability and performance.", "stability": "experimental", "summary": "Cross-region inference prefix options for Bedrock models." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockCrossRegionInferencePrefix", "kind": "enum", "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 13 }, "members": [ { "docs": { "stability": "experimental", "summary": "US-based cross-region inference profile." }, "name": "US" }, { "docs": { "stability": "experimental", "summary": "EU-based cross-region inference profile." }, "name": "EU" } ], "name": "BedrockCrossRegionInferencePrefix", "symbolId": "use-cases/framework/bedrock/bedrock:BedrockCrossRegionInferencePrefix" }, "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessing": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "docs": { "remarks": "Extends BaseDocumentProcessing to provide AI-powered document classification and extraction\nusing Amazon Bedrock foundation models. This implementation offers:\n\n## Key Features\n- **AI-Powered Classification**: Uses Claude 3.7 Sonnet (configurable) to classify document types\n- **Intelligent Extraction**: Extracts structured data from documents using foundation models\n- **Cross-Region Inference**: Optional support for improved availability via inference profiles\n- **Flexible Processing**: Optional enrichment and post-processing Lambda functions\n- **Cost Optimized**: Configurable timeouts and model selection for cost control\n\n## Processing Workflow\nS3 Upload → Classification (Bedrock) → Extraction (Bedrock) → [Enrichment] → [Post-Processing] → Results\n\n## Default Models\n- Classification: Claude 3.7 Sonnet (anthropic.claude-3-7-sonnet-20250219-v1:0)\n- Extraction: Claude 3.7 Sonnet (anthropic.claude-3-7-sonnet-20250219-v1:0)\n\n## Prompt Templates\nThe construct uses default prompts that can be customized:\n- **Classification**: Analyzes document and returns JSON with documentClassification field\n- **Extraction**: Uses classification result to extract entities in structured JSON format\n\n## Cross-Region Inference\nWhen enabled, uses Bedrock inference profiles for improved availability:\n- US prefix: Routes to US-based regions for lower latency\n- EU prefix: Routes to EU-based regions for data residency compliance", "stability": "experimental", "summary": "Document processing workflow powered by Amazon Bedrock foundation models." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessing", "initializer": { "docs": { "custom": { "throws": "Error if chunking configuration is invalid" }, "remarks": "Initializes the Bedrock-powered document processing pipeline with AI classification\nand extraction capabilities. Creates Lambda functions with appropriate IAM roles\nfor Bedrock model invocation and S3 access.", "stability": "experimental", "summary": "Creates a new BedrockDocumentProcessing construct." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 259 }, "parameters": [ { "docs": { "summary": "- The scope in which to define this construct." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "remarks": "Must be unique within the scope.", "summary": "- The scoped construct ID." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "- Configuration properties for the Bedrock document processing pipeline." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessingProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 168 }, "methods": [ { "docs": { "remarks": "Creates a Lambda function that invokes the configured Bedrock model to classify\nthe document type. The function reads the document from S3 and sends it to\nBedrock with the classification prompt.\n\nThis method caches the Lambda function to avoid creating duplicate resources,\nbut creates a new LambdaInvoke task each time to allow proper state chaining.", "returns": "LambdaInvoke task configured for document classification", "stability": "experimental", "summary": "Implements the document classification step using Amazon Bedrock." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 370 }, "name": "classificationStep", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "protected": true, "returns": { "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "remarks": "When chunking is enabled, creates a Choice State that:\n- Routes to chunked processing flow if document was chunked\n- Routes to standard processing flow if document was not chunked\n\nWhen chunking is disabled, returns the standard processing workflow.", "returns": "Step Functions chain for processing the document", "stability": "experimental", "summary": "Creates the processing workflow with conditional branching for chunked documents." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 725 }, "name": "createProcessingWorkflow", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "protected": true, "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.IChainable" } } }, { "docs": { "remarks": "If an enrichment Lambda function is provided in the props, creates a LambdaInvoke\ntask to perform additional processing on the extracted data. This step is useful\nfor data validation, transformation, or integration with external systems.", "returns": "LambdaInvoke task for enrichment, or undefined to skip this step", "stability": "experimental", "summary": "Implements the optional document enrichment step." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 541 }, "name": "enrichmentStep", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "protected": true, "returns": { "optional": true, "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 513 }, "name": "generateLambdaRoleForBedrock", "parameters": [ { "name": "id", "type": { "primitive": "string" } }, { "name": "model", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps" } } ], "protected": true, "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.Role" } } }, { "docs": { "remarks": "If a post-processing Lambda function is provided in the props, creates a LambdaInvoke\ntask to perform final processing on the workflow results. This step is useful for\ndata formatting, notifications, or integration with downstream systems.", "returns": "LambdaInvoke task for post-processing, or undefined to skip this step", "stability": "experimental", "summary": "Implements the optional post-processing step." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 566 }, "name": "postProcessingStep", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "protected": true, "returns": { "optional": true, "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "remarks": "When chunking is enabled, adds fields for:\n- ChunkingEnabled: string representation of boolean flag\n- ChunkingStrategy: strategy used (fixed-pages, token-based, hybrid)\n- TokenAnalysis: JSON string with token analysis results\n- ChunkMetadata: JSON string array with chunk information", "returns": "Record of DynamoDB attribute values for chunking metadata", "stability": "experimental", "summary": "Provides additional metadata fields for chunking to be stored in DynamoDB." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 693 }, "name": "preprocessingMetadata", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "protected": true, "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.DynamoAttributeValue" }, "kind": "map" } } } }, { "docs": { "remarks": "When chunking is enabled, creates a Lambda function that analyzes PDFs and\nsplits large documents into manageable chunks. The function:\n1. Analyzes the PDF to determine page count and token estimates\n2. Decides if chunking is needed based on configured thresholds\n3. If chunking is needed, splits the PDF and uploads chunks to S3", "returns": "LambdaInvoke task for PDF analysis and chunking, or undefined if chunking is disabled", "stability": "experimental", "summary": "Implements the optional preprocessing step for PDF chunking." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 594 }, "name": "preprocessingStep", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "protected": true, "returns": { "optional": true, "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "remarks": "Creates a Lambda function that invokes the configured Bedrock model to extract\nstructured data from the document. Uses the classification result from the\nprevious step to provide context for more accurate extraction.\n\nThis method caches the Lambda function to avoid creating duplicate resources,\nbut creates a new LambdaInvoke task each time to allow proper state chaining.", "returns": "LambdaInvoke task configured for document extraction", "stability": "experimental", "summary": "Implements the document extraction step using Amazon Bedrock." }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 448 }, "name": "processingStep", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessing", "protected": true, "returns": { "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 528 }, "name": "resolveBedrockInvokeEntry", "protected": true, "returns": { "type": { "primitive": "string" } } } ], "name": "BedrockDocumentProcessing", "properties": [ { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 200 }, "name": "DEFAULT_AGGREGATION_PROMPT", "protected": true, "static": true, "type": { "primitive": "string" } }, { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 169 }, "name": "DEFAULT_CLASSIFICATION_PROMPT", "protected": true, "static": true, "type": { "primitive": "string" } }, { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 180 }, "name": "DEFAULT_PROCESSING_PROMPT", "protected": true, "static": true, "type": { "primitive": "string" } }, { "docs": { "stability": "experimental", "summary": "Configuration properties specific to Bedrock document processing." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 224 }, "name": "bedrockDocumentProcessingProps", "protected": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessingProps" } }, { "docs": { "stability": "experimental", "summary": "The Step Functions state machine that orchestrates the document processing workflow." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 226 }, "name": "stateMachine", "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.StateMachine" } } ], "symbolId": "use-cases/document-processing/bedrock-document-processing:BedrockDocumentProcessing" }, "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessingProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Extends BaseDocumentProcessingProps with Bedrock-specific options.", "stability": "experimental", "summary": "Configuration properties for BedrockDocumentProcessing construct." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessingProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 24 }, "name": "BedrockDocumentProcessingProps", "properties": [ { "abstract": true, "docs": { "default": "DEFAULT_AGGREGATION_PROMPT", "remarks": "Used when chunking is enabled to merge processing results from all chunks\ninto a single coherent result.\n\nThe prompt receives the concatenated processing results from all chunks\nand should instruct the model to synthesize them into a unified output.", "stability": "experimental", "summary": "Custom prompt template for aggregating results from multiple chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 72 }, "name": "aggregationPrompt", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "undefined (uses default configuration when enableChunking is true)", "remarks": "Only applies when `enableChunking` is true. Allows customization of:\n- **Chunking strategy**: How documents are split (fixed-pages, token-based, or hybrid)\n- **Thresholds**: When to trigger chunking based on page count or token count\n- **Chunk size and overlap**: Control chunk boundaries and context preservation\n- **Processing mode**: Parallel (faster) or sequential (cost-optimized)\n- **Aggregation strategy**: How to combine results from multiple chunks\n\n## Default Configuration\n\nIf not provided, uses sensible defaults optimized for most use cases:\n- Strategy: `'hybrid'` (recommended - balances token and page limits)\n- Page threshold: 100 pages\n- Token threshold: 150,000 tokens\n- Processing mode: `'parallel'`\n- Max concurrency: 10\n- Aggregation strategy: `'majority-vote'`\n\n## Strategy Comparison\n\n| Strategy | Best For | Pros | Cons |\n|----------|----------|------|------|\n| `hybrid` | Most documents | Balances token/page limits | Slightly more complex |\n| `token-based` | Variable density | Respects model limits | Slower analysis |\n| `fixed-pages` | Uniform density | Simple, fast | May exceed token limits |", "see": "{@link ChunkingConfig } for detailed configuration options", "stability": "experimental", "summary": "Configuration for PDF chunking behavior." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 131 }, "name": "chunkingConfig", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingConfig" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Bedrock foundation model for document classification step." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 28 }, "name": "classificationBedrockModel", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps" } }, { "abstract": true, "docs": { "default": "DEFAULT_CLASSIFICATION_PROMPT", "remarks": "Must include placeholder for document content.", "stability": "experimental", "summary": "Custom prompt template for document classification." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 39 }, "name": "classificationPrompt", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "remarks": "When enabled, documents exceeding configured thresholds will be automatically\nsplit into chunks, processed in parallel or sequentially, and results aggregated.\n\nThis feature is useful for:\n- Processing large PDFs (>100 pages)\n- Handling documents that exceed Bedrock token limits (~200K tokens)\n- Improving processing reliability for complex documents\n- Processing documents with variable content density\n\nThe chunking workflow:\n1. Analyzes PDF to determine page count and estimate token count\n2. Decides if chunking is needed based on configured thresholds\n3. If chunking is needed, splits PDF into chunks and uploads to S3\n4. Processes each chunk through classification and extraction\n5. Aggregates results using majority voting for classification\n6. Deduplicates entities across chunks\n7. Cleans up temporary chunk files from S3", "stability": "experimental", "summary": "Enable PDF chunking for large documents." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 97 }, "name": "enableChunking", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "remarks": "If provided, will be invoked after extraction with workflow state.", "stability": "experimental", "summary": "Optional Lambda function for document enrichment step." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 50 }, "name": "enrichmentLambdaFunction", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Function" } }, { "abstract": true, "docs": { "remarks": "If provided, will be invoked after enrichment with workflow state.", "stability": "experimental", "summary": "Optional Lambda function for post-processing step." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 55 }, "name": "postProcessingLambdaFunction", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Function" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Bedrock foundation model for document extraction step." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 33 }, "name": "processingBedrockModel", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps" } }, { "abstract": true, "docs": { "default": "DEFAULT_EXTRACTION_PROMPT", "remarks": "Must include placeholder for document content and classification result.", "stability": "experimental", "summary": "Custom prompt template for document extraction." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 45 }, "name": "processingPrompt", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "Duration.minutes(5)", "stability": "experimental", "summary": "Timeout for individual Step Functions tasks (classification, extraction, etc.)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/bedrock-document-processing.ts", "line": 60 }, "name": "stepTimeouts", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/document-processing/bedrock-document-processing:BedrockDocumentProcessingProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.BedrockKnowledgeBase": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBase", "docs": { "remarks": "This class provides integration with Amazon Bedrock Knowledge Bases,\nwhich use vector stores (S3 Vectors by default) for semantic search.\nIt is the default knowledge base implementation when none is specified.\n\nThe implementation handles:\n- ARN construction from knowledge base ID (if ARN not provided)\n- IAM permission generation for Bedrock Retrieve and RetrieveAndGenerate APIs\n- Optional guardrail configuration for content filtering\n- Runtime configuration export for the retrieval tool", "stability": "experimental", "summary": "Amazon Bedrock Knowledge Base implementation." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockKnowledgeBase", "initializer": { "docs": { "custom": { "throws": "Error if knowledgeBaseId is empty or not provided" }, "stability": "experimental", "summary": "Creates a new BedrockKnowledgeBase instance." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base.ts", "line": 92 }, "parameters": [ { "docs": { "summary": "- The scope in which to define this construct." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "- The scoped construct ID." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "- Configuration properties for the Bedrock Knowledge Base." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockKnowledgeBaseProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base.ts", "line": 31 }, "methods": [ { "docs": { "remarks": "Returns a configuration object containing all Bedrock-specific\nsettings needed to query the knowledge base at runtime, including:\n- Base configuration (name, description, retrieval, acl)\n- Knowledge base type ('bedrock')\n- Knowledge base ID and ARN\n- Vector store configuration\n- Guardrail configuration (if present)", "returns": "Runtime configuration object for the retrieval tool", "stability": "experimental", "summary": "Export configuration for runtime use by the retrieval tool." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base.ts", "line": 237 }, "name": "exportConfiguration", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBase", "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.KnowledgeBaseRuntimeConfig" } } }, { "docs": { "remarks": "Returns permissions for:\n- bedrock:Retrieve - Query the knowledge base\n- bedrock:RetrieveAndGenerate - Query and generate responses\n- bedrock:ApplyGuardrail - Apply guardrail (if configured)\n- s3:GetObject - Access S3 vectors (if using S3 Vectors with custom bucket)\n- s3:GetObject - Access data source bucket (if create config provided)\n\nAll permissions are scoped to the specific knowledge base ARN\nfollowing the principle of least privilege.", "returns": "Array of IAM PolicyStatement objects granting necessary permissions", "stability": "experimental", "summary": "Generate IAM policy statements required for accessing this Bedrock Knowledge Base." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base.ts", "line": 170 }, "name": "generateIamPermissions", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBase", "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } } }, { "docs": { "remarks": "Returns an Asset containing the Python retrieval tool that uses\nthe Amazon Bedrock Agent Runtime API to query knowledge bases.\nThis tool is automatically added to agents that use Bedrock\nknowledge bases.", "returns": "Asset containing the Bedrock retrieval tool", "stability": "experimental", "summary": "Provide the Bedrock-specific retrieval tool asset." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base.ts", "line": 258 }, "name": "retrievalToolAsset", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBase", "returns": { "type": { "fqn": "aws-cdk-lib.aws_s3_assets.Asset" } } } ], "name": "BedrockKnowledgeBase", "properties": [ { "docs": { "remarks": "If not provided in props, this is constructed from the knowledgeBaseId\nusing the current region and account.", "stability": "experimental", "summary": "The ARN of the Bedrock Knowledge Base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base.ts", "line": 45 }, "name": "knowledgeBaseArn", "type": { "primitive": "string" } }, { "docs": { "remarks": "This is the ID assigned by Bedrock when the knowledge base was created.", "stability": "experimental", "summary": "The unique identifier for the Bedrock Knowledge Base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base.ts", "line": 37 }, "name": "knowledgeBaseId", "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/bedrock-knowledge-base:BedrockKnowledgeBase" }, "@cdklabs/cdk-appmod-catalog-blueprints.BedrockKnowledgeBaseProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "This interface extends the base configuration with Bedrock-specific\nproperties for connecting to an existing Bedrock Knowledge Base.", "stability": "experimental", "summary": "Configuration for Amazon Bedrock Knowledge Base." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockKnowledgeBaseProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.BaseKnowledgeBaseProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 259 }, "name": "BedrockKnowledgeBaseProps", "properties": [ { "abstract": true, "docs": { "remarks": "This is the ID assigned by Bedrock when the knowledge base was created.\nYou can find this in the Bedrock console or via the AWS CLI.\n\nRequired when referencing an existing knowledge base.\nNot required when using the `create` property to create a new KB.", "stability": "experimental", "summary": "Unique identifier for the Bedrock Knowledge Base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 269 }, "name": "knowledgeBaseId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- Reference existing KB only (no creation)", "remarks": "When provided, a new Bedrock Knowledge Base will be created with\nthe specified data source and embedding configuration.\n\nNote: This is an advanced feature that creates AWS resources.\nFor most use cases, referencing an existing knowledge base by ID\nis recommended.", "stability": "experimental", "summary": "Configuration for creating a new knowledge base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 314 }, "name": "create", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CreateKnowledgeBaseConfiguration" } }, { "abstract": true, "docs": { "default": "- No guardrail applied", "remarks": "When configured, the guardrail will be applied during retrieval\noperations to filter inappropriate or sensitive content.", "stability": "experimental", "summary": "Guardrail configuration for content filtering." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 300 }, "name": "guardrail", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.GuardrailConfiguration" } }, { "abstract": true, "docs": { "default": "- Constructed from knowledgeBaseId", "remarks": "If not provided, the ARN will be constructed from the knowledgeBaseId\nusing the current region and account.", "stability": "experimental", "summary": "ARN of the Bedrock Knowledge Base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 279 }, "name": "knowledgeBaseArn", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- S3 Vectors (type: 's3-vectors')", "remarks": "Defines the type of vector store used by this knowledge base.\nThis is informational and used for generating appropriate IAM\npermissions when needed.", "stability": "experimental", "summary": "Vector store configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 290 }, "name": "vectorStore", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.VectorStoreConfiguration" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:BedrockKnowledgeBaseProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 20 }, "name": "BedrockModelProps", "properties": [ { "abstract": true, "docs": { "default": "BedrockCrossRegionInferencePrefix.US", "remarks": "Only used when useCrossRegionInference is true.", "stability": "experimental", "summary": "Prefix for cross-region inference configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 49 }, "name": "crossRegionInferencePrefix", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockCrossRegionInferencePrefix" } }, { "abstract": true, "docs": { "remarks": "Use this when invoking a model ID not available in `FoundationModelIdentifier`,\nfor example LocalStack Bedrock/Ollama-backed model IDs.\n\nWhen provided, this value is used as-is for runtime invocation.", "stability": "experimental", "summary": "Direct model ID override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 36 }, "name": "customModelId", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "FoundationModelIdentifier.ANTHROPIC_CLAUDE_SONNET_4_20250514_V1_0", "stability": "experimental", "summary": "Foundation model to use." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 26 }, "name": "fmModelId", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_bedrock.FoundationModelIdentifier" } }, { "abstract": true, "docs": { "default": "false", "remarks": "When enabled, uses inference profiles instead of direct model invocation.", "stability": "experimental", "summary": "Enable cross-region inference for Bedrock models to improve availability and performance." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 43 }, "name": "useCrossRegionInference", "optional": true, "type": { "primitive": "boolean" } } ], "symbolId": "use-cases/framework/bedrock/bedrock:BedrockModelProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelUtils": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelUtils", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 52 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 53 }, "name": "deriveActualModelId", "parameters": [ { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps" } } ], "returns": { "type": { "primitive": "string" } }, "static": true }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/bedrock/bedrock.ts", "line": 61 }, "name": "generateModelIAMPermissions", "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockModelProps" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true } ], "name": "BedrockModelUtils", "symbolId": "use-cases/framework/bedrock/bedrock:BedrockModelUtils" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkClassificationResult": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Classification result for a chunk." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkClassificationResult", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 517 }, "name": "ChunkClassificationResult", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 518 }, "name": "documentClassification", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 519 }, "name": "confidence", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkClassificationResult" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkMetadata": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Contains information about the chunk's position, size, and S3 location.", "stability": "experimental", "summary": "Metadata about a single chunk of a document." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkMetadata", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 297 }, "name": "ChunkMetadata", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "S3 bucket containing the chunk file." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 338 }, "name": "bucket", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "Format: {documentId}_chunk_{index}", "stability": "experimental", "summary": "Unique identifier for this chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 302 }, "name": "chunkId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Zero-based index of this chunk in the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 307 }, "name": "chunkIndex", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Ending page number (zero-based, inclusive) of this chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 322 }, "name": "endPage", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "remarks": "Based on word-count heuristic (1.3 tokens per word).", "stability": "experimental", "summary": "Estimated token count for this chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 333 }, "name": "estimatedTokens", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "remarks": "Typically in chunks/ prefix.", "stability": "experimental", "summary": "S3 key for the chunk file." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 344 }, "name": "key", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Number of pages in this chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 327 }, "name": "pageCount", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Starting page number (zero-based) of this chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 317 }, "name": "startPage", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Total number of chunks in the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 312 }, "name": "totalChunks", "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkMetadata" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkProcessingResult": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Processing result for a chunk." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkProcessingResult", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 525 }, "name": "ChunkProcessingResult", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 526 }, "name": "entities", "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Entity" }, "kind": "array" } } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkProcessingResult" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkResult": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Contains classification and extraction results, or error information.", "stability": "experimental", "summary": "Result from processing a single chunk." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkResult", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 533 }, "name": "ChunkResult", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Chunk identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 537 }, "name": "chunkId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Zero-based chunk index." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 542 }, "name": "chunkIndex", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional classification result for this chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 547 }, "name": "classificationResult", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkClassificationResult" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Error message if chunk processing failed." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 557 }, "name": "error", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional extraction result for this chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 552 }, "name": "processingResult", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkProcessingResult" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkResult" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "This interface provides fine-grained control over how large PDF documents are\nsplit into manageable chunks for processing. The chunking system supports three\nstrategies, each optimized for different document types and use cases.\n\n## Chunking Strategies\n\n### 1. Hybrid Strategy (RECOMMENDED)\nBalances both token count and page limits for optimal chunking. Best for most\ndocuments as it respects model token limits while preventing excessively large chunks.\n\n### 2. Token-Based Strategy\nSplits documents based on estimated token count. Best for documents with variable\ncontent density (e.g., mixed text and images, tables, charts).\n\n### 3. Fixed-Pages Strategy (Legacy)\nSimple page-based splitting. Fast but may exceed token limits for dense documents.\nUse only for documents with uniform content density.\n\n## Processing Modes\n\n- **parallel**: Process multiple chunks simultaneously (faster, higher cost)\n- **sequential**: Process chunks one at a time (slower, lower cost)\n\n## Aggregation Strategies\n\n- **majority-vote**: Most frequent classification wins (recommended)\n- **weighted-vote**: Early chunks weighted higher\n- **first-chunk**: Use first chunk's classification only\n\n## Default Values\n\n| Parameter | Default | Description |\n|-----------|---------|-------------|\n| strategy | 'hybrid' | Chunking strategy |\n| pageThreshold | 100 | Pages to trigger chunking |\n| tokenThreshold | 150000 | Tokens to trigger chunking |\n| chunkSize | 50 | Pages per chunk (fixed-pages) |\n| overlapPages | 5 | Overlap pages (fixed-pages) |\n| maxTokensPerChunk | 100000 | Max tokens per chunk (token-based) |\n| overlapTokens | 5000 | Overlap tokens (token-based, hybrid) |\n| targetTokensPerChunk | 80000 | Target tokens per chunk (hybrid) |\n| maxPagesPerChunk | 99 | Max pages per chunk (hybrid) |\n| processingMode | 'parallel' | Processing mode |\n| maxConcurrency | 10 | Max parallel chunks |\n| aggregationStrategy | 'majority-vote' | Result aggregation |\n| minSuccessThreshold | 0.5 | Min success rate for valid result |", "stability": "experimental", "summary": "Comprehensive configuration for PDF chunking behavior." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 189 }, "name": "ChunkingConfig", "properties": [ { "abstract": true, "docs": { "default": "'majority-vote'", "remarks": "- **majority-vote**: Most frequent classification wins\n- **weighted-vote**: Early chunks weighted higher\n- **first-chunk**: Use first chunk's classification", "stability": "experimental", "summary": "Strategy for aggregating results from multiple chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 282 }, "name": "aggregationStrategy", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "50", "stability": "experimental", "summary": "Number of pages per chunk (fixed-pages strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 212 }, "name": "chunkSize", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "10", "remarks": "Higher values increase speed but also cost.", "stability": "experimental", "summary": "Maximum number of chunks to process concurrently (parallel mode only)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 271 }, "name": "maxConcurrency", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "99", "remarks": "Note: Bedrock has a hard limit of 100 pages per PDF, so we default to 99\nto provide a safety margin.", "stability": "experimental", "summary": "Hard limit on pages per chunk (hybrid strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 246 }, "name": "maxPagesPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "100000", "stability": "experimental", "summary": "Maximum tokens per chunk (token-based strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 231 }, "name": "maxTokensPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "0.5 (50%)", "remarks": "If fewer chunks succeed, the result is marked as partial failure.", "stability": "experimental", "summary": "Minimum percentage of chunks that must succeed for aggregation." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 290 }, "name": "minSuccessThreshold", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "5", "stability": "experimental", "summary": "Number of overlapping pages between chunks (fixed-pages strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 218 }, "name": "overlapPages", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "5000", "stability": "experimental", "summary": "Number of overlapping tokens between chunks (token-based and hybrid strategies)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 237 }, "name": "overlapTokens", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "100", "stability": "experimental", "summary": "Threshold for triggering chunking based on page count (fixed-pages strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 206 }, "name": "pageThreshold", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "'parallel'", "remarks": "- **parallel**: Process multiple chunks simultaneously (faster, higher cost)\n- **sequential**: Process chunks one at a time (slower, lower cost)", "stability": "experimental", "summary": "Processing mode for chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 263 }, "name": "processingMode", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'hybrid'", "remarks": "- **hybrid** (RECOMMENDED): Balances token count and page limits\n- **token-based**: Respects model token limits, good for variable density\n- **fixed-pages**: Simple page-based splitting (legacy, not recommended)", "stability": "experimental", "summary": "Chunking strategy to use." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 199 }, "name": "strategy", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "80000", "stability": "experimental", "summary": "Soft target for tokens per chunk (hybrid strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 252 }, "name": "targetTokensPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "150000", "stability": "experimental", "summary": "Threshold for triggering chunking based on token count (token-based strategy)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 225 }, "name": "tokenThreshold", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkingConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingConfigUsed": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Includes both user-provided and default values.", "stability": "experimental", "summary": "Chunking configuration used for processing." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingConfigUsed", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 458 }, "name": "ChunkingConfigUsed", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 459 }, "name": "strategy", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 460 }, "name": "totalPages", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 461 }, "name": "totalTokens", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 462 }, "name": "chunkSize", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 467 }, "name": "maxPagesPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 464 }, "name": "maxTokensPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 463 }, "name": "overlapPages", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 465 }, "name": "overlapTokens", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 468 }, "name": "processingMode", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 466 }, "name": "targetTokensPerChunk", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkingConfigUsed" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingRequest": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Contains document information and chunking configuration.", "stability": "experimental", "summary": "Request payload for PDF analysis and chunking Lambda." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingRequest", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 376 }, "name": "ChunkingRequest", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Document content location information." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 391 }, "name": "content", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DocumentContent" } }, { "abstract": true, "docs": { "remarks": "Typically 'file' for S3-based documents.", "stability": "experimental", "summary": "Content type of the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 386 }, "name": "contentType", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Unique identifier for the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 380 }, "name": "documentId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "If not provided, uses default configuration.", "stability": "experimental", "summary": "Optional chunking configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 397 }, "name": "config", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingConfig" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkingRequest" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingResponse": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Document exceeds thresholds and has been split into chunks.", "stability": "experimental", "summary": "Response when chunking IS required." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingResponse", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 475 }, "name": "ChunkingResponse", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Array of chunk metadata for all created chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 499 }, "name": "chunks", "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkMetadata" }, "kind": "array" } } }, { "abstract": true, "docs": { "remarks": "Includes both user-provided and default values.", "stability": "experimental", "summary": "Configuration used for chunking." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 505 }, "name": "config", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkingConfigUsed" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Document identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 479 }, "name": "documentId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Indicates chunking is required." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 484 }, "name": "requiresChunking", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Strategy used for chunking." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 494 }, "name": "strategy", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Token analysis results with detailed per-page information." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 489 }, "name": "tokenAnalysis", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.TokenAnalysis" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunkingResponse" }, "@cdklabs/cdk-appmod-catalog-blueprints.ChunksSummary": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Summary of chunk processing results." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunksSummary", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 611 }, "name": "ChunksSummary", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Number of chunks that failed processing." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 625 }, "name": "failedChunks", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Number of chunks that processed successfully." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 620 }, "name": "successfulChunks", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Total number of chunks created." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 615 }, "name": "totalChunks", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional total tokens processed across all chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 630 }, "name": "totalTokensProcessed", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:ChunksSummary" }, "@cdklabs/cdk-appmod-catalog-blueprints.CleanupRequest": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Contains information about chunks to delete.", "stability": "experimental", "summary": "Request payload for cleanup Lambda." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CleanupRequest", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 677 }, "name": "CleanupRequest", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Array of chunk metadata for chunks to delete." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 686 }, "name": "chunks", "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ChunkMetadata" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Document identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 681 }, "name": "documentId", "type": { "primitive": "string" } } ], "symbolId": "use-cases/document-processing/chunking-config:CleanupRequest" }, "@cdklabs/cdk-appmod-catalog-blueprints.CleanupResponse": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Reports success and any errors encountered.", "stability": "experimental", "summary": "Response from cleanup Lambda." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CleanupResponse", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 693 }, "name": "CleanupResponse", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Number of chunks successfully deleted." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 702 }, "name": "deletedChunks", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Document identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 697 }, "name": "documentId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "Empty if all deletions succeeded.", "stability": "experimental", "summary": "Array of error messages for failed deletions." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 708 }, "name": "errors", "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "symbolId": "use-cases/document-processing/chunking-config:CleanupResponse" }, "@cdklabs/cdk-appmod-catalog-blueprints.CloudWatchTransactionSearch": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "remarks": "This construct configures account-level settings to enable cost-effective\ncollection of all X-Ray spans through CloudWatch Logs. It performs three steps:\n\n1. Creates a CloudWatch Logs resource-based policy allowing X-Ray to send traces\n2. Configures X-Ray to send trace segments to CloudWatch Logs\n3. Sets the sampling percentage for span indexing (default 1%)\n\nThe construct checks if Transaction Search is already enabled and only applies\nconfiguration if needed. It's idempotent and safe to deploy multiple times.\n\n## Benefits\n- Cost-effective: Uses CloudWatch Logs pricing instead of X-Ray pricing\n- Full visibility: All spans are collected and searchable\n- Automatic indexing: 1% of spans indexed by default for trace summaries\n\n## Usage\n```typescript\nnew CloudWatchTransactionSearch(this, 'TransactionSearch', {\n samplingPercentage: 1 // Optional: 1% is default\n});\n```", "see": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Enable-TransactionSearch.html", "stability": "experimental", "summary": "Enables CloudWatch Transaction Search for X-Ray traces." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CloudWatchTransactionSearch", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/observability/cloudwatch-transaction-search.ts", "line": 58 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CloudWatchTransactionSearchProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/utilities/observability/cloudwatch-transaction-search.ts", "line": 57 }, "name": "CloudWatchTransactionSearch", "symbolId": "use-cases/utilities/observability/cloudwatch-transaction-search:CloudWatchTransactionSearch" }, "@cdklabs/cdk-appmod-catalog-blueprints.CloudWatchTransactionSearchProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration properties for CloudWatch Transaction Search." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CloudWatchTransactionSearchProps", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/observability/cloudwatch-transaction-search.ts", "line": 14 }, "name": "CloudWatchTransactionSearchProps", "properties": [ { "abstract": true, "docs": { "default": "'TransactionSearchXRayAccess'", "stability": "experimental", "summary": "Name of the CloudWatch Logs resource policy." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/cloudwatch-transaction-search.ts", "line": 27 }, "name": "policyName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "1 (1% of spans indexed)", "stability": "experimental", "summary": "Sampling percentage for span indexing." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/cloudwatch-transaction-search.ts", "line": 20 }, "name": "samplingPercentage", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/utilities/observability/cloudwatch-transaction-search:CloudWatchTransactionSearchProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.CloudfrontDistributionObservabilityPropertyInjector": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CloudfrontDistributionObservabilityPropertyInjector", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/observability/cloudfront-distribution-observability-property-injector.ts", "line": 7 } }, "interfaces": [ "aws-cdk-lib.IPropertyInjector" ], "kind": "class", "locationInModule": { "filename": "use-cases/utilities/observability/cloudfront-distribution-observability-property-injector.ts", "line": 4 }, "methods": [ { "docs": { "stability": "experimental", "summary": "The injector to be applied to the constructor properties of the Construct." }, "locationInModule": { "filename": "use-cases/utilities/observability/cloudfront-distribution-observability-property-injector.ts", "line": 11 }, "name": "inject", "overrides": "aws-cdk-lib.IPropertyInjector", "parameters": [ { "name": "originalProps", "type": { "primitive": "any" } }, { "name": "context", "type": { "fqn": "aws-cdk-lib.InjectionContext" } } ], "returns": { "type": { "primitive": "any" } } } ], "name": "CloudfrontDistributionObservabilityPropertyInjector", "properties": [ { "docs": { "stability": "experimental", "summary": "The unique Id of the Construct class." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/cloudfront-distribution-observability-property-injector.ts", "line": 5 }, "name": "constructUniqueId", "overrides": "aws-cdk-lib.IPropertyInjector", "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/observability/cloudfront-distribution-observability-property-injector:CloudfrontDistributionObservabilityPropertyInjector" }, "@cdklabs/cdk-appmod-catalog-blueprints.CognitoAuthenticator": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Creates a Cognito User Pool and integrates with API Gateway REST API\nusing the native COGNITO_USER_POOLS authorizer type. Clients send\nJWT tokens in the Authorization header.\n\n## Features\n\n- **Native JWT Validation**: API Gateway validates tokens without custom Lambda\n- **User Management**: Built-in user registration and management\n- **Password Policies**: Enforces strong password requirements\n- **Account Recovery**: Email-based account recovery\n\n## Usage\n\n```typescript\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\nimport { RemovalPolicy } from 'aws-cdk-lib';\nimport { InteractiveAgent, CognitoAuthenticator } from '@cdklabs/cdk-appmod-catalog-blueprints';\n\nconst myPrompt = new Asset(this, 'Prompt', { path: './prompt.txt' });\nconst authenticator = new CognitoAuthenticator({\n removalPolicy: RemovalPolicy.RETAIN\n});\n\nconst agent = new InteractiveAgent(this, 'Agent', {\n agentName: 'ChatAgent',\n agentDefinition: { bedrockModel: {}, systemPrompt: myPrompt },\n authenticator\n});\n```", "stability": "experimental", "summary": "Cognito-based authenticator for securing REST API endpoints." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CognitoAuthenticator", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 652 }, "parameters": [ { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CognitoAuthenticatorProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 638 }, "methods": [ { "docs": { "stability": "experimental", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 686 }, "name": "environmentVariables", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } }, { "docs": { "remarks": "Grants permissions to verify Cognito tokens.", "stability": "experimental", "summary": "Grant authentication permissions to a Lambda function." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 662 }, "name": "grantAuthenticate", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator", "parameters": [ { "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ] } ], "name": "CognitoAuthenticator", "properties": [ { "docs": { "stability": "experimental", "summary": "The Cognito User Pool." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 642 }, "name": "userPool", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_cognito.UserPool" } }, { "docs": { "stability": "experimental", "summary": "The Cognito User Pool Client." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 647 }, "name": "userPoolClient", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_cognito.UserPoolClient" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:CognitoAuthenticator" }, "@cdklabs/cdk-appmod-catalog-blueprints.CognitoAuthenticatorProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration properties for CognitoAuthenticator." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CognitoAuthenticatorProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 582 }, "name": "CognitoAuthenticatorProps", "properties": [ { "abstract": true, "docs": { "default": "RemovalPolicy.DESTROY", "stability": "experimental", "summary": "Removal policy for Cognito resources." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 602 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "default": "Auto-created User Pool with secure defaults", "stability": "experimental", "summary": "Cognito User Pool for authentication." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 588 }, "name": "userPool", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_cognito.UserPool" } }, { "abstract": true, "docs": { "default": "Auto-created client with appropriate auth flows", "stability": "experimental", "summary": "Cognito User Pool Client." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 595 }, "name": "userPoolClient", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_cognito.UserPoolClient" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:CognitoAuthenticatorProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.CreateKnowledgeBaseConfiguration": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "When provided to BedrockKnowledgeBase, a new knowledge base will be\ncreated with the specified data source and embedding configuration.\n\nNote: This is an advanced feature. For most use cases, referencing\nan existing knowledge base by ID is recommended.", "stability": "experimental", "summary": "Configuration for creating a new Bedrock Knowledge Base." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CreateKnowledgeBaseConfiguration", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 147 }, "name": "CreateKnowledgeBaseConfiguration", "properties": [ { "abstract": true, "docs": { "remarks": "The bucket must exist and contain the documents to be indexed.", "stability": "experimental", "summary": "S3 bucket name containing source documents." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 153 }, "name": "dataSourceBucketName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'fixed-size'", "remarks": "- 'fixed-size': Split documents into fixed-size chunks\n- 'semantic': Use semantic boundaries for chunking\n- 'none': No chunking (use entire documents)", "stability": "experimental", "summary": "Chunking strategy for document processing." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 182 }, "name": "chunkingStrategy", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- Root of bucket (all documents)", "remarks": "Only documents under this prefix will be indexed.", "stability": "experimental", "summary": "S3 prefix for source documents within the bucket." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 162 }, "name": "dataSourcePrefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'amazon.titan-embed-text-v2:0'", "remarks": "Must be a valid Bedrock embedding model ID.", "stability": "experimental", "summary": "Embedding model to use for vectorization." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 171 }, "name": "embeddingModelId", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "300", "remarks": "Only used when chunkingStrategy is 'fixed-size'.", "stability": "experimental", "summary": "Maximum chunk size in tokens (for fixed-size chunking)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 191 }, "name": "maxTokens", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "20", "remarks": "Only used when chunkingStrategy is 'fixed-size'.", "stability": "experimental", "summary": "Overlap between chunks in tokens (for fixed-size chunking)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 200 }, "name": "overlapTokens", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:CreateKnowledgeBaseConfiguration" }, "@cdklabs/cdk-appmod-catalog-blueprints.CustomDomainConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Custom domain configuration for the frontend." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CustomDomainConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 46 }, "name": "CustomDomainConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "SSL certificate for the domain (required when domainName is provided)." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 50 }, "name": "certificate", "type": { "fqn": "aws-cdk-lib.aws_certificatemanager.ICertificate" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Domain name for the frontend (e.g., 'app.example.com')." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 48 }, "name": "domainName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional hosted zone for automatic DNS record creation." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 52 }, "name": "hostedZone", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_route53.IHostedZone" } } ], "symbolId": "use-cases/webapp/frontend-construct:CustomDomainConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.DataLoader": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "remarks": "This construct provides a simplified solution for loading data from various file formats\n(SQL, mysqldump, pg_dump) into MySQL or PostgreSQL databases. It uses S3 for file storage,\nStep Functions for orchestration, and Lambda for processing.\n\nArchitecture:\n1. Files are uploaded to S3 bucket\n2. Step Function is triggered with list of S3 keys\n3. Step Function iterates over files in execution order\n4. Lambda function processes each file against the database\n\nExample usage:\nCreate a DataLoader with database configuration and file inputs.\nThe construct will handle uploading files to S3, creating a Step Function\nto orchestrate processing, and executing the data loading pipeline.", "stability": "experimental", "summary": "DataLoader construct for loading data into Aurora/RDS databases." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DataLoader", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 124 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DataLoaderProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 108 }, "methods": [ { "docs": { "stability": "experimental", "summary": "Grants additional IAM permissions to the execution trigger Lambda function." }, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 159 }, "name": "grantExecutionTriggerPermissions", "parameters": [ { "docs": { "summary": "The IAM policy statement to add." }, "name": "statement", "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } } ] } ], "name": "DataLoader", "properties": [ { "docs": { "stability": "experimental", "summary": "The S3 bucket used for storing files." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 110 }, "name": "bucket", "type": { "fqn": "aws-cdk-lib.aws_s3.Bucket" } }, { "docs": { "stability": "experimental", "summary": "The custom resource provider for triggering state machine execution." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 118 }, "name": "customResourceProvider", "type": { "fqn": "aws-cdk-lib.custom_resources.Provider" } }, { "docs": { "stability": "experimental", "summary": "The custom resource that triggers the state machine." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 120 }, "name": "executionTrigger", "type": { "fqn": "aws-cdk-lib.CustomResource" } }, { "docs": { "stability": "experimental", "summary": "The Lambda function that processes the data loading." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 114 }, "name": "processorFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.Function" } }, { "docs": { "stability": "experimental", "summary": "The Step Functions state machine for orchestration." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 112 }, "name": "stateMachine", "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.StateMachine" } }, { "docs": { "stability": "experimental", "summary": "The bucket deployment for uploading files." }, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 116 }, "name": "bucketDeployment", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3_deployment.BucketDeployment" } } ], "symbolId": "use-cases/utilities/data-loader:DataLoader" }, "@cdklabs/cdk-appmod-catalog-blueprints.DataLoaderProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Properties for the DataLoader construct." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DataLoaderProps", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 77 }, "name": "DataLoaderProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Database configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 79 }, "name": "databaseConfig", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DatabaseConfig" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "List of files to load." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 81 }, "name": "fileInputs", "type": { "collection": { "elementtype": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.FileInput" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional memory size for Lambda function (defaults to 1024 MB)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 87 }, "name": "memorySize", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional removal policy for resources (defaults to DESTROY)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 83 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional timeout for Lambda function (defaults to 15 minutes)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 85 }, "name": "timeout", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/utilities/data-loader:DataLoaderProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.DatabaseConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Database connection configuration." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DatabaseConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 43 }, "name": "DatabaseConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Database name to connect to." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 53 }, "name": "databaseName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Database engine type." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 45 }, "name": "engine", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DatabaseEngine" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Database credentials secret." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 51 }, "name": "secret", "type": { "fqn": "aws-cdk-lib.aws_secretsmanager.ISecret" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Security group for database access." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 57 }, "name": "securityGroup", "type": { "fqn": "aws-cdk-lib.aws_ec2.ISecurityGroup" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "VPC where the database is located." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 55 }, "name": "vpc", "type": { "fqn": "aws-cdk-lib.aws_ec2.IVpc" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Database cluster (for Aurora)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 47 }, "name": "cluster", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_rds.IDatabaseCluster" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Database instance (for RDS)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 49 }, "name": "instance", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_rds.IDatabaseInstance" } } ], "symbolId": "use-cases/utilities/data-loader:DatabaseConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.DatabaseEngine": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental", "summary": "Supported database engines." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DatabaseEngine", "kind": "enum", "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 23 }, "members": [ { "docs": { "stability": "experimental" }, "name": "MYSQL" }, { "docs": { "stability": "experimental" }, "name": "POSTGRESQL" } ], "name": "DatabaseEngine", "symbolId": "use-cases/utilities/data-loader:DatabaseEngine" }, "@cdklabs/cdk-appmod-catalog-blueprints.DefaultAgentConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DefaultAgentConfig", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/default-agent-config.ts", "line": 1 }, "name": "DefaultAgentConfig", "properties": [ { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/default-agent-config.ts", "line": 2 }, "name": "DEFAULT_OBSERVABILITY_METRIC_SVC_NAME", "static": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/agents/default-agent-config:DefaultAgentConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.DefaultDocumentProcessingConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DefaultDocumentProcessingConfig", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/document-processing/default-document-processing-config.ts", "line": 4 }, "name": "DefaultDocumentProcessingConfig", "properties": [ { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/default-document-processing-config.ts", "line": 5 }, "name": "DEFAULT_OBSERVABILITY_METRIC_SVC_NAME", "static": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/document-processing/default-document-processing-config:DefaultDocumentProcessingConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.DefaultObservabilityConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental", "summary": "Contains default constants for Observability related configuration." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DefaultObservabilityConfig", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/utilities/observability/default-observability-config.ts", "line": 7 }, "name": "DefaultObservabilityConfig", "properties": [ { "const": true, "docs": { "stability": "experimental", "summary": "Default namespace for powertools." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/default-observability-config.ts", "line": 12 }, "name": "DEFAULT_METRIC_NAMESPACE", "static": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/observability/default-observability-config:DefaultObservabilityConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.DefaultRuntimes": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Updating of\nRuntime versions should be done here.", "stability": "experimental", "summary": "Contains default runtimes that would be referenced by Lambda functions in the various use cases." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DefaultRuntimes", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/custom-resource/default-runtimes.ts", "line": 11 }, "name": "DefaultRuntimes", "properties": [ { "const": true, "docs": { "stability": "experimental", "summary": "Default runtime for all Lambda functions in the use cases." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/custom-resource/default-runtimes.ts", "line": 16 }, "name": "NODEJS", "static": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Runtime" } }, { "const": true, "docs": { "stability": "experimental", "summary": "Default runtime for Python based Lambda functions." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/custom-resource/default-runtimes.ts", "line": 21 }, "name": "PYTHON", "static": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Runtime" } }, { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/custom-resource/default-runtimes.ts", "line": 33 }, "name": "PYTHON_BUNDLING_IMAGE", "static": true, "type": { "primitive": "string" } }, { "const": true, "docs": { "stability": "experimental", "summary": "Default bundling arguments for Python function." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/custom-resource/default-runtimes.ts", "line": 26 }, "name": "PYTHON_FUNCTION_BUNDLING", "static": true, "type": { "fqn": "@aws-cdk/aws-lambda-python-alpha.BundlingOptions" } } ], "symbolId": "use-cases/framework/custom-resource/default-runtimes:DefaultRuntimes" }, "@cdklabs/cdk-appmod-catalog-blueprints.DocumentContent": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Document content location information." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DocumentContent", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 350 }, "name": "DocumentContent", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "S3 bucket containing the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 359 }, "name": "bucket", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Original filename of the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 369 }, "name": "filename", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "S3 key for the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 364 }, "name": "key", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Storage location type (e.g., 's3')." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 354 }, "name": "location", "type": { "primitive": "string" } } ], "symbolId": "use-cases/document-processing/chunking-config:DocumentContent" }, "@cdklabs/cdk-appmod-catalog-blueprints.DynamoDBSessionIndex": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Creates a DynamoDB table indexed by user_id (partition key) and session_id (sort key)\nfor efficient querying of a user's sessions. The table stores session metadata\nincluding creation time, last update time, and optional TTL for automatic cleanup.\n\n## Table Schema\n\n- **Partition Key**: user_id (String) - User identifier from authentication\n- **Sort Key**: session_id (String) - Unique session identifier\n- **Attributes**: created_at, updated_at, last_message, expires_at (optional)\n\n## Features\n\n- **Fast Lookups**: Query all sessions for a user in O(1) using partition key\n- **Automatic Expiration**: Optional TTL removes stale sessions automatically\n- **On-Demand Capacity**: Pay-per-request billing, no capacity planning needed\n- **Encryption**: AWS managed or customer-managed KMS encryption\n\n## Usage\n\n```typescript\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\nimport { Duration } from 'aws-cdk-lib';\nimport { InteractiveAgent, DynamoDBSessionIndex } from '@cdklabs/cdk-appmod-catalog-blueprints';\n\nconst myPrompt = new Asset(this, 'Prompt', { path: './prompt.txt' });\nconst sessionIndex = new DynamoDBSessionIndex(this, 'SessionIndex', {\n sessionTTL: Duration.days(7)\n});\n\nconst agent = new InteractiveAgent(this, 'Agent', {\n agentName: 'ChatAgent',\n agentDefinition: { bedrockModel: {}, systemPrompt: myPrompt },\n sessionIndex\n});\n```", "stability": "experimental", "summary": "DynamoDB-based session index for fast user to session lookups." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DynamoDBSessionIndex", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 855 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DynamoDBSessionIndexProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.ISessionIndex" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 844 }, "methods": [ { "docs": { "stability": "experimental", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 894 }, "name": "environmentVariables", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionIndex", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } }, { "docs": { "stability": "experimental", "summary": "Grant read/write permissions to a grantee." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 887 }, "name": "grantReadWrite", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionIndex", "parameters": [ { "name": "grantee", "type": { "fqn": "aws-cdk-lib.aws_iam.IGrantable" } } ] } ], "name": "DynamoDBSessionIndex", "properties": [ { "docs": { "stability": "experimental", "summary": "The DynamoDB table used for session index storage." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 848 }, "name": "table", "type": { "fqn": "aws-cdk-lib.aws_dynamodb.ITable" } }, { "docs": { "stability": "experimental", "summary": "The session TTL duration (if configured)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 853 }, "name": "sessionTTL", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:DynamoDBSessionIndex" }, "@cdklabs/cdk-appmod-catalog-blueprints.DynamoDBSessionIndexProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration properties for DynamoDBSessionIndex." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.DynamoDBSessionIndexProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 773 }, "name": "DynamoDBSessionIndexProps", "properties": [ { "abstract": true, "docs": { "default": "AWS managed encryption", "stability": "experimental", "summary": "KMS key for table encryption." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 795 }, "name": "encryptionKey", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_kms.IKey" } }, { "abstract": true, "docs": { "default": "RemovalPolicy.DESTROY", "stability": "experimental", "summary": "Removal policy for the DynamoDB table." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 802 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "default": "No TTL (sessions persist until explicitly deleted)", "remarks": "When set, expired records are automatically removed by DynamoDB TTL.", "stability": "experimental", "summary": "Time-to-live for session index records." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 788 }, "name": "sessionTTL", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } }, { "abstract": true, "docs": { "default": "Auto-created table", "remarks": "Table must have partition key 'user_id' (String) and sort key 'session_id' (String).", "stability": "experimental", "summary": "Existing DynamoDB table to use." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 780 }, "name": "table", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_dynamodb.ITable" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:DynamoDBSessionIndexProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.Entity": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Extracted entity from document processing." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Entity", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 563 }, "name": "Entity", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Type of entity (e.g., 'NAME', 'DATE', 'AMOUNT', 'ADDRESS')." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 567 }, "name": "type", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Value of the entity." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 572 }, "name": "value", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional chunk index where entity was found." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 583 }, "name": "chunkIndex", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "remarks": "Entities with page numbers are preserved even if duplicated.", "stability": "experimental", "summary": "Optional page number where entity was found." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 578 }, "name": "page", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:Entity" }, "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBroker": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBroker", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 20 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBrokerProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 15 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 35 }, "name": "sendViaSfnChain", "parameters": [ { "name": "detailType", "type": { "primitive": "string" } }, { "name": "eventDetail", "type": { "primitive": "any" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.EventBridgePutEvents" } } } ], "name": "EventbridgeBroker", "properties": [ { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 17 }, "name": "eventbus", "type": { "fqn": "aws-cdk-lib.aws_events.EventBus" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 18 }, "name": "kmsKey", "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } } ], "symbolId": "use-cases/framework/foundation/eventbridge-broker:EventbridgeBroker" }, "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBrokerProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBrokerProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 8 }, "name": "EventbridgeBrokerProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 10 }, "name": "eventSource", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 11 }, "name": "kmsKey", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 9 }, "name": "name", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/eventbridge-broker.ts", "line": 12 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } } ], "symbolId": "use-cases/framework/foundation/eventbridge-broker:EventbridgeBrokerProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.FileInput": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "File input configuration." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.FileInput", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 63 }, "name": "FileInput", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Path to the file (local path or S3 URI)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 65 }, "name": "filePath", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Type of file." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 67 }, "name": "fileType", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.FileType" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Whether to continue on error." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 71 }, "name": "continueOnError", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Execution order (lower numbers execute first)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 69 }, "name": "executionOrder", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/utilities/data-loader:FileInput" }, "@cdklabs/cdk-appmod-catalog-blueprints.FileType": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental", "summary": "Supported file types for data loading." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.FileType", "kind": "enum", "locationInModule": { "filename": "use-cases/utilities/data-loader.ts", "line": 31 }, "members": [ { "docs": { "stability": "experimental", "summary": "Standard SQL file." }, "name": "SQL" }, { "docs": { "stability": "experimental", "summary": "MySQL dump file generated by mysqldump." }, "name": "MYSQLDUMP" }, { "docs": { "stability": "experimental", "summary": "PostgreSQL dump file generated by pg_dump." }, "name": "PGDUMP" } ], "name": "FileType", "symbolId": "use-cases/utilities/data-loader:FileType" }, "@cdklabs/cdk-appmod-catalog-blueprints.FixedPagesConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Splits documents by fixed page count (legacy approach).", "stability": "experimental", "summary": "Configuration for fixed-pages chunking strategy." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.FixedPagesConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 47 }, "name": "FixedPagesConfig", "properties": [ { "abstract": true, "docs": { "default": "50", "stability": "experimental", "summary": "Number of pages per chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 59 }, "name": "chunkSize", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "5", "remarks": "Must be less than chunkSize.", "stability": "experimental", "summary": "Number of overlapping pages between consecutive chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 66 }, "name": "overlapPages", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "100", "remarks": "Documents with pages > threshold will be chunked.", "stability": "experimental", "summary": "Threshold for triggering chunking based on page count." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 53 }, "name": "pageThreshold", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:FixedPagesConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.Frontend": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "remarks": "This construct provides a complete solution for hosting static frontend applications\nwith the following features:\n- S3 bucket for hosting static assets with security best practices\n- CloudFront distribution for global content delivery\n- Optional custom domain with SSL certificate\n- Automatic build process execution\n- SPA-friendly error handling by default\n- Security configurations", "stability": "experimental", "summary": "Frontend construct that deploys a frontend application to S3 and CloudFront." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Frontend", "initializer": { "docs": { "stability": "experimental", "summary": "Creates a new Frontend." }, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 126 }, "parameters": [ { "docs": { "summary": "The construct scope." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "The construct ID." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The frontend properties." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.FrontendProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 108 }, "methods": [ { "docs": { "returns": "The S3 bucket name", "stability": "experimental", "summary": "Gets the S3 bucket name." }, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 348 }, "name": "bucketName", "returns": { "type": { "primitive": "string" } } }, { "docs": { "returns": "The CloudFront domain name", "stability": "experimental", "summary": "Gets the CloudFront distribution domain name." }, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 340 }, "name": "distributionDomainName", "returns": { "type": { "primitive": "string" } } }, { "docs": { "returns": "The frontend URL", "stability": "experimental", "summary": "Gets the URL of the frontend application." }, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 330 }, "name": "url", "returns": { "type": { "primitive": "string" } } } ], "name": "Frontend", "properties": [ { "docs": { "stability": "experimental", "summary": "The S3 bucket hosting the frontend assets." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 110 }, "name": "bucket", "type": { "fqn": "aws-cdk-lib.aws_s3.Bucket" } }, { "docs": { "stability": "experimental", "summary": "The bucket deployment that uploads the frontend assets." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 114 }, "name": "bucketDeployment", "type": { "fqn": "aws-cdk-lib.aws_s3_deployment.BucketDeployment" } }, { "docs": { "stability": "experimental", "summary": "The CloudFront distribution." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 112 }, "name": "distribution", "type": { "fqn": "aws-cdk-lib.aws_cloudfront.Distribution" } }, { "docs": { "stability": "experimental", "summary": "The Asset containing the frontend source code." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 118 }, "name": "asset", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3_assets.Asset" } }, { "docs": { "stability": "experimental", "summary": "The custom domain name (if configured)." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 116 }, "name": "domainName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/webapp/frontend-construct:Frontend" }, "@cdklabs/cdk-appmod-catalog-blueprints.FrontendProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Properties for the Frontend construct." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.FrontendProps", "kind": "interface", "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 72 }, "name": "FrontendProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Base directory of the frontend source code." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 74 }, "name": "sourceDirectory", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional build command (defaults to 'npm run build')." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 78 }, "name": "buildCommand", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Directory where build artifacts are located after build command completes (defaults to '{sourceDirectory}/build')." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 76 }, "name": "buildOutputDirectory", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional custom domain configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 80 }, "name": "customDomain", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.CustomDomainConfig" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional additional CloudFront distribution properties." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 84 }, "name": "distributionProps", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AdditionalDistributionProps" } }, { "abstract": true, "docs": { "default": "false", "stability": "experimental", "summary": "Enable logging and tracing for all supporting resource." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 93 }, "name": "enableObservability", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional CloudFront error responses (defaults to SPA-friendly responses)." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 82 }, "name": "errorResponses", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_cloudfront.ErrorResponse" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional removal policy for all resources (defaults to DESTROY)." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 88 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional flag to skip the build process (useful for pre-built artifacts)." }, "immutable": true, "locationInModule": { "filename": "use-cases/webapp/frontend-construct.ts", "line": 86 }, "name": "skipBuild", "optional": true, "type": { "primitive": "boolean" } } ], "symbolId": "use-cases/webapp/frontend-construct:FrontendProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.GuardrailConfiguration": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Guardrails filter content during retrieval operations to prevent\ninappropriate or sensitive content from being returned.", "stability": "experimental", "summary": "Configuration for Bedrock Guardrails." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.GuardrailConfiguration", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 68 }, "name": "GuardrailConfiguration", "properties": [ { "abstract": true, "docs": { "remarks": "The guardrail must exist in the same region as the knowledge base.", "stability": "experimental", "summary": "ID of the Bedrock Guardrail to apply." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 74 }, "name": "guardrailId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'DRAFT'", "remarks": "Use 'DRAFT' for testing or a specific version number for production.", "stability": "experimental", "summary": "Version of the guardrail to use." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 83 }, "name": "guardrailVersion", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:GuardrailConfiguration" }, "@cdklabs/cdk-appmod-catalog-blueprints.HybridConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Balances token count and page limits for optimal chunking.", "stability": "experimental", "summary": "Configuration for hybrid chunking strategy (RECOMMENDED)." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.HybridConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 100 }, "name": "HybridConfig", "properties": [ { "abstract": true, "docs": { "default": "99", "remarks": "Prevents very large chunks even if token count is low.\nNote: Bedrock has a hard limit of 100 pages per PDF, so we default to 99\nto provide a safety margin.", "stability": "experimental", "summary": "Hard limit on pages per chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 108 }, "name": "maxPagesPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "5000", "remarks": "Provides context continuity across chunks.", "stability": "experimental", "summary": "Number of overlapping tokens between consecutive chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 136 }, "name": "overlapTokens", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "100", "remarks": "Documents with pages > threshold will be chunked.", "stability": "experimental", "summary": "Threshold for triggering chunking based on page count." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 122 }, "name": "pageThreshold", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "80000", "remarks": "Chunks aim for this token count but respect maxPagesPerChunk.", "stability": "experimental", "summary": "Soft target for tokens per chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 115 }, "name": "targetTokensPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "150000", "remarks": "Documents with tokens > threshold will be chunked.", "stability": "experimental", "summary": "Threshold for triggering chunking based on token count." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 129 }, "name": "tokenThreshold", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:HybridConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental", "summary": "Abstraction to enable different types of source triggers for the intelligent document processing workflow." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/adapter/adapter.ts", "line": 13 }, "methods": [ { "abstract": true, "docs": { "returns": "Chain to be added to the state machine to handle failure scenarios", "stability": "experimental", "summary": "Create the adapter specific handler for failed processing." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/adapter.ts", "line": 48 }, "name": "createFailedChain", "parameters": [ { "docs": { "summary": "Scope to use in relation to the CDK hierarchy." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "Optional prefix for construct IDs to ensure uniqueness when called multiple times." }, "name": "idPrefix", "optional": true, "type": { "primitive": "string" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.Chain" } } }, { "abstract": true, "docs": { "remarks": "Important: resource created should trigger the state machine", "returns": "Resources that are created", "stability": "experimental", "summary": "Create resources that would receive the data and trigger the workflow." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/adapter.ts", "line": 30 }, "name": "createIngressTrigger", "parameters": [ { "docs": { "summary": "Scope to use in relation to the CDK hierarchy." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "The workflow of the document processor." }, "name": "stateMachine", "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.StateMachine" } }, { "docs": { "summary": "The parameters passed to the document processing L3 Construct." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps" } } ], "returns": { "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } } }, { "abstract": true, "docs": { "returns": "Chain to be added to the state machine to handle successful scenarios", "stability": "experimental", "summary": "Create the adapter specific handler for successful processing." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/adapter.ts", "line": 56 }, "name": "createSuccessChain", "parameters": [ { "docs": { "summary": "Scope to use in relation to the CDK hierarchy." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "Optional prefix for construct IDs to ensure uniqueness when called multiple times." }, "name": "idPrefix", "optional": true, "type": { "primitive": "string" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.Chain" } } }, { "abstract": true, "docs": { "default": "false", "returns": "PolicyStatement[] IAM policy statements that would included in the state machine IAM role", "stability": "experimental", "summary": "Generate IAM statements that can be used by other resources to access the storage." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/adapter.ts", "line": 40 }, "name": "generateAdapterIAMPolicies", "parameters": [ { "docs": { "summary": "(Optional) list of additional actions in relation to the underlying storage for the adapter." }, "name": "additionalIAMActions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "docs": { "summary": "(Optional) whether the resulting permissions would only be the IAM actions indicated in the `additionalIAMActions` parameter." }, "name": "narrowActions", "optional": true, "type": { "primitive": "boolean" } } ], "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Initializes the adapter." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/adapter.ts", "line": 19 }, "name": "init", "parameters": [ { "docs": { "summary": "Scope to use in relation to the CDK hierarchy." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "The parameters passed to the document processing L3 Construct." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps" } } ] } ], "name": "IAdapter", "symbolId": "use-cases/document-processing/adapter/adapter:IAdapter" }, "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Authenticators control how API endpoints are secured.\nDifferent implementations support various authentication methods.", "stability": "experimental", "summary": "Strategy interface for authentication mechanisms." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 567 }, "methods": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 576 }, "name": "environmentVariables", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Grant authentication permissions to a Lambda function." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 571 }, "name": "grantAuthenticate", "parameters": [ { "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ] } ], "name": "IAuthenticator", "symbolId": "use-cases/framework/agents/interactive-agent:IAuthenticator" }, "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Default implementation is StreamingHttpAdapter (API Gateway REST API with response streaming).", "stability": "experimental", "summary": "Strategy interface for pluggable communication mechanisms." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 39 }, "methods": [ { "abstract": true, "docs": { "remarks": "Returns the public endpoint URL for client connections.", "stability": "experimental", "summary": "Attach the adapter to a Lambda function and create communication infrastructure." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 44 }, "name": "attachToFunction", "parameters": [ { "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ], "returns": { "type": { "primitive": "string" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Grant the Lambda function permission to send responses back to clients." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 49 }, "name": "grantInvoke", "parameters": [ { "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ] } ], "name": "ICommunicationAdapter", "symbolId": "use-cases/framework/agents/interactive-agent:ICommunicationAdapter" }, "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "deprecated": "Use Strands-native `SlidingWindowConversationManager` from\n`strands.agent.conversation_manager` instead. The Python handler now uses\nStrands-native conversation management automatically.", "remarks": "Context strategies control how conversation history is maintained and provided\nto the agent. Different strategies enable different conversation patterns.", "stability": "deprecated", "summary": "Strategy interface for conversation history management." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 462 }, "methods": [ { "abstract": true, "docs": { "returns": "Environment variables to configure the context manager", "stability": "deprecated", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 468 }, "name": "environmentVariables", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } } ], "name": "IContextStrategy", "symbolId": "use-cases/framework/agents/interactive-agent:IContextStrategy" }, "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Hosting adapters encapsulate the infrastructure needed to run an agent.\nThe default implementation is `LambdaHostingAdapter` (Lambda + LWA + API Gateway).\n`AgentCoreRuntimeHostingAdapter` provides an alternative using AgentCore Runtime.", "stability": "experimental", "summary": "Strategy interface for pluggable hosting backends." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1000 }, "methods": [ { "abstract": true, "docs": { "returns": "The hosting result including endpoint and optional resources", "stability": "experimental", "summary": "Deploy the agent hosting infrastructure." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1016 }, "name": "deploy", "parameters": [ { "docs": { "summary": "- Configuration for the agent hosting." }, "name": "config", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingConfig" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingResult" } } } ], "name": "IHostingAdapter", "properties": [ { "abstract": true, "docs": { "remarks": "BaseAgent uses this to create the agent role with the correct trust policy.\nFor example, Lambda hosting requires `lambda.amazonaws.com` while AgentCore\nhosting requires `bedrock-agentcore.amazonaws.com`.", "stability": "experimental", "summary": "The IAM service principal that this hosting backend requires." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1008 }, "name": "servicePrincipal", "type": { "fqn": "aws-cdk-lib.aws_iam.ServicePrincipal" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:IHostingAdapter" }, "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "This interface defines the contract that all knowledge base implementations must satisfy,\nallowing different KB backends (Bedrock KB, OpenSearch, custom) to be used interchangeably\nwith the agent framework.\n\nImplementations of this interface are responsible for:\n- Providing metadata about the knowledge base (name, description)\n- Generating the IAM permissions required for the agent to access the KB\n- Exporting runtime configuration for the retrieval tool\n- Optionally providing a custom retrieval tool implementation", "stability": "experimental", "summary": "Interface for knowledge base implementations." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IKnowledgeBase", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/i-knowledge-base.ts", "line": 22 }, "methods": [ { "abstract": true, "docs": { "remarks": "This method returns a configuration object that will be serialized\nand passed to the retrieval tool via environment variables. The\nconfiguration includes all information needed to query the KB at runtime.", "returns": "Runtime configuration object for the retrieval tool", "stability": "experimental", "summary": "Export configuration for runtime use by the retrieval tool." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/i-knowledge-base.ts", "line": 66 }, "name": "exportConfiguration", "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.KnowledgeBaseRuntimeConfig" } } }, { "abstract": true, "docs": { "remarks": "This method returns the IAM permissions that the agent's Lambda function\nrole needs to query this knowledge base. The permissions should follow\nthe principle of least privilege, scoped to the specific resources.", "returns": "Array of IAM PolicyStatement objects granting necessary permissions", "stability": "experimental", "summary": "Generate IAM policy statements required for accessing this knowledge base." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/i-knowledge-base.ts", "line": 55 }, "name": "generateIamPermissions", "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } } }, { "abstract": true, "docs": { "remarks": "This optional method allows knowledge base implementations to provide\na custom retrieval tool. If not implemented or returns undefined,\nthe framework's default retrieval tool will be used.", "returns": "S3 Asset containing the retrieval tool code, or undefined to use the default", "stability": "experimental", "summary": "Provide the retrieval tool asset for this knowledge base type." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/i-knowledge-base.ts", "line": 77 }, "name": "retrievalToolAsset", "returns": { "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3_assets.Asset" } } }, { "abstract": true, "docs": { "remarks": "This optional method allows knowledge base implementations to provide\nLambda layers containing dependencies needed by their retrieval tool.\nFor example, a knowledge base might need specific boto3 versions,\ncustom libraries, or SDK extensions.\n\nThe layers will be added to the agent's Lambda function, making the\ndependencies available to the retrieval tool at runtime.", "returns": "Array of Lambda LayerVersion objects, or undefined if no layers needed", "stability": "experimental", "summary": "Provide Lambda layers required by the retrieval tool." }, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/i-knowledge-base.ts", "line": 92 }, "name": "retrievalToolLayers", "returns": { "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.LayerVersion" }, "kind": "array" } } } } ], "name": "IKnowledgeBase", "properties": [ { "abstract": true, "docs": { "example": "'Contains product documentation, user guides, and FAQs. Use when answering questions about product features or troubleshooting.'", "remarks": "This description is included in the agent's system prompt to help\nthe agent decide when to query this knowledge base. It should clearly\nindicate what type of information the KB contains and when it should\nbe used.", "stability": "experimental", "summary": "Human-readable description of what this knowledge base contains." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/i-knowledge-base.ts", "line": 44 }, "name": "description", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "example": "'product-documentation'", "remarks": "This name is used for logging, display purposes, and to help the agent\nidentify which knowledge base to query. It should be unique within\nthe set of knowledge bases configured for an agent.", "stability": "experimental", "summary": "Human-readable name for this knowledge base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/i-knowledge-base.ts", "line": 32 }, "name": "name", "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/i-knowledge-base:IKnowledgeBase" }, "@cdklabs/cdk-appmod-catalog-blueprints.IObservable": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental", "summary": "Interface providing configuration parameters for constructs that support Observability." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IObservable", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 33 }, "methods": [ { "abstract": true, "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 38 }, "name": "metrics", "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_cloudwatch.IMetric" }, "kind": "array" } } } } ], "name": "IObservable", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 36 }, "name": "logGroupDataProtection", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 35 }, "name": "metricNamespace", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 34 }, "name": "metricServiceName", "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/observability/observable:IObservable" }, "@cdklabs/cdk-appmod-catalog-blueprints.ISessionIndex": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Session indexes provide fast user to session lookups for listing and managing sessions.\nThe default implementation (DynamoDBSessionIndex) uses DynamoDB for efficient queries.", "stability": "experimental", "summary": "Strategy interface for session index storage." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionIndex", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 754 }, "methods": [ { "abstract": true, "docs": { "returns": "Environment variables to configure the session index", "stability": "experimental", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 767 }, "name": "environmentVariables", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Grant read/write permissions to a grantee." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 760 }, "name": "grantReadWrite", "parameters": [ { "docs": { "summary": "- The principal that needs access to the session index." }, "name": "grantee", "type": { "fqn": "aws-cdk-lib.aws_iam.IGrantable" } } ] } ], "name": "ISessionIndex", "symbolId": "use-cases/framework/agents/interactive-agent:ISessionIndex" }, "@cdklabs/cdk-appmod-catalog-blueprints.ISessionStore": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "deprecated": "Use Strands-native `S3SessionManager` from `strands.session.s3_session_manager` instead.\nThe Python handler now uses Strands-native session management automatically.", "remarks": "Session stores manage conversation state persistence across HTTP requests.\nThe default implementation (S3SessionManager) uses S3 for durable storage.", "stability": "deprecated", "summary": "Strategy interface for session persistence." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionStore", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 313 }, "methods": [ { "abstract": true, "docs": { "stability": "deprecated", "summary": "Grant read/write permissions to a Lambda function." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 324 }, "name": "grantReadWrite", "parameters": [ { "docs": { "summary": "- The Lambda function that needs access to the session store." }, "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ] } ], "name": "ISessionStore", "properties": [ { "abstract": true, "docs": { "stability": "deprecated", "summary": "The S3 bucket used for session storage (if S3-based)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 317 }, "name": "sessionBucket", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3.IBucket" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:ISessionStore" }, "@cdklabs/cdk-appmod-catalog-blueprints.InteractiveAgent": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgent", "docs": { "remarks": "Creates a complete serverless infrastructure for interactive AI conversations\nusing API Gateway REST API with response streaming, Lambda Web Adapter,\nFastAPI, and standard Strands Agent.\n\n## Architecture\n\n```\nClient (fetch + ReadableStream)\n ↓ POST /chat (Authorization: Bearer JWT)\nAPI Gateway REST API (responseTransferMode: STREAM)\n ↓ InvokeWithResponseStream\nLambda (Python + Lambda Web Adapter + FastAPI)\n ↓ strands.Agent streaming\nAmazon Bedrock (Claude)\n```\n\n## Features\n\n- **SSE Streaming**: Real-time token-by-token response streaming\n- **15-Minute Timeout**: Extended timeout for long conversations\n- **Session Management**: S3-based conversation persistence\n- **Context Windowing**: Sliding window conversation history\n- **Cognito Auth**: Native JWT validation on REST API\n- **Strategy Interfaces**: Pluggable adapters for all components\n- **Observability**: Lambda Powertools integration\n\n## Usage\n\n```typescript\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\nimport { InteractiveAgent } from '@cdklabs/cdk-appmod-catalog-blueprints';\n\nconst systemPrompt = new Asset(this, 'Prompt', { path: './prompt.txt' });\n\nconst agent = new InteractiveAgent(this, 'ChatAgent', {\n agentName: 'MyChatbot',\n agentDefinition: {\n bedrockModel: { useCrossRegionInference: true },\n systemPrompt: systemPrompt,\n },\n});\n\n// Access outputs\nagent.apiEndpoint; // REST API endpoint URL\nagent.sessionBucket; // S3 session bucket\nagent.authenticator; // Cognito authenticator (for User Pool info)\n```", "stability": "experimental", "summary": "Interactive Agent for real-time conversational AI with SSE streaming." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.InteractiveAgent", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1912 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.InteractiveAgentProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1890 }, "name": "InteractiveAgent", "properties": [ { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1896 }, "name": "apiEndpoint", "type": { "primitive": "string" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1892 }, "name": "adapter", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter" } }, { "docs": { "remarks": "May be undefined for non-Lambda hosting backends (e.g. AgentCore Runtime).", "stability": "experimental", "summary": "The Lambda function for the agent (when using Lambda hosting)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1891 }, "name": "agentFunction", "optional": true, "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgent", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1895 }, "name": "authenticator", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1898 }, "name": "cfnRuntime", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_bedrockagentcore.CfnRuntime" } }, { "docs": { "stability": "experimental", "summary": "The Cognito User Pools authorizer (only available when using LambdaHostingAdapter with CognitoAuthenticator)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1910 }, "name": "cognitoAuthorizer", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_apigateway.CognitoUserPoolsAuthorizer" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1894 }, "name": "contextStrategy", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy" } }, { "docs": { "stability": "experimental", "summary": "The REST API Gateway (only available when using LambdaHostingAdapter with StreamingHttpAdapter)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1906 }, "name": "restApi", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_apigateway.RestApi" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1897 }, "name": "sessionBucket", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3.IBucket" } }, { "docs": { "stability": "experimental", "summary": "The session index for fast user to session lookups." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1902 }, "name": "sessionIndex", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionIndex" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1893 }, "name": "sessionStore", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionStore" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:InteractiveAgent" }, "@cdklabs/cdk-appmod-catalog-blueprints.InteractiveAgentProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Extends BaseAgentProps with communication, session, context, and authentication\nstrategy interfaces for building real-time conversational AI agents.", "stability": "experimental", "summary": "Configuration properties for InteractiveAgent." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.InteractiveAgentProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.BaseAgentProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1720 }, "name": "InteractiveAgentProps", "properties": [ { "abstract": true, "docs": { "default": "Architecture.X86_64", "stability": "experimental", "summary": "Lambda function architecture." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1829 }, "name": "architecture", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Architecture" } }, { "abstract": true, "docs": { "default": "CognitoAuthenticator", "stability": "experimental", "summary": "Authenticator for securing API endpoints." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1799 }, "name": "authenticator", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator" } }, { "abstract": true, "docs": { "default": "StreamingHttpAdapter with CognitoAuthenticator", "stability": "experimental", "summary": "Communication adapter for client-agent interaction." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1739 }, "name": "communicationAdapter", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter" } }, { "abstract": true, "docs": { "default": "SlidingWindowConversationManager with 20 messages", "deprecated": "Conversation management is now handled by Strands-native\n`SlidingWindowConversationManager` in the Python handler.", "stability": "deprecated", "summary": "Context strategy for conversation history management." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1781 }, "name": "contextStrategy", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy" } }, { "abstract": true, "docs": { "default": "['POST', 'OPTIONS']", "remarks": "Use this to enable additional methods (GET, DELETE, PUT) for custom routes\nadded to the REST API.", "stability": "experimental", "summary": "HTTP methods to allow in CORS preflight responses." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1808 }, "name": "corsAllowMethods", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "LambdaHostingAdapter", "remarks": "Use `LambdaHostingAdapter` for Lambda + API Gateway (default) or\n`AgentCoreRuntimeHostingAdapter` for AgentCore Runtime hosting.\n\nWhen provided, `communicationAdapter`, `authenticator`, `memorySize`,\n`timeout`, `architecture`, and `reservedConcurrentExecutions` props\nare ignored (configure them on the adapter directly).", "stability": "experimental", "summary": "Hosting adapter for deploying the agent runtime." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1733 }, "name": "hostingAdapter", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter" } }, { "abstract": true, "docs": { "default": "1024", "stability": "experimental", "summary": "Lambda function memory size in MB." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1815 }, "name": "memorySize", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "20", "deprecated": "Conversation windowing is now handled by Strands-native\n`SlidingWindowConversationManager` in the Python handler (default: 20).", "remarks": "Shorthand for SlidingWindowConversationManager windowSize.\nIgnored if contextStrategy is provided.", "stability": "deprecated", "summary": "Maximum number of messages to keep in conversation history." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1792 }, "name": "messageHistoryLimit", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "No reserved concurrency", "stability": "experimental", "summary": "Reserved concurrent executions for the Lambda function." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1836 }, "name": "reservedConcurrentExecutions", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "Auto-created bucket", "remarks": "Ignored if sessionStore is provided.", "stability": "experimental", "summary": "S3 bucket for session storage (shorthand for S3SessionManager)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1757 }, "name": "sessionBucket", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3.IBucket" } }, { "abstract": true, "docs": { "default": "DynamoDBSessionIndex (auto-created)", "remarks": "Provides efficient querying of a user's sessions for listing and management.", "stability": "experimental", "summary": "Session index for fast user to session lookups." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1772 }, "name": "sessionIndex", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionIndex" } }, { "abstract": true, "docs": { "default": "S3SessionManager with 24-hour TTL", "deprecated": "Session management is now handled by Strands-native `S3SessionManager`.\nAn S3 bucket is always created and passed as `SESSION_BUCKET` env var.", "remarks": "Set to undefined to disable session persistence (stateless mode).", "stability": "deprecated", "summary": "Session store for persisting conversation state." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1749 }, "name": "sessionStore", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionStore" } }, { "abstract": true, "docs": { "default": "Duration.hours(24)", "stability": "experimental", "summary": "Time-to-live for sessions." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1764 }, "name": "sessionTTL", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } }, { "abstract": true, "docs": { "default": "Duration.minutes(15)", "stability": "experimental", "summary": "Lambda function timeout." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1822 }, "name": "timeout", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:InteractiveAgentProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.InvokeType": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Defines the processing mode for the agent.\nMust match the Python InvokeType enum in batch.py.", "stability": "experimental", "summary": "Agent invocation type enumeration." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.InvokeType", "kind": "enum", "locationInModule": { "filename": "use-cases/framework/agents/invoke-type.ts", "line": 10 }, "members": [ { "docs": { "remarks": "Default mode for most agent operations.", "stability": "experimental", "summary": "Batch processing mode - processes one document at a time." }, "name": "BATCH" }, { "docs": { "remarks": "For real-time chat and conversational interfaces.", "stability": "experimental", "summary": "Interactive conversation mode (future)." }, "name": "INTERACTIVE" }, { "docs": { "remarks": "Used for RAG applications, API endpoints, and direct agent calls.", "stability": "experimental", "summary": "Direct invocation mode." }, "name": "ATTACH_DIRECTLY" }, { "docs": { "remarks": "Used in document processing workflows for classification phase.", "stability": "experimental", "summary": "Document classification step." }, "name": "CLASSIFICATION" }, { "docs": { "remarks": "Used in document processing workflows for extraction/processing phase.", "stability": "experimental", "summary": "Document processing step." }, "name": "PROCESSING" }, { "docs": { "remarks": "Used in document processing workflows for aggregating chunked results.", "stability": "experimental", "summary": "Document aggregation step." }, "name": "AGGREGATION" } ], "name": "InvokeType", "symbolId": "use-cases/framework/agents/invoke-type:InvokeType" }, "@cdklabs/cdk-appmod-catalog-blueprints.KnowledgeBaseRuntimeConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "This interface defines the structure of the configuration object\nthat is serialized and passed to the retrieval tool via environment\nvariables. It contains all information needed to query the knowledge\nbase at runtime.", "stability": "experimental", "summary": "Runtime configuration exported for the retrieval tool." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.KnowledgeBaseRuntimeConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 325 }, "name": "KnowledgeBaseRuntimeConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Description of what this knowledge base contains." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 334 }, "name": "description", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Human-readable name for this knowledge base." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 329 }, "name": "name", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Retrieval configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 363 }, "name": "retrieval", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.RetrievalConfiguration" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "ACL configuration for identity-aware retrieval." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 368 }, "name": "acl", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AclConfiguration" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Guardrail configuration (for Bedrock implementations)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 373 }, "name": "guardrail", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.GuardrailConfiguration" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Bedrock Knowledge Base ARN (for Bedrock implementations)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 353 }, "name": "knowledgeBaseArn", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Bedrock Knowledge Base ID (for Bedrock implementations)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 348 }, "name": "knowledgeBaseId", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "example": "'bedrock'", "remarks": "Used by the retrieval tool to determine how to query the KB.", "stability": "experimental", "summary": "Type of knowledge base implementation." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 343 }, "name": "type", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Vector store configuration (for Bedrock implementations)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 358 }, "name": "vectorStore", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.VectorStoreConfiguration" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:KnowledgeBaseRuntimeConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.LambdaHostingAdapter": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Deploys the agent as a Lambda function behind Lambda Web Adapter and API Gateway\nREST API with response streaming. This is the default hosting backend.\n\n## Architecture\n\n```\nClient → POST /chat → API Gateway REST API (STREAM) → Lambda (FastAPI + LWA) → Bedrock\nClient ← SSE stream ← API Gateway ← Lambda response streaming ← Agent tokens\n```", "stability": "experimental", "summary": "Lambda hosting adapter for InteractiveAgent." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaHostingAdapter", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1096 }, "parameters": [ { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaHostingAdapterProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1088 }, "methods": [ { "docs": { "stability": "experimental", "summary": "Deploy Lambda + LWA + API Gateway hosting infrastructure." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1105 }, "name": "deploy", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter", "parameters": [ { "name": "config", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingConfig" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.AgentHostingResult" } } } ], "name": "LambdaHostingAdapter", "properties": [ { "docs": { "remarks": "BaseAgent uses this to create the agent role with the correct trust policy.\nFor example, Lambda hosting requires `lambda.amazonaws.com` while AgentCore\nhosting requires `bedrock-agentcore.amazonaws.com`.", "stability": "experimental", "summary": "The IAM service principal that this hosting backend requires." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1100 }, "name": "servicePrincipal", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IHostingAdapter", "type": { "fqn": "aws-cdk-lib.aws_iam.ServicePrincipal" } }, { "docs": { "stability": "experimental", "summary": "The authenticator." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1092 }, "name": "authenticator", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator" } }, { "docs": { "stability": "experimental", "summary": "The communication adapter." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1090 }, "name": "communicationAdapter", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:LambdaHostingAdapter" }, "@cdklabs/cdk-appmod-catalog-blueprints.LambdaHostingAdapterProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration properties for LambdaHostingAdapter." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaHostingAdapterProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1022 }, "name": "LambdaHostingAdapterProps", "properties": [ { "abstract": true, "docs": { "default": "Architecture.X86_64", "stability": "experimental", "summary": "Lambda function architecture." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1065 }, "name": "architecture", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_lambda.Architecture" } }, { "abstract": true, "docs": { "default": "CognitoAuthenticator", "stability": "experimental", "summary": "Authenticator for securing API endpoints." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1035 }, "name": "authenticator", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator" } }, { "abstract": true, "docs": { "default": "StreamingHttpAdapter", "stability": "experimental", "summary": "Communication adapter for client-agent interaction." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1028 }, "name": "communicationAdapter", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter" } }, { "abstract": true, "docs": { "default": "['POST', 'OPTIONS']", "remarks": "Use this to enable additional methods (GET, DELETE, PUT) for custom routes\nadded to the REST API.", "stability": "experimental", "summary": "HTTP methods to allow in CORS preflight responses." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1044 }, "name": "corsAllowMethods", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "1024", "stability": "experimental", "summary": "Lambda function memory size in MB." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1051 }, "name": "memorySize", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "No reserved concurrency", "stability": "experimental", "summary": "Reserved concurrent executions for the Lambda function." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1072 }, "name": "reservedConcurrentExecutions", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "Duration.minutes(15)", "stability": "experimental", "summary": "Lambda function timeout." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1058 }, "name": "timeout", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:LambdaHostingAdapterProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.LambdaIamUtils": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental", "summary": "Utility class for creating secure Lambda IAM policy statements with minimal permissions." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaIamUtils", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 73 }, "methods": [ { "docs": { "returns": "PolicyStatement for DynamoDB access", "stability": "experimental", "summary": "Creates a policy statement for DynamoDB table access." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 204 }, "name": "createDynamoDbPolicyStatement", "parameters": [ { "docs": { "summary": "The ARN of the DynamoDB table." }, "name": "tableArn", "type": { "primitive": "string" } }, { "docs": { "summary": "The DynamoDB actions to allow." }, "name": "actions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "PolicyStatement for KMS access", "stability": "experimental", "summary": "Creates a policy statement for KMS key access." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 319 }, "name": "createKmsPolicyStatement", "parameters": [ { "docs": { "summary": "The ARN of the KMS key." }, "name": "keyArn", "type": { "primitive": "string" } }, { "docs": { "summary": "The KMS actions to allow." }, "name": "actions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "Object containing policy statements and the unique function name", "stability": "experimental", "summary": "Creates CloudWatch Logs policy statements for Lambda execution." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 81 }, "name": "createLogsPermissions", "parameters": [ { "docs": { "summary": "Configuration properties." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaLogsPermissionsProps" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaLogsPermissionsResult" } }, "static": true }, { "docs": { "returns": "PolicyStatement for S3 access", "stability": "experimental", "summary": "Creates a policy statement for S3 bucket access." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 223 }, "name": "createS3PolicyStatement", "parameters": [ { "docs": { "summary": "The ARN of the S3 bucket." }, "name": "bucketArn", "type": { "primitive": "string" } }, { "docs": { "summary": "The S3 actions to allow." }, "name": "actions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "docs": { "summary": "Whether to include object-level permissions." }, "name": "includeObjects", "optional": true, "type": { "primitive": "boolean" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "PolicyStatement for Secrets Manager access", "stability": "experimental", "summary": "Creates a policy statement for Secrets Manager access." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 301 }, "name": "createSecretsManagerPolicyStatement", "parameters": [ { "docs": { "summary": "The ARN of the secret." }, "name": "secretArn", "type": { "primitive": "string" } }, { "docs": { "summary": "The Secrets Manager actions to allow." }, "name": "actions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "PolicyStatement for SNS access", "stability": "experimental", "summary": "Creates a policy statement for SNS topic access." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 265 }, "name": "createSnsPolicyStatement", "parameters": [ { "docs": { "summary": "The ARN of the SNS topic." }, "name": "topicArn", "type": { "primitive": "string" } }, { "docs": { "summary": "The SNS actions to allow." }, "name": "actions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "PolicyStatement for SQS access", "stability": "experimental", "summary": "Creates a policy statement for SQS queue access." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 247 }, "name": "createSqsPolicyStatement", "parameters": [ { "docs": { "summary": "The ARN of the SQS queue." }, "name": "queueArn", "type": { "primitive": "string" } }, { "docs": { "summary": "The SQS actions to allow." }, "name": "actions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "PolicyStatement for Step Functions access", "stability": "experimental", "summary": "Creates a policy statement for Step Functions execution." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 283 }, "name": "createStepFunctionsPolicyStatement", "parameters": [ { "docs": { "summary": "The ARN of the Step Functions state machine." }, "name": "stateMachineArn", "type": { "primitive": "string" } }, { "docs": { "summary": "The Step Functions actions to allow." }, "name": "actions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "Array of IAM PolicyStatements for VPC access", "stability": "experimental", "summary": "Creates VPC permissions for Lambda functions running in VPC." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 149 }, "name": "createVpcPermissions", "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } }, "static": true }, { "docs": { "returns": "Array of IAM PolicyStatements for X-Ray tracing", "stability": "experimental", "summary": "Creates X-Ray tracing permissions for Lambda functions." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 170 }, "name": "createXRayPermissions", "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } }, "static": true }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 115 }, "name": "generateLambdaVPCPermissions", "returns": { "type": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" } }, "static": true }, { "docs": { "returns": "Unique function name", "stability": "experimental", "summary": "Generates a unique function name using CDK's built-in functionality." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 140 }, "name": "generateUniqueFunctionName", "parameters": [ { "docs": { "summary": "The construct scope." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "The base name for the function." }, "name": "baseName", "type": { "primitive": "string" } } ], "returns": { "type": { "primitive": "string" } }, "static": true }, { "docs": { "returns": "LambdaIamUtilsStackInfo", "stability": "experimental", "summary": "Helper method to get region and account from a construct." }, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 189 }, "name": "getStackInfo", "parameters": [ { "docs": { "summary": "The construct scope." }, "name": "scope", "type": { "fqn": "constructs.Construct" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaIamUtilsStackInfo" } }, "static": true } ], "name": "LambdaIamUtils", "properties": [ { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 74 }, "name": "OBSERVABILITY_SUFFIX", "static": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/lambda-iam-utils:LambdaIamUtils" }, "@cdklabs/cdk-appmod-catalog-blueprints.LambdaIamUtilsStackInfo": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Stack information." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaIamUtilsStackInfo", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 11 }, "name": "LambdaIamUtilsStackInfo", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 13 }, "name": "account", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 12 }, "name": "region", "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/lambda-iam-utils:LambdaIamUtilsStackInfo" }, "@cdklabs/cdk-appmod-catalog-blueprints.LambdaLogsPermissionsProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration options for Lambda CloudWatch Logs permissions." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaLogsPermissionsProps", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 19 }, "name": "LambdaLogsPermissionsProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "AWS account ID for the log group ARN." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 44 }, "name": "account", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The base name of the Lambda function." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 28 }, "name": "functionName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "AWS region for the log group ARN." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 39 }, "name": "region", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The construct scope (used to generate unique names)." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 23 }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "abstract": true, "docs": { "default": "false", "remarks": "This would have an impact\non the result IAM policy for the LogGroup for the Lambda function", "stability": "experimental", "summary": "Whether observability is enabled or not." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 52 }, "name": "enableObservability", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "'/aws/lambda/{uniqueFunctionName}'", "stability": "experimental", "summary": "Custom log group name pattern." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 34 }, "name": "logGroupName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/lambda-iam-utils:LambdaLogsPermissionsProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.LambdaLogsPermissionsResult": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Result of creating Lambda logs permissions." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaLogsPermissionsResult", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 58 }, "name": "LambdaLogsPermissionsResult", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "The policy statements for CloudWatch Logs." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 62 }, "name": "policyStatements", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The unique function name that was generated." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/lambda-iam-utils.ts", "line": 67 }, "name": "uniqueFunctionName", "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/lambda-iam-utils:LambdaLogsPermissionsResult" }, "@cdklabs/cdk-appmod-catalog-blueprints.LambdaObservabilityPropertyInjector": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LambdaObservabilityPropertyInjector", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/observability/lambda-observability-property-injector.ts", "line": 12 }, "parameters": [ { "name": "logGroupDataProtection", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } } ] }, "interfaces": [ "aws-cdk-lib.IPropertyInjector" ], "kind": "class", "locationInModule": { "filename": "use-cases/utilities/observability/lambda-observability-property-injector.ts", "line": 8 }, "methods": [ { "docs": { "stability": "experimental", "summary": "The injector to be applied to the constructor properties of the Construct." }, "locationInModule": { "filename": "use-cases/utilities/observability/lambda-observability-property-injector.ts", "line": 17 }, "name": "inject", "overrides": "aws-cdk-lib.IPropertyInjector", "parameters": [ { "name": "originalProps", "type": { "primitive": "any" } }, { "name": "_context", "type": { "fqn": "aws-cdk-lib.InjectionContext" } } ], "returns": { "type": { "primitive": "any" } } } ], "name": "LambdaObservabilityPropertyInjector", "properties": [ { "docs": { "stability": "experimental", "summary": "The unique Id of the Construct class." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/lambda-observability-property-injector.ts", "line": 9 }, "name": "constructUniqueId", "overrides": "aws-cdk-lib.IPropertyInjector", "type": { "primitive": "string" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/lambda-observability-property-injector.ts", "line": 10 }, "name": "logGroupDataProtection", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } } ], "symbolId": "use-cases/utilities/observability/lambda-observability-property-injector:LambdaObservabilityPropertyInjector" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackAgenticDocumentProcessing": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessing", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackAgenticDocumentProcessing", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/localstack-agentic-document-processing.ts", "line": 23 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "Configuration properties for the document processing pipeline." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackAgenticDocumentProcessingProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/document-processing/localstack-agentic-document-processing.ts", "line": 19 }, "methods": [ { "docs": { "remarks": "Creates a Lambda function that invokes the configured Bedrock model to extract\nstructured data from the document. Uses the classification result from the\nprevious step to provide context for more accurate extraction.\n\nThis method caches the Lambda function to avoid creating duplicate resources,\nbut creates a new LambdaInvoke task each time to allow proper state chaining.", "stability": "experimental", "summary": "Implements the document extraction step using Amazon Bedrock." }, "locationInModule": { "filename": "use-cases/document-processing/localstack-agentic-document-processing.ts", "line": 35 }, "name": "processingStep", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessing", "protected": true, "returns": { "type": { "union": { "types": [ { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.BedrockInvokeModel" }, { "fqn": "aws-cdk-lib.aws_stepfunctions_tasks.StepFunctionsStartExecution" } ] } } } }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/localstack-agentic-document-processing.ts", "line": 31 }, "name": "resolveBedrockInvokeEntry", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessing", "protected": true, "returns": { "type": { "primitive": "string" } } } ], "name": "LocalStackAgenticDocumentProcessing", "symbolId": "use-cases/document-processing/localstack-agentic-document-processing:LocalStackAgenticDocumentProcessing" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackAgenticDocumentProcessingProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackAgenticDocumentProcessingProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.AgenticDocumentProcessingProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/localstack-agentic-document-processing.ts", "line": 10 }, "name": "LocalStackAgenticDocumentProcessingProps", "properties": [ { "abstract": true, "docs": { "default": "{ enabled: true }", "stability": "experimental", "summary": "LocalStack endpoint routing configuration for Lambda runtime SDK calls." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/localstack-agentic-document-processing.ts", "line": 16 }, "name": "localStack", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackEndpointOverrides" } } ], "symbolId": "use-cases/document-processing/localstack-agentic-document-processing:LocalStackAgenticDocumentProcessingProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBatchAgent": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgent", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBatchAgent", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/localstack-batch-agent.ts", "line": 17 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBatchAgentProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/localstack-batch-agent.ts", "line": 16 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/localstack-batch-agent.ts", "line": 35 }, "name": "resolveAgentRuntimeEntry", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgent", "protected": true, "returns": { "type": { "primitive": "string" } } } ], "name": "LocalStackBatchAgent", "symbolId": "use-cases/framework/agents/localstack-batch-agent:LocalStackBatchAgent" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBatchAgentProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBatchAgentProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.BatchAgentProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/localstack-batch-agent.ts", "line": 7 }, "name": "LocalStackBatchAgentProps", "properties": [ { "abstract": true, "docs": { "default": "{ enabled: true }", "stability": "experimental", "summary": "LocalStack endpoint routing configuration for Lambda runtime SDK calls." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/localstack-batch-agent.ts", "line": 13 }, "name": "localStack", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackEndpointOverrides" } } ], "symbolId": "use-cases/framework/agents/localstack-batch-agent:LocalStackBatchAgentProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBedrockDocumentProcessing": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessing", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBedrockDocumentProcessing", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/localstack-bedrock-document-processing.ts", "line": 17 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "Configuration properties for the document processing pipeline." }, "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBedrockDocumentProcessingProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/document-processing/localstack-bedrock-document-processing.ts", "line": 16 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/localstack-bedrock-document-processing.ts", "line": 25 }, "name": "resolveBedrockInvokeEntry", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessing", "protected": true, "returns": { "type": { "primitive": "string" } } } ], "name": "LocalStackBedrockDocumentProcessing", "symbolId": "use-cases/document-processing/localstack-bedrock-document-processing:LocalStackBedrockDocumentProcessing" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBedrockDocumentProcessingProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackBedrockDocumentProcessingProps", "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.BedrockDocumentProcessingProps" ], "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/localstack-bedrock-document-processing.ts", "line": 7 }, "name": "LocalStackBedrockDocumentProcessingProps", "properties": [ { "abstract": true, "docs": { "default": "{ enabled: true }", "stability": "experimental", "summary": "LocalStack endpoint routing configuration for Lambda runtime SDK calls." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/localstack-bedrock-document-processing.ts", "line": 13 }, "name": "localStack", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackEndpointOverrides" } } ], "symbolId": "use-cases/document-processing/localstack-bedrock-document-processing:LocalStackBedrockDocumentProcessingProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackEndpointOverrides": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackEndpointOverrides", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 37 }, "name": "LocalStackEndpointOverrides", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific Bedrock Agent Runtime endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 59 }, "name": "bedrockAgentRuntimeEndpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific Bedrock Runtime endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 55 }, "name": "bedrockRuntimeEndpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "http://localhost.localstack.cloud:4566", "stability": "experimental", "summary": "Default endpoint used when service-specific endpoints are not provided." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 43 }, "name": "endpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific S3 endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 47 }, "name": "s3EndpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific Step Functions endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 51 }, "name": "stepFunctionsEndpointUrl", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/localstack/localstack-config:LocalStackEndpointOverrides" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 1 }, "name": "LocalStackIntegrationConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific Bedrock Agent Runtime endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 34 }, "name": "bedrockAgentRuntimeEndpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific Bedrock Runtime endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 29 }, "name": "bedrockRuntimeEndpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "false", "stability": "experimental", "summary": "Enable LocalStack endpoint routing for runtime AWS SDK calls." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 7 }, "name": "enabled", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "http://localhost.localstack.cloud:4566", "stability": "experimental", "summary": "Default endpoint used when service-specific endpoints are not provided." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 14 }, "name": "endpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific S3 endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 19 }, "name": "s3EndpointUrl", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Optional service-specific Step Functions endpoint override." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 24 }, "name": "stepFunctionsEndpointUrl", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/localstack/localstack-config:LocalStackIntegrationConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationUtils": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationUtils", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 84 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 87 }, "name": "resolveConfig", "parameters": [ { "name": "config", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationConfig" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ResolvedLocalStackIntegrationConfig" } }, "static": true }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 100 }, "name": "toLambdaEnvironment", "parameters": [ { "name": "config", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationConfig" } } ], "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, "static": true } ], "name": "LocalStackIntegrationUtils", "properties": [ { "const": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 85 }, "name": "DEFAULT_ENDPOINT_URL", "static": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/localstack/localstack-config:LocalStackIntegrationUtils" }, "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Props to enable various data protection configuration for CloudWatch Log Groups." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/observability/log-group-data-protection-props.ts", "line": 11 }, "name": "LogGroupDataProtectionProps", "properties": [ { "abstract": true, "docs": { "default": "Data Protection Policy won't be enabled", "stability": "experimental", "summary": "List of DataIdentifiers that would be used as part of the Data Protection Policy that would be created for the log group." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/log-group-data-protection-props.ts", "line": 23 }, "name": "dataProtectionIdentifiers", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_logs.DataIdentifier" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "a new KMS key would automatically be created", "stability": "experimental", "summary": "Encryption key that would be used to encrypt the relevant log group." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/log-group-data-protection-props.ts", "line": 16 }, "name": "logGroupEncryptionKey", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_kms.Key" } } ], "symbolId": "use-cases/utilities/observability/log-group-data-protection-props:LogGroupDataProtectionProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionUtils": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionUtils", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/utilities/observability/log-group-data-protection-utils.ts", "line": 9 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/observability/log-group-data-protection-utils.ts", "line": 10 }, "name": "handleDefault", "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } }, { "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } }, "static": true } ], "name": "LogGroupDataProtectionUtils", "symbolId": "use-cases/utilities/observability/log-group-data-protection-utils:LogGroupDataProtectionUtils" }, "@cdklabs/cdk-appmod-catalog-blueprints.Network": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "base": "constructs.Construct", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Network", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 30 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.NetworkProps" } } ] }, "kind": "class", "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 18 }, "methods": [ { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 19 }, "name": "useExistingVPCFromLookup", "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "options", "type": { "fqn": "aws-cdk-lib.aws_ec2.VpcLookupOptions" } } ], "returns": { "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.Network" } }, "static": true }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 108 }, "name": "applicationSubnetSelection", "returns": { "type": { "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection" } } }, { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 81 }, "name": "createServiceEndpoint", "parameters": [ { "name": "id", "type": { "primitive": "string" } }, { "name": "service", "type": { "fqn": "aws-cdk-lib.aws_ec2.InterfaceVpcEndpointService" } }, { "name": "peer", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_ec2.IPeer" } }, { "name": "privateDnsEnabled", "optional": true, "type": { "primitive": "boolean" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_ec2.InterfaceVpcEndpoint" } } } ], "name": "Network", "properties": [ { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 27 }, "name": "vpc", "type": { "fqn": "aws-cdk-lib.aws_ec2.IVpc" } } ], "symbolId": "use-cases/framework/foundation/network:Network" }, "@cdklabs/cdk-appmod-catalog-blueprints.NetworkMode": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Determines whether the AgentCore Runtime runs on the public internet\nor inside a VPC with private networking.", "stability": "experimental", "summary": "Network mode for AgentCore Runtime hosting." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.NetworkMode", "kind": "enum", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 1273 }, "members": [ { "docs": { "remarks": "No VPC configuration required.", "stability": "experimental", "summary": "Runtime is publicly accessible (default)." }, "name": "PUBLIC" }, { "docs": { "remarks": "AgentCore creates ENIs in the specified subnets. You must provide\neither explicit `vpcSubnets` and `securityGroups`, or pass a\n`Network` construct via `InteractiveAgent.network`.\n\nUse private subnets with a NAT Gateway for internet access.\nPublic subnets do NOT provide internet access to AgentCore ENIs.", "see": "https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/agentcore-vpc.html", "stability": "experimental", "summary": "Runtime runs inside a VPC." }, "name": "VPC" } ], "name": "NetworkMode", "symbolId": "use-cases/framework/agents/interactive-agent:NetworkMode" }, "@cdklabs/cdk-appmod-catalog-blueprints.NetworkProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.NetworkProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 6 }, "name": "NetworkProps", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 7 }, "name": "existingVpc", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_ec2.IVpc" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 9 }, "name": "ipAddresses", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_ec2.IIpAddresses" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 13 }, "name": "maxAzs", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 10 }, "name": "natGatewayProvider", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_ec2.NatProvider" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 12 }, "name": "natGateways", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 11 }, "name": "natGatewaySubnets", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_ec2.SubnetSelection" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 8 }, "name": "private", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 15 }, "name": "subnetConfiguration", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_ec2.SubnetConfiguration" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/foundation/network.ts", "line": 14 }, "name": "vpcName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/foundation/network:NetworkProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.NoAuthenticator": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "Disables authentication entirely, allowing any client to connect\nwithout credentials. This should ONLY be used for development\nand testing environments.\n\n## Security Warning\n\nThis authenticator provides NO security. Never use in production.", "stability": "experimental", "summary": "No-authentication authenticator for development and testing." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.NoAuthenticator", "initializer": { "docs": { "stability": "experimental" } }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 918 }, "methods": [ { "docs": { "stability": "experimental", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 929 }, "name": "environmentVariables", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } }, { "docs": { "stability": "experimental", "summary": "No-op for NoAuthenticator since no authentication is performed." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 922 }, "name": "grantAuthenticate", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator", "parameters": [ { "name": "_lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ] } ], "name": "NoAuthenticator", "symbolId": "use-cases/framework/agents/interactive-agent:NoAuthenticator" }, "@cdklabs/cdk-appmod-catalog-blueprints.NoChunkingResponse": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Document is below thresholds and will be processed without chunking.", "stability": "experimental", "summary": "Response when chunking is NOT required." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.NoChunkingResponse", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 431 }, "name": "NoChunkingResponse", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Document identifier." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 435 }, "name": "documentId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "Example: \"Document has 50 pages, below threshold of 100\"", "stability": "experimental", "summary": "Human-readable reason why chunking was not applied." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 451 }, "name": "reason", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Indicates chunking is not required." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 440 }, "name": "requiresChunking", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Token analysis results." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 445 }, "name": "tokenAnalysis", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.TokenAnalysis" } } ], "symbolId": "use-cases/document-processing/chunking-config:NoChunkingResponse" }, "@cdklabs/cdk-appmod-catalog-blueprints.NullConversationManager": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "deprecated": "The Python handler now uses Strands-native conversation management.\nTo disable conversation history, omit the session bucket configuration.", "remarks": "Disables conversation history, treating each message as independent.\nUseful for stateless use cases where context is not needed.", "stability": "deprecated", "summary": "Null conversation manager for stateless interactions." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.NullConversationManager", "initializer": { "docs": { "stability": "experimental" } }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 549 }, "methods": [ { "docs": { "stability": "deprecated", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 553 }, "name": "environmentVariables", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } } ], "name": "NullConversationManager", "symbolId": "use-cases/framework/agents/interactive-agent:NullConversationManager" }, "@cdklabs/cdk-appmod-catalog-blueprints.ObservableProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Additional properties that constructs implementing the IObservable interface should extend as part of their input props." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ObservableProps", "kind": "interface", "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 10 }, "name": "ObservableProps", "properties": [ { "abstract": true, "docs": { "default": "a new KMS key would be generated", "stability": "experimental", "summary": "Data protection related configuration." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 27 }, "name": "logGroupDataProtection", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } }, { "abstract": true, "docs": { "default": "would be defined per use case", "stability": "experimental", "summary": "Business metric namespace." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 21 }, "name": "metricNamespace", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "would be defined per use case", "stability": "experimental", "summary": "Business metric service name dimension." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/observable.ts", "line": 15 }, "name": "metricServiceName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/utilities/observability/observable:ObservableProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.PowertoolsConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.PowertoolsConfig", "initializer": { "docs": { "stability": "experimental" } }, "kind": "class", "locationInModule": { "filename": "use-cases/utilities/observability/powertools-config.ts", "line": 1 }, "methods": [ { "docs": { "returns": "Record of environment variables for Lambda configuration", "stability": "experimental", "summary": "Generate default Lambda configuration for Powertools." }, "locationInModule": { "filename": "use-cases/utilities/observability/powertools-config.ts", "line": 11 }, "name": "generateDefaultLambdaConfig", "parameters": [ { "docs": { "summary": "- Whether observability is enabled." }, "name": "enableObservability", "optional": true, "type": { "primitive": "boolean" } }, { "docs": { "summary": "- CloudWatch metrics namespace." }, "name": "metricsNamespace", "optional": true, "type": { "primitive": "string" } }, { "docs": { "summary": "- Service name for logging and metrics." }, "name": "serviceName", "optional": true, "type": { "primitive": "string" } }, { "docs": { "remarks": "Defaults to INFO.", "summary": "- Log level (INFO, ERROR, DEBUG, WARNING)." }, "name": "logLevel", "optional": true, "type": { "primitive": "string" } } ], "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, "static": true } ], "name": "PowertoolsConfig", "symbolId": "use-cases/utilities/observability/powertools-config:PowertoolsConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.QueuedS3Adapter": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental", "summary": "This adapter allows the intelligent document processing workflow to be triggered by files that are uploaded into a S3 Bucket." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.QueuedS3Adapter", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 91 }, "parameters": [ { "name": "adapterProps", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.QueuedS3AdapterProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter" ], "kind": "class", "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 86 }, "methods": [ { "docs": { "stability": "experimental", "summary": "Create the adapter specific handler for failed processing." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 285 }, "name": "createFailedChain", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter", "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "idPrefix", "optional": true, "type": { "primitive": "string" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.Chain" } } }, { "docs": { "remarks": "Important: resource created should trigger the state machine", "stability": "experimental", "summary": "Create resources that would receive the data and trigger the workflow." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 161 }, "name": "createIngressTrigger", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter", "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "stateMachine", "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.StateMachine" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps" } } ], "returns": { "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } } }, { "docs": { "stability": "experimental", "summary": "Create the adapter specific handler for successful processing." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 315 }, "name": "createSuccessChain", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter", "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "idPrefix", "optional": true, "type": { "primitive": "string" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_stepfunctions.Chain" } } }, { "docs": { "stability": "experimental", "summary": "Generate IAM statements that can be used by other resources to access the storage." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 248 }, "name": "generateAdapterIAMPolicies", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter", "parameters": [ { "name": "additionalIAMActions", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "name": "narrowActions", "optional": true, "type": { "primitive": "boolean" } } ], "returns": { "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.PolicyStatement" }, "kind": "array" } } } }, { "docs": { "stability": "experimental", "summary": "Initializes the adapter." }, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 114 }, "name": "init", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IAdapter", "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "props", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.BaseDocumentProcessingProps" } } ] } ], "name": "QueuedS3Adapter", "symbolId": "use-cases/document-processing/adapter/queued-s3-adapter:QueuedS3Adapter" }, "@cdklabs/cdk-appmod-catalog-blueprints.QueuedS3AdapterProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Props for the Queued S3 Adapter." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.QueuedS3AdapterProps", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 36 }, "name": "QueuedS3AdapterProps", "properties": [ { "abstract": true, "docs": { "default": "create a new bucket", "remarks": "If not provided, a new bucket will be created with auto-delete enabled based on removalPolicy.", "stability": "experimental", "summary": "S3 bucket for document storage with organized prefixes (raw/, processed/, failed/)." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 43 }, "name": "bucket", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3.Bucket" } }, { "abstract": true, "docs": { "default": "5", "stability": "experimental", "summary": "The number of times a message can be unsuccessfully dequeued before being moved to the dead-letter queue." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 79 }, "name": "dlqMaxReceiveCount", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "\"failed/\"", "stability": "experimental", "summary": "S3 prefix where the files that failed processing would be stored." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 65 }, "name": "failedPrefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "\"processed/\"", "stability": "experimental", "summary": "S3 prefix where the processed files would be stored." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 58 }, "name": "processedPrefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "Duration.seconds(300)", "remarks": "Should be longer than expected processing time to prevent duplicate processing.", "stability": "experimental", "summary": "SQS queue visibility timeout for processing messages." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 72 }, "name": "queueVisibilityTimeout", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } }, { "abstract": true, "docs": { "default": "\"raw/\"", "remarks": "This serves as the trigger point for processing", "stability": "experimental", "summary": "S3 prefix where the raw files would be stored." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/adapter/queued-s3-adapter.ts", "line": 51 }, "name": "rawPrefix", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/document-processing/adapter/queued-s3-adapter:QueuedS3AdapterProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.ResolvedLocalStackIntegrationConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ResolvedLocalStackIntegrationConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 62 }, "name": "ResolvedLocalStackIntegrationConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 68 }, "name": "bedrockAgentRuntimeEndpointUrl", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 67 }, "name": "bedrockRuntimeEndpointUrl", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 63 }, "name": "enabled", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 64 }, "name": "endpointUrl", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 65 }, "name": "s3EndpointUrl", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/localstack/localstack-config.ts", "line": 66 }, "name": "stepFunctionsEndpointUrl", "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/localstack/localstack-config:ResolvedLocalStackIntegrationConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.RetrievalConfiguration": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Controls how many results are returned and optional metadata filtering\napplied to all queries against the knowledge base.", "stability": "experimental", "summary": "Configuration for retrieval operations." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.RetrievalConfiguration", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 10 }, "name": "RetrievalConfiguration", "properties": [ { "abstract": true, "docs": { "default": "5", "remarks": "Higher values provide more context but increase token usage.\nLower values are faster but may miss relevant information.", "stability": "experimental", "summary": "Number of results to return per query." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 19 }, "name": "numberOfResults", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "- No filter applied", "remarks": "This filter is applied in addition to any ACL filters. Use this\nfor static filtering based on document metadata (e.g., document type,\ncategory, or date range).", "stability": "experimental", "summary": "Metadata filter to apply to all queries." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 30 }, "name": "retrievalFilter", "optional": true, "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:RetrievalConfiguration" }, "@cdklabs/cdk-appmod-catalog-blueprints.S3SessionManager": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "deprecated": "Use Strands-native `S3SessionManager` from `strands.session.s3_session_manager` instead.\nThe Python handler now uses Strands-native session management automatically.\nAn S3 bucket is still created for the Strands session manager; this CDK class\nis no longer needed to configure session persistence.", "remarks": "Uses S3 for durable storage of session data with automatic expiration\nvia lifecycle policies. Each HTTP request loads/saves session state,\nenabling multi-turn conversations over stateless HTTP.\n\n## Features\n\n- **Durable Storage**: Sessions persisted to S3 survive Lambda restarts\n- **Automatic Expiration**: Lifecycle policy removes old sessions\n- **Encryption**: KMS encryption at rest\n- **Cost Optimization**: S3 Standard storage with lifecycle management\n\n## Usage\n\n```typescript\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\nimport { InteractiveAgent, S3SessionManager } from '@cdklabs/cdk-appmod-catalog-blueprints';\nimport { Duration } from 'aws-cdk-lib';\n\nconst myPrompt = new Asset(this, 'Prompt', { path: './prompt.txt' });\nconst sessionManager = new S3SessionManager(this, 'SessionManager', {\n sessionTTL: Duration.hours(48)\n});\n\nconst agent = new InteractiveAgent(this, 'Agent', {\n agentName: 'ChatAgent',\n agentDefinition: { bedrockModel: {}, systemPrompt: myPrompt },\n sessionStore: sessionManager\n});\n```", "stability": "deprecated", "summary": "S3-based session manager for persisting conversation state." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.S3SessionManager", "initializer": { "docs": { "stability": "deprecated" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 412 }, "parameters": [ { "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "name": "id", "type": { "primitive": "string" } }, { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.S3SessionManagerProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.ISessionStore" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 401 }, "methods": [ { "docs": { "stability": "deprecated", "summary": "Grant read/write permissions to a Lambda function." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 447 }, "name": "grantReadWrite", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionStore", "parameters": [ { "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ] } ], "name": "S3SessionManager", "properties": [ { "docs": { "stability": "deprecated", "summary": "The S3 bucket used for session storage." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 405 }, "name": "bucket", "type": { "fqn": "aws-cdk-lib.aws_s3.IBucket" } }, { "docs": { "stability": "deprecated", "summary": "The session TTL duration." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 410 }, "name": "sessionTTL", "type": { "fqn": "aws-cdk-lib.Duration" } }, { "docs": { "stability": "deprecated", "summary": "The S3 bucket used for session storage (ISessionStore interface)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 440 }, "name": "sessionBucket", "optional": true, "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.ISessionStore", "type": { "fqn": "aws-cdk-lib.aws_s3.IBucket" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:S3SessionManager" }, "@cdklabs/cdk-appmod-catalog-blueprints.S3SessionManagerProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "deprecated": "Use Strands-native `S3SessionManager` from `strands.session.s3_session_manager` instead.", "stability": "deprecated", "summary": "Configuration properties for S3SessionManager." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.S3SessionManagerProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 332 }, "name": "S3SessionManagerProps", "properties": [ { "abstract": true, "docs": { "default": "Auto-created bucket with KMS encryption", "stability": "deprecated", "summary": "S3 bucket for session storage." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 338 }, "name": "bucket", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3.IBucket" } }, { "abstract": true, "docs": { "default": "Auto-created KMS key with rotation enabled", "stability": "deprecated", "summary": "KMS encryption key for the session bucket." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 353 }, "name": "encryptionKey", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_kms.IKey" } }, { "abstract": true, "docs": { "default": "RemovalPolicy.DESTROY", "stability": "deprecated", "summary": "Removal policy for the session bucket." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 360 }, "name": "removalPolicy", "optional": true, "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } }, { "abstract": true, "docs": { "default": "Duration.hours(24)", "remarks": "Sessions older than this duration will be automatically deleted.", "stability": "deprecated", "summary": "Time-to-live for sessions." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 346 }, "name": "sessionTTL", "optional": true, "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:S3SessionManagerProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.SlidingWindowConversationManager": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "deprecated": "Use Strands-native `SlidingWindowConversationManager` from\n`strands.agent.conversation_manager` instead. The Python handler now handles\nconversation windowing natively.", "remarks": "Keeps a fixed-size window of recent messages, automatically discarding older\nmessages as new ones arrive. Provides consistent context size for the agent.\n\n## Usage\n\n```typescript\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\nimport { InteractiveAgent, SlidingWindowConversationManager } from '@cdklabs/cdk-appmod-catalog-blueprints';\n\nconst myPrompt = new Asset(this, 'Prompt', { path: './prompt.txt' });\nconst contextManager = new SlidingWindowConversationManager({ windowSize: 30 });\n\nconst agent = new InteractiveAgent(this, 'Agent', {\n agentName: 'ChatAgent',\n agentDefinition: { bedrockModel: {}, systemPrompt: myPrompt },\n contextStrategy: contextManager\n});\n```", "stability": "deprecated", "summary": "Sliding window conversation manager for maintaining recent conversation history." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.SlidingWindowConversationManager", "initializer": { "docs": { "stability": "deprecated" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 518 }, "parameters": [ { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.SlidingWindowConversationManagerProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 512 }, "methods": [ { "docs": { "stability": "deprecated", "summary": "Get environment variables for Lambda configuration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 531 }, "name": "environmentVariables", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.IContextStrategy", "returns": { "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } } ], "name": "SlidingWindowConversationManager", "properties": [ { "docs": { "stability": "deprecated", "summary": "The window size (number of messages to keep)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 516 }, "name": "windowSize", "type": { "primitive": "number" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:SlidingWindowConversationManager" }, "@cdklabs/cdk-appmod-catalog-blueprints.SlidingWindowConversationManagerProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "deprecated": "Use Strands-native `SlidingWindowConversationManager` from\n`strands.agent.conversation_manager` instead.", "stability": "deprecated", "summary": "Configuration properties for SlidingWindowConversationManager." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.SlidingWindowConversationManagerProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 477 }, "name": "SlidingWindowConversationManagerProps", "properties": [ { "abstract": true, "docs": { "default": "20 messages", "stability": "deprecated", "summary": "Maximum number of messages to keep in conversation history." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 483 }, "name": "windowSize", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:SlidingWindowConversationManagerProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.StateMachineObservabilityPropertyInjector": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "stability": "experimental" }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.StateMachineObservabilityPropertyInjector", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/utilities/observability/state-machine-observability-property-injector.ts", "line": 11 }, "parameters": [ { "name": "logGroupDataProtection", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } } ] }, "interfaces": [ "aws-cdk-lib.IPropertyInjector" ], "kind": "class", "locationInModule": { "filename": "use-cases/utilities/observability/state-machine-observability-property-injector.ts", "line": 7 }, "methods": [ { "docs": { "stability": "experimental", "summary": "The injector to be applied to the constructor properties of the Construct." }, "locationInModule": { "filename": "use-cases/utilities/observability/state-machine-observability-property-injector.ts", "line": 16 }, "name": "inject", "overrides": "aws-cdk-lib.IPropertyInjector", "parameters": [ { "name": "originalProps", "type": { "primitive": "any" } }, { "name": "_context", "type": { "fqn": "aws-cdk-lib.InjectionContext" } } ], "returns": { "type": { "primitive": "any" } } } ], "name": "StateMachineObservabilityPropertyInjector", "properties": [ { "docs": { "stability": "experimental", "summary": "The unique Id of the Construct class." }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/state-machine-observability-property-injector.ts", "line": 8 }, "name": "constructUniqueId", "overrides": "aws-cdk-lib.IPropertyInjector", "type": { "primitive": "string" } }, { "docs": { "stability": "experimental" }, "immutable": true, "locationInModule": { "filename": "use-cases/utilities/observability/state-machine-observability-property-injector.ts", "line": 9 }, "name": "logGroupDataProtection", "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.LogGroupDataProtectionProps" } } ], "symbolId": "use-cases/utilities/observability/state-machine-observability-property-injector:StateMachineObservabilityPropertyInjector" }, "@cdklabs/cdk-appmod-catalog-blueprints.StreamingHttpAdapter": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "docs": { "remarks": "This adapter creates an API Gateway REST API with response streaming enabled,\nallowing the Lambda function to stream SSE (Server-Sent Events) responses\nback to clients as the Strands Agent generates tokens.\n\n## Architecture\n\n```\nClient → POST /chat → API Gateway REST API (STREAM mode) → Lambda (FastAPI + LWA) → Bedrock\nClient ← SSE stream ← API Gateway ← Lambda response streaming ← Agent tokens\n```\n\n## Features\n\n- **Response Streaming**: Progressive SSE delivery via API Gateway response streaming\n- **15-Minute Timeout**: Extended timeout for long-running agent conversations\n- **Cognito Auth**: Native COGNITO_USER_POOLS authorizer on REST API\n- **CORS**: Built-in CORS support for browser clients\n- **Throttling**: Configurable rate and burst limits\n\n## Example\n\n```typescript\nimport { Asset } from 'aws-cdk-lib/aws-s3-assets';\nimport { InteractiveAgent, StreamingHttpAdapter } from '@cdklabs/cdk-appmod-catalog-blueprints';\n\nconst myPrompt = new Asset(this, 'Prompt', { path: './prompt.txt' });\nconst adapter = new StreamingHttpAdapter({\n stageName: 'prod',\n throttle: { rateLimit: 100, burstLimit: 200 }\n});\n\nconst agent = new InteractiveAgent(this, 'Agent', {\n agentName: 'ChatAgent',\n agentDefinition: { bedrockModel: {}, systemPrompt: myPrompt },\n communicationAdapter: adapter\n});\n```", "stability": "experimental", "summary": "Streaming HTTP adapter for real-time agent communication via SSE." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.StreamingHttpAdapter", "initializer": { "docs": { "stability": "experimental" }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 162 }, "parameters": [ { "name": "props", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.StreamingHttpAdapterProps" } } ] }, "interfaces": [ "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter" ], "kind": "class", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 143 }, "methods": [ { "docs": { "remarks": "Creates API Gateway REST API with POST /chat endpoint and response streaming.", "stability": "experimental", "summary": "Attach the adapter to a Lambda function and create REST API infrastructure." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 170 }, "name": "attachToFunction", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter", "parameters": [ { "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ], "returns": { "type": { "primitive": "string" } } }, { "docs": { "remarks": "For REST API streaming, no additional permissions are needed beyond the invoke permission.", "stability": "experimental", "summary": "Grant the Lambda function permissions for API Gateway integration." }, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 288 }, "name": "grantInvoke", "overrides": "@cdklabs/cdk-appmod-catalog-blueprints.ICommunicationAdapter", "parameters": [ { "name": "_lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } } ] } ], "name": "StreamingHttpAdapter", "properties": [ { "docs": { "stability": "experimental", "summary": "The API endpoint URL." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 157 }, "name": "apiEndpoint", "optional": true, "type": { "primitive": "string" } }, { "docs": { "stability": "experimental", "summary": "The Cognito User Pools authorizer (if Cognito authentication is enabled)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 152 }, "name": "cognitoAuthorizer", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_apigateway.CognitoUserPoolsAuthorizer" } }, { "docs": { "stability": "experimental", "summary": "The REST API Gateway." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 147 }, "name": "restApi", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_apigateway.RestApi" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:StreamingHttpAdapter" }, "@cdklabs/cdk-appmod-catalog-blueprints.StreamingHttpAdapterProps": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Configuration properties for StreamingHttpAdapter." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.StreamingHttpAdapterProps", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 70 }, "name": "StreamingHttpAdapterProps", "properties": [ { "abstract": true, "docs": { "default": "Uses authenticator from InteractiveAgent", "stability": "experimental", "summary": "Authenticator for securing API endpoints." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 90 }, "name": "authenticator", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.IAuthenticator" } }, { "abstract": true, "docs": { "default": "['POST', 'OPTIONS']", "remarks": "Use this to enable additional methods (GET, DELETE, PUT) for custom routes\nadded to the REST API.", "stability": "experimental", "summary": "HTTP methods to allow in CORS preflight responses." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 99 }, "name": "corsAllowMethods", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "default": "'prod'", "stability": "experimental", "summary": "REST API stage name." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 76 }, "name": "stageName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "No throttling", "stability": "experimental", "summary": "Throttle settings for REST API." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 83 }, "name": "throttle", "optional": true, "type": { "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ThrottleSettings" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:StreamingHttpAdapterProps" }, "@cdklabs/cdk-appmod-catalog-blueprints.ThrottleSettings": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "stability": "experimental", "summary": "Throttle settings for REST API." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.ThrottleSettings", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 55 }, "name": "ThrottleSettings", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Burst limit (maximum concurrent requests)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 64 }, "name": "burstLimit", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Rate limit (requests per second)." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/interactive-agent.ts", "line": 59 }, "name": "rateLimit", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/framework/agents/interactive-agent:ThrottleSettings" }, "@cdklabs/cdk-appmod-catalog-blueprints.TokenAnalysis": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Provides information about document size and token distribution.", "stability": "experimental", "summary": "Token analysis results from PDF analysis." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.TokenAnalysis", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 404 }, "name": "TokenAnalysis", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "Average tokens per page across the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 418 }, "name": "avgTokensPerPage", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Total number of pages in the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 413 }, "name": "totalPages", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "Total estimated tokens in the document." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 408 }, "name": "totalTokens", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "remarks": "Used for token-based and hybrid chunking strategies.", "stability": "experimental", "summary": "Optional detailed token count for each page." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 424 }, "name": "tokensPerPage", "optional": true, "type": { "collection": { "elementtype": { "primitive": "number" }, "kind": "array" } } } ], "symbolId": "use-cases/document-processing/chunking-config:TokenAnalysis" }, "@cdklabs/cdk-appmod-catalog-blueprints.TokenBasedConfig": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Splits documents based on estimated token count to respect model limits.", "stability": "experimental", "summary": "Configuration for token-based chunking strategy." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.TokenBasedConfig", "kind": "interface", "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 73 }, "name": "TokenBasedConfig", "properties": [ { "abstract": true, "docs": { "default": "100000", "remarks": "Ensures no chunk exceeds model token limits.", "stability": "experimental", "summary": "Maximum tokens per chunk." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 86 }, "name": "maxTokensPerChunk", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "5000", "remarks": "Provides context continuity across chunks.", "stability": "experimental", "summary": "Number of overlapping tokens between consecutive chunks." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 93 }, "name": "overlapTokens", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "default": "150000", "remarks": "Documents with tokens > threshold will be chunked.", "stability": "experimental", "summary": "Threshold for triggering chunking based on token count." }, "immutable": true, "locationInModule": { "filename": "use-cases/document-processing/chunking-config.ts", "line": 79 }, "name": "tokenThreshold", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "use-cases/document-processing/chunking-config:TokenBasedConfig" }, "@cdklabs/cdk-appmod-catalog-blueprints.VectorStoreConfiguration": { "assembly": "@cdklabs/cdk-appmod-catalog-blueprints", "datatype": true, "docs": { "remarks": "Defines the type of vector store and any type-specific configuration.\nS3 Vectors is the default and recommended option for most use cases.", "stability": "experimental", "summary": "Configuration for vector store used by the knowledge base." }, "fqn": "@cdklabs/cdk-appmod-catalog-blueprints.VectorStoreConfiguration", "kind": "interface", "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 97 }, "name": "VectorStoreConfiguration", "properties": [ { "abstract": true, "docs": { "default": "- Uses Bedrock's default bucket", "remarks": "Only used when type is 's3-vectors'. If not provided, the default\nbucket created by Bedrock will be used.", "stability": "experimental", "summary": "S3 bucket name for S3 Vectors storage." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 118 }, "name": "bucketName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'vectors/'", "remarks": "Only used when type is 's3-vectors'.", "stability": "experimental", "summary": "S3 prefix for vectors within the bucket." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 127 }, "name": "prefix", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "'s3-vectors'", "remarks": "- 's3-vectors': Amazon S3 vector storage (default, recommended)\n- 'opensearch-serverless': Amazon OpenSearch Serverless\n- 'pinecone': Pinecone vector database\n- 'rds': Amazon RDS with pgvector", "stability": "experimental", "summary": "Type of vector store." }, "immutable": true, "locationInModule": { "filename": "use-cases/framework/agents/knowledge-base/knowledge-base-props.ts", "line": 108 }, "name": "type", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "use-cases/framework/agents/knowledge-base/knowledge-base-props:VectorStoreConfiguration" } }, "usedFeatures": [ "class-covariant-overrides" ], "version": "1.17.0", "fingerprint": "dJKcHbVry8+s+/UPrWi0+4cgMow7Vw95qBx+5mqAB5k=" }