{ "author": { "name": "Amazon Web Services", "roles": [ "author" ] }, "bundled": { "@aws-amplify/ai-constructs": "^1.5.3", "@aws-amplify/backend-output-schemas": "^1.0.0", "@aws-amplify/backend-output-storage": "^1.0.0", "@aws-amplify/graphql-auth-transformer": "4.2.4", "@aws-amplify/graphql-conversation-transformer": "1.1.12", "@aws-amplify/graphql-default-value-transformer": "3.1.14", "@aws-amplify/graphql-directives": "2.7.1", "@aws-amplify/graphql-function-transformer": "3.1.16", "@aws-amplify/graphql-generation-transformer": "1.2.4", "@aws-amplify/graphql-http-transformer": "3.0.19", "@aws-amplify/graphql-index-transformer": "3.0.19", "@aws-amplify/graphql-maps-to-transformer": "4.0.19", "@aws-amplify/graphql-model-transformer": "3.3.1", "@aws-amplify/graphql-predictions-transformer": "3.0.19", "@aws-amplify/graphql-relational-transformer": "3.1.11", "@aws-amplify/graphql-searchable-transformer": "3.0.19", "@aws-amplify/graphql-sql-transformer": "0.4.19", "@aws-amplify/graphql-transformer": "2.3.4", "@aws-amplify/graphql-transformer-core": "3.4.4", "@aws-amplify/graphql-transformer-interfaces": "4.2.6", "@aws-amplify/graphql-validate-transformer": "1.1.4", "@aws-amplify/platform-core": "^1.0.0", "@aws-amplify/plugin-types": "^1.0.0", "@aws-crypto/crc32": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "^5.2.0", "@aws-crypto/supports-web-crypto": "^5.2.0", "@aws-crypto/util": "^5.2.0", "@aws-sdk/client-bedrock-runtime": "^3.622.0", "@aws-sdk/client-sso": "3.637.0", "@aws-sdk/client-sso-oidc": "3.637.0", "@aws-sdk/client-sts": "^3.624.0", "@aws-sdk/core": "3.635.0", "@aws-sdk/credential-provider-env": "3.620.1", "@aws-sdk/credential-provider-http": "3.635.0", "@aws-sdk/credential-provider-ini": "3.637.0", "@aws-sdk/credential-provider-node": "3.637.0", "@aws-sdk/credential-provider-process": "3.620.1", "@aws-sdk/credential-provider-sso": "3.637.0", "@aws-sdk/credential-provider-web-identity": "3.621.0", "@aws-sdk/middleware-host-header": "3.620.0", "@aws-sdk/middleware-logger": "3.609.0", "@aws-sdk/middleware-recursion-detection": "3.620.0", "@aws-sdk/middleware-user-agent": "3.637.0", "@aws-sdk/nested-clients": "^3.777.0", "@aws-sdk/region-config-resolver": "3.614.0", "@aws-sdk/token-providers": "3.614.0", "@aws-sdk/types": "^3.734.0", "@aws-sdk/util-endpoints": "3.734.0", "@aws-sdk/util-locate-window": "^3.0.0", "@aws-sdk/util-user-agent-browser": "3.609.0", "@aws-sdk/util-user-agent-node": "3.614.0", "@smithy/abort-controller": "^3.1.1", "@smithy/config-resolver": "^3.0.5", "@smithy/core": "^2.4.0", "@smithy/credential-provider-imds": "^3.2.0", "@smithy/eventstream-codec": "^3.1.2", "@smithy/eventstream-serde-browser": "^3.0.6", "@smithy/eventstream-serde-config-resolver": "^3.0.3", "@smithy/eventstream-serde-node": "^3.0.5", "@smithy/eventstream-serde-universal": "^3.0.5", "@smithy/fetch-http-handler": "^3.2.4", "@smithy/hash-node": "^3.0.3", "@smithy/invalid-dependency": "^3.0.3", "@smithy/is-array-buffer": "^3.0.0", "@smithy/middleware-content-length": "^3.0.5", "@smithy/middleware-endpoint": "^3.1.0", "@smithy/middleware-retry": "^3.0.15", "@smithy/middleware-serde": "^3.0.3", "@smithy/middleware-stack": "^3.0.3", "@smithy/node-config-provider": "^3.1.4", "@smithy/node-http-handler": "^3.1.4", "@smithy/property-provider": "^3.1.3", "@smithy/protocol-http": "^4.1.0", "@smithy/querystring-builder": "^3.0.3", "@smithy/querystring-parser": "^3.0.3", "@smithy/service-error-classification": "^3.0.3", "@smithy/shared-ini-file-loader": "^3.1.4", "@smithy/signature-v4": "^4.1.0", "@smithy/smithy-client": "^3.2.0", "@smithy/types": "^3.3.0", "@smithy/url-parser": "^3.0.3", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", "@smithy/util-buffer-from": "^3.0.0", "@smithy/util-config-provider": "^3.0.0", "@smithy/util-defaults-mode-browser": "^3.0.15", "@smithy/util-defaults-mode-node": "^3.0.15", "@smithy/util-endpoints": "^2.0.5", "@smithy/util-hex-encoding": "^3.0.0", "@smithy/util-middleware": "^3.0.3", "@smithy/util-retry": "^3.0.3", "@smithy/util-stream": "^3.1.3", "@smithy/util-uri-escape": "^3.0.0", "@smithy/util-utf8": "^3.0.0", "@types/uuid": "^9.0.8", "bowser": "^2.11.0", "charenc": "^0.0.2", "ci-info": "^3.2.0", "crypt": "^0.0.2", "fast-xml-parser": "4.4.1", "fs-extra": "^8.1.0", "graceful-fs": "^4.2.0", "graphql": "^15.5.0", "graphql-mapping-template": "5.0.2", "graphql-transformer-common": "5.1.3", "hjson": "^3.2.2", "immer": "^9.0.12", "is-buffer": "~1.1.6", "is-ci": "^3.0.1", "jsonfile": "^4.0.0", "libphonenumber-js": "1.9.47", "lodash": "^4.17.21", "lodash.mergewith": "^4.6.2", "lodash.snakecase": "^4.1.1", "md5": "^2.2.1", "object-hash": "^3.0.0", "pluralize": "8.0.0", "semver": "^7.6.3", "strnum": "^1.0.5", "ts-dedent": "^2.0.0", "tslib": "^2.6.2", "universalify": "^0.1.0", "uuid": "^9.0.1", "zod": "^3.22.2" }, "dependencies": { "aws-cdk-lib": "^2.187.0", "constructs": "^10.3.0" }, "dependencyClosure": { "@aws-cdk/asset-awscli-v1": { "targets": { "dotnet": { "namespace": "Amazon.CDK.Asset.AwsCliV1", "packageId": "Amazon.CDK.Asset.AwsCliV1" }, "go": { "moduleName": "github.com/cdklabs/awscdk-asset-awscli-go", "packageName": "awscliv1" }, "java": { "maven": { "artifactId": "cdk-asset-awscli-v1", "groupId": "software.amazon.awscdk" }, "package": "software.amazon.awscdk.cdk.asset.awscli.v1" }, "js": { "npm": "@aws-cdk/asset-awscli-v1" }, "python": { "distName": "aws-cdk.asset-awscli-v1", "module": "aws_cdk.asset_awscli_v1" } } }, "@aws-cdk/asset-node-proxy-agent-v6": { "targets": { "dotnet": { "namespace": "Amazon.CDK.Asset.NodeProxyAgentV6", "packageId": "Amazon.CDK.Asset.NodeProxyAgentV6" }, "go": { "moduleName": "github.com/cdklabs/awscdk-asset-node-proxy-agent-go", "packageName": "nodeproxyagentv6" }, "java": { "maven": { "artifactId": "cdk-asset-node-proxy-agent-v6", "groupId": "software.amazon.awscdk" }, "package": "software.amazon.awscdk.cdk.asset.node.proxy.agent.v6" }, "js": { "npm": "@aws-cdk/asset-node-proxy-agent-v6" }, "python": { "distName": "aws-cdk.asset-node-proxy-agent-v6", "module": "aws_cdk.asset_node_proxy_agent_v6" } } }, "@aws-cdk/cloud-assembly-schema": { "targets": { "dotnet": { "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png", "namespace": "Amazon.CDK.CloudAssembly.Schema", "packageId": "Amazon.CDK.CloudAssembly.Schema" }, "go": { "moduleName": "github.com/cdklabs/cloud-assembly-schema-go" }, "java": { "maven": { "artifactId": "cdk-cloud-assembly-schema", "groupId": "software.amazon.awscdk" }, "package": "software.amazon.awscdk.cloudassembly.schema" }, "js": { "npm": "@aws-cdk/cloud-assembly-schema" }, "python": { "classifiers": [ "Framework :: AWS CDK", "Framework :: AWS CDK :: 2" ], "distName": "aws-cdk.cloud-assembly-schema", "module": "aws_cdk.cloud_assembly_schema" } } }, "aws-cdk-lib": { "submodules": { "aws-cdk-lib.alexa_ask": { "targets": { "dotnet": { "namespace": "Amazon.CDK.Alexa.Ask" }, "java": { "package": "software.amazon.awscdk.alexa.ask" }, "python": { "module": "aws_cdk.alexa_ask" } } }, "aws-cdk-lib.assertions": { "targets": { "dotnet": { "namespace": "Amazon.CDK.Assertions" }, "java": { "package": "software.amazon.awscdk.assertions" }, "python": { "module": "aws_cdk.assertions" } } }, "aws-cdk-lib.assets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.Assets" }, "java": { "package": "software.amazon.awscdk.assets" }, "python": { "module": "aws_cdk.assets" } } }, "aws-cdk-lib.aws_accessanalyzer": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AccessAnalyzer" }, "java": { "package": "software.amazon.awscdk.services.accessanalyzer" }, "python": { "module": "aws_cdk.aws_accessanalyzer" } } }, "aws-cdk-lib.aws_acmpca": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ACMPCA" }, "java": { "package": "software.amazon.awscdk.services.acmpca" }, "python": { "module": "aws_cdk.aws_acmpca" } } }, "aws-cdk-lib.aws_amazonmq": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AmazonMQ" }, "java": { "package": "software.amazon.awscdk.services.amazonmq" }, "python": { "module": "aws_cdk.aws_amazonmq" } } }, "aws-cdk-lib.aws_amplify": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Amplify" }, "java": { "package": "software.amazon.awscdk.services.amplify" }, "python": { "module": "aws_cdk.aws_amplify" } } }, "aws-cdk-lib.aws_amplifyuibuilder": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AmplifyUIBuilder" }, "java": { "package": "software.amazon.awscdk.services.amplifyuibuilder" }, "python": { "module": "aws_cdk.aws_amplifyuibuilder" } } }, "aws-cdk-lib.aws_apigateway": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.APIGateway" }, "java": { "package": "software.amazon.awscdk.services.apigateway" }, "python": { "module": "aws_cdk.aws_apigateway" } } }, "aws-cdk-lib.aws_apigatewayv2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Apigatewayv2" }, "java": { "package": "software.amazon.awscdk.services.apigatewayv2" }, "python": { "module": "aws_cdk.aws_apigatewayv2" } } }, "aws-cdk-lib.aws_apigatewayv2_authorizers": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AwsApigatewayv2Authorizers" }, "java": { "package": "software.amazon.awscdk.aws_apigatewayv2_authorizers" }, "python": { "module": "aws_cdk.aws_apigatewayv2_authorizers" } } }, "aws-cdk-lib.aws_apigatewayv2_integrations": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AwsApigatewayv2Integrations" }, "java": { "package": "software.amazon.awscdk.aws_apigatewayv2_integrations" }, "python": { "module": "aws_cdk.aws_apigatewayv2_integrations" } } }, "aws-cdk-lib.aws_appconfig": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AppConfig" }, "java": { "package": "software.amazon.awscdk.services.appconfig" }, "python": { "module": "aws_cdk.aws_appconfig" } } }, "aws-cdk-lib.aws_appflow": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AppFlow" }, "java": { "package": "software.amazon.awscdk.services.appflow" }, "python": { "module": "aws_cdk.aws_appflow" } } }, "aws-cdk-lib.aws_appintegrations": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AppIntegrations" }, "java": { "package": "software.amazon.awscdk.services.appintegrations" }, "python": { "module": "aws_cdk.aws_appintegrations" } } }, "aws-cdk-lib.aws_applicationautoscaling": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ApplicationAutoScaling" }, "java": { "package": "software.amazon.awscdk.services.applicationautoscaling" }, "python": { "module": "aws_cdk.aws_applicationautoscaling" } } }, "aws-cdk-lib.aws_applicationinsights": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ApplicationInsights" }, "java": { "package": "software.amazon.awscdk.services.applicationinsights" }, "python": { "module": "aws_cdk.aws_applicationinsights" } } }, "aws-cdk-lib.aws_applicationsignals": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.ApplicationSignals" }, "java": { "package": "software.amazon.awscdk.services.applicationsignals" }, "python": { "module": "aws_cdk.aws_applicationsignals" } } }, "aws-cdk-lib.aws_appmesh": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AppMesh" }, "java": { "package": "software.amazon.awscdk.services.appmesh" }, "python": { "module": "aws_cdk.aws_appmesh" } } }, "aws-cdk-lib.aws_apprunner": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AppRunner" }, "java": { "package": "software.amazon.awscdk.services.apprunner" }, "python": { "module": "aws_cdk.aws_apprunner" } } }, "aws-cdk-lib.aws_appstream": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AppStream" }, "java": { "package": "software.amazon.awscdk.services.appstream" }, "python": { "module": "aws_cdk.aws_appstream" } } }, "aws-cdk-lib.aws_appsync": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AppSync" }, "java": { "package": "software.amazon.awscdk.services.appsync" }, "python": { "module": "aws_cdk.aws_appsync" } } }, "aws-cdk-lib.aws_apptest": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.AppTest" }, "java": { "package": "software.amazon.awscdk.services.apptest" }, "python": { "module": "aws_cdk.aws_apptest" } } }, "aws-cdk-lib.aws_aps": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.APS" }, "java": { "package": "software.amazon.awscdk.services.aps" }, "python": { "module": "aws_cdk.aws_aps" } } }, "aws-cdk-lib.aws_arczonalshift": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.ARCZonalShift" }, "java": { "package": "software.amazon.awscdk.services.arczonalshift" }, "python": { "module": "aws_cdk.aws_arczonalshift" } } }, "aws-cdk-lib.aws_athena": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Athena" }, "java": { "package": "software.amazon.awscdk.services.athena" }, "python": { "module": "aws_cdk.aws_athena" } } }, "aws-cdk-lib.aws_auditmanager": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AuditManager" }, "java": { "package": "software.amazon.awscdk.services.auditmanager" }, "python": { "module": "aws_cdk.aws_auditmanager" } } }, "aws-cdk-lib.aws_autoscaling": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AutoScaling" }, "java": { "package": "software.amazon.awscdk.services.autoscaling" }, "python": { "module": "aws_cdk.aws_autoscaling" } } }, "aws-cdk-lib.aws_autoscaling_common": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AutoScaling.Common" }, "java": { "package": "software.amazon.awscdk.services.autoscaling.common" }, "python": { "module": "aws_cdk.aws_autoscaling_common" } } }, "aws-cdk-lib.aws_autoscaling_hooktargets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AutoScaling.HookTargets" }, "java": { "package": "software.amazon.awscdk.services.autoscaling.hooktargets" }, "python": { "module": "aws_cdk.aws_autoscaling_hooktargets" } } }, "aws-cdk-lib.aws_autoscalingplans": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.AutoScalingPlans" }, "java": { "package": "software.amazon.awscdk.services.autoscalingplans" }, "python": { "module": "aws_cdk.aws_autoscalingplans" } } }, "aws-cdk-lib.aws_b2bi": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.B2BI" }, "java": { "package": "software.amazon.awscdk.services.b2bi" }, "python": { "module": "aws_cdk.aws_b2bi" } } }, "aws-cdk-lib.aws_backup": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Backup" }, "java": { "package": "software.amazon.awscdk.services.backup" }, "python": { "module": "aws_cdk.aws_backup" } } }, "aws-cdk-lib.aws_backupgateway": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.BackupGateway" }, "java": { "package": "software.amazon.awscdk.services.backupgateway" }, "python": { "module": "aws_cdk.aws_backupgateway" } } }, "aws-cdk-lib.aws_batch": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Batch" }, "java": { "package": "software.amazon.awscdk.services.batch" }, "python": { "module": "aws_cdk.aws_batch" } } }, "aws-cdk-lib.aws_bcmdataexports": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.BCMDataExports" }, "java": { "package": "software.amazon.awscdk.services.bcmdataexports" }, "python": { "module": "aws_cdk.aws_bcmdataexports" } } }, "aws-cdk-lib.aws_bedrock": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Bedrock" }, "java": { "package": "software.amazon.awscdk.services.bedrock" }, "python": { "module": "aws_cdk.aws_bedrock" } } }, "aws-cdk-lib.aws_billingconductor": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.BillingConductor" }, "java": { "package": "software.amazon.awscdk.services.billingconductor" }, "python": { "module": "aws_cdk.aws_billingconductor" } } }, "aws-cdk-lib.aws_budgets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Budgets" }, "java": { "package": "software.amazon.awscdk.services.budgets" }, "python": { "module": "aws_cdk.aws_budgets" } } }, "aws-cdk-lib.aws_cassandra": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Cassandra" }, "java": { "package": "software.amazon.awscdk.services.cassandra" }, "python": { "module": "aws_cdk.aws_cassandra" } } }, "aws-cdk-lib.aws_ce": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CE" }, "java": { "package": "software.amazon.awscdk.services.ce" }, "python": { "module": "aws_cdk.aws_ce" } } }, "aws-cdk-lib.aws_certificatemanager": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CertificateManager" }, "java": { "package": "software.amazon.awscdk.services.certificatemanager" }, "python": { "module": "aws_cdk.aws_certificatemanager" } } }, "aws-cdk-lib.aws_chatbot": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Chatbot" }, "java": { "package": "software.amazon.awscdk.services.chatbot" }, "python": { "module": "aws_cdk.aws_chatbot" } } }, "aws-cdk-lib.aws_cleanrooms": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.CleanRooms" }, "java": { "package": "software.amazon.awscdk.services.cleanrooms" }, "python": { "module": "aws_cdk.aws_cleanrooms" } } }, "aws-cdk-lib.aws_cleanroomsml": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.CleanRoomsML" }, "java": { "package": "software.amazon.awscdk.services.cleanroomsml" }, "python": { "module": "aws_cdk.aws_cleanroomsml" } } }, "aws-cdk-lib.aws_cloud9": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Cloud9" }, "java": { "package": "software.amazon.awscdk.services.cloud9" }, "python": { "module": "aws_cdk.aws_cloud9" } } }, "aws-cdk-lib.aws_cloudformation": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CloudFormation" }, "java": { "package": "software.amazon.awscdk.services.cloudformation" }, "python": { "module": "aws_cdk.aws_cloudformation" } } }, "aws-cdk-lib.aws_cloudfront": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CloudFront" }, "java": { "package": "software.amazon.awscdk.services.cloudfront" }, "python": { "module": "aws_cdk.aws_cloudfront" } } }, "aws-cdk-lib.aws_cloudfront.experimental": {}, "aws-cdk-lib.aws_cloudfront_origins": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CloudFront.Origins" }, "java": { "package": "software.amazon.awscdk.services.cloudfront.origins" }, "python": { "module": "aws_cdk.aws_cloudfront_origins" } } }, "aws-cdk-lib.aws_cloudtrail": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CloudTrail" }, "java": { "package": "software.amazon.awscdk.services.cloudtrail" }, "python": { "module": "aws_cdk.aws_cloudtrail" } } }, "aws-cdk-lib.aws_cloudwatch": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CloudWatch" }, "java": { "package": "software.amazon.awscdk.services.cloudwatch" }, "python": { "module": "aws_cdk.aws_cloudwatch" } } }, "aws-cdk-lib.aws_cloudwatch_actions": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CloudWatch.Actions" }, "java": { "package": "software.amazon.awscdk.services.cloudwatch.actions" }, "python": { "module": "aws_cdk.aws_cloudwatch_actions" } } }, "aws-cdk-lib.aws_codeartifact": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeArtifact" }, "java": { "package": "software.amazon.awscdk.services.codeartifact" }, "python": { "module": "aws_cdk.aws_codeartifact" } } }, "aws-cdk-lib.aws_codebuild": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeBuild" }, "java": { "package": "software.amazon.awscdk.services.codebuild" }, "python": { "module": "aws_cdk.aws_codebuild" } } }, "aws-cdk-lib.aws_codecommit": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeCommit" }, "java": { "package": "software.amazon.awscdk.services.codecommit" }, "python": { "module": "aws_cdk.aws_codecommit" } } }, "aws-cdk-lib.aws_codeconnections": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.CodeConnections" }, "java": { "package": "software.amazon.awscdk.services.codeconnections" }, "python": { "module": "aws_cdk.aws_codeconnections" } } }, "aws-cdk-lib.aws_codedeploy": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeDeploy" }, "java": { "package": "software.amazon.awscdk.services.codedeploy" }, "python": { "module": "aws_cdk.aws_codedeploy" } } }, "aws-cdk-lib.aws_codeguruprofiler": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeGuruProfiler" }, "java": { "package": "software.amazon.awscdk.services.codeguruprofiler" }, "python": { "module": "aws_cdk.aws_codeguruprofiler" } } }, "aws-cdk-lib.aws_codegurureviewer": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeGuruReviewer" }, "java": { "package": "software.amazon.awscdk.services.codegurureviewer" }, "python": { "module": "aws_cdk.aws_codegurureviewer" } } }, "aws-cdk-lib.aws_codepipeline": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodePipeline" }, "java": { "package": "software.amazon.awscdk.services.codepipeline" }, "python": { "module": "aws_cdk.aws_codepipeline" } } }, "aws-cdk-lib.aws_codepipeline_actions": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodePipeline.Actions" }, "java": { "package": "software.amazon.awscdk.services.codepipeline.actions" }, "python": { "module": "aws_cdk.aws_codepipeline_actions" } } }, "aws-cdk-lib.aws_codestar": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Codestar" }, "java": { "package": "software.amazon.awscdk.services.codestar" }, "python": { "module": "aws_cdk.aws_codestar" } } }, "aws-cdk-lib.aws_codestarconnections": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeStarConnections" }, "java": { "package": "software.amazon.awscdk.services.codestarconnections" }, "python": { "module": "aws_cdk.aws_codestarconnections" } } }, "aws-cdk-lib.aws_codestarnotifications": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CodeStarNotifications" }, "java": { "package": "software.amazon.awscdk.services.codestarnotifications" }, "python": { "module": "aws_cdk.aws_codestarnotifications" } } }, "aws-cdk-lib.aws_cognito": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Cognito" }, "java": { "package": "software.amazon.awscdk.services.cognito" }, "python": { "module": "aws_cdk.aws_cognito" } } }, "aws-cdk-lib.aws_cognito_identitypool": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Cognito.Identitypool" }, "java": { "package": "software.amazon.awscdk.services.cognito.identitypool" }, "python": { "module": "aws_cdk.aws_cognito_identitypool" } } }, "aws-cdk-lib.aws_comprehend": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Comprehend" }, "java": { "package": "software.amazon.awscdk.services.comprehend" }, "python": { "module": "aws_cdk.aws_comprehend" } } }, "aws-cdk-lib.aws_config": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Config" }, "java": { "package": "software.amazon.awscdk.services.config" }, "python": { "module": "aws_cdk.aws_config" } } }, "aws-cdk-lib.aws_connect": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Connect" }, "java": { "package": "software.amazon.awscdk.services.connect" }, "python": { "module": "aws_cdk.aws_connect" } } }, "aws-cdk-lib.aws_connectcampaigns": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ConnectCampaigns" }, "java": { "package": "software.amazon.awscdk.services.connectcampaigns" }, "python": { "module": "aws_cdk.aws_connectcampaigns" } } }, "aws-cdk-lib.aws_connectcampaignsv2": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.ConnectCampaignsV2" }, "java": { "package": "software.amazon.awscdk.services.connectcampaignsv2" }, "python": { "module": "aws_cdk.aws_connectcampaignsv2" } } }, "aws-cdk-lib.aws_controltower": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ControlTower" }, "java": { "package": "software.amazon.awscdk.services.controltower" }, "python": { "module": "aws_cdk.aws_controltower" } } }, "aws-cdk-lib.aws_cur": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CUR" }, "java": { "package": "software.amazon.awscdk.services.cur" }, "python": { "module": "aws_cdk.aws_cur" } } }, "aws-cdk-lib.aws_customerprofiles": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.CustomerProfiles" }, "java": { "package": "software.amazon.awscdk.services.customerprofiles" }, "python": { "module": "aws_cdk.aws_customerprofiles" } } }, "aws-cdk-lib.aws_databrew": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DataBrew" }, "java": { "package": "software.amazon.awscdk.services.databrew" }, "python": { "module": "aws_cdk.aws_databrew" } } }, "aws-cdk-lib.aws_datapipeline": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DataPipeline" }, "java": { "package": "software.amazon.awscdk.services.datapipeline" }, "python": { "module": "aws_cdk.aws_datapipeline" } } }, "aws-cdk-lib.aws_datasync": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DataSync" }, "java": { "package": "software.amazon.awscdk.services.datasync" }, "python": { "module": "aws_cdk.aws_datasync" } } }, "aws-cdk-lib.aws_datazone": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.DataZone" }, "java": { "package": "software.amazon.awscdk.services.datazone" }, "python": { "module": "aws_cdk.aws_datazone" } } }, "aws-cdk-lib.aws_dax": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DAX" }, "java": { "package": "software.amazon.awscdk.services.dax" }, "python": { "module": "aws_cdk.aws_dax" } } }, "aws-cdk-lib.aws_deadline": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Deadline" }, "java": { "package": "software.amazon.awscdk.services.deadline" }, "python": { "module": "aws_cdk.aws_deadline" } } }, "aws-cdk-lib.aws_detective": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Detective" }, "java": { "package": "software.amazon.awscdk.services.detective" }, "python": { "module": "aws_cdk.aws_detective" } } }, "aws-cdk-lib.aws_devicefarm": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DeviceFarm" }, "java": { "package": "software.amazon.awscdk.services.devicefarm" }, "python": { "module": "aws_cdk.aws_devicefarm" } } }, "aws-cdk-lib.aws_devopsguru": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DevOpsGuru" }, "java": { "package": "software.amazon.awscdk.services.devopsguru" }, "python": { "module": "aws_cdk.aws_devopsguru" } } }, "aws-cdk-lib.aws_directoryservice": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DirectoryService" }, "java": { "package": "software.amazon.awscdk.services.directoryservice" }, "python": { "module": "aws_cdk.aws_directoryservice" } } }, "aws-cdk-lib.aws_dlm": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DLM" }, "java": { "package": "software.amazon.awscdk.services.dlm" }, "python": { "module": "aws_cdk.aws_dlm" } } }, "aws-cdk-lib.aws_dms": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DMS" }, "java": { "package": "software.amazon.awscdk.services.dms" }, "python": { "module": "aws_cdk.aws_dms" } } }, "aws-cdk-lib.aws_docdb": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DocDB" }, "java": { "package": "software.amazon.awscdk.services.docdb" }, "python": { "module": "aws_cdk.aws_docdb" } } }, "aws-cdk-lib.aws_docdbelastic": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DocDBElastic" }, "java": { "package": "software.amazon.awscdk.services.docdbelastic" }, "python": { "module": "aws_cdk.aws_docdbelastic" } } }, "aws-cdk-lib.aws_dsql": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.DSQL" }, "java": { "package": "software.amazon.awscdk.services.dsql" }, "python": { "module": "aws_cdk.aws_dsql" } } }, "aws-cdk-lib.aws_dynamodb": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.DynamoDB" }, "java": { "package": "software.amazon.awscdk.services.dynamodb" }, "python": { "module": "aws_cdk.aws_dynamodb" } } }, "aws-cdk-lib.aws_ec2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.EC2" }, "java": { "package": "software.amazon.awscdk.services.ec2" }, "python": { "module": "aws_cdk.aws_ec2" } } }, "aws-cdk-lib.aws_ecr": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ECR" }, "java": { "package": "software.amazon.awscdk.services.ecr" }, "python": { "module": "aws_cdk.aws_ecr" } } }, "aws-cdk-lib.aws_ecr_assets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Ecr.Assets" }, "java": { "package": "software.amazon.awscdk.services.ecr.assets" }, "python": { "module": "aws_cdk.aws_ecr_assets" } } }, "aws-cdk-lib.aws_ecs": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ECS" }, "java": { "package": "software.amazon.awscdk.services.ecs" }, "python": { "module": "aws_cdk.aws_ecs" } } }, "aws-cdk-lib.aws_ecs_patterns": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ECS.Patterns" }, "java": { "package": "software.amazon.awscdk.services.ecs.patterns" }, "python": { "module": "aws_cdk.aws_ecs_patterns" } } }, "aws-cdk-lib.aws_efs": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.EFS" }, "java": { "package": "software.amazon.awscdk.services.efs" }, "python": { "module": "aws_cdk.aws_efs" } } }, "aws-cdk-lib.aws_eks": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.EKS" }, "java": { "package": "software.amazon.awscdk.services.eks" }, "python": { "module": "aws_cdk.aws_eks" } } }, "aws-cdk-lib.aws_elasticache": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ElastiCache" }, "java": { "package": "software.amazon.awscdk.services.elasticache" }, "python": { "module": "aws_cdk.aws_elasticache" } } }, "aws-cdk-lib.aws_elasticbeanstalk": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ElasticBeanstalk" }, "java": { "package": "software.amazon.awscdk.services.elasticbeanstalk" }, "python": { "module": "aws_cdk.aws_elasticbeanstalk" } } }, "aws-cdk-lib.aws_elasticloadbalancing": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ElasticLoadBalancing" }, "java": { "package": "software.amazon.awscdk.services.elasticloadbalancing" }, "python": { "module": "aws_cdk.aws_elasticloadbalancing" } } }, "aws-cdk-lib.aws_elasticloadbalancingv2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2" }, "java": { "package": "software.amazon.awscdk.services.elasticloadbalancingv2" }, "python": { "module": "aws_cdk.aws_elasticloadbalancingv2" } } }, "aws-cdk-lib.aws_elasticloadbalancingv2_actions": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Actions" }, "java": { "package": "software.amazon.awscdk.services.elasticloadbalancingv2.actions" }, "python": { "module": "aws_cdk.aws_elasticloadbalancingv2_actions" } } }, "aws-cdk-lib.aws_elasticloadbalancingv2_targets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Targets" }, "java": { "package": "software.amazon.awscdk.services.elasticloadbalancingv2.targets" }, "python": { "module": "aws_cdk.aws_elasticloadbalancingv2_targets" } } }, "aws-cdk-lib.aws_elasticsearch": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Elasticsearch" }, "java": { "package": "software.amazon.awscdk.services.elasticsearch" }, "python": { "module": "aws_cdk.aws_elasticsearch" } } }, "aws-cdk-lib.aws_emr": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.EMR" }, "java": { "package": "software.amazon.awscdk.services.emr" }, "python": { "module": "aws_cdk.aws_emr" } } }, "aws-cdk-lib.aws_emrcontainers": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.EMRContainers" }, "java": { "package": "software.amazon.awscdk.services.emrcontainers" }, "python": { "module": "aws_cdk.aws_emrcontainers" } } }, "aws-cdk-lib.aws_emrserverless": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.EMRServerless" }, "java": { "package": "software.amazon.awscdk.services.emrserverless" }, "python": { "module": "aws_cdk.aws_emrserverless" } } }, "aws-cdk-lib.aws_entityresolution": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.EntityResolution" }, "java": { "package": "software.amazon.awscdk.services.entityresolution" }, "python": { "module": "aws_cdk.aws_entityresolution" } } }, "aws-cdk-lib.aws_events": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Events" }, "java": { "package": "software.amazon.awscdk.services.events" }, "python": { "module": "aws_cdk.aws_events" } } }, "aws-cdk-lib.aws_events_targets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Events.Targets" }, "java": { "package": "software.amazon.awscdk.services.events.targets" }, "python": { "module": "aws_cdk.aws_events_targets" } } }, "aws-cdk-lib.aws_eventschemas": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.EventSchemas" }, "java": { "package": "software.amazon.awscdk.services.eventschemas" }, "python": { "module": "aws_cdk.aws_eventschemas" } } }, "aws-cdk-lib.aws_evidently": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Evidently" }, "java": { "package": "software.amazon.awscdk.services.evidently" }, "python": { "module": "aws_cdk.aws_evidently" } } }, "aws-cdk-lib.aws_finspace": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.FinSpace" }, "java": { "package": "software.amazon.awscdk.services.finspace" }, "python": { "module": "aws_cdk.aws_finspace" } } }, "aws-cdk-lib.aws_fis": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.FIS" }, "java": { "package": "software.amazon.awscdk.services.fis" }, "python": { "module": "aws_cdk.aws_fis" } } }, "aws-cdk-lib.aws_fms": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.FMS" }, "java": { "package": "software.amazon.awscdk.services.fms" }, "python": { "module": "aws_cdk.aws_fms" } } }, "aws-cdk-lib.aws_forecast": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Forecast" }, "java": { "package": "software.amazon.awscdk.services.forecast" }, "python": { "module": "aws_cdk.aws_forecast" } } }, "aws-cdk-lib.aws_frauddetector": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.FraudDetector" }, "java": { "package": "software.amazon.awscdk.services.frauddetector" }, "python": { "module": "aws_cdk.aws_frauddetector" } } }, "aws-cdk-lib.aws_fsx": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.FSx" }, "java": { "package": "software.amazon.awscdk.services.fsx" }, "python": { "module": "aws_cdk.aws_fsx" } } }, "aws-cdk-lib.aws_gamelift": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.GameLift" }, "java": { "package": "software.amazon.awscdk.services.gamelift" }, "python": { "module": "aws_cdk.aws_gamelift" } } }, "aws-cdk-lib.aws_gameliftstreams": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.GameLiftStreams" }, "java": { "package": "software.amazon.awscdk.services.gameliftstreams" }, "python": { "module": "aws_cdk.aws_gameliftstreams" } } }, "aws-cdk-lib.aws_globalaccelerator": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.GlobalAccelerator" }, "java": { "package": "software.amazon.awscdk.services.globalaccelerator" }, "python": { "module": "aws_cdk.aws_globalaccelerator" } } }, "aws-cdk-lib.aws_globalaccelerator_endpoints": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.GlobalAccelerator.Endpoints" }, "java": { "package": "software.amazon.awscdk.services.globalaccelerator.endpoints" }, "python": { "module": "aws_cdk.aws_globalaccelerator_endpoints" } } }, "aws-cdk-lib.aws_glue": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Glue" }, "java": { "package": "software.amazon.awscdk.services.glue" }, "python": { "module": "aws_cdk.aws_glue" } } }, "aws-cdk-lib.aws_grafana": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Grafana" }, "java": { "package": "software.amazon.awscdk.services.grafana" }, "python": { "module": "aws_cdk.aws_grafana" } } }, "aws-cdk-lib.aws_greengrass": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Greengrass" }, "java": { "package": "software.amazon.awscdk.services.greengrass" }, "python": { "module": "aws_cdk.aws_greengrass" } } }, "aws-cdk-lib.aws_greengrassv2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.GreengrassV2" }, "java": { "package": "software.amazon.awscdk.services.greengrassv2" }, "python": { "module": "aws_cdk.aws_greengrassv2" } } }, "aws-cdk-lib.aws_groundstation": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.GroundStation" }, "java": { "package": "software.amazon.awscdk.services.groundstation" }, "python": { "module": "aws_cdk.aws_groundstation" } } }, "aws-cdk-lib.aws_guardduty": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.GuardDuty" }, "java": { "package": "software.amazon.awscdk.services.guardduty" }, "python": { "module": "aws_cdk.aws_guardduty" } } }, "aws-cdk-lib.aws_healthimaging": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.HealthImaging" }, "java": { "package": "software.amazon.awscdk.services.healthimaging" }, "python": { "module": "aws_cdk.aws_healthimaging" } } }, "aws-cdk-lib.aws_healthlake": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.HealthLake" }, "java": { "package": "software.amazon.awscdk.services.healthlake" }, "python": { "module": "aws_cdk.aws_healthlake" } } }, "aws-cdk-lib.aws_iam": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IAM" }, "java": { "package": "software.amazon.awscdk.services.iam" }, "python": { "module": "aws_cdk.aws_iam" } } }, "aws-cdk-lib.aws_identitystore": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IdentityStore" }, "java": { "package": "software.amazon.awscdk.services.identitystore" }, "python": { "module": "aws_cdk.aws_identitystore" } } }, "aws-cdk-lib.aws_imagebuilder": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ImageBuilder" }, "java": { "package": "software.amazon.awscdk.services.imagebuilder" }, "python": { "module": "aws_cdk.aws_imagebuilder" } } }, "aws-cdk-lib.aws_inspector": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Inspector" }, "java": { "package": "software.amazon.awscdk.services.inspector" }, "python": { "module": "aws_cdk.aws_inspector" } } }, "aws-cdk-lib.aws_inspectorv2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.InspectorV2" }, "java": { "package": "software.amazon.awscdk.services.inspectorv2" }, "python": { "module": "aws_cdk.aws_inspectorv2" } } }, "aws-cdk-lib.aws_internetmonitor": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.InternetMonitor" }, "java": { "package": "software.amazon.awscdk.services.internetmonitor" }, "python": { "module": "aws_cdk.aws_internetmonitor" } } }, "aws-cdk-lib.aws_invoicing": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Invoicing" }, "java": { "package": "software.amazon.awscdk.services.invoicing" }, "python": { "module": "aws_cdk.aws_invoicing" } } }, "aws-cdk-lib.aws_iot": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoT" }, "java": { "package": "software.amazon.awscdk.services.iot" }, "python": { "module": "aws_cdk.aws_iot" } } }, "aws-cdk-lib.aws_iotanalytics": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTAnalytics" }, "java": { "package": "software.amazon.awscdk.services.iotanalytics" }, "python": { "module": "aws_cdk.aws_iotanalytics" } } }, "aws-cdk-lib.aws_iotcoredeviceadvisor": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTCoreDeviceAdvisor" }, "java": { "package": "software.amazon.awscdk.services.iotcoredeviceadvisor" }, "python": { "module": "aws_cdk.aws_iotcoredeviceadvisor" } } }, "aws-cdk-lib.aws_iotevents": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTEvents" }, "java": { "package": "software.amazon.awscdk.services.iotevents" }, "python": { "module": "aws_cdk.aws_iotevents" } } }, "aws-cdk-lib.aws_iotfleethub": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTFleetHub" }, "java": { "package": "software.amazon.awscdk.services.iotfleethub" }, "python": { "module": "aws_cdk.aws_iotfleethub" } } }, "aws-cdk-lib.aws_iotfleetwise": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTFleetWise" }, "java": { "package": "software.amazon.awscdk.services.iotfleetwise" }, "python": { "module": "aws_cdk.aws_iotfleetwise" } } }, "aws-cdk-lib.aws_iotsitewise": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTSiteWise" }, "java": { "package": "software.amazon.awscdk.services.iotsitewise" }, "python": { "module": "aws_cdk.aws_iotsitewise" } } }, "aws-cdk-lib.aws_iotthingsgraph": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTThingsGraph" }, "java": { "package": "software.amazon.awscdk.services.iotthingsgraph" }, "python": { "module": "aws_cdk.aws_iotthingsgraph" } } }, "aws-cdk-lib.aws_iottwinmaker": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTTwinMaker" }, "java": { "package": "software.amazon.awscdk.services.iottwinmaker" }, "python": { "module": "aws_cdk.aws_iottwinmaker" } } }, "aws-cdk-lib.aws_iotwireless": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IoTWireless" }, "java": { "package": "software.amazon.awscdk.services.iotwireless" }, "python": { "module": "aws_cdk.aws_iotwireless" } } }, "aws-cdk-lib.aws_ivs": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Ivs" }, "java": { "package": "software.amazon.awscdk.services.ivs" }, "python": { "module": "aws_cdk.aws_ivs" } } }, "aws-cdk-lib.aws_ivschat": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.IVSChat" }, "java": { "package": "software.amazon.awscdk.services.ivschat" }, "python": { "module": "aws_cdk.aws_ivschat" } } }, "aws-cdk-lib.aws_kafkaconnect": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.KafkaConnect" }, "java": { "package": "software.amazon.awscdk.services.kafkaconnect" }, "python": { "module": "aws_cdk.aws_kafkaconnect" } } }, "aws-cdk-lib.aws_kendra": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Kendra" }, "java": { "package": "software.amazon.awscdk.services.kendra" }, "python": { "module": "aws_cdk.aws_kendra" } } }, "aws-cdk-lib.aws_kendraranking": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.KendraRanking" }, "java": { "package": "software.amazon.awscdk.services.kendraranking" }, "python": { "module": "aws_cdk.aws_kendraranking" } } }, "aws-cdk-lib.aws_kinesis": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Kinesis" }, "java": { "package": "software.amazon.awscdk.services.kinesis" }, "python": { "module": "aws_cdk.aws_kinesis" } } }, "aws-cdk-lib.aws_kinesisanalytics": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.KinesisAnalytics" }, "java": { "package": "software.amazon.awscdk.services.kinesisanalytics" }, "python": { "module": "aws_cdk.aws_kinesisanalytics" } } }, "aws-cdk-lib.aws_kinesisanalyticsv2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.KinesisAnalyticsV2" }, "java": { "package": "software.amazon.awscdk.services.kinesisanalyticsv2" }, "python": { "module": "aws_cdk.aws_kinesisanalyticsv2" } } }, "aws-cdk-lib.aws_kinesisfirehose": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.KinesisFirehose" }, "java": { "package": "software.amazon.awscdk.services.kinesisfirehose" }, "python": { "module": "aws_cdk.aws_kinesisfirehose" } } }, "aws-cdk-lib.aws_kinesisvideo": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.KinesisVideo" }, "java": { "package": "software.amazon.awscdk.services.kinesisvideo" }, "python": { "module": "aws_cdk.aws_kinesisvideo" } } }, "aws-cdk-lib.aws_kms": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.KMS" }, "java": { "package": "software.amazon.awscdk.services.kms" }, "python": { "module": "aws_cdk.aws_kms" } } }, "aws-cdk-lib.aws_lakeformation": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.LakeFormation" }, "java": { "package": "software.amazon.awscdk.services.lakeformation" }, "python": { "module": "aws_cdk.aws_lakeformation" } } }, "aws-cdk-lib.aws_lambda": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Lambda" }, "java": { "package": "software.amazon.awscdk.services.lambda" }, "python": { "module": "aws_cdk.aws_lambda" } } }, "aws-cdk-lib.aws_lambda_destinations": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Lambda.Destinations" }, "java": { "package": "software.amazon.awscdk.services.lambda.destinations" }, "python": { "module": "aws_cdk.aws_lambda_destinations" } } }, "aws-cdk-lib.aws_lambda_event_sources": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Lambda.EventSources" }, "java": { "package": "software.amazon.awscdk.services.lambda.eventsources" }, "python": { "module": "aws_cdk.aws_lambda_event_sources" } } }, "aws-cdk-lib.aws_lambda_nodejs": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Lambda.Nodejs" }, "java": { "package": "software.amazon.awscdk.services.lambda.nodejs" }, "python": { "module": "aws_cdk.aws_lambda_nodejs" } } }, "aws-cdk-lib.aws_launchwizard": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.LaunchWizard" }, "java": { "package": "software.amazon.awscdk.services.launchwizard" }, "python": { "module": "aws_cdk.aws_launchwizard" } } }, "aws-cdk-lib.aws_lex": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Lex" }, "java": { "package": "software.amazon.awscdk.services.lex" }, "python": { "module": "aws_cdk.aws_lex" } } }, "aws-cdk-lib.aws_licensemanager": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.LicenseManager" }, "java": { "package": "software.amazon.awscdk.services.licensemanager" }, "python": { "module": "aws_cdk.aws_licensemanager" } } }, "aws-cdk-lib.aws_lightsail": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Lightsail" }, "java": { "package": "software.amazon.awscdk.services.lightsail" }, "python": { "module": "aws_cdk.aws_lightsail" } } }, "aws-cdk-lib.aws_location": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Location" }, "java": { "package": "software.amazon.awscdk.services.location" }, "python": { "module": "aws_cdk.aws_location" } } }, "aws-cdk-lib.aws_logs": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Logs" }, "java": { "package": "software.amazon.awscdk.services.logs" }, "python": { "module": "aws_cdk.aws_logs" } } }, "aws-cdk-lib.aws_logs_destinations": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Logs.Destinations" }, "java": { "package": "software.amazon.awscdk.services.logs.destinations" }, "python": { "module": "aws_cdk.aws_logs_destinations" } } }, "aws-cdk-lib.aws_lookoutequipment": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.LookoutEquipment" }, "java": { "package": "software.amazon.awscdk.services.lookoutequipment" }, "python": { "module": "aws_cdk.aws_lookoutequipment" } } }, "aws-cdk-lib.aws_lookoutmetrics": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.LookoutMetrics" }, "java": { "package": "software.amazon.awscdk.services.lookoutmetrics" }, "python": { "module": "aws_cdk.aws_lookoutmetrics" } } }, "aws-cdk-lib.aws_lookoutvision": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.LookoutVision" }, "java": { "package": "software.amazon.awscdk.services.lookoutvision" }, "python": { "module": "aws_cdk.aws_lookoutvision" } } }, "aws-cdk-lib.aws_m2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.M2" }, "java": { "package": "software.amazon.awscdk.services.m2" }, "python": { "module": "aws_cdk.aws_m2" } } }, "aws-cdk-lib.aws_macie": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Macie" }, "java": { "package": "software.amazon.awscdk.services.macie" }, "python": { "module": "aws_cdk.aws_macie" } } }, "aws-cdk-lib.aws_managedblockchain": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ManagedBlockchain" }, "java": { "package": "software.amazon.awscdk.services.managedblockchain" }, "python": { "module": "aws_cdk.aws_managedblockchain" } } }, "aws-cdk-lib.aws_mediaconnect": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MediaConnect" }, "java": { "package": "software.amazon.awscdk.services.mediaconnect" }, "python": { "module": "aws_cdk.aws_mediaconnect" } } }, "aws-cdk-lib.aws_mediaconvert": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MediaConvert" }, "java": { "package": "software.amazon.awscdk.services.mediaconvert" }, "python": { "module": "aws_cdk.aws_mediaconvert" } } }, "aws-cdk-lib.aws_medialive": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MediaLive" }, "java": { "package": "software.amazon.awscdk.services.medialive" }, "python": { "module": "aws_cdk.aws_medialive" } } }, "aws-cdk-lib.aws_mediapackage": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MediaPackage" }, "java": { "package": "software.amazon.awscdk.services.mediapackage" }, "python": { "module": "aws_cdk.aws_mediapackage" } } }, "aws-cdk-lib.aws_mediapackagev2": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.MediaPackageV2" }, "java": { "package": "software.amazon.awscdk.services.mediapackagev2" }, "python": { "module": "aws_cdk.aws_mediapackagev2" } } }, "aws-cdk-lib.aws_mediastore": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MediaStore" }, "java": { "package": "software.amazon.awscdk.services.mediastore" }, "python": { "module": "aws_cdk.aws_mediastore" } } }, "aws-cdk-lib.aws_mediatailor": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MediaTailor" }, "java": { "package": "software.amazon.awscdk.services.mediatailor" }, "python": { "module": "aws_cdk.aws_mediatailor" } } }, "aws-cdk-lib.aws_memorydb": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MemoryDB" }, "java": { "package": "software.amazon.awscdk.services.memorydb" }, "python": { "module": "aws_cdk.aws_memorydb" } } }, "aws-cdk-lib.aws_msk": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MSK" }, "java": { "package": "software.amazon.awscdk.services.msk" }, "python": { "module": "aws_cdk.aws_msk" } } }, "aws-cdk-lib.aws_mwaa": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.MWAA" }, "java": { "package": "software.amazon.awscdk.services.mwaa" }, "python": { "module": "aws_cdk.aws_mwaa" } } }, "aws-cdk-lib.aws_neptune": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Neptune" }, "java": { "package": "software.amazon.awscdk.services.neptune" }, "python": { "module": "aws_cdk.aws_neptune" } } }, "aws-cdk-lib.aws_neptunegraph": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.NeptuneGraph" }, "java": { "package": "software.amazon.awscdk.services.neptunegraph" }, "python": { "module": "aws_cdk.aws_neptunegraph" } } }, "aws-cdk-lib.aws_networkfirewall": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.NetworkFirewall" }, "java": { "package": "software.amazon.awscdk.services.networkfirewall" }, "python": { "module": "aws_cdk.aws_networkfirewall" } } }, "aws-cdk-lib.aws_networkmanager": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.NetworkManager" }, "java": { "package": "software.amazon.awscdk.services.networkmanager" }, "python": { "module": "aws_cdk.aws_networkmanager" } } }, "aws-cdk-lib.aws_nimblestudio": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.NimbleStudio" }, "java": { "package": "software.amazon.awscdk.services.nimblestudio" }, "python": { "module": "aws_cdk.aws_nimblestudio" } } }, "aws-cdk-lib.aws_notifications": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Notifications" }, "java": { "package": "software.amazon.awscdk.services.notifications" }, "python": { "module": "aws_cdk.aws_notifications" } } }, "aws-cdk-lib.aws_notificationscontacts": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.NotificationsContacts" }, "java": { "package": "software.amazon.awscdk.services.notificationscontacts" }, "python": { "module": "aws_cdk.aws_notificationscontacts" } } }, "aws-cdk-lib.aws_oam": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Oam" }, "java": { "package": "software.amazon.awscdk.services.oam" }, "python": { "module": "aws_cdk.aws_oam" } } }, "aws-cdk-lib.aws_omics": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Omics" }, "java": { "package": "software.amazon.awscdk.services.omics" }, "python": { "module": "aws_cdk.aws_omics" } } }, "aws-cdk-lib.aws_opensearchserverless": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.OpenSearchServerless" }, "java": { "package": "software.amazon.awscdk.services.opensearchserverless" }, "python": { "module": "aws_cdk.aws_opensearchserverless" } } }, "aws-cdk-lib.aws_opensearchservice": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.OpenSearchService" }, "java": { "package": "software.amazon.awscdk.services.opensearchservice" }, "python": { "module": "aws_cdk.aws_opensearchservice" } } }, "aws-cdk-lib.aws_opsworks": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.OpsWorks" }, "java": { "package": "software.amazon.awscdk.services.opsworks" }, "python": { "module": "aws_cdk.aws_opsworks" } } }, "aws-cdk-lib.aws_opsworkscm": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.OpsWorksCM" }, "java": { "package": "software.amazon.awscdk.services.opsworkscm" }, "python": { "module": "aws_cdk.aws_opsworkscm" } } }, "aws-cdk-lib.aws_organizations": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Organizations" }, "java": { "package": "software.amazon.awscdk.services.organizations" }, "python": { "module": "aws_cdk.aws_organizations" } } }, "aws-cdk-lib.aws_osis": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.OSIS" }, "java": { "package": "software.amazon.awscdk.services.osis" }, "python": { "module": "aws_cdk.aws_osis" } } }, "aws-cdk-lib.aws_panorama": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Panorama" }, "java": { "package": "software.amazon.awscdk.services.panorama" }, "python": { "module": "aws_cdk.aws_panorama" } } }, "aws-cdk-lib.aws_paymentcryptography": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.PaymentCryptography" }, "java": { "package": "software.amazon.awscdk.services.paymentcryptography" }, "python": { "module": "aws_cdk.aws_paymentcryptography" } } }, "aws-cdk-lib.aws_pcaconnectorad": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.PCAConnectorAD" }, "java": { "package": "software.amazon.awscdk.services.pcaconnectorad" }, "python": { "module": "aws_cdk.aws_pcaconnectorad" } } }, "aws-cdk-lib.aws_pcaconnectorscep": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.PCAConnectorSCEP" }, "java": { "package": "software.amazon.awscdk.services.pcaconnectorscep" }, "python": { "module": "aws_cdk.aws_pcaconnectorscep" } } }, "aws-cdk-lib.aws_pcs": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.PCS" }, "java": { "package": "software.amazon.awscdk.services.pcs" }, "python": { "module": "aws_cdk.aws_pcs" } } }, "aws-cdk-lib.aws_personalize": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Personalize" }, "java": { "package": "software.amazon.awscdk.services.personalize" }, "python": { "module": "aws_cdk.aws_personalize" } } }, "aws-cdk-lib.aws_pinpoint": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Pinpoint" }, "java": { "package": "software.amazon.awscdk.services.pinpoint" }, "python": { "module": "aws_cdk.aws_pinpoint" } } }, "aws-cdk-lib.aws_pinpointemail": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.PinpointEmail" }, "java": { "package": "software.amazon.awscdk.services.pinpointemail" }, "python": { "module": "aws_cdk.aws_pinpointemail" } } }, "aws-cdk-lib.aws_pipes": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Pipes" }, "java": { "package": "software.amazon.awscdk.services.pipes" }, "python": { "module": "aws_cdk.aws_pipes" } } }, "aws-cdk-lib.aws_proton": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Proton" }, "java": { "package": "software.amazon.awscdk.services.proton" }, "python": { "module": "aws_cdk.aws_proton" } } }, "aws-cdk-lib.aws_qbusiness": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.QBusiness" }, "java": { "package": "software.amazon.awscdk.services.qbusiness" }, "python": { "module": "aws_cdk.aws_qbusiness" } } }, "aws-cdk-lib.aws_qldb": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.QLDB" }, "java": { "package": "software.amazon.awscdk.services.qldb" }, "python": { "module": "aws_cdk.aws_qldb" } } }, "aws-cdk-lib.aws_quicksight": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.QuickSight" }, "java": { "package": "software.amazon.awscdk.services.quicksight" }, "python": { "module": "aws_cdk.aws_quicksight" } } }, "aws-cdk-lib.aws_ram": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.RAM" }, "java": { "package": "software.amazon.awscdk.services.ram" }, "python": { "module": "aws_cdk.aws_ram" } } }, "aws-cdk-lib.aws_rbin": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Rbin" }, "java": { "package": "software.amazon.awscdk.services.rbin" }, "python": { "module": "aws_cdk.aws_rbin" } } }, "aws-cdk-lib.aws_rds": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.RDS" }, "java": { "package": "software.amazon.awscdk.services.rds" }, "python": { "module": "aws_cdk.aws_rds" } } }, "aws-cdk-lib.aws_redshift": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Redshift" }, "java": { "package": "software.amazon.awscdk.services.redshift" }, "python": { "module": "aws_cdk.aws_redshift" } } }, "aws-cdk-lib.aws_redshiftserverless": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.RedshiftServerless" }, "java": { "package": "software.amazon.awscdk.services.redshiftserverless" }, "python": { "module": "aws_cdk.aws_redshiftserverless" } } }, "aws-cdk-lib.aws_refactorspaces": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.RefactorSpaces" }, "java": { "package": "software.amazon.awscdk.services.refactorspaces" }, "python": { "module": "aws_cdk.aws_refactorspaces" } } }, "aws-cdk-lib.aws_rekognition": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Rekognition" }, "java": { "package": "software.amazon.awscdk.services.rekognition" }, "python": { "module": "aws_cdk.aws_rekognition" } } }, "aws-cdk-lib.aws_resiliencehub": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ResilienceHub" }, "java": { "package": "software.amazon.awscdk.services.resiliencehub" }, "python": { "module": "aws_cdk.aws_resiliencehub" } } }, "aws-cdk-lib.aws_resourceexplorer2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ResourceExplorer2" }, "java": { "package": "software.amazon.awscdk.services.resourceexplorer2" }, "python": { "module": "aws_cdk.aws_resourceexplorer2" } } }, "aws-cdk-lib.aws_resourcegroups": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ResourceGroups" }, "java": { "package": "software.amazon.awscdk.services.resourcegroups" }, "python": { "module": "aws_cdk.aws_resourcegroups" } } }, "aws-cdk-lib.aws_robomaker": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.RoboMaker" }, "java": { "package": "software.amazon.awscdk.services.robomaker" }, "python": { "module": "aws_cdk.aws_robomaker" } } }, "aws-cdk-lib.aws_rolesanywhere": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.RolesAnywhere" }, "java": { "package": "software.amazon.awscdk.services.rolesanywhere" }, "python": { "module": "aws_cdk.aws_rolesanywhere" } } }, "aws-cdk-lib.aws_route53": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Route53" }, "java": { "package": "software.amazon.awscdk.services.route53" }, "python": { "module": "aws_cdk.aws_route53" } } }, "aws-cdk-lib.aws_route53_patterns": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Route53.Patterns" }, "java": { "package": "software.amazon.awscdk.services.route53.patterns" }, "python": { "module": "aws_cdk.aws_route53_patterns" } } }, "aws-cdk-lib.aws_route53_targets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Route53.Targets" }, "java": { "package": "software.amazon.awscdk.services.route53.targets" }, "python": { "module": "aws_cdk.aws_route53_targets" } } }, "aws-cdk-lib.aws_route53profiles": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Route53Profiles" }, "java": { "package": "software.amazon.awscdk.services.route53profiles" }, "python": { "module": "aws_cdk.aws_route53profiles" } } }, "aws-cdk-lib.aws_route53recoverycontrol": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Route53RecoveryControl" }, "java": { "package": "software.amazon.awscdk.services.route53recoverycontrol" }, "python": { "module": "aws_cdk.aws_route53recoverycontrol" } } }, "aws-cdk-lib.aws_route53recoveryreadiness": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Route53RecoveryReadiness" }, "java": { "package": "software.amazon.awscdk.services.route53recoveryreadiness" }, "python": { "module": "aws_cdk.aws_route53recoveryreadiness" } } }, "aws-cdk-lib.aws_route53resolver": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Route53Resolver" }, "java": { "package": "software.amazon.awscdk.services.route53resolver" }, "python": { "module": "aws_cdk.aws_route53resolver" } } }, "aws-cdk-lib.aws_rum": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.RUM" }, "java": { "package": "software.amazon.awscdk.services.rum" }, "python": { "module": "aws_cdk.aws_rum" } } }, "aws-cdk-lib.aws_s3": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.S3" }, "java": { "package": "software.amazon.awscdk.services.s3" }, "python": { "module": "aws_cdk.aws_s3" } } }, "aws-cdk-lib.aws_s3_assets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.S3.Assets" }, "java": { "package": "software.amazon.awscdk.services.s3.assets" }, "python": { "module": "aws_cdk.aws_s3_assets" } } }, "aws-cdk-lib.aws_s3_deployment": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.S3.Deployment" }, "java": { "package": "software.amazon.awscdk.services.s3.deployment" }, "python": { "module": "aws_cdk.aws_s3_deployment" } } }, "aws-cdk-lib.aws_s3_notifications": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.S3.Notifications" }, "java": { "package": "software.amazon.awscdk.services.s3.notifications" }, "python": { "module": "aws_cdk.aws_s3_notifications" } } }, "aws-cdk-lib.aws_s3express": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.S3Express" }, "java": { "package": "software.amazon.awscdk.services.s3express" }, "python": { "module": "aws_cdk.aws_s3express" } } }, "aws-cdk-lib.aws_s3objectlambda": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.S3ObjectLambda" }, "java": { "package": "software.amazon.awscdk.services.s3objectlambda" }, "python": { "module": "aws_cdk.aws_s3objectlambda" } } }, "aws-cdk-lib.aws_s3outposts": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.S3Outposts" }, "java": { "package": "software.amazon.awscdk.services.s3outposts" }, "python": { "module": "aws_cdk.aws_s3outposts" } } }, "aws-cdk-lib.aws_s3tables": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.S3Tables" }, "java": { "package": "software.amazon.awscdk.services.s3tables" }, "python": { "module": "aws_cdk.aws_s3tables" } } }, "aws-cdk-lib.aws_sagemaker": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Sagemaker" }, "java": { "package": "software.amazon.awscdk.services.sagemaker" }, "python": { "module": "aws_cdk.aws_sagemaker" } } }, "aws-cdk-lib.aws_sam": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SAM" }, "java": { "package": "software.amazon.awscdk.services.sam" }, "python": { "module": "aws_cdk.aws_sam" } } }, "aws-cdk-lib.aws_scheduler": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Scheduler" }, "java": { "package": "software.amazon.awscdk.services.scheduler" }, "python": { "module": "aws_cdk.aws_scheduler" } } }, "aws-cdk-lib.aws_scheduler_targets": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Scheduler.Targets" }, "java": { "package": "software.amazon.awscdk.services.scheduler.targets" }, "python": { "module": "aws_cdk.aws_scheduler_targets" } } }, "aws-cdk-lib.aws_sdb": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SDB" }, "java": { "package": "software.amazon.awscdk.services.sdb" }, "python": { "module": "aws_cdk.aws_sdb" } } }, "aws-cdk-lib.aws_secretsmanager": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SecretsManager" }, "java": { "package": "software.amazon.awscdk.services.secretsmanager" }, "python": { "module": "aws_cdk.aws_secretsmanager" } } }, "aws-cdk-lib.aws_securityhub": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SecurityHub" }, "java": { "package": "software.amazon.awscdk.services.securityhub" }, "python": { "module": "aws_cdk.aws_securityhub" } } }, "aws-cdk-lib.aws_securitylake": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.SecurityLake" }, "java": { "package": "software.amazon.awscdk.services.securitylake" }, "python": { "module": "aws_cdk.aws_securitylake" } } }, "aws-cdk-lib.aws_servicecatalog": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Servicecatalog" }, "java": { "package": "software.amazon.awscdk.services.servicecatalog" }, "python": { "module": "aws_cdk.aws_servicecatalog" } } }, "aws-cdk-lib.aws_servicecatalogappregistry": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Servicecatalogappregistry" }, "java": { "package": "software.amazon.awscdk.services.servicecatalogappregistry" }, "python": { "module": "aws_cdk.aws_servicecatalogappregistry" } } }, "aws-cdk-lib.aws_servicediscovery": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.ServiceDiscovery" }, "java": { "package": "software.amazon.awscdk.services.servicediscovery" }, "python": { "module": "aws_cdk.aws_servicediscovery" } } }, "aws-cdk-lib.aws_ses": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SES" }, "java": { "package": "software.amazon.awscdk.services.ses" }, "python": { "module": "aws_cdk.aws_ses" } } }, "aws-cdk-lib.aws_ses_actions": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SES.Actions" }, "java": { "package": "software.amazon.awscdk.services.ses.actions" }, "python": { "module": "aws_cdk.aws_ses_actions" } } }, "aws-cdk-lib.aws_shield": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.Shield" }, "java": { "package": "software.amazon.awscdk.services.shield" }, "python": { "module": "aws_cdk.aws_shield" } } }, "aws-cdk-lib.aws_signer": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Signer" }, "java": { "package": "software.amazon.awscdk.services.signer" }, "python": { "module": "aws_cdk.aws_signer" } } }, "aws-cdk-lib.aws_simspaceweaver": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SimSpaceWeaver" }, "java": { "package": "software.amazon.awscdk.services.simspaceweaver" }, "python": { "module": "aws_cdk.aws_simspaceweaver" } } }, "aws-cdk-lib.aws_sns": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SNS" }, "java": { "package": "software.amazon.awscdk.services.sns" }, "python": { "module": "aws_cdk.aws_sns" } } }, "aws-cdk-lib.aws_sns_subscriptions": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SNS.Subscriptions" }, "java": { "package": "software.amazon.awscdk.services.sns.subscriptions" }, "python": { "module": "aws_cdk.aws_sns_subscriptions" } } }, "aws-cdk-lib.aws_sqs": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SQS" }, "java": { "package": "software.amazon.awscdk.services.sqs" }, "python": { "module": "aws_cdk.aws_sqs" } } }, "aws-cdk-lib.aws_ssm": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SSM" }, "java": { "package": "software.amazon.awscdk.services.ssm" }, "python": { "module": "aws_cdk.aws_ssm" } } }, "aws-cdk-lib.aws_ssmcontacts": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SSMContacts" }, "java": { "package": "software.amazon.awscdk.services.ssmcontacts" }, "python": { "module": "aws_cdk.aws_ssmcontacts" } } }, "aws-cdk-lib.aws_ssmguiconnect": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.SSMGuiConnect" }, "java": { "package": "software.amazon.awscdk.services.ssmguiconnect" }, "python": { "module": "aws_cdk.aws_ssmguiconnect" } } }, "aws-cdk-lib.aws_ssmincidents": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SSMIncidents" }, "java": { "package": "software.amazon.awscdk.services.ssmincidents" }, "python": { "module": "aws_cdk.aws_ssmincidents" } } }, "aws-cdk-lib.aws_ssmquicksetup": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.SSMQuickSetup" }, "java": { "package": "software.amazon.awscdk.services.ssmquicksetup" }, "python": { "module": "aws_cdk.aws_ssmquicksetup" } } }, "aws-cdk-lib.aws_sso": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SSO" }, "java": { "package": "software.amazon.awscdk.services.sso" }, "python": { "module": "aws_cdk.aws_sso" } } }, "aws-cdk-lib.aws_stepfunctions": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.StepFunctions" }, "java": { "package": "software.amazon.awscdk.services.stepfunctions" }, "python": { "module": "aws_cdk.aws_stepfunctions" } } }, "aws-cdk-lib.aws_stepfunctions_tasks": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.StepFunctions.Tasks" }, "java": { "package": "software.amazon.awscdk.services.stepfunctions.tasks" }, "python": { "module": "aws_cdk.aws_stepfunctions_tasks" } } }, "aws-cdk-lib.aws_supportapp": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SupportApp" }, "java": { "package": "software.amazon.awscdk.services.supportapp" }, "python": { "module": "aws_cdk.aws_supportapp" } } }, "aws-cdk-lib.aws_synthetics": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Synthetics" }, "java": { "package": "software.amazon.awscdk.services.synthetics" }, "python": { "module": "aws_cdk.aws_synthetics" } } }, "aws-cdk-lib.aws_systemsmanagersap": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.SystemsManagerSAP" }, "java": { "package": "software.amazon.awscdk.services.systemsmanagersap" }, "python": { "module": "aws_cdk.aws_systemsmanagersap" } } }, "aws-cdk-lib.aws_timestream": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Timestream" }, "java": { "package": "software.amazon.awscdk.services.timestream" }, "python": { "module": "aws_cdk.aws_timestream" } } }, "aws-cdk-lib.aws_transfer": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Transfer" }, "java": { "package": "software.amazon.awscdk.services.transfer" }, "python": { "module": "aws_cdk.aws_transfer" } } }, "aws-cdk-lib.aws_verifiedpermissions": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.VerifiedPermissions" }, "java": { "package": "software.amazon.awscdk.services.verifiedpermissions" }, "python": { "module": "aws_cdk.aws_verifiedpermissions" } } }, "aws-cdk-lib.aws_voiceid": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.VoiceID" }, "java": { "package": "software.amazon.awscdk.services.voiceid" }, "python": { "module": "aws_cdk.aws_voiceid" } } }, "aws-cdk-lib.aws_vpclattice": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.VpcLattice" }, "java": { "package": "software.amazon.awscdk.services.vpclattice" }, "python": { "module": "aws_cdk.aws_vpclattice" } } }, "aws-cdk-lib.aws_waf": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.WAF" }, "java": { "package": "software.amazon.awscdk.services.waf" }, "python": { "module": "aws_cdk.aws_waf" } } }, "aws-cdk-lib.aws_wafregional": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.WAFRegional" }, "java": { "package": "software.amazon.awscdk.services.waf.regional" }, "python": { "module": "aws_cdk.aws_wafregional" } } }, "aws-cdk-lib.aws_wafv2": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.WAFv2" }, "java": { "package": "software.amazon.awscdk.services.wafv2" }, "python": { "module": "aws_cdk.aws_wafv2" } } }, "aws-cdk-lib.aws_wisdom": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.Wisdom" }, "java": { "package": "software.amazon.awscdk.services.wisdom" }, "python": { "module": "aws_cdk.aws_wisdom" } } }, "aws-cdk-lib.aws_workspaces": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.WorkSpaces" }, "java": { "package": "software.amazon.awscdk.services.workspaces" }, "python": { "module": "aws_cdk.aws_workspaces" } } }, "aws-cdk-lib.aws_workspacesthinclient": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.WorkSpacesThinClient" }, "java": { "package": "software.amazon.awscdk.services.workspacesthinclient" }, "python": { "module": "aws_cdk.aws_workspacesthinclient" } } }, "aws-cdk-lib.aws_workspacesweb": { "targets": { "dotnet": { "package": "Amazon.CDK.AWS.WorkSpacesWeb" }, "java": { "package": "software.amazon.awscdk.services.workspacesweb" }, "python": { "module": "aws_cdk.aws_workspacesweb" } } }, "aws-cdk-lib.aws_xray": { "targets": { "dotnet": { "namespace": "Amazon.CDK.AWS.XRay" }, "java": { "package": "software.amazon.awscdk.services.xray" }, "python": { "module": "aws_cdk.aws_xray" } } }, "aws-cdk-lib.cloud_assembly_schema": {}, "aws-cdk-lib.cloudformation_include": { "targets": { "dotnet": { "namespace": "Amazon.CDK.CloudFormation.Include" }, "java": { "package": "software.amazon.awscdk.cloudformation.include" }, "python": { "module": "aws_cdk.cloudformation_include" } } }, "aws-cdk-lib.custom_resources": { "targets": { "dotnet": { "namespace": "Amazon.CDK.CustomResources" }, "java": { "package": "software.amazon.awscdk.customresources" }, "python": { "module": "aws_cdk.custom_resources" } } }, "aws-cdk-lib.cx_api": { "targets": { "dotnet": { "namespace": "Amazon.CDK.CXAPI" }, "java": { "package": "software.amazon.awscdk.cxapi" }, "python": { "module": "aws_cdk.cx_api" } } }, "aws-cdk-lib.lambda_layer_awscli": { "targets": { "dotnet": { "namespace": "Amazon.CDK.LambdaLayer.AwsCli" }, "java": { "package": "software.amazon.awscdk.lambdalayer.awscli" }, "python": { "module": "aws_cdk.lambda_layer_awscli" } } }, "aws-cdk-lib.lambda_layer_node_proxy_agent": { "targets": { "dotnet": { "namespace": "Amazon.CDK.LambdaLayer.NodeProxyAgent" }, "java": { "package": "software.amazon.awscdk.lambda.layer.node.proxy.agent" }, "python": { "module": "aws_cdk.lambda_layer_node_proxy_agent" } } }, "aws-cdk-lib.pipelines": { "targets": { "dotnet": { "namespace": "Amazon.CDK.Pipelines" }, "java": { "package": "software.amazon.awscdk.pipelines" }, "python": { "module": "aws_cdk.pipelines" } } }, "aws-cdk-lib.region_info": { "targets": { "dotnet": { "namespace": "Amazon.CDK.RegionInfo" }, "java": { "package": "software.amazon.awscdk.regioninfo" }, "python": { "module": "aws_cdk.region_info" } } }, "aws-cdk-lib.triggers": { "targets": { "dotnet": { "namespace": "Amazon.CDK.Triggers" }, "java": { "package": "software.amazon.awscdk.triggers" }, "python": { "module": "aws_cdk.triggers" } } } }, "targets": { "dotnet": { "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/main/logo/default-256-dark.png", "namespace": "Amazon.CDK", "packageId": "Amazon.CDK.Lib" }, "go": { "moduleName": "github.com/aws/aws-cdk-go", "packageName": "awscdk" }, "java": { "maven": { "artifactId": "aws-cdk-lib", "groupId": "software.amazon.awscdk" }, "package": "software.amazon.awscdk" }, "js": { "npm": "aws-cdk-lib" }, "python": { "distName": "aws-cdk-lib", "module": "aws_cdk" } } }, "constructs": { "targets": { "dotnet": { "namespace": "Constructs", "packageId": "Constructs" }, "go": { "moduleName": "github.com/aws/constructs-go" }, "java": { "maven": { "artifactId": "constructs", "groupId": "software.constructs" }, "package": "software.constructs" }, "js": { "npm": "constructs" }, "python": { "distName": "constructs", "module": "constructs" } } } }, "description": "AppSync GraphQL Api Construct using Amplify GraphQL Transformer.", "docs": { "stability": "stable" }, "homepage": "https://github.com/aws-amplify/amplify-category-api.git", "jsiiVersion": "5.8.3 (build 6fd3bf6)", "keywords": [ "awscdk", "aws-cdk", "graphql", "cdk", "aws", "amplify", "appsync" ], "license": "Apache-2.0", "metadata": { "jsii": { "pacmak": { "hasDefaultInterfaces": true } }, "tscRootDir": "src" }, "name": "@aws-amplify/graphql-api-construct", "readme": { "markdown": "# Amplify Graphql API Construct\n\n[![View on Construct Hub](https://constructs.dev/badge?package=%40aws-amplify%2Fgraphql-api-construct)](https://constructs.dev/packages/@aws-amplify/graphql-api-construct)\n\nThis package vends an L3 CDK Construct wrapping the behavior of the Amplify GraphQL Transformer. This enables quick development and interation of AppSync APIs which support the Amplify GraphQL Directives. For more information on schema modeling in GraphQL, please refer to the [amplify developer docs](https://docs.amplify.aws/cli/graphql/overview/).\n\nThe primary way to use this construct is to invoke it with a provided schema (either as an inline graphql string, or as one or more `appsync.SchemaFile`) objects, and with authorization config provided. There are 5 supported methods for authorization of an AppSync API, all of which are supported by this construct. For more information on authorization rule definitions in Amplify, refer to the [authorization docs](https://docs.amplify.aws/cli/graphql/authorization-rules/). Note: currently at least one authorization rule is required, and if multiple are specified, a `defaultAuthorizationMode` must be specified on the api as well. Specified authorization modes must be a superset of those configured in the graphql schema.\n\n## Examples\n\n### Simple Todo List With Cognito Userpool-based Owner Authorization\n\nIn this example, we create a single model, which will use `user pool` auth in order to allow logged in users to create and manage their own `todos` privately.\n\nWe create a cdk App and Stack, though you may be deploying this to a custom stack, this is purely illustrative for a concise demo.\n\nWe then wire this through to import a user pool which was already deployed (creating and deploying is out of scope for this example).\n\n```ts\nimport { App, Stack } from 'aws-cdk-lib';\nimport { UserPool } from 'aws-cdk-lib/aws-cognito';\nimport { AmplifyGraphqlApi, AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct';\n\nconst app = new App();\nconst stack = new Stack(app, 'TodoStack');\n\nnew AmplifyGraphqlApi(stack, 'TodoApp', {\n definition: AmplifyGraphqlDefinition.fromString(/* GraphQL */ `\n type Todo @model @auth(rules: [{ allow: owner }]) {\n description: String!\n completed: Boolean\n }\n `),\n authorizationModes: {\n userPoolConfig: {\n userPool: UserPool.fromUserPoolId(stack, 'ImportedUserPool', ''),\n },\n },\n});\n```\n\n### Multiple related models, with public read access, and admin read/write access\n\nIn this example, we create a two related models, which will use which logged in users in the 'Author' and 'Admin' user groups will have\nfull access to, and customers requesting with api key will only have read permissions on.\n\n```ts\nimport { App, Stack } from 'aws-cdk-lib';\nimport { UserPool } from 'aws-cdk-lib/aws-cognito';\nimport { AmplifyGraphqlApi, AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct';\n\nconst app = new App();\nconst stack = new Stack(app, 'BlogStack');\n\nnew AmplifyGraphqlApi(stack, 'BlogApp', {\n definition: AmplifyGraphqlDefinition.fromString(/* GraphQL */ `\n type Blog @model @auth(rules: [{ allow: public, operations: [read] }, { allow: groups, groups: [\"Author\", \"Admin\"] }]) {\n title: String!\n description: String\n posts: [Post] @hasMany\n }\n\n type Post @model @auth(rules: [{ allow: public, operations: [read] }, { allow: groups, groups: [\"Author\", \"Admin\"] }]) {\n title: String!\n content: [String]\n blog: Blog @belongsTo\n }\n `),\n authorizationModes: {\n defaultAuthorizationMode: 'API_KEY',\n apiKeyConfig: {\n description: 'Api Key for public access',\n expires: cdk.Duration.days(7),\n },\n userPoolConfig: {\n userPool: UserPool.fromUserPoolId(stack, 'ImportedUserPool', ''),\n },\n },\n});\n```\n\n### Import GraphQL Schema from files, instead of inline\n\nIn this example, we import the schema definition itself from one or more local files, rather than an inline graphql string.\n\n```graphql\n# todo.graphql\ntype Todo @model @auth(rules: [{ allow: owner }]) {\n content: String!\n done: Boolean\n}\n```\n\n```graphql\n# blog.graphql\ntype Blog @model @auth(rules: [{ allow: owner }, { allow: public, operations: [read] }]) {\n title: String!\n description: String\n posts: [Post] @hasMany\n}\n\ntype Post @model @auth(rules: [{ allow: owner }, { allow: public, operations: [read] }]) {\n title: String!\n content: [String]\n blog: Blog @belongsTo\n}\n```\n\n```ts\n// app.ts\nimport { App, Stack } from 'aws-cdk-lib';\nimport { UserPool } from 'aws-cdk-lib/aws-cognito';\nimport { AmplifyGraphqlApi, AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct';\n\nconst app = new App();\nconst stack = new Stack(app, 'MultiFileStack');\n\nnew AmplifyGraphqlApi(stack, 'MultiFileDefinition', {\n definition: AmplifyGraphqlDefinition.fromFiles(path.join(__dirname, 'todo.graphql'), path.join(__dirname, 'blog.graphql')),\n authorizationModes: {\n defaultAuthorizationMode: 'API_KEY',\n apiKeyConfig: {\n description: 'Api Key for public access',\n expires: cdk.Duration.days(7),\n },\n userPoolConfig: {\n userPool: UserPool.fromUserPoolId(stack, 'ImportedUserPool', ''),\n },\n },\n});\n```\n\n# API Reference \n\n## Constructs \n\n### AmplifyGraphqlApi \n\nL3 Construct which invokes the Amplify Transformer Pattern over an input Graphql Schema.\n\nThis can be used to quickly define appsync apis which support full CRUD+List and Subscriptions, relationships,\nauth, search over data, the ability to inject custom business logic and query/mutation operations, and connect to ML services.\n\nFor more information, refer to the docs links below:\nData Modeling - https://docs.amplify.aws/cli/graphql/data-modeling/\nAuthorization - https://docs.amplify.aws/cli/graphql/authorization-rules/\nCustom Business Logic - https://docs.amplify.aws/cli/graphql/custom-business-logic/\nSearch - https://docs.amplify.aws/cli/graphql/search-and-result-aggregations/\nML Services - https://docs.amplify.aws/cli/graphql/connect-to-machine-learning-services/\n\nFor a full reference of the supported custom graphql directives - https://docs.amplify.aws/cli/graphql/directives-reference/\n\nThe output of this construct is a mapping of L2 or L1 resources generated by the transformer, which generally follow the access pattern\n\n```typescript\n const api = new AmplifyGraphQlApi(this, 'api', { });\n // Access L2 resources under `.resources`\n api.resources.tables[\"Todo\"].tableArn;\n\n // Access L1 resources under `.resources.cfnResources`\n api.resources.cfnResources.cfnGraphqlApi.xrayEnabled = true;\n Object.values(api.resources.cfnResources.cfnTables).forEach(table => {\n table.pointInTimeRecoverySpecification = { pointInTimeRecoveryEnabled: false };\n });\n```\n`resources..` - you can then perform any CDK action on these resulting resoureces.\n\n#### Initializers \n\n```typescript\nimport { AmplifyGraphqlApi } from '@aws-amplify/graphql-api-construct'\n\nnew AmplifyGraphqlApi(scope: Construct, id: string, props: AmplifyGraphqlApiProps)\n```\n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| scope | constructs.Construct | the scope to create this construct within. |\n| id | string | the id to use for this api. |\n| props | AmplifyGraphqlApiProps | the properties used to configure the generated api. |\n\n---\n\n##### `scope`Required \n\n- *Type:* constructs.Construct\n\nthe scope to create this construct within.\n\n---\n\n##### `id`Required \n\n- *Type:* string\n\nthe id to use for this api.\n\n---\n\n##### `props`Required \n\n- *Type:* AmplifyGraphqlApiProps\n\nthe properties used to configure the generated api.\n\n---\n\n#### Methods \n\n| **Name** | **Description** |\n| --- | --- |\n| toString | Returns a string representation of this construct. |\n| addDynamoDbDataSource | Add a new DynamoDB data source to this API. |\n| addElasticsearchDataSource | Add a new elasticsearch data source to this API. |\n| addEventBridgeDataSource | Add an EventBridge data source to this api. |\n| addFunction | Add an appsync function to the api. |\n| addHttpDataSource | Add a new http data source to this API. |\n| addLambdaDataSource | Add a new Lambda data source to this API. |\n| addNoneDataSource | Add a new dummy data source to this API. |\n| addOpenSearchDataSource | dd a new OpenSearch data source to this API. |\n| addRdsDataSource | Add a new Rds data source to this API. |\n| addResolver | Add a resolver to the api. |\n\n---\n\n##### `toString` \n\n```typescript\npublic toString(): string\n```\n\nReturns a string representation of this construct.\n\n##### `addDynamoDbDataSource` \n\n```typescript\npublic addDynamoDbDataSource(id: string, table: ITable, options?: DataSourceOptions): DynamoDbDataSource\n```\n\nAdd a new DynamoDB data source to this API.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `table`Required \n\n- *Type:* aws-cdk-lib.aws_dynamodb.ITable\n\nThe DynamoDB table backing this data source.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.DataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### ~~`addElasticsearchDataSource`~~ \n\n```typescript\npublic addElasticsearchDataSource(id: string, domain: IDomain, options?: DataSourceOptions): ElasticsearchDataSource\n```\n\nAdd a new elasticsearch data source to this API.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `domain`Required \n\n- *Type:* aws-cdk-lib.aws_elasticsearch.IDomain\n\nThe elasticsearch domain for this data source.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.DataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### `addEventBridgeDataSource` \n\n```typescript\npublic addEventBridgeDataSource(id: string, eventBus: IEventBus, options?: DataSourceOptions): EventBridgeDataSource\n```\n\nAdd an EventBridge data source to this api.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `eventBus`Required \n\n- *Type:* aws-cdk-lib.aws_events.IEventBus\n\nThe EventBridge EventBus on which to put events.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.DataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### `addFunction` \n\n```typescript\npublic addFunction(id: string, props: AddFunctionProps): AppsyncFunction\n```\n\nAdd an appsync function to the api.\n\n###### `id`Required \n\n- *Type:* string\n\nthe function's id.\n\n---\n\n###### `props`Required \n\n- *Type:* AddFunctionProps\n\n---\n\n##### `addHttpDataSource` \n\n```typescript\npublic addHttpDataSource(id: string, endpoint: string, options?: HttpDataSourceOptions): HttpDataSource\n```\n\nAdd a new http data source to this API.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `endpoint`Required \n\n- *Type:* string\n\nThe http endpoint.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.HttpDataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### `addLambdaDataSource` \n\n```typescript\npublic addLambdaDataSource(id: string, lambdaFunction: IFunction, options?: DataSourceOptions): LambdaDataSource\n```\n\nAdd a new Lambda data source to this API.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `lambdaFunction`Required \n\n- *Type:* aws-cdk-lib.aws_lambda.IFunction\n\nThe Lambda function to call to interact with this data source.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.DataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### `addNoneDataSource` \n\n```typescript\npublic addNoneDataSource(id: string, options?: DataSourceOptions): NoneDataSource\n```\n\nAdd a new dummy data source to this API.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\nUseful for pipeline resolvers and for backend changes that don't require a data source.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.DataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### `addOpenSearchDataSource` \n\n```typescript\npublic addOpenSearchDataSource(id: string, domain: IDomain, options?: DataSourceOptions): OpenSearchDataSource\n```\n\ndd a new OpenSearch data source to this API.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `domain`Required \n\n- *Type:* aws-cdk-lib.aws_opensearchservice.IDomain\n\nThe OpenSearch domain for this data source.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.DataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### `addRdsDataSource` \n\n```typescript\npublic addRdsDataSource(id: string, serverlessCluster: IServerlessCluster, secretStore: ISecret, databaseName?: string, options?: DataSourceOptions): RdsDataSource\n```\n\nAdd a new Rds data source to this API.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe data source's id.\n\n---\n\n###### `serverlessCluster`Required \n\n- *Type:* aws-cdk-lib.aws_rds.IServerlessCluster\n\nThe serverless cluster to interact with this data source.\n\n---\n\n###### `secretStore`Required \n\n- *Type:* aws-cdk-lib.aws_secretsmanager.ISecret\n\nThe secret store that contains the username and password for the serverless cluster.\n\n---\n\n###### `databaseName`Optional \n\n- *Type:* string\n\nThe optional name of the database to use within the cluster.\n\n---\n\n###### `options`Optional \n\n- *Type:* aws-cdk-lib.aws_appsync.DataSourceOptions\n\nThe optional configuration for this data source.\n\n---\n\n##### `addResolver` \n\n```typescript\npublic addResolver(id: string, props: ExtendedResolverProps): Resolver\n```\n\nAdd a resolver to the api.\n\nThis is a proxy method to the L2 GraphqlApi Construct.\n\n###### `id`Required \n\n- *Type:* string\n\nThe resolver's id.\n\n---\n\n###### `props`Required \n\n- *Type:* aws-cdk-lib.aws_appsync.ExtendedResolverProps\n\nthe resolver properties.\n\n---\n\n#### Static Functions \n\n| **Name** | **Description** |\n| --- | --- |\n| isConstruct | Checks if `x` is a construct. |\n\n---\n\n##### ~~`isConstruct`~~ \n\n```typescript\nimport { AmplifyGraphqlApi } from '@aws-amplify/graphql-api-construct'\n\nAmplifyGraphqlApi.isConstruct(x: any)\n```\n\nChecks if `x` is a construct.\n\n###### `x`Required \n\n- *Type:* any\n\nAny object.\n\n---\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| node | constructs.Node | The tree node. |\n| apiId | string | Generated Api Id. |\n| generatedFunctionSlots | MutationFunctionSlot \\| QueryFunctionSlot \\| SubscriptionFunctionSlot[] | Resolvers generated by the transform process, persisted on the side in order to facilitate pulling a manifest for the purposes of inspecting and producing overrides. |\n| graphqlUrl | string | Graphql URL For the generated API. |\n| realtimeUrl | string | Realtime URL For the generated API. |\n| resources | AmplifyGraphqlApiResources | Generated L1 and L2 CDK resources. |\n| apiKey | string | Generated Api Key if generated. |\n\n---\n\n##### `node`Required \n\n```typescript\npublic readonly node: Node;\n```\n\n- *Type:* constructs.Node\n\nThe tree node.\n\n---\n\n##### `apiId`Required \n\n```typescript\npublic readonly apiId: string;\n```\n\n- *Type:* string\n\nGenerated Api Id.\n\nMay be a CDK Token.\n\n---\n\n##### `generatedFunctionSlots`Required \n\n```typescript\npublic readonly generatedFunctionSlots: MutationFunctionSlot | QueryFunctionSlot | SubscriptionFunctionSlot[];\n```\n\n- *Type:* MutationFunctionSlot | QueryFunctionSlot | SubscriptionFunctionSlot[]\n\nResolvers generated by the transform process, persisted on the side in order to facilitate pulling a manifest for the purposes of inspecting and producing overrides.\n\n---\n\n##### `graphqlUrl`Required \n\n```typescript\npublic readonly graphqlUrl: string;\n```\n\n- *Type:* string\n\nGraphql URL For the generated API.\n\nMay be a CDK Token.\n\n---\n\n##### `realtimeUrl`Required \n\n```typescript\npublic readonly realtimeUrl: string;\n```\n\n- *Type:* string\n\nRealtime URL For the generated API.\n\nMay be a CDK Token.\n\n---\n\n##### `resources`Required \n\n```typescript\npublic readonly resources: AmplifyGraphqlApiResources;\n```\n\n- *Type:* AmplifyGraphqlApiResources\n\nGenerated L1 and L2 CDK resources.\n\n---\n\n##### `apiKey`Optional \n\n```typescript\npublic readonly apiKey: string;\n```\n\n- *Type:* string\n\nGenerated Api Key if generated.\n\nMay be a CDK Token.\n\n---\n\n\n## Structs \n\n### AddFunctionProps \n\nInput type properties when adding a new appsync.AppsyncFunction to the generated API. This is equivalent to the Omit.\n\n#### Initializer \n\n```typescript\nimport { AddFunctionProps } from '@aws-amplify/graphql-api-construct'\n\nconst addFunctionProps: AddFunctionProps = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| dataSource | aws-cdk-lib.aws_appsync.BaseDataSource | the data source linked to this AppSync Function. |\n| name | string | the name of the AppSync Function. |\n| code | aws-cdk-lib.aws_appsync.Code | The function code. |\n| description | string | the description for this AppSync Function. |\n| requestMappingTemplate | aws-cdk-lib.aws_appsync.MappingTemplate | the request mapping template for the AppSync Function. |\n| responseMappingTemplate | aws-cdk-lib.aws_appsync.MappingTemplate | the response mapping template for the AppSync Function. |\n| runtime | aws-cdk-lib.aws_appsync.FunctionRuntime | The functions runtime. |\n\n---\n\n##### `dataSource`Required \n\n```typescript\npublic readonly dataSource: BaseDataSource;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.BaseDataSource\n\nthe data source linked to this AppSync Function.\n\n---\n\n##### `name`Required \n\n```typescript\npublic readonly name: string;\n```\n\n- *Type:* string\n\nthe name of the AppSync Function.\n\n---\n\n##### `code`Optional \n\n```typescript\npublic readonly code: Code;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.Code\n- *Default:* no code is used\n\nThe function code.\n\n---\n\n##### `description`Optional \n\n```typescript\npublic readonly description: string;\n```\n\n- *Type:* string\n- *Default:* no description\n\nthe description for this AppSync Function.\n\n---\n\n##### `requestMappingTemplate`Optional \n\n```typescript\npublic readonly requestMappingTemplate: MappingTemplate;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.MappingTemplate\n- *Default:* no request mapping template\n\nthe request mapping template for the AppSync Function.\n\n---\n\n##### `responseMappingTemplate`Optional \n\n```typescript\npublic readonly responseMappingTemplate: MappingTemplate;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.MappingTemplate\n- *Default:* no response mapping template\n\nthe response mapping template for the AppSync Function.\n\n---\n\n##### `runtime`Optional \n\n```typescript\npublic readonly runtime: FunctionRuntime;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.FunctionRuntime\n- *Default:* no function runtime, VTL mapping templates used\n\nThe functions runtime.\n\n---\n\n### AmplifyDynamoDbModelDataSourceStrategy \n\nUse custom resource type 'Custom::AmplifyDynamoDBTable' to provision table.\n\n#### Initializer \n\n```typescript\nimport { AmplifyDynamoDbModelDataSourceStrategy } from '@aws-amplify/graphql-api-construct'\n\nconst amplifyDynamoDbModelDataSourceStrategy: AmplifyDynamoDbModelDataSourceStrategy = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| dbType | string | *No description.* |\n| provisionStrategy | string | *No description.* |\n\n---\n\n##### `dbType`Required \n\n```typescript\npublic readonly dbType: string;\n```\n\n- *Type:* string\n\n---\n\n##### `provisionStrategy`Required \n\n```typescript\npublic readonly provisionStrategy: string;\n```\n\n- *Type:* string\n\n---\n\n### AmplifyGraphqlApiCfnResources \n\nL1 CDK resources from the Api which were generated as part of the transform.\n\nThese are potentially stored under nested stacks, but presented organized by type instead.\n\n#### Initializer \n\n```typescript\nimport { AmplifyGraphqlApiCfnResources } from '@aws-amplify/graphql-api-construct'\n\nconst amplifyGraphqlApiCfnResources: AmplifyGraphqlApiCfnResources = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| additionalCfnResources | {[ key: string ]: aws-cdk-lib.CfnResource} | Remaining L1 resources generated, keyed by logicalId. |\n| amplifyDynamoDbTables | {[ key: string ]: AmplifyDynamoDbTableWrapper} | The Generated Amplify DynamoDb Table L1 resource wrapper, keyed by model type name. |\n| cfnDataSources | {[ key: string ]: aws-cdk-lib.aws_appsync.CfnDataSource} | The Generated AppSync DataSource L1 Resources, keyed by logicalId. |\n| cfnFunctionConfigurations | {[ key: string ]: aws-cdk-lib.aws_appsync.CfnFunctionConfiguration} | The Generated AppSync Function L1 Resources, keyed by logicalId. |\n| cfnFunctions | {[ key: string ]: aws-cdk-lib.aws_lambda.CfnFunction} | The Generated Lambda Function L1 Resources, keyed by function name. |\n| cfnGraphqlApi | aws-cdk-lib.aws_appsync.CfnGraphQLApi | The Generated AppSync Api L1 Resource. |\n| cfnGraphqlSchema | aws-cdk-lib.aws_appsync.CfnGraphQLSchema | The Generated AppSync Schema L1 Resource. |\n| cfnResolvers | {[ key: string ]: aws-cdk-lib.aws_appsync.CfnResolver} | The Generated AppSync Resolver L1 Resources, keyed by logicalId. |\n| cfnRoles | {[ key: string ]: aws-cdk-lib.aws_iam.CfnRole} | The Generated IAM Role L1 Resources, keyed by logicalId. |\n| cfnTables | {[ key: string ]: aws-cdk-lib.aws_dynamodb.CfnTable} | The Generated DynamoDB Table L1 Resources, keyed by logicalId. |\n| cfnApiKey | aws-cdk-lib.aws_appsync.CfnApiKey | The Generated AppSync Api Key L1 Resource. |\n\n---\n\n##### `additionalCfnResources`Required \n\n```typescript\npublic readonly additionalCfnResources: {[ key: string ]: CfnResource};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.CfnResource}\n\nRemaining L1 resources generated, keyed by logicalId.\n\n---\n\n##### `amplifyDynamoDbTables`Required \n\n```typescript\npublic readonly amplifyDynamoDbTables: {[ key: string ]: AmplifyDynamoDbTableWrapper};\n```\n\n- *Type:* {[ key: string ]: AmplifyDynamoDbTableWrapper}\n\nThe Generated Amplify DynamoDb Table L1 resource wrapper, keyed by model type name.\n\n---\n\n##### `cfnDataSources`Required \n\n```typescript\npublic readonly cfnDataSources: {[ key: string ]: CfnDataSource};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_appsync.CfnDataSource}\n\nThe Generated AppSync DataSource L1 Resources, keyed by logicalId.\n\n---\n\n##### `cfnFunctionConfigurations`Required \n\n```typescript\npublic readonly cfnFunctionConfigurations: {[ key: string ]: CfnFunctionConfiguration};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_appsync.CfnFunctionConfiguration}\n\nThe Generated AppSync Function L1 Resources, keyed by logicalId.\n\n---\n\n##### `cfnFunctions`Required \n\n```typescript\npublic readonly cfnFunctions: {[ key: string ]: CfnFunction};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_lambda.CfnFunction}\n\nThe Generated Lambda Function L1 Resources, keyed by function name.\n\n---\n\n##### `cfnGraphqlApi`Required \n\n```typescript\npublic readonly cfnGraphqlApi: CfnGraphQLApi;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.CfnGraphQLApi\n\nThe Generated AppSync Api L1 Resource.\n\n---\n\n##### `cfnGraphqlSchema`Required \n\n```typescript\npublic readonly cfnGraphqlSchema: CfnGraphQLSchema;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.CfnGraphQLSchema\n\nThe Generated AppSync Schema L1 Resource.\n\n---\n\n##### `cfnResolvers`Required \n\n```typescript\npublic readonly cfnResolvers: {[ key: string ]: CfnResolver};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_appsync.CfnResolver}\n\nThe Generated AppSync Resolver L1 Resources, keyed by logicalId.\n\n---\n\n##### `cfnRoles`Required \n\n```typescript\npublic readonly cfnRoles: {[ key: string ]: CfnRole};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_iam.CfnRole}\n\nThe Generated IAM Role L1 Resources, keyed by logicalId.\n\n---\n\n##### `cfnTables`Required \n\n```typescript\npublic readonly cfnTables: {[ key: string ]: CfnTable};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_dynamodb.CfnTable}\n\nThe Generated DynamoDB Table L1 Resources, keyed by logicalId.\n\n---\n\n##### `cfnApiKey`Optional \n\n```typescript\npublic readonly cfnApiKey: CfnApiKey;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.CfnApiKey\n\nThe Generated AppSync Api Key L1 Resource.\n\n---\n\n### AmplifyGraphqlApiProps \n\nInput props for the AmplifyGraphqlApi construct.\n\nSpecifies what the input to transform into an Api, and configurations for\nthe transformation process.\n\n#### Initializer \n\n```typescript\nimport { AmplifyGraphqlApiProps } from '@aws-amplify/graphql-api-construct'\n\nconst amplifyGraphqlApiProps: AmplifyGraphqlApiProps = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| authorizationModes | AuthorizationModes | Required auth modes for the Api. |\n| definition | IAmplifyGraphqlDefinition | The definition to transform in a full Api. |\n| apiName | string | Name to be used for the AppSync Api. |\n| conflictResolution | ConflictResolution | Configure conflict resolution on the Api, which is required to enable DataStore Api functionality. |\n| dataStoreConfiguration | DataStoreConfiguration | Configure DataStore conflict resolution on the Api. |\n| disableOutputStorage | boolean | Disables storing construct output. |\n| functionNameMap | {[ key: string ]: aws-cdk-lib.aws_lambda.IFunction} | Lambda functions referenced in the definitions's. |\n| functionSlots | MutationFunctionSlot \\| QueryFunctionSlot \\| SubscriptionFunctionSlot[] | Overrides for a given slot in the generated resolver pipelines. |\n| outputStorageStrategy | IBackendOutputStorageStrategy | Strategy to store construct outputs. |\n| predictionsBucket | aws-cdk-lib.aws_s3.IBucket | If using predictions, a bucket must be provided which will be used to search for assets. |\n| stackMappings | {[ key: string ]: string} | StackMappings override the assigned nested stack on a per-resource basis. |\n| transformerPlugins | any[] | Provide a list of additional custom transformers which are injected into the transform process. |\n| translationBehavior | PartialTranslationBehavior | This replaces feature flags from the Api construct, for general information on what these parameters do, refer to https://docs.amplify.aws/cli/reference/feature-flags/#graphQLTransformer. |\n\n---\n\n##### `authorizationModes`Required \n\n```typescript\npublic readonly authorizationModes: AuthorizationModes;\n```\n\n- *Type:* AuthorizationModes\n\nRequired auth modes for the Api.\n\nThis object must be a superset of the configured auth providers in the Api definition.\nFor more information, refer to https://docs.amplify.aws/cli/graphql/authorization-rules/\n\n---\n\n##### `definition`Required \n\n```typescript\npublic readonly definition: IAmplifyGraphqlDefinition;\n```\n\n- *Type:* IAmplifyGraphqlDefinition\n\nThe definition to transform in a full Api.\n\nCan be constructed via the AmplifyGraphqlDefinition class.\n\n---\n\n##### `apiName`Optional \n\n```typescript\npublic readonly apiName: string;\n```\n\n- *Type:* string\n\nName to be used for the AppSync Api.\n\nDefault: construct id.\n\n---\n\n##### ~~`conflictResolution`~~Optional \n\n- *Deprecated:* use dataStoreConfiguration instead.\n\n```typescript\npublic readonly conflictResolution: ConflictResolution;\n```\n\n- *Type:* ConflictResolution\n\nConfigure conflict resolution on the Api, which is required to enable DataStore Api functionality.\n\nFor more information, refer to https://docs.amplify.aws/lib/datastore/getting-started/q/platform/js/\n\n---\n\n##### `dataStoreConfiguration`Optional \n\n```typescript\npublic readonly dataStoreConfiguration: DataStoreConfiguration;\n```\n\n- *Type:* DataStoreConfiguration\n\nConfigure DataStore conflict resolution on the Api.\n\nConflict resolution is required to enable DataStore Api functionality.\nFor more information, refer to https://docs.amplify.aws/lib/datastore/getting-started/q/platform/js/\n\n---\n\n##### `disableOutputStorage`Optional \n\n```typescript\npublic readonly disableOutputStorage: boolean;\n```\n\n- *Type:* boolean\n\nDisables storing construct output.\n\nOutput storage should be disabled when creating multiple GraphQL APIs in a single CDK synthesis.\noutputStorageStrategy will be ignored if this is set to true.\n\n---\n\n##### `functionNameMap`Optional \n\n```typescript\npublic readonly functionNameMap: {[ key: string ]: IFunction};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_lambda.IFunction}\n\nLambda functions referenced in the definitions's.\n\n---\n\n##### `functionSlots`Optional \n\n```typescript\npublic readonly functionSlots: MutationFunctionSlot | QueryFunctionSlot | SubscriptionFunctionSlot[];\n```\n\n- *Type:* MutationFunctionSlot | QueryFunctionSlot | SubscriptionFunctionSlot[]\n\nOverrides for a given slot in the generated resolver pipelines.\n\nFor more information about what slots are available,\nrefer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#override-amplify-generated-resolvers.\n\n---\n\n##### `outputStorageStrategy`Optional \n\n```typescript\npublic readonly outputStorageStrategy: IBackendOutputStorageStrategy;\n```\n\n- *Type:* IBackendOutputStorageStrategy\n\nStrategy to store construct outputs.\n\nIf no outputStorageStrategey is provided a default strategy will be used.\n\n---\n\n##### `predictionsBucket`Optional \n\n```typescript\npublic readonly predictionsBucket: IBucket;\n```\n\n- *Type:* aws-cdk-lib.aws_s3.IBucket\n\nIf using predictions, a bucket must be provided which will be used to search for assets.\n\n---\n\n##### `stackMappings`Optional \n\n```typescript\npublic readonly stackMappings: {[ key: string ]: string};\n```\n\n- *Type:* {[ key: string ]: string}\n\nStackMappings override the assigned nested stack on a per-resource basis.\n\nOnly applies to resolvers, and takes the form\n{ : }\nIt is not recommended to use this parameter unless you are encountering stack resource count limits, and worth noting that\nafter initial deployment AppSync resolvers cannot be moved between nested stacks, they will need to be removed from the app,\nthen re-added from a new stack.\n\n---\n\n##### `transformerPlugins`Optional \n\n```typescript\npublic readonly transformerPlugins: any[];\n```\n\n- *Type:* any[]\n\nProvide a list of additional custom transformers which are injected into the transform process.\n\nThese custom transformers must be implemented with aws-cdk-lib >=2.80.0, and\n\n---\n\n##### `translationBehavior`Optional \n\n```typescript\npublic readonly translationBehavior: PartialTranslationBehavior;\n```\n\n- *Type:* PartialTranslationBehavior\n\nThis replaces feature flags from the Api construct, for general information on what these parameters do, refer to https://docs.amplify.aws/cli/reference/feature-flags/#graphQLTransformer.\n\n---\n\n### AmplifyGraphqlApiResources \n\nAccessible resources from the Api which were generated as part of the transform.\n\nThese are potentially stored under nested stacks, but presented organized by type instead.\n\n#### Initializer \n\n```typescript\nimport { AmplifyGraphqlApiResources } from '@aws-amplify/graphql-api-construct'\n\nconst amplifyGraphqlApiResources: AmplifyGraphqlApiResources = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| cfnResources | AmplifyGraphqlApiCfnResources | L1 Cfn Resources, for when dipping down a level of abstraction is desirable. |\n| functions | {[ key: string ]: aws-cdk-lib.aws_lambda.IFunction} | The Generated Lambda Function L1 Resources, keyed by function name. |\n| graphqlApi | aws-cdk-lib.aws_appsync.IGraphqlApi | The Generated AppSync Api L2 Resource, includes the Schema. |\n| nestedStacks | {[ key: string ]: aws-cdk-lib.NestedStack} | Nested Stacks generated by the Api Construct. |\n| roles | {[ key: string ]: aws-cdk-lib.aws_iam.IRole} | The Generated IAM Role L2 Resources, keyed by logicalId. |\n| tables | {[ key: string ]: aws-cdk-lib.aws_dynamodb.ITable} | The Generated DynamoDB Table L2 Resources, keyed by logicalId. |\n\n---\n\n##### `cfnResources`Required \n\n```typescript\npublic readonly cfnResources: AmplifyGraphqlApiCfnResources;\n```\n\n- *Type:* AmplifyGraphqlApiCfnResources\n\nL1 Cfn Resources, for when dipping down a level of abstraction is desirable.\n\n---\n\n##### `functions`Required \n\n```typescript\npublic readonly functions: {[ key: string ]: IFunction};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_lambda.IFunction}\n\nThe Generated Lambda Function L1 Resources, keyed by function name.\n\n---\n\n##### `graphqlApi`Required \n\n```typescript\npublic readonly graphqlApi: IGraphqlApi;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.IGraphqlApi\n\nThe Generated AppSync Api L2 Resource, includes the Schema.\n\n---\n\n##### `nestedStacks`Required \n\n```typescript\npublic readonly nestedStacks: {[ key: string ]: NestedStack};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.NestedStack}\n\nNested Stacks generated by the Api Construct.\n\n---\n\n##### `roles`Required \n\n```typescript\npublic readonly roles: {[ key: string ]: IRole};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_iam.IRole}\n\nThe Generated IAM Role L2 Resources, keyed by logicalId.\n\n---\n\n##### `tables`Required \n\n```typescript\npublic readonly tables: {[ key: string ]: ITable};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_dynamodb.ITable}\n\nThe Generated DynamoDB Table L2 Resources, keyed by logicalId.\n\n---\n\n### ApiKeyAuthorizationConfig \n\nConfiguration for Api Keys on the Graphql Api.\n\n#### Initializer \n\n```typescript\nimport { ApiKeyAuthorizationConfig } from '@aws-amplify/graphql-api-construct'\n\nconst apiKeyAuthorizationConfig: ApiKeyAuthorizationConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| expires | aws-cdk-lib.Duration | A duration representing the time from Cloudformation deploy until expiry. |\n| description | string | Optional description for the Api Key to attach to the Api. |\n\n---\n\n##### `expires`Required \n\n```typescript\npublic readonly expires: Duration;\n```\n\n- *Type:* aws-cdk-lib.Duration\n\nA duration representing the time from Cloudformation deploy until expiry.\n\n---\n\n##### `description`Optional \n\n```typescript\npublic readonly description: string;\n```\n\n- *Type:* string\n\nOptional description for the Api Key to attach to the Api.\n\n---\n\n### AuthorizationModes \n\nAuthorization Modes to apply to the Api.\n\nAt least one modes must be provided, and if more than one are provided a defaultAuthorizationMode must be specified.\nFor more information on Amplify Api auth, refer to https://docs.amplify.aws/cli/graphql/authorization-rules/#authorization-strategies\n\n#### Initializer \n\n```typescript\nimport { AuthorizationModes } from '@aws-amplify/graphql-api-construct'\n\nconst authorizationModes: AuthorizationModes = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| adminRoles | aws-cdk-lib.aws_iam.IRole[] | A list of roles granted full R/W access to the Api. |\n| apiKeyConfig | ApiKeyAuthorizationConfig | AppSync Api Key config, required if a 'apiKey' auth provider is specified in the Api. |\n| defaultAuthorizationMode | string | Default auth mode to provide to the Api, required if more than one config type is specified. |\n| iamConfig | IAMAuthorizationConfig | IAM Auth config, required if an 'iam' auth provider is specified in the Api. |\n| lambdaConfig | LambdaAuthorizationConfig | Lambda config, required if a 'function' auth provider is specified in the Api. |\n| oidcConfig | OIDCAuthorizationConfig | Cognito OIDC config, required if a 'oidc' auth provider is specified in the Api. |\n| userPoolConfig | UserPoolAuthorizationConfig | Cognito UserPool config, required if a 'userPools' auth provider is specified in the Api. |\n\n---\n\n##### ~~`adminRoles`~~Optional \n\n- *Deprecated:* , use iamConfig.allowListedRoles instead.\n\n```typescript\npublic readonly adminRoles: IRole[];\n```\n\n- *Type:* aws-cdk-lib.aws_iam.IRole[]\n\nA list of roles granted full R/W access to the Api.\n\n---\n\n##### `apiKeyConfig`Optional \n\n```typescript\npublic readonly apiKeyConfig: ApiKeyAuthorizationConfig;\n```\n\n- *Type:* ApiKeyAuthorizationConfig\n\nAppSync Api Key config, required if a 'apiKey' auth provider is specified in the Api.\n\nApplies to 'public' auth strategy.\n\n---\n\n##### `defaultAuthorizationMode`Optional \n\n```typescript\npublic readonly defaultAuthorizationMode: string;\n```\n\n- *Type:* string\n\nDefault auth mode to provide to the Api, required if more than one config type is specified.\n\n---\n\n##### `iamConfig`Optional \n\n```typescript\npublic readonly iamConfig: IAMAuthorizationConfig;\n```\n\n- *Type:* IAMAuthorizationConfig\n\nIAM Auth config, required if an 'iam' auth provider is specified in the Api.\n\nApplies to 'public' and 'private' auth strategies.\n\n---\n\n##### `lambdaConfig`Optional \n\n```typescript\npublic readonly lambdaConfig: LambdaAuthorizationConfig;\n```\n\n- *Type:* LambdaAuthorizationConfig\n\nLambda config, required if a 'function' auth provider is specified in the Api.\n\nApplies to 'custom' auth strategy.\n\n---\n\n##### `oidcConfig`Optional \n\n```typescript\npublic readonly oidcConfig: OIDCAuthorizationConfig;\n```\n\n- *Type:* OIDCAuthorizationConfig\n\nCognito OIDC config, required if a 'oidc' auth provider is specified in the Api.\n\nApplies to 'owner', 'private', and 'group' auth strategies.\n\n---\n\n##### `userPoolConfig`Optional \n\n```typescript\npublic readonly userPoolConfig: UserPoolAuthorizationConfig;\n```\n\n- *Type:* UserPoolAuthorizationConfig\n\nCognito UserPool config, required if a 'userPools' auth provider is specified in the Api.\n\nApplies to 'owner', 'private', and 'group' auth strategies.\n\n---\n\n### AutomergeConflictResolutionStrategy \n\nEnable optimistic concurrency on the project.\n\n#### Initializer \n\n```typescript\nimport { AutomergeConflictResolutionStrategy } from '@aws-amplify/graphql-api-construct'\n\nconst automergeConflictResolutionStrategy: AutomergeConflictResolutionStrategy = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| detectionType | string | The conflict detection type used for resolution. |\n| handlerType | string | This conflict resolution strategy executes an auto-merge. |\n\n---\n\n##### `detectionType`Required \n\n```typescript\npublic readonly detectionType: string;\n```\n\n- *Type:* string\n\nThe conflict detection type used for resolution.\n\n---\n\n##### `handlerType`Required \n\n```typescript\npublic readonly handlerType: string;\n```\n\n- *Type:* string\n\nThis conflict resolution strategy executes an auto-merge.\n\nFor more information, refer to https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html#conflict-detection-and-resolution\n\n---\n\n### ConflictResolution \n\nProject level configuration for conflict resolution.\n\n#### Initializer \n\n```typescript\nimport { ConflictResolution } from '@aws-amplify/graphql-api-construct'\n\nconst conflictResolution: ConflictResolution = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| models | {[ key: string ]: AutomergeConflictResolutionStrategy \\| OptimisticConflictResolutionStrategy \\| CustomConflictResolutionStrategy} | Model-specific conflict resolution overrides. |\n| project | AutomergeConflictResolutionStrategy \\| OptimisticConflictResolutionStrategy \\| CustomConflictResolutionStrategy | Project-wide config for conflict resolution. |\n\n---\n\n##### ~~`models`~~Optional \n\n- *Deprecated:* use DataStoreConfiguration instead.\n\n```typescript\npublic readonly models: {[ key: string ]: AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy};\n```\n\n- *Type:* {[ key: string ]: AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy}\n\nModel-specific conflict resolution overrides.\n\n---\n\n##### ~~`project`~~Optional \n\n- *Deprecated:* use DataStoreConfiguration instead.\n\n```typescript\npublic readonly project: AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy;\n```\n\n- *Type:* AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy\n\nProject-wide config for conflict resolution.\n\nApplies to all non-overridden models.\n\n---\n\n### ConflictResolutionStrategyBase \n\nCommon parameters for conflict resolution.\n\n#### Initializer \n\n```typescript\nimport { ConflictResolutionStrategyBase } from '@aws-amplify/graphql-api-construct'\n\nconst conflictResolutionStrategyBase: ConflictResolutionStrategyBase = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| detectionType | string | The conflict detection type used for resolution. |\n\n---\n\n##### `detectionType`Required \n\n```typescript\npublic readonly detectionType: string;\n```\n\n- *Type:* string\n\nThe conflict detection type used for resolution.\n\n---\n\n### CustomConflictResolutionStrategy \n\nEnable custom sync on the project, powered by a lambda.\n\n#### Initializer \n\n```typescript\nimport { CustomConflictResolutionStrategy } from '@aws-amplify/graphql-api-construct'\n\nconst customConflictResolutionStrategy: CustomConflictResolutionStrategy = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| detectionType | string | The conflict detection type used for resolution. |\n| conflictHandler | aws-cdk-lib.aws_lambda.IFunction | The function which will be invoked for conflict resolution. |\n| handlerType | string | This conflict resolution strategy uses a lambda handler type. |\n\n---\n\n##### `detectionType`Required \n\n```typescript\npublic readonly detectionType: string;\n```\n\n- *Type:* string\n\nThe conflict detection type used for resolution.\n\n---\n\n##### `conflictHandler`Required \n\n```typescript\npublic readonly conflictHandler: IFunction;\n```\n\n- *Type:* aws-cdk-lib.aws_lambda.IFunction\n\nThe function which will be invoked for conflict resolution.\n\n---\n\n##### `handlerType`Required \n\n```typescript\npublic readonly handlerType: string;\n```\n\n- *Type:* string\n\nThis conflict resolution strategy uses a lambda handler type.\n\nFor more information, refer to https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html#conflict-detection-and-resolution\n\n---\n\n### CustomSqlDataSourceStrategy \n\nThe input type for defining a ModelDataSourceStrategy used to resolve a field annotated with a `@sql` directive.\n\nAlthough this is a\npublic type, you should rarely need to use this. The AmplifyGraphqlDefinition factory methods (e.g., `fromString`,\n`fromFilesAndStrategy`) will automatically construct this structure for you.\n\n#### Initializer \n\n```typescript\nimport { CustomSqlDataSourceStrategy } from '@aws-amplify/graphql-api-construct'\n\nconst customSqlDataSourceStrategy: CustomSqlDataSourceStrategy = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| fieldName | string | The field name with which the custom SQL is associated. |\n| strategy | SQLLambdaModelDataSourceStrategy | The strategy used to create the datasource that will resolve the custom SQL statement. |\n| typeName | string | The built-in type (either \"Query\" or \"Mutation\") with which the custom SQL is associated. |\n\n---\n\n##### `fieldName`Required \n\n```typescript\npublic readonly fieldName: string;\n```\n\n- *Type:* string\n\nThe field name with which the custom SQL is associated.\n\n---\n\n##### `strategy`Required \n\n```typescript\npublic readonly strategy: SQLLambdaModelDataSourceStrategy;\n```\n\n- *Type:* SQLLambdaModelDataSourceStrategy\n\nThe strategy used to create the datasource that will resolve the custom SQL statement.\n\n---\n\n##### `typeName`Required \n\n```typescript\npublic readonly typeName: string;\n```\n\n- *Type:* string\n\nThe built-in type (either \"Query\" or \"Mutation\") with which the custom SQL is associated.\n\n---\n\n### DataStoreConfiguration \n\nProject level configuration for DataStore.\n\n#### Initializer \n\n```typescript\nimport { DataStoreConfiguration } from '@aws-amplify/graphql-api-construct'\n\nconst dataStoreConfiguration: DataStoreConfiguration = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| models | {[ key: string ]: AutomergeConflictResolutionStrategy \\| OptimisticConflictResolutionStrategy \\| CustomConflictResolutionStrategy} | Model-specific conflict resolution overrides. |\n| project | AutomergeConflictResolutionStrategy \\| OptimisticConflictResolutionStrategy \\| CustomConflictResolutionStrategy | Project-wide config for conflict resolution. |\n\n---\n\n##### `models`Optional \n\n```typescript\npublic readonly models: {[ key: string ]: AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy};\n```\n\n- *Type:* {[ key: string ]: AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy}\n\nModel-specific conflict resolution overrides.\n\n---\n\n##### `project`Optional \n\n```typescript\npublic readonly project: AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy;\n```\n\n- *Type:* AutomergeConflictResolutionStrategy | OptimisticConflictResolutionStrategy | CustomConflictResolutionStrategy\n\nProject-wide config for conflict resolution.\n\nApplies to all non-overridden models.\n\n---\n\n### DefaultDynamoDbModelDataSourceStrategy \n\nUse default CloudFormation type 'AWS::DynamoDB::Table' to provision table.\n\n#### Initializer \n\n```typescript\nimport { DefaultDynamoDbModelDataSourceStrategy } from '@aws-amplify/graphql-api-construct'\n\nconst defaultDynamoDbModelDataSourceStrategy: DefaultDynamoDbModelDataSourceStrategy = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| dbType | string | *No description.* |\n| provisionStrategy | string | *No description.* |\n\n---\n\n##### `dbType`Required \n\n```typescript\npublic readonly dbType: string;\n```\n\n- *Type:* string\n\n---\n\n##### `provisionStrategy`Required \n\n```typescript\npublic readonly provisionStrategy: string;\n```\n\n- *Type:* string\n\n---\n\n### FunctionSlotBase \n\nCommon slot parameters.\n\n#### Initializer \n\n```typescript\nimport { FunctionSlotBase } from '@aws-amplify/graphql-api-construct'\n\nconst functionSlotBase: FunctionSlotBase = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| fieldName | string | The field to attach this function to on the Api definition. |\n| function | FunctionSlotOverride | The overridden behavior for this slot. |\n| slotIndex | number | The slot index to use to inject this into the execution pipeline. |\n\n---\n\n##### `fieldName`Required \n\n```typescript\npublic readonly fieldName: string;\n```\n\n- *Type:* string\n\nThe field to attach this function to on the Api definition.\n\n---\n\n##### `function`Required \n\n```typescript\npublic readonly function: FunctionSlotOverride;\n```\n\n- *Type:* FunctionSlotOverride\n\nThe overridden behavior for this slot.\n\n---\n\n##### `slotIndex`Required \n\n```typescript\npublic readonly slotIndex: number;\n```\n\n- *Type:* number\n\nThe slot index to use to inject this into the execution pipeline.\n\nFor more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers\n\n---\n\n### FunctionSlotOverride \n\nParams exposed to support configuring and overriding pipelined slots.\n\nThis allows configuration of the underlying function,\nincluding the request and response mapping templates.\n\n#### Initializer \n\n```typescript\nimport { FunctionSlotOverride } from '@aws-amplify/graphql-api-construct'\n\nconst functionSlotOverride: FunctionSlotOverride = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| requestMappingTemplate | aws-cdk-lib.aws_appsync.MappingTemplate | Override request mapping template for the function slot. |\n| responseMappingTemplate | aws-cdk-lib.aws_appsync.MappingTemplate | Override response mapping template for the function slot. |\n\n---\n\n##### `requestMappingTemplate`Optional \n\n```typescript\npublic readonly requestMappingTemplate: MappingTemplate;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.MappingTemplate\n\nOverride request mapping template for the function slot.\n\nExecuted before the datasource is invoked.\n\n---\n\n##### `responseMappingTemplate`Optional \n\n```typescript\npublic readonly responseMappingTemplate: MappingTemplate;\n```\n\n- *Type:* aws-cdk-lib.aws_appsync.MappingTemplate\n\nOverride response mapping template for the function slot.\n\nExecuted after the datasource is invoked.\n\n---\n\n### IAMAuthorizationConfig \n\nConfiguration for IAM Authorization on the Graphql Api.\n\n#### Initializer \n\n```typescript\nimport { IAMAuthorizationConfig } from '@aws-amplify/graphql-api-construct'\n\nconst iAMAuthorizationConfig: IAMAuthorizationConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| authenticatedUserRole | aws-cdk-lib.aws_iam.IRole | Authenticated user role, applies to { provider: iam, allow: private } access. |\n| identityPoolId | string | ID for the Cognito Identity Pool vending auth and unauth roles. |\n| unauthenticatedUserRole | aws-cdk-lib.aws_iam.IRole | Unauthenticated user role, applies to { provider: iam, allow: public } access. |\n| allowListedRoles | string \\| aws-cdk-lib.aws_iam.IRole[] | A list of IAM roles which will be granted full read/write access to the generated model if IAM auth is enabled. |\n\n---\n\n##### `authenticatedUserRole`Required \n\n```typescript\npublic readonly authenticatedUserRole: IRole;\n```\n\n- *Type:* aws-cdk-lib.aws_iam.IRole\n\nAuthenticated user role, applies to { provider: iam, allow: private } access.\n\n---\n\n##### `identityPoolId`Required \n\n```typescript\npublic readonly identityPoolId: string;\n```\n\n- *Type:* string\n\nID for the Cognito Identity Pool vending auth and unauth roles.\n\nFormat: `:`\n\n---\n\n##### `unauthenticatedUserRole`Required \n\n```typescript\npublic readonly unauthenticatedUserRole: IRole;\n```\n\n- *Type:* aws-cdk-lib.aws_iam.IRole\n\nUnauthenticated user role, applies to { provider: iam, allow: public } access.\n\n---\n\n##### `allowListedRoles`Optional \n\n```typescript\npublic readonly allowListedRoles: string | IRole[];\n```\n\n- *Type:* string | aws-cdk-lib.aws_iam.IRole[]\n\nA list of IAM roles which will be granted full read/write access to the generated model if IAM auth is enabled.\n\nIf an IRole is provided, the role `name` will be used for matching.\nIf a string is provided, the raw value will be used for matching.\n\n---\n\n### LambdaAuthorizationConfig \n\nConfiguration for Custom Lambda authorization on the Graphql Api.\n\n#### Initializer \n\n```typescript\nimport { LambdaAuthorizationConfig } from '@aws-amplify/graphql-api-construct'\n\nconst lambdaAuthorizationConfig: LambdaAuthorizationConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| function | aws-cdk-lib.aws_lambda.IFunction | The authorizer lambda function. |\n| ttl | aws-cdk-lib.Duration | How long the results are cached. |\n\n---\n\n##### `function`Required \n\n```typescript\npublic readonly function: IFunction;\n```\n\n- *Type:* aws-cdk-lib.aws_lambda.IFunction\n\nThe authorizer lambda function.\n\n---\n\n##### `ttl`Required \n\n```typescript\npublic readonly ttl: Duration;\n```\n\n- *Type:* aws-cdk-lib.Duration\n\nHow long the results are cached.\n\n---\n\n### MutationFunctionSlot \n\nSlot types for Mutation Resolvers.\n\n#### Initializer \n\n```typescript\nimport { MutationFunctionSlot } from '@aws-amplify/graphql-api-construct'\n\nconst mutationFunctionSlot: MutationFunctionSlot = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| fieldName | string | The field to attach this function to on the Api definition. |\n| function | FunctionSlotOverride | The overridden behavior for this slot. |\n| slotIndex | number | The slot index to use to inject this into the execution pipeline. |\n| slotName | string | The slot name to inject this behavior into. |\n| typeName | string | This slot type applies to the Mutation type on the Api definition. |\n\n---\n\n##### `fieldName`Required \n\n```typescript\npublic readonly fieldName: string;\n```\n\n- *Type:* string\n\nThe field to attach this function to on the Api definition.\n\n---\n\n##### `function`Required \n\n```typescript\npublic readonly function: FunctionSlotOverride;\n```\n\n- *Type:* FunctionSlotOverride\n\nThe overridden behavior for this slot.\n\n---\n\n##### `slotIndex`Required \n\n```typescript\npublic readonly slotIndex: number;\n```\n\n- *Type:* number\n\nThe slot index to use to inject this into the execution pipeline.\n\nFor more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers\n\n---\n\n##### `slotName`Required \n\n```typescript\npublic readonly slotName: string;\n```\n\n- *Type:* string\n\nThe slot name to inject this behavior into.\n\nFor more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers\n\n---\n\n##### `typeName`Required \n\n```typescript\npublic readonly typeName: string;\n```\n\n- *Type:* string\n\nThis slot type applies to the Mutation type on the Api definition.\n\n---\n\n### OIDCAuthorizationConfig \n\nConfiguration for OpenId Connect Authorization on the Graphql Api.\n\n#### Initializer \n\n```typescript\nimport { OIDCAuthorizationConfig } from '@aws-amplify/graphql-api-construct'\n\nconst oIDCAuthorizationConfig: OIDCAuthorizationConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| oidcIssuerUrl | string | Url for the OIDC token issuer. |\n| oidcProviderName | string | The issuer for the OIDC configuration. |\n| tokenExpiryFromAuth | aws-cdk-lib.Duration | The duration an OIDC token is valid after being authenticated by OIDC provider. |\n| tokenExpiryFromIssue | aws-cdk-lib.Duration | The duration an OIDC token is valid after being issued to a user. |\n| clientId | string | The client identifier of the Relying party at the OpenID identity provider. |\n\n---\n\n##### `oidcIssuerUrl`Required \n\n```typescript\npublic readonly oidcIssuerUrl: string;\n```\n\n- *Type:* string\n\nUrl for the OIDC token issuer.\n\n---\n\n##### `oidcProviderName`Required \n\n```typescript\npublic readonly oidcProviderName: string;\n```\n\n- *Type:* string\n\nThe issuer for the OIDC configuration.\n\n---\n\n##### `tokenExpiryFromAuth`Required \n\n```typescript\npublic readonly tokenExpiryFromAuth: Duration;\n```\n\n- *Type:* aws-cdk-lib.Duration\n\nThe duration an OIDC token is valid after being authenticated by OIDC provider.\n\nauth_time claim in OIDC token is required for this validation to work.\n\n---\n\n##### `tokenExpiryFromIssue`Required \n\n```typescript\npublic readonly tokenExpiryFromIssue: Duration;\n```\n\n- *Type:* aws-cdk-lib.Duration\n\nThe duration an OIDC token is valid after being issued to a user.\n\nThis validation uses iat claim of OIDC token.\n\n---\n\n##### `clientId`Optional \n\n```typescript\npublic readonly clientId: string;\n```\n\n- *Type:* string\n\nThe client identifier of the Relying party at the OpenID identity provider.\n\nA regular expression can be specified so AppSync can validate against multiple client identifiers at a time. Example\n\n---\n\n### OptimisticConflictResolutionStrategy \n\nEnable automerge on the project.\n\n#### Initializer \n\n```typescript\nimport { OptimisticConflictResolutionStrategy } from '@aws-amplify/graphql-api-construct'\n\nconst optimisticConflictResolutionStrategy: OptimisticConflictResolutionStrategy = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| detectionType | string | The conflict detection type used for resolution. |\n| handlerType | string | This conflict resolution strategy the _version to perform optimistic concurrency. |\n\n---\n\n##### `detectionType`Required \n\n```typescript\npublic readonly detectionType: string;\n```\n\n- *Type:* string\n\nThe conflict detection type used for resolution.\n\n---\n\n##### `handlerType`Required \n\n```typescript\npublic readonly handlerType: string;\n```\n\n- *Type:* string\n\nThis conflict resolution strategy the _version to perform optimistic concurrency.\n\nFor more information, refer to https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html#conflict-detection-and-resolution\n\n---\n\n### PartialTranslationBehavior \n\nA utility interface equivalent to Partial.\n\n#### Initializer \n\n```typescript\nimport { PartialTranslationBehavior } from '@aws-amplify/graphql-api-construct'\n\nconst partialTranslationBehavior: PartialTranslationBehavior = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| allowDestructiveGraphqlSchemaUpdates | boolean | The following schema updates require replacement of the underlying DynamoDB table:. |\n| disableResolverDeduping | boolean | Disable resolver deduping, this can sometimes cause problems because dedupe ordering isn't stable today, which can lead to circular dependencies across stacks if models are reordered. |\n| enableAutoIndexQueryNames | boolean | Automate generation of query names, and as a result attaching all indexes as queries to the generated Api. |\n| enableSearchNodeToNodeEncryption | boolean | If enabled, set nodeToNodeEncryption on the searchable domain (if one exists). |\n| enableTransformerCfnOutputs | boolean | When enabled, internal cfn outputs which existed in Amplify-generated apps will continue to be emitted. |\n| populateOwnerFieldForStaticGroupAuth | boolean | Ensure that the owner field is still populated even if a static iam or group authorization applies. |\n| replaceTableUponGsiUpdate | boolean | This behavior will only come into effect when both \"allowDestructiveGraphqlSchemaUpdates\" and this value are set to true. |\n| respectPrimaryKeyAttributesOnConnectionField | boolean | Enable custom primary key support, there's no good reason to disable this unless trying not to update a legacy app. |\n| sandboxModeEnabled | boolean | Enabling sandbox mode will enable api key auth on all models in the transformed schema. |\n| secondaryKeyAsGSI | boolean | If disabled, generated. |\n| shouldDeepMergeDirectiveConfigDefaults | boolean | Restore parity w/ GQLv1. |\n| suppressApiKeyGeneration | boolean | If enabled, disable api key resource generation even if specified as an auth rule on the construct. |\n| useSubUsernameForDefaultIdentityClaim | boolean | Ensure that oidc and userPool auth use the `sub` field in the for the username field, which disallows new users with the same id to access data from a deleted user in the pool. |\n\n---\n\n##### `allowDestructiveGraphqlSchemaUpdates`Optional \n\n```typescript\npublic readonly allowDestructiveGraphqlSchemaUpdates: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nThe following schema updates require replacement of the underlying DynamoDB table:.\n\nRemoving or renaming a model\n - Modifying the primary key of a model\n - Modifying a Local Secondary Index of a model (only applies to projects with secondaryKeyAsGSI turned off)\n\nALL DATA WILL BE LOST when the table replacement happens. When enabled, destructive updates are allowed.\nThis will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".\n\n---\n\n##### `disableResolverDeduping`Optional \n\n```typescript\npublic readonly disableResolverDeduping: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nDisable resolver deduping, this can sometimes cause problems because dedupe ordering isn't stable today, which can lead to circular dependencies across stacks if models are reordered.\n\n---\n\n##### `enableAutoIndexQueryNames`Optional \n\n```typescript\npublic readonly enableAutoIndexQueryNames: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nAutomate generation of query names, and as a result attaching all indexes as queries to the generated Api.\n\nIf enabled,\n\n---\n\n##### `enableSearchNodeToNodeEncryption`Optional \n\n```typescript\npublic readonly enableSearchNodeToNodeEncryption: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nIf enabled, set nodeToNodeEncryption on the searchable domain (if one exists).\n\nNot recommended for use, prefer\nto use `Object.values(resources.additionalResources['AWS::Elasticsearch::Domain']).forEach((domain: CfnDomain) => {\n domain.NodeToNodeEncryptionOptions = { Enabled: True };\n});\n\n---\n\n##### `enableTransformerCfnOutputs`Optional \n\n```typescript\npublic readonly enableTransformerCfnOutputs: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nWhen enabled, internal cfn outputs which existed in Amplify-generated apps will continue to be emitted.\n\n---\n\n##### `populateOwnerFieldForStaticGroupAuth`Optional \n\n```typescript\npublic readonly populateOwnerFieldForStaticGroupAuth: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nEnsure that the owner field is still populated even if a static iam or group authorization applies.\n\n---\n\n##### `replaceTableUponGsiUpdate`Optional \n\n```typescript\npublic readonly replaceTableUponGsiUpdate: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nThis behavior will only come into effect when both \"allowDestructiveGraphqlSchemaUpdates\" and this value are set to true.\n\nWhen enabled, any global secondary index update operation will replace the table instead of iterative deployment, which will WIPE ALL\nEXISTING DATA but cost much less time for deployment This will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".\n\n---\n\n##### `respectPrimaryKeyAttributesOnConnectionField`Optional \n\n```typescript\npublic readonly respectPrimaryKeyAttributesOnConnectionField: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nEnable custom primary key support, there's no good reason to disable this unless trying not to update a legacy app.\n\n---\n\n##### `sandboxModeEnabled`Optional \n\n```typescript\npublic readonly sandboxModeEnabled: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nEnabling sandbox mode will enable api key auth on all models in the transformed schema.\n\n---\n\n##### `secondaryKeyAsGSI`Optional \n\n```typescript\npublic readonly secondaryKeyAsGSI: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nIf disabled, generated.\n\n---\n\n##### `shouldDeepMergeDirectiveConfigDefaults`Optional \n\n```typescript\npublic readonly shouldDeepMergeDirectiveConfigDefaults: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nRestore parity w/ GQLv1.\n\n---\n\n##### `suppressApiKeyGeneration`Optional \n\n```typescript\npublic readonly suppressApiKeyGeneration: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nIf enabled, disable api key resource generation even if specified as an auth rule on the construct.\n\nThis is a legacy parameter from the Graphql Transformer existing in Amplify CLI, not recommended to change.\n\n---\n\n##### `useSubUsernameForDefaultIdentityClaim`Optional \n\n```typescript\npublic readonly useSubUsernameForDefaultIdentityClaim: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nEnsure that oidc and userPool auth use the `sub` field in the for the username field, which disallows new users with the same id to access data from a deleted user in the pool.\n\n---\n\n### ProvisionedConcurrencyConfig \n\nThe configuration for the provisioned concurrency of the Lambda.\n\n#### Initializer \n\n```typescript\nimport { ProvisionedConcurrencyConfig } from '@aws-amplify/graphql-api-construct'\n\nconst provisionedConcurrencyConfig: ProvisionedConcurrencyConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| provisionedConcurrentExecutions | number | The amount of provisioned concurrency to allocate. |\n\n---\n\n##### `provisionedConcurrentExecutions`Required \n\n```typescript\npublic readonly provisionedConcurrentExecutions: number;\n```\n\n- *Type:* number\n\nThe amount of provisioned concurrency to allocate.\n\n*\n\n---\n\n### ProvisionedThroughput \n\nWrapper for provisioned throughput config in DDB.\n\n#### Initializer \n\n```typescript\nimport { ProvisionedThroughput } from '@aws-amplify/graphql-api-construct'\n\nconst provisionedThroughput: ProvisionedThroughput = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| readCapacityUnits | number | The read capacity units on the table or index. |\n| writeCapacityUnits | number | The write capacity units on the table or index. |\n\n---\n\n##### `readCapacityUnits`Required \n\n```typescript\npublic readonly readCapacityUnits: number;\n```\n\n- *Type:* number\n\nThe read capacity units on the table or index.\n\n---\n\n##### `writeCapacityUnits`Required \n\n```typescript\npublic readonly writeCapacityUnits: number;\n```\n\n- *Type:* number\n\nThe write capacity units on the table or index.\n\n---\n\n### QueryFunctionSlot \n\nSlot types for Query Resolvers.\n\n#### Initializer \n\n```typescript\nimport { QueryFunctionSlot } from '@aws-amplify/graphql-api-construct'\n\nconst queryFunctionSlot: QueryFunctionSlot = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| fieldName | string | The field to attach this function to on the Api definition. |\n| function | FunctionSlotOverride | The overridden behavior for this slot. |\n| slotIndex | number | The slot index to use to inject this into the execution pipeline. |\n| slotName | string | The slot name to inject this behavior into. |\n| typeName | string | This slot type applies to the Query type on the Api definition. |\n\n---\n\n##### `fieldName`Required \n\n```typescript\npublic readonly fieldName: string;\n```\n\n- *Type:* string\n\nThe field to attach this function to on the Api definition.\n\n---\n\n##### `function`Required \n\n```typescript\npublic readonly function: FunctionSlotOverride;\n```\n\n- *Type:* FunctionSlotOverride\n\nThe overridden behavior for this slot.\n\n---\n\n##### `slotIndex`Required \n\n```typescript\npublic readonly slotIndex: number;\n```\n\n- *Type:* number\n\nThe slot index to use to inject this into the execution pipeline.\n\nFor more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers\n\n---\n\n##### `slotName`Required \n\n```typescript\npublic readonly slotName: string;\n```\n\n- *Type:* string\n\nThe slot name to inject this behavior into.\n\nFor more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers\n\n---\n\n##### `typeName`Required \n\n```typescript\npublic readonly typeName: string;\n```\n\n- *Type:* string\n\nThis slot type applies to the Query type on the Api definition.\n\n---\n\n### SQLLambdaModelDataSourceStrategy \n\nA strategy that creates a Lambda to connect to a pre-existing SQL table to resolve model data.\n\n#### Initializer \n\n```typescript\nimport { SQLLambdaModelDataSourceStrategy } from '@aws-amplify/graphql-api-construct'\n\nconst sQLLambdaModelDataSourceStrategy: SQLLambdaModelDataSourceStrategy = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| dbConnectionConfig | SqlModelDataSourceSecretsManagerDbConnectionConfig \\| SqlModelDataSourceSsmDbConnectionConfig | The parameters the Lambda data source will use to connect to the database. |\n| dbType | string | The type of the SQL database used to process model operations for this definition. |\n| name | string | The name of the strategy. |\n| customSqlStatements | {[ key: string ]: string} | Custom SQL statements. |\n| sqlLambdaProvisionedConcurrencyConfig | ProvisionedConcurrencyConfig | The configuration for the provisioned concurrency of the Lambda. |\n| vpcConfiguration | VpcConfig | The configuration of the VPC into which to install the Lambda. |\n\n---\n\n##### `dbConnectionConfig`Required \n\n```typescript\npublic readonly dbConnectionConfig: SqlModelDataSourceSecretsManagerDbConnectionConfig | SqlModelDataSourceSsmDbConnectionConfig;\n```\n\n- *Type:* SqlModelDataSourceSecretsManagerDbConnectionConfig | SqlModelDataSourceSsmDbConnectionConfig\n\nThe parameters the Lambda data source will use to connect to the database.\n\n---\n\n##### `dbType`Required \n\n```typescript\npublic readonly dbType: string;\n```\n\n- *Type:* string\n\nThe type of the SQL database used to process model operations for this definition.\n\n---\n\n##### `name`Required \n\n```typescript\npublic readonly name: string;\n```\n\n- *Type:* string\n\nThe name of the strategy.\n\nThis will be used to name the AppSync DataSource itself, plus any associated resources like resolver Lambdas.\nThis name must be unique across all schema definitions in a GraphQL API.\n\n---\n\n##### `customSqlStatements`Optional \n\n```typescript\npublic readonly customSqlStatements: {[ key: string ]: string};\n```\n\n- *Type:* {[ key: string ]: string}\n\nCustom SQL statements.\n\nThe key is the value of the `references` attribute of the `@sql` directive in the `schema`; the value is the SQL\nto be executed.\n\n---\n\n##### `sqlLambdaProvisionedConcurrencyConfig`Optional \n\n```typescript\npublic readonly sqlLambdaProvisionedConcurrencyConfig: ProvisionedConcurrencyConfig;\n```\n\n- *Type:* ProvisionedConcurrencyConfig\n\nThe configuration for the provisioned concurrency of the Lambda.\n\n---\n\n##### `vpcConfiguration`Optional \n\n```typescript\npublic readonly vpcConfiguration: VpcConfig;\n```\n\n- *Type:* VpcConfig\n\nThe configuration of the VPC into which to install the Lambda.\n\n---\n\n### SqlModelDataSourceSecretsManagerDbConnectionConfig \n\nThe credentials stored in Secrets Manager that the lambda data source will use to connect to the database.\n\nThe managed secret should be in the same region as the lambda.\n\n#### Initializer \n\n```typescript\nimport { SqlModelDataSourceSecretsManagerDbConnectionConfig } from '@aws-amplify/graphql-api-construct'\n\nconst sqlModelDataSourceSecretsManagerDbConnectionConfig: SqlModelDataSourceSecretsManagerDbConnectionConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| databaseName | string | The database name. |\n| hostname | string | The hostame of the database. |\n| port | number | The port number of the database proxy, cluster, or instance. |\n| secretArn | string | The ARN of the managed secret with username, password, and hostname to use when connecting to the database. |\n| keyArn | string | The ARN of the customer managed encryption key for the secret. |\n\n---\n\n##### `databaseName`Required \n\n```typescript\npublic readonly databaseName: string;\n```\n\n- *Type:* string\n\nThe database name.\n\n---\n\n##### `hostname`Required \n\n```typescript\npublic readonly hostname: string;\n```\n\n- *Type:* string\n\nThe hostame of the database.\n\n---\n\n##### `port`Required \n\n```typescript\npublic readonly port: number;\n```\n\n- *Type:* number\n\nThe port number of the database proxy, cluster, or instance.\n\n---\n\n##### `secretArn`Required \n\n```typescript\npublic readonly secretArn: string;\n```\n\n- *Type:* string\n\nThe ARN of the managed secret with username, password, and hostname to use when connecting to the database.\n\n*\n\n---\n\n##### `keyArn`Optional \n\n```typescript\npublic readonly keyArn: string;\n```\n\n- *Type:* string\n\nThe ARN of the customer managed encryption key for the secret.\n\nIf not supplied, the secret is expected to be encrypted with the default AWS-managed key. *\n\n---\n\n### SqlModelDataSourceSsmDbConnectionConfig \n\nThe Secure Systems Manager parameter paths the Lambda data source will use to connect to the database.\n\nThese parameters are retrieved from Secure Systems Manager in the same region as the Lambda.\n\n#### Initializer \n\n```typescript\nimport { SqlModelDataSourceSsmDbConnectionConfig } from '@aws-amplify/graphql-api-construct'\n\nconst sqlModelDataSourceSsmDbConnectionConfig: SqlModelDataSourceSsmDbConnectionConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| databaseNameSsmPath | string | The Secure Systems Manager parameter containing the database name. |\n| hostnameSsmPath | string | The Secure Systems Manager parameter containing the hostname of the database. |\n| passwordSsmPath | string | The Secure Systems Manager parameter containing the password to use when connecting to the database. |\n| portSsmPath | string | The Secure Systems Manager parameter containing the port number of the database proxy, cluster, or instance. |\n| usernameSsmPath | string | The Secure Systems Manager parameter containing the username to use when connecting to the database. |\n\n---\n\n##### `databaseNameSsmPath`Required \n\n```typescript\npublic readonly databaseNameSsmPath: string;\n```\n\n- *Type:* string\n\nThe Secure Systems Manager parameter containing the database name.\n\n---\n\n##### `hostnameSsmPath`Required \n\n```typescript\npublic readonly hostnameSsmPath: string;\n```\n\n- *Type:* string\n\nThe Secure Systems Manager parameter containing the hostname of the database.\n\nFor RDS-based SQL data sources, this can be the hostname\nof a database proxy, cluster, or instance.\n\n---\n\n##### `passwordSsmPath`Required \n\n```typescript\npublic readonly passwordSsmPath: string;\n```\n\n- *Type:* string\n\nThe Secure Systems Manager parameter containing the password to use when connecting to the database.\n\n---\n\n##### `portSsmPath`Required \n\n```typescript\npublic readonly portSsmPath: string;\n```\n\n- *Type:* string\n\nThe Secure Systems Manager parameter containing the port number of the database proxy, cluster, or instance.\n\n---\n\n##### `usernameSsmPath`Required \n\n```typescript\npublic readonly usernameSsmPath: string;\n```\n\n- *Type:* string\n\nThe Secure Systems Manager parameter containing the username to use when connecting to the database.\n\n---\n\n### SSESpecification \n\nRepresents the settings used to enable server-side encryption.\n\n#### Initializer \n\n```typescript\nimport { SSESpecification } from '@aws-amplify/graphql-api-construct'\n\nconst sSESpecification: SSESpecification = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| sseEnabled | boolean | Indicates whether server-side encryption is done using an AWS managed key or an AWS owned key. |\n| kmsMasterKeyId | string | The AWS KMS key that should be used for the AWS KMS encryption. |\n| sseType | SSEType | Server-side encryption type. |\n\n---\n\n##### `sseEnabled`Required \n\n```typescript\npublic readonly sseEnabled: boolean;\n```\n\n- *Type:* boolean\n\nIndicates whether server-side encryption is done using an AWS managed key or an AWS owned key.\n\nIf enabled (true), server-side encryption type is set to `KMS` and an AWS managed key is used ( AWS KMS charges apply).\nIf disabled (false) or not specified, server-side encryption is set to AWS owned key.\n\n---\n\n##### `kmsMasterKeyId`Optional \n\n```typescript\npublic readonly kmsMasterKeyId: string;\n```\n\n- *Type:* string\n\nThe AWS KMS key that should be used for the AWS KMS encryption.\n\nTo specify a key, use its key ID, Amazon Resource Name (ARN), alias name, or alias ARN. Note that you should only provide\nthis parameter if the key is different from the default DynamoDB key `alias/aws/dynamodb` .\n\n---\n\n##### `sseType`Optional \n\n```typescript\npublic readonly sseType: SSEType;\n```\n\n- *Type:* SSEType\n\nServer-side encryption type.\n\nThe only supported value is:\n`KMS` Server-side encryption that uses AWS Key Management Service.\n The key is stored in your account and is managed by AWS KMS ( AWS KMS charges apply).\n\n---\n\n### StreamSpecification \n\nRepresents the DynamoDB Streams configuration for a table in DynamoDB.\n\n#### Initializer \n\n```typescript\nimport { StreamSpecification } from '@aws-amplify/graphql-api-construct'\n\nconst streamSpecification: StreamSpecification = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| streamViewType | aws-cdk-lib.aws_dynamodb.StreamViewType | When an item in the table is modified, `StreamViewType` determines what information is written to the stream for this table. |\n\n---\n\n##### `streamViewType`Required \n\n```typescript\npublic readonly streamViewType: StreamViewType;\n```\n\n- *Type:* aws-cdk-lib.aws_dynamodb.StreamViewType\n\nWhen an item in the table is modified, `StreamViewType` determines what information is written to the stream for this table.\n\nValid values for `StreamViewType` are:\n- `KEYS_ONLY` - Only the key attributes of the modified item are written to the stream.\n- `NEW_IMAGE` - The entire item, as it appears after it was modified, is written to the stream.\n- `OLD_IMAGE` - The entire item, as it appeared before it was modified, is written to the stream.\n- `NEW_AND_OLD_IMAGES` - Both the new and the old item images of the item are written to the stream.\n\n---\n\n### SubnetAvailabilityZone \n\nSubnet configuration for VPC endpoints used by a Lambda resolver for a SQL-based data source.\n\nAlthough it is possible to create multiple\nsubnets in a single availability zone, VPC service endpoints may only be deployed to a single subnet in a given availability zone. This\nstructure ensures that the Lambda function and VPC service endpoints are mutually consistent.\n\n#### Initializer \n\n```typescript\nimport { SubnetAvailabilityZone } from '@aws-amplify/graphql-api-construct'\n\nconst subnetAvailabilityZone: SubnetAvailabilityZone = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| availabilityZone | string | The availability zone of the subnet. |\n| subnetId | string | The subnet ID to install the Lambda data source in. |\n\n---\n\n##### `availabilityZone`Required \n\n```typescript\npublic readonly availabilityZone: string;\n```\n\n- *Type:* string\n\nThe availability zone of the subnet.\n\n---\n\n##### `subnetId`Required \n\n```typescript\npublic readonly subnetId: string;\n```\n\n- *Type:* string\n\nThe subnet ID to install the Lambda data source in.\n\n---\n\n### SubscriptionFunctionSlot \n\nSlot types for Subscription Resolvers.\n\n#### Initializer \n\n```typescript\nimport { SubscriptionFunctionSlot } from '@aws-amplify/graphql-api-construct'\n\nconst subscriptionFunctionSlot: SubscriptionFunctionSlot = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| fieldName | string | The field to attach this function to on the Api definition. |\n| function | FunctionSlotOverride | The overridden behavior for this slot. |\n| slotIndex | number | The slot index to use to inject this into the execution pipeline. |\n| slotName | string | The slot name to inject this behavior into. |\n| typeName | string | This slot type applies to the Subscription type on the Api definition. |\n\n---\n\n##### `fieldName`Required \n\n```typescript\npublic readonly fieldName: string;\n```\n\n- *Type:* string\n\nThe field to attach this function to on the Api definition.\n\n---\n\n##### `function`Required \n\n```typescript\npublic readonly function: FunctionSlotOverride;\n```\n\n- *Type:* FunctionSlotOverride\n\nThe overridden behavior for this slot.\n\n---\n\n##### `slotIndex`Required \n\n```typescript\npublic readonly slotIndex: number;\n```\n\n- *Type:* number\n\nThe slot index to use to inject this into the execution pipeline.\n\nFor more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers\n\n---\n\n##### `slotName`Required \n\n```typescript\npublic readonly slotName: string;\n```\n\n- *Type:* string\n\nThe slot name to inject this behavior into.\n\nFor more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers\n\n---\n\n##### `typeName`Required \n\n```typescript\npublic readonly typeName: string;\n```\n\n- *Type:* string\n\nThis slot type applies to the Subscription type on the Api definition.\n\n---\n\n### TimeToLiveSpecification \n\nShape for TTL config.\n\n#### Initializer \n\n```typescript\nimport { TimeToLiveSpecification } from '@aws-amplify/graphql-api-construct'\n\nconst timeToLiveSpecification: TimeToLiveSpecification = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| enabled | boolean | Boolean determining if the ttl is enabled or not. |\n| attributeName | string | Attribute name to apply to the ttl spec. |\n\n---\n\n##### `enabled`Required \n\n```typescript\npublic readonly enabled: boolean;\n```\n\n- *Type:* boolean\n\nBoolean determining if the ttl is enabled or not.\n\n---\n\n##### `attributeName`Optional \n\n```typescript\npublic readonly attributeName: string;\n```\n\n- *Type:* string\n\nAttribute name to apply to the ttl spec.\n\n---\n\n### TranslationBehavior \n\nStrongly typed set of shared parameters for all transformers, and core layer.\n\nThis is intended to replace feature flags, to ensure param coercion happens in\na single location, and isn't spread around the transformers, where they can\nhave different default behaviors.\n\n#### Initializer \n\n```typescript\nimport { TranslationBehavior } from '@aws-amplify/graphql-api-construct'\n\nconst translationBehavior: TranslationBehavior = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| allowDestructiveGraphqlSchemaUpdates | boolean | The following schema updates require replacement of the underlying DynamoDB table:. |\n| disableResolverDeduping | boolean | Disable resolver deduping, this can sometimes cause problems because dedupe ordering isn't stable today, which can lead to circular dependencies across stacks if models are reordered. |\n| enableAutoIndexQueryNames | boolean | Automate generation of query names, and as a result attaching all indexes as queries to the generated Api. |\n| enableSearchNodeToNodeEncryption | boolean | *No description.* |\n| enableTransformerCfnOutputs | boolean | When enabled, internal cfn outputs which existed in Amplify-generated apps will continue to be emitted. |\n| populateOwnerFieldForStaticGroupAuth | boolean | Ensure that the owner field is still populated even if a static iam or group authorization applies. |\n| replaceTableUponGsiUpdate | boolean | This behavior will only come into effect when both \"allowDestructiveGraphqlSchemaUpdates\" and this value are set to true. |\n| respectPrimaryKeyAttributesOnConnectionField | boolean | Enable custom primary key support, there's no good reason to disable this unless trying not to update a legacy app. |\n| sandboxModeEnabled | boolean | Enabling sandbox mode will enable api key auth on all models in the transformed schema. |\n| secondaryKeyAsGSI | boolean | If disabled, generated. |\n| shouldDeepMergeDirectiveConfigDefaults | boolean | Restore parity w/ GQLv1. |\n| suppressApiKeyGeneration | boolean | If enabled, disable api key resource generation even if specified as an auth rule on the construct. |\n| useSubUsernameForDefaultIdentityClaim | boolean | Ensure that oidc and userPool auth use the `sub` field in the for the username field, which disallows new users with the same id to access data from a deleted user in the pool. |\n\n---\n\n##### `allowDestructiveGraphqlSchemaUpdates`Required \n\n```typescript\npublic readonly allowDestructiveGraphqlSchemaUpdates: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nThe following schema updates require replacement of the underlying DynamoDB table:.\n\nRemoving or renaming a model\n - Modifying the primary key of a model\n - Modifying a Local Secondary Index of a model (only applies to projects with secondaryKeyAsGSI turned off)\n\nALL DATA WILL BE LOST when the table replacement happens. When enabled, destructive updates are allowed.\nThis will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".\n\n---\n\n##### `disableResolverDeduping`Required \n\n```typescript\npublic readonly disableResolverDeduping: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nDisable resolver deduping, this can sometimes cause problems because dedupe ordering isn't stable today, which can lead to circular dependencies across stacks if models are reordered.\n\n---\n\n##### `enableAutoIndexQueryNames`Required \n\n```typescript\npublic readonly enableAutoIndexQueryNames: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nAutomate generation of query names, and as a result attaching all indexes as queries to the generated Api.\n\nIf enabled,\n\n---\n\n##### `enableSearchNodeToNodeEncryption`Required \n\n```typescript\npublic readonly enableSearchNodeToNodeEncryption: boolean;\n```\n\n- *Type:* boolean\n\n---\n\n##### `enableTransformerCfnOutputs`Required \n\n```typescript\npublic readonly enableTransformerCfnOutputs: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nWhen enabled, internal cfn outputs which existed in Amplify-generated apps will continue to be emitted.\n\n---\n\n##### `populateOwnerFieldForStaticGroupAuth`Required \n\n```typescript\npublic readonly populateOwnerFieldForStaticGroupAuth: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nEnsure that the owner field is still populated even if a static iam or group authorization applies.\n\n---\n\n##### `replaceTableUponGsiUpdate`Required \n\n```typescript\npublic readonly replaceTableUponGsiUpdate: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nThis behavior will only come into effect when both \"allowDestructiveGraphqlSchemaUpdates\" and this value are set to true.\n\nWhen enabled, any GSI update operation will replace the table instead of iterative deployment, which will WIPE ALL EXISTING DATA but\ncost much less time for deployment This will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".\n\n---\n\n##### `respectPrimaryKeyAttributesOnConnectionField`Required \n\n```typescript\npublic readonly respectPrimaryKeyAttributesOnConnectionField: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nEnable custom primary key support, there's no good reason to disable this unless trying not to update a legacy app.\n\n---\n\n##### `sandboxModeEnabled`Required \n\n```typescript\npublic readonly sandboxModeEnabled: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nEnabling sandbox mode will enable api key auth on all models in the transformed schema.\n\n---\n\n##### `secondaryKeyAsGSI`Required \n\n```typescript\npublic readonly secondaryKeyAsGSI: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nIf disabled, generated.\n\n---\n\n##### `shouldDeepMergeDirectiveConfigDefaults`Required \n\n```typescript\npublic readonly shouldDeepMergeDirectiveConfigDefaults: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nRestore parity w/ GQLv1.\n\n---\n\n##### `suppressApiKeyGeneration`Required \n\n```typescript\npublic readonly suppressApiKeyGeneration: boolean;\n```\n\n- *Type:* boolean\n- *Default:* false\n\nIf enabled, disable api key resource generation even if specified as an auth rule on the construct.\n\nThis is a legacy parameter from the Graphql Transformer existing in Amplify CLI, not recommended to change.\n\n---\n\n##### `useSubUsernameForDefaultIdentityClaim`Required \n\n```typescript\npublic readonly useSubUsernameForDefaultIdentityClaim: boolean;\n```\n\n- *Type:* boolean\n- *Default:* true\n\nEnsure that oidc and userPool auth use the `sub` field in the for the username field, which disallows new users with the same id to access data from a deleted user in the pool.\n\n---\n\n### UserPoolAuthorizationConfig \n\nConfiguration for Cognito UserPool Authorization on the Graphql Api.\n\n#### Initializer \n\n```typescript\nimport { UserPoolAuthorizationConfig } from '@aws-amplify/graphql-api-construct'\n\nconst userPoolAuthorizationConfig: UserPoolAuthorizationConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| userPool | aws-cdk-lib.aws_cognito.IUserPool | The Cognito User Pool which is used to authenticated JWT tokens, and vends group and user information. |\n\n---\n\n##### `userPool`Required \n\n```typescript\npublic readonly userPool: IUserPool;\n```\n\n- *Type:* aws-cdk-lib.aws_cognito.IUserPool\n\nThe Cognito User Pool which is used to authenticated JWT tokens, and vends group and user information.\n\n---\n\n### VpcConfig \n\nConfiguration of the VPC in which to install a Lambda to resolve queries against a SQL-based data source.\n\nThe SQL Lambda will be deployed\ninto the specified VPC, subnets, and security groups. The specified subnets and security groups must be in the same VPC. The VPC must\nhave at least one subnet. The construct will also create VPC service endpoints in the specified subnets, as well as inbound security\nrules, to allow traffic on port 443 within each security group. This allows the Lambda to read database connection information from\nSecure Systems Manager.\n\n#### Initializer \n\n```typescript\nimport { VpcConfig } from '@aws-amplify/graphql-api-construct'\n\nconst vpcConfig: VpcConfig = { ... }\n```\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| securityGroupIds | string[] | The security groups to install the Lambda data source in. |\n| subnetAvailabilityZoneConfig | SubnetAvailabilityZone[] | The subnets to install the Lambda data source in, one per availability zone. |\n| vpcId | string | The VPC to install the Lambda data source in. |\n\n---\n\n##### `securityGroupIds`Required \n\n```typescript\npublic readonly securityGroupIds: string[];\n```\n\n- *Type:* string[]\n\nThe security groups to install the Lambda data source in.\n\n---\n\n##### `subnetAvailabilityZoneConfig`Required \n\n```typescript\npublic readonly subnetAvailabilityZoneConfig: SubnetAvailabilityZone[];\n```\n\n- *Type:* SubnetAvailabilityZone[]\n\nThe subnets to install the Lambda data source in, one per availability zone.\n\n---\n\n##### `vpcId`Required \n\n```typescript\npublic readonly vpcId: string;\n```\n\n- *Type:* string\n\nThe VPC to install the Lambda data source in.\n\n---\n\n## Classes \n\n### AmplifyDynamoDbTableWrapper \n\nWrapper class around Custom::AmplifyDynamoDBTable custom resource, to simplify the override experience a bit.\n\nThis is NOT a construct, just an easier way to access\nthe generated construct.\nThis is a wrapper intended to mimic the `aws_cdk_lib.aws_dynamodb.Table` functionality more-or-less.\nNotable differences is the addition of TKTK properties, to account for the fact that they're constructor props\nin the CDK construct, as well as the removal of all from*, grant*, and metric* methods implemented by Table.\n\n#### Initializers \n\n```typescript\nimport { AmplifyDynamoDbTableWrapper } from '@aws-amplify/graphql-api-construct'\n\nnew AmplifyDynamoDbTableWrapper(resource: CfnResource)\n```\n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| resource | aws-cdk-lib.CfnResource | the Cfn resource. |\n\n---\n\n##### `resource`Required \n\n- *Type:* aws-cdk-lib.CfnResource\n\nthe Cfn resource.\n\n---\n\n#### Methods \n\n| **Name** | **Description** |\n| --- | --- |\n| applyRemovalPolicy | Set the deletion policy of the resource based on the removal policy specified. |\n| setGlobalSecondaryIndexProvisionedThroughput | Set the provisionedThroughtput for a specified GSI by name. |\n\n---\n\n##### `applyRemovalPolicy` \n\n```typescript\npublic applyRemovalPolicy(policy: RemovalPolicy): void\n```\n\nSet the deletion policy of the resource based on the removal policy specified.\n\n###### `policy`Required \n\n- *Type:* aws-cdk-lib.RemovalPolicy\n\nremoval policy to set.\n\n---\n\n##### `setGlobalSecondaryIndexProvisionedThroughput` \n\n```typescript\npublic setGlobalSecondaryIndexProvisionedThroughput(indexName: string, provisionedThroughput: ProvisionedThroughput): void\n```\n\nSet the provisionedThroughtput for a specified GSI by name.\n\n###### `indexName`Required \n\n- *Type:* string\n\nthe index to specify a provisionedThroughput config for.\n\n---\n\n###### `provisionedThroughput`Required \n\n- *Type:* ProvisionedThroughput\n\nthe config to set.\n\n---\n\n#### Static Functions \n\n| **Name** | **Description** |\n| --- | --- |\n| isAmplifyDynamoDbTableResource | Return true and perform type narrowing if a given input appears to be capable of. |\n\n---\n\n##### `isAmplifyDynamoDbTableResource` \n\n```typescript\nimport { AmplifyDynamoDbTableWrapper } from '@aws-amplify/graphql-api-construct'\n\nAmplifyDynamoDbTableWrapper.isAmplifyDynamoDbTableResource(x: any)\n```\n\nReturn true and perform type narrowing if a given input appears to be capable of.\n\n###### `x`Required \n\n- *Type:* any\n\nthe object to check.\n\n---\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| billingMode | aws-cdk-lib.aws_dynamodb.BillingMode | Specify how you are charged for read and write throughput and how you manage capacity. |\n| deletionProtectionEnabled | boolean | Set table deletion protection. |\n| pointInTimeRecoveryEnabled | boolean | Whether point-in-time recovery is enabled. |\n| provisionedThroughput | ProvisionedThroughput | Update the provisioned throughput for the base table. |\n| sseSpecification | SSESpecification | Set the ddb server-side encryption specification on the table. |\n| streamSpecification | StreamSpecification | Set the ddb stream specification on the table. |\n| timeToLiveAttribute | TimeToLiveSpecification | The name of TTL attribute. |\n\n---\n\n##### `billingMode`Required \n\n```typescript\npublic readonly billingMode: BillingMode;\n```\n\n- *Type:* aws-cdk-lib.aws_dynamodb.BillingMode\n\nSpecify how you are charged for read and write throughput and how you manage capacity.\n\n---\n\n##### `deletionProtectionEnabled`Required \n\n```typescript\npublic readonly deletionProtectionEnabled: boolean;\n```\n\n- *Type:* boolean\n\nSet table deletion protection.\n\n---\n\n##### `pointInTimeRecoveryEnabled`Required \n\n```typescript\npublic readonly pointInTimeRecoveryEnabled: boolean;\n```\n\n- *Type:* boolean\n\nWhether point-in-time recovery is enabled.\n\n---\n\n##### `provisionedThroughput`Required \n\n```typescript\npublic readonly provisionedThroughput: ProvisionedThroughput;\n```\n\n- *Type:* ProvisionedThroughput\n\nUpdate the provisioned throughput for the base table.\n\n---\n\n##### `sseSpecification`Required \n\n```typescript\npublic readonly sseSpecification: SSESpecification;\n```\n\n- *Type:* SSESpecification\n\nSet the ddb server-side encryption specification on the table.\n\n---\n\n##### `streamSpecification`Required \n\n```typescript\npublic readonly streamSpecification: StreamSpecification;\n```\n\n- *Type:* StreamSpecification\n\nSet the ddb stream specification on the table.\n\n---\n\n##### `timeToLiveAttribute`Required \n\n```typescript\npublic readonly timeToLiveAttribute: TimeToLiveSpecification;\n```\n\n- *Type:* TimeToLiveSpecification\n\nThe name of TTL attribute.\n\n---\n\n\n### AmplifyGraphqlDefinition \n\nClass exposing utilities to produce IAmplifyGraphqlDefinition objects given various inputs.\n\n#### Initializers \n\n```typescript\nimport { AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct'\n\nnew AmplifyGraphqlDefinition()\n```\n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n\n---\n\n\n#### Static Functions \n\n| **Name** | **Description** |\n| --- | --- |\n| combine | Combines multiple IAmplifyGraphqlDefinitions into a single definition. |\n| fromFiles | Convert one or more appsync SchemaFile objects into an Amplify Graphql Schema, binding them to a DynamoDB data source. |\n| fromFilesAndStrategy | Convert one or more appsync SchemaFile objects into an Amplify Graphql Schema. |\n| fromString | Produce a schema definition from a string input. |\n\n---\n\n##### `combine` \n\n```typescript\nimport { AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct'\n\nAmplifyGraphqlDefinition.combine(definitions: IAmplifyGraphqlDefinition[])\n```\n\nCombines multiple IAmplifyGraphqlDefinitions into a single definition.\n\n###### `definitions`Required \n\n- *Type:* IAmplifyGraphqlDefinition[]\n\nthe definitions to combine.\n\n---\n\n##### `fromFiles` \n\n```typescript\nimport { AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct'\n\nAmplifyGraphqlDefinition.fromFiles(filePaths: string)\n```\n\nConvert one or more appsync SchemaFile objects into an Amplify Graphql Schema, binding them to a DynamoDB data source.\n\n###### `filePaths`Required \n\n- *Type:* string\n\none or more paths to the graphql files to process.\n\n---\n\n##### `fromFilesAndStrategy` \n\n```typescript\nimport { AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct'\n\nAmplifyGraphqlDefinition.fromFilesAndStrategy(filePaths: string | string[], dataSourceStrategy?: DefaultDynamoDbModelDataSourceStrategy | AmplifyDynamoDbModelDataSourceStrategy | SQLLambdaModelDataSourceStrategy)\n```\n\nConvert one or more appsync SchemaFile objects into an Amplify Graphql Schema.\n\n###### `filePaths`Required \n\n- *Type:* string | string[]\n\none or more paths to the graphql files to process.\n\n---\n\n###### `dataSourceStrategy`Optional \n\n- *Type:* DefaultDynamoDbModelDataSourceStrategy | AmplifyDynamoDbModelDataSourceStrategy | SQLLambdaModelDataSourceStrategy\n\nthe provisioning definition for datasources that resolve `@model`s in this schema.\n\nThe DynamoDB from\nCloudFormation will be used by default.\n\n---\n\n##### `fromString` \n\n```typescript\nimport { AmplifyGraphqlDefinition } from '@aws-amplify/graphql-api-construct'\n\nAmplifyGraphqlDefinition.fromString(schema: string, dataSourceStrategy?: DefaultDynamoDbModelDataSourceStrategy | AmplifyDynamoDbModelDataSourceStrategy | SQLLambdaModelDataSourceStrategy)\n```\n\nProduce a schema definition from a string input.\n\n###### `schema`Required \n\n- *Type:* string\n\nthe graphql input as a string.\n\n---\n\n###### `dataSourceStrategy`Optional \n\n- *Type:* DefaultDynamoDbModelDataSourceStrategy | AmplifyDynamoDbModelDataSourceStrategy | SQLLambdaModelDataSourceStrategy\n\nthe provisioning definition for datasources that resolve `@model`s and custom SQL statements in this schema.\n\nThe DynamoDB from CloudFormation will be used by default.\n\n---\n\n\n\n### SQLLambdaModelDataSourceStrategyFactory \n\nClass exposing utilities to produce SQLLambdaModelDataSourceStrategy objects given various inputs.\n\n#### Initializers \n\n```typescript\nimport { SQLLambdaModelDataSourceStrategyFactory } from '@aws-amplify/graphql-api-construct'\n\nnew SQLLambdaModelDataSourceStrategyFactory()\n```\n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n\n---\n\n\n#### Static Functions \n\n| **Name** | **Description** |\n| --- | --- |\n| fromCustomSqlFiles | Creates a SQLLambdaModelDataSourceStrategy where the binding's `customSqlStatements` are populated from `sqlFiles`. |\n\n---\n\n##### `fromCustomSqlFiles` \n\n```typescript\nimport { SQLLambdaModelDataSourceStrategyFactory } from '@aws-amplify/graphql-api-construct'\n\nSQLLambdaModelDataSourceStrategyFactory.fromCustomSqlFiles(sqlFiles: string[], options: SQLLambdaModelDataSourceStrategy)\n```\n\nCreates a SQLLambdaModelDataSourceStrategy where the binding's `customSqlStatements` are populated from `sqlFiles`.\n\nThe key\nof the `customSqlStatements` record is the file's base name (that is, the name of the file minus the directory and extension).\n\n###### `sqlFiles`Required \n\n- *Type:* string[]\n\nthe list of files to load SQL statements from.\n\n---\n\n###### `options`Required \n\n- *Type:* SQLLambdaModelDataSourceStrategy\n\nthe remaining SQLLambdaModelDataSourceStrategy options.\n\n---\n\n\n\n## Protocols \n\n### IAmplifyGraphqlDefinition \n\n- *Implemented By:* IAmplifyGraphqlDefinition\n\nGraphql Api definition, which can be implemented in multiple ways.\n\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| dataSourceStrategies | {[ key: string ]: DefaultDynamoDbModelDataSourceStrategy \\| AmplifyDynamoDbModelDataSourceStrategy \\| SQLLambdaModelDataSourceStrategy} | Retrieve the datasource strategy mapping. |\n| functionSlots | MutationFunctionSlot \\| QueryFunctionSlot \\| SubscriptionFunctionSlot[] | Retrieve any function slots defined explicitly in the Api definition. |\n| schema | string | Return the schema definition as a graphql string, with amplify directives allowed. |\n| customSqlDataSourceStrategies | CustomSqlDataSourceStrategy[] | An array of custom Query or Mutation SQL commands to the data sources that resolves them. |\n| referencedLambdaFunctions | {[ key: string ]: aws-cdk-lib.aws_lambda.IFunction} | Retrieve the references to any lambda functions used in the definition. |\n\n---\n\n##### `dataSourceStrategies`Required \n\n```typescript\npublic readonly dataSourceStrategies: {[ key: string ]: DefaultDynamoDbModelDataSourceStrategy | AmplifyDynamoDbModelDataSourceStrategy | SQLLambdaModelDataSourceStrategy};\n```\n\n- *Type:* {[ key: string ]: DefaultDynamoDbModelDataSourceStrategy | AmplifyDynamoDbModelDataSourceStrategy | SQLLambdaModelDataSourceStrategy}\n\nRetrieve the datasource strategy mapping.\n\nThe default strategy is to use DynamoDB from CloudFormation.\n\n---\n\n##### `functionSlots`Required \n\n```typescript\npublic readonly functionSlots: MutationFunctionSlot | QueryFunctionSlot | SubscriptionFunctionSlot[];\n```\n\n- *Type:* MutationFunctionSlot | QueryFunctionSlot | SubscriptionFunctionSlot[]\n\nRetrieve any function slots defined explicitly in the Api definition.\n\n---\n\n##### `schema`Required \n\n```typescript\npublic readonly schema: string;\n```\n\n- *Type:* string\n\nReturn the schema definition as a graphql string, with amplify directives allowed.\n\n---\n\n##### `customSqlDataSourceStrategies`Optional \n\n```typescript\npublic readonly customSqlDataSourceStrategies: CustomSqlDataSourceStrategy[];\n```\n\n- *Type:* CustomSqlDataSourceStrategy[]\n\nAn array of custom Query or Mutation SQL commands to the data sources that resolves them.\n\n---\n\n##### `referencedLambdaFunctions`Optional \n\n```typescript\npublic readonly referencedLambdaFunctions: {[ key: string ]: IFunction};\n```\n\n- *Type:* {[ key: string ]: aws-cdk-lib.aws_lambda.IFunction}\n\nRetrieve the references to any lambda functions used in the definition.\n\nUseful for wiring through aws_lambda.Function constructs into the definition directly,\nand generated references to invoke them.\n\n---\n\n### IBackendOutputEntry \n\n- *Implemented By:* IBackendOutputEntry\n\nEntry representing the required output from the backend for codegen generate commands to work.\n\n\n#### Properties \n\n| **Name** | **Type** | **Description** |\n| --- | --- | --- |\n| payload | {[ key: string ]: string} | The string-map payload of generated config values. |\n| version | string | The protocol version for this backend output. |\n\n---\n\n##### `payload`Required \n\n```typescript\npublic readonly payload: {[ key: string ]: string};\n```\n\n- *Type:* {[ key: string ]: string}\n\nThe string-map payload of generated config values.\n\n---\n\n##### `version`Required \n\n```typescript\npublic readonly version: string;\n```\n\n- *Type:* string\n\nThe protocol version for this backend output.\n\n---\n\n### IBackendOutputStorageStrategy \n\n- *Implemented By:* IBackendOutputStorageStrategy\n\nBackend output strategy used to write config required for codegen tasks.\n\n#### Methods \n\n| **Name** | **Description** |\n| --- | --- |\n| addBackendOutputEntry | Add an entry to backend output. |\n\n---\n\n##### `addBackendOutputEntry` \n\n```typescript\npublic addBackendOutputEntry(keyName: string, backendOutputEntry: IBackendOutputEntry): void\n```\n\nAdd an entry to backend output.\n\n###### `keyName`Required \n\n- *Type:* string\n\nthe key.\n\n---\n\n###### `backendOutputEntry`Required \n\n- *Type:* IBackendOutputEntry\n\nthe record to store in the backend output.\n\n---\n\n\n## Enums \n\n### SSEType \n\nServer Side Encryption Type Values - `KMS` - Server-side encryption that uses AWS KMS.\n\nThe key is stored in your account and is managed by KMS (AWS KMS charges apply).\n\n#### Members \n\n| **Name** | **Description** |\n| --- | --- |\n| KMS | *No description.* |\n\n---\n\n##### `KMS` \n\n---\n\n" }, "repository": { "directory": "packages/amplify-graphql-api-construct", "type": "git", "url": "https://github.com/aws-amplify/amplify-category-api.git" }, "schema": "jsii/0.10.0", "targets": { "js": { "npm": "@aws-amplify/graphql-api-construct" } }, "types": { "@aws-amplify/graphql-api-construct.AddFunctionProps": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Input type properties when adding a new appsync.AppsyncFunction to the generated API. This is equivalent to the Omit." }, "fqn": "@aws-amplify/graphql-api-construct.AddFunctionProps", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 972 }, "name": "AddFunctionProps", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "the data source linked to this AppSync Function." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 976 }, "name": "dataSource", "type": { "fqn": "aws-cdk-lib.aws_appsync.BaseDataSource" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "the name of the AppSync Function." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 981 }, "name": "name", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- no code is used", "stability": "stable", "summary": "The function code." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 1016 }, "name": "code", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.Code" } }, { "abstract": true, "docs": { "default": "- no description", "stability": "stable", "summary": "the description for this AppSync Function." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 988 }, "name": "description", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "default": "- no request mapping template", "stability": "stable", "summary": "the request mapping template for the AppSync Function." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 995 }, "name": "requestMappingTemplate", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.MappingTemplate" } }, { "abstract": true, "docs": { "default": "- no response mapping template", "stability": "stable", "summary": "the response mapping template for the AppSync Function." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 1002 }, "name": "responseMappingTemplate", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.MappingTemplate" } }, { "abstract": true, "docs": { "default": "- no function runtime, VTL mapping templates used", "stability": "stable", "summary": "The functions runtime." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 1009 }, "name": "runtime", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.FunctionRuntime" } } ], "symbolId": "src/types:AddFunctionProps" }, "@aws-amplify/graphql-api-construct.AmplifyDynamoDbModelDataSourceStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Use custom resource type 'Custom::AmplifyDynamoDBTable' to provision table." }, "fqn": "@aws-amplify/graphql-api-construct.AmplifyDynamoDbModelDataSourceStrategy", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 39 }, "name": "AmplifyDynamoDbModelDataSourceStrategy", "properties": [ { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 40 }, "name": "dbType", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 41 }, "name": "provisionStrategy", "type": { "primitive": "string" } } ], "symbolId": "src/model-datasource-strategy-types:AmplifyDynamoDbModelDataSourceStrategy" }, "@aws-amplify/graphql-api-construct.AmplifyDynamoDbTableWrapper": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "remarks": "This is NOT a construct, just an easier way to access\nthe generated construct.\nThis is a wrapper intended to mimic the `aws_cdk_lib.aws_dynamodb.Table` functionality more-or-less.\nNotable differences is the addition of TKTK properties, to account for the fact that they're constructor props\nin the CDK construct, as well as the removal of all from*, grant*, and metric* methods implemented by Table.", "stability": "stable", "summary": "Wrapper class around Custom::AmplifyDynamoDBTable custom resource, to simplify the override experience a bit." }, "fqn": "@aws-amplify/graphql-api-construct.AmplifyDynamoDbTableWrapper", "initializer": { "docs": { "stability": "stable", "summary": "Create the wrapper given an underlying CfnResource that is an instance of Custom::AmplifyDynamoDBTable." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 124 }, "parameters": [ { "docs": { "summary": "the Cfn resource." }, "name": "resource", "type": { "fqn": "aws-cdk-lib.CfnResource" } } ] }, "kind": "class", "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 110 }, "methods": [ { "docs": { "returns": "whether or not the resource is an underlying amplify dynamodb table resource.", "stability": "stable", "summary": "Return true and perform type narrowing if a given input appears to be capable of." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 116 }, "name": "isAmplifyDynamoDbTableResource", "parameters": [ { "docs": { "summary": "the object to check." }, "name": "x", "type": { "primitive": "any" } } ], "returns": { "type": { "primitive": "boolean" } }, "static": true }, { "docs": { "stability": "stable", "summary": "Set the deletion policy of the resource based on the removal policy specified." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 134 }, "name": "applyRemovalPolicy", "parameters": [ { "docs": { "summary": "removal policy to set." }, "name": "policy", "type": { "fqn": "aws-cdk-lib.RemovalPolicy" } } ] }, { "docs": { "stability": "stable", "summary": "Set the provisionedThroughtput for a specified GSI by name." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 179 }, "name": "setGlobalSecondaryIndexProvisionedThroughput", "parameters": [ { "docs": { "summary": "the index to specify a provisionedThroughput config for." }, "name": "indexName", "type": { "primitive": "string" } }, { "docs": { "summary": "the config to set." }, "name": "provisionedThroughput", "type": { "fqn": "@aws-amplify/graphql-api-construct.ProvisionedThroughput" } } ] } ], "name": "AmplifyDynamoDbTableWrapper", "properties": [ { "docs": { "stability": "stable", "summary": "Specify how you are charged for read and write throughput and how you manage capacity." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 141 }, "name": "billingMode", "type": { "fqn": "aws-cdk-lib.aws_dynamodb.BillingMode" } }, { "docs": { "stability": "stable", "summary": "Set table deletion protection." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 207 }, "name": "deletionProtectionEnabled", "type": { "primitive": "boolean" } }, { "docs": { "stability": "stable", "summary": "Whether point-in-time recovery is enabled." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 155 }, "name": "pointInTimeRecoveryEnabled", "type": { "primitive": "boolean" } }, { "docs": { "stability": "stable", "summary": "Whether point-in-time recovery is enabled and recoveryPeriodInDays is set." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 163 }, "name": "pointInTimeRecoverySpecification", "type": { "fqn": "@aws-amplify/graphql-api-construct.PointInTimeRecoverySpecification" } }, { "docs": { "stability": "stable", "summary": "Update the provisioned throughput for the base table." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 170 }, "name": "provisionedThroughput", "type": { "fqn": "@aws-amplify/graphql-api-construct.ProvisionedThroughput" } }, { "docs": { "stability": "stable", "summary": "Set the ddb server-side encryption specification on the table." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 200 }, "name": "sseSpecification", "type": { "fqn": "@aws-amplify/graphql-api-construct.SSESpecification" } }, { "docs": { "stability": "stable", "summary": "Set the ddb stream specification on the table." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 193 }, "name": "streamSpecification", "type": { "fqn": "@aws-amplify/graphql-api-construct.StreamSpecification" } }, { "docs": { "stability": "stable", "summary": "The name of TTL attribute." }, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 148 }, "name": "timeToLiveAttribute", "type": { "fqn": "@aws-amplify/graphql-api-construct.TimeToLiveSpecification" } } ], "symbolId": "src/amplify-dynamodb-table-wrapper:AmplifyDynamoDbTableWrapper" }, "@aws-amplify/graphql-api-construct.AmplifyGraphqlApi": { "assembly": "@aws-amplify/graphql-api-construct", "base": "constructs.Construct", "docs": { "remarks": "This can be used to quickly define appsync apis which support full CRUD+List and Subscriptions, relationships,\nauth, search over data, the ability to inject custom business logic and query/mutation operations, and connect to ML services.\n\nFor more information, refer to the docs links below:\nData Modeling - https://docs.amplify.aws/cli/graphql/data-modeling/\nAuthorization - https://docs.amplify.aws/cli/graphql/authorization-rules/\nCustom Business Logic - https://docs.amplify.aws/cli/graphql/custom-business-logic/\nSearch - https://docs.amplify.aws/cli/graphql/search-and-result-aggregations/\nML Services - https://docs.amplify.aws/cli/graphql/connect-to-machine-learning-services/\n\nFor a full reference of the supported custom graphql directives - https://docs.amplify.aws/cli/graphql/directives-reference/\n\nThe output of this construct is a mapping of L2 or L1 resources generated by the transformer, which generally follow the access pattern\n\n```typescript\n const api = new AmplifyGraphQlApi(this, 'api', { });\n // Access L2 resources under `.resources`\n api.resources.tables[\"Todo\"].tableArn;\n\n // Access L1 resources under `.resources.cfnResources`\n api.resources.cfnResources.cfnGraphqlApi.xrayEnabled = true;\n Object.values(api.resources.cfnResources.cfnTables).forEach(table => {\n table.pointInTimeRecoverySpecification = { pointInTimeRecoveryEnabled: false };\n });\n```\n`resources..` - you can then perform any CDK action on these resulting resoureces.", "stability": "stable", "summary": "L3 Construct which invokes the Amplify Transformer Pattern over an input Graphql Schema." }, "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlApi", "initializer": { "docs": { "stability": "stable", "summary": "New AmplifyGraphqlApi construct, this will create an appsync api with authorization, a schema, and all necessary resolvers, functions, and datasources." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 144 }, "parameters": [ { "docs": { "summary": "the scope to create this construct within." }, "name": "scope", "type": { "fqn": "constructs.Construct" } }, { "docs": { "summary": "the id to use for this api." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "the properties used to configure the generated api." }, "name": "props", "type": { "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiProps" } } ] }, "kind": "class", "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 85 }, "methods": [ { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "returns": "the generated data source.", "stability": "stable", "summary": "Add a new DynamoDB data source to this API." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 309 }, "name": "addDynamoDbDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The DynamoDB table backing this data source." }, "name": "table", "type": { "fqn": "aws-cdk-lib.aws_dynamodb.ITable" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.DataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.DynamoDbDataSource" } } }, { "docs": { "deprecated": "use `addOpenSearchDataSource`", "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "returns": "the generated data source.", "stability": "deprecated", "summary": "Add a new elasticsearch data source to this API." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 321 }, "name": "addElasticsearchDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The elasticsearch domain for this data source." }, "name": "domain", "type": { "fqn": "aws-cdk-lib.aws_elasticsearch.IDomain" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.DataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.ElasticsearchDataSource" } } }, { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "stability": "stable", "summary": "Add an EventBridge data source to this api." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 331 }, "name": "addEventBridgeDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The EventBridge EventBus on which to put events." }, "name": "eventBus", "type": { "fqn": "aws-cdk-lib.aws_events.IEventBus" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.DataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.EventBridgeDataSource" } } }, { "docs": { "returns": "the generated appsync function.", "stability": "stable", "summary": "Add an appsync function to the api." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 413 }, "name": "addFunction", "parameters": [ { "docs": { "summary": "the function's id." }, "name": "id", "type": { "primitive": "string" } }, { "name": "props", "type": { "fqn": "@aws-amplify/graphql-api-construct.AddFunctionProps" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.AppsyncFunction" } } }, { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "returns": "the generated data source.", "stability": "stable", "summary": "Add a new http data source to this API." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 342 }, "name": "addHttpDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The http endpoint." }, "name": "endpoint", "type": { "primitive": "string" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.HttpDataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.HttpDataSource" } } }, { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "returns": "the generated data source.", "stability": "stable", "summary": "Add a new Lambda data source to this API." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 353 }, "name": "addLambdaDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The Lambda function to call to interact with this data source." }, "name": "lambdaFunction", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.DataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.LambdaDataSource" } } }, { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.\nUseful for pipeline resolvers and for backend changes that don't require a data source.", "returns": "the generated data source.", "stability": "stable", "summary": "Add a new dummy data source to this API." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 364 }, "name": "addNoneDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.DataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.NoneDataSource" } } }, { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "returns": "the generated data source.", "stability": "stable", "summary": "dd a new OpenSearch data source to this API." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 375 }, "name": "addOpenSearchDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The OpenSearch domain for this data source." }, "name": "domain", "type": { "fqn": "aws-cdk-lib.aws_opensearchservice.IDomain" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.DataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.OpenSearchDataSource" } } }, { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "returns": "the generated data source.", "stability": "stable", "summary": "Add a new Rds data source to this API." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 388 }, "name": "addRdsDataSource", "parameters": [ { "docs": { "summary": "The data source's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "The serverless cluster to interact with this data source." }, "name": "serverlessCluster", "type": { "fqn": "aws-cdk-lib.aws_rds.IServerlessCluster" } }, { "docs": { "summary": "The secret store that contains the username and password for the serverless cluster." }, "name": "secretStore", "type": { "fqn": "aws-cdk-lib.aws_secretsmanager.ISecret" } }, { "docs": { "summary": "The optional name of the database to use within the cluster." }, "name": "databaseName", "optional": true, "type": { "primitive": "string" } }, { "docs": { "summary": "The optional configuration for this data source." }, "name": "options", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.DataSourceOptions" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.RdsDataSource" } } }, { "docs": { "remarks": "This is a proxy method to the L2 GraphqlApi Construct.", "returns": "the generated resolver.", "stability": "stable", "summary": "Add a resolver to the api." }, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 404 }, "name": "addResolver", "parameters": [ { "docs": { "summary": "The resolver's id." }, "name": "id", "type": { "primitive": "string" } }, { "docs": { "summary": "the resolver properties." }, "name": "props", "type": { "fqn": "aws-cdk-lib.aws_appsync.ExtendedResolverProps" } } ], "returns": { "type": { "fqn": "aws-cdk-lib.aws_appsync.Resolver" } } } ], "name": "AmplifyGraphqlApi", "properties": [ { "docs": { "remarks": "May be a CDK Token.", "stability": "stable", "summary": "Generated Api Id." }, "immutable": true, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 125 }, "name": "apiId", "type": { "primitive": "string" } }, { "docs": { "stability": "stable", "summary": "Resolvers generated by the transform process, persisted on the side in order to facilitate pulling a manifest for the purposes of inspecting and producing overrides." }, "immutable": true, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 105 }, "name": "generatedFunctionSlots", "type": { "collection": { "elementtype": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.MutationFunctionSlot" }, { "fqn": "@aws-amplify/graphql-api-construct.QueryFunctionSlot" }, { "fqn": "@aws-amplify/graphql-api-construct.SubscriptionFunctionSlot" } ] } }, "kind": "array" } } }, { "docs": { "remarks": "May be a CDK Token.", "stability": "stable", "summary": "Graphql URL For the generated API." }, "immutable": true, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 110 }, "name": "graphqlUrl", "type": { "primitive": "string" } }, { "docs": { "remarks": "May be a CDK Token.", "stability": "stable", "summary": "Realtime URL For the generated API." }, "immutable": true, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 115 }, "name": "realtimeUrl", "type": { "primitive": "string" } }, { "docs": { "stability": "stable", "summary": "Generated L1 and L2 CDK resources." }, "immutable": true, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 89 }, "name": "resources", "type": { "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiResources" } }, { "docs": { "stability": "stable", "summary": "Reference to parent stack of data construct." }, "immutable": true, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 94 }, "name": "stack", "type": { "fqn": "aws-cdk-lib.Stack" } }, { "docs": { "remarks": "May be a CDK Token.", "stability": "stable", "summary": "Generated Api Key if generated." }, "immutable": true, "locationInModule": { "filename": "src/amplify-graphql-api.ts", "line": 120 }, "name": "apiKey", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/amplify-graphql-api:AmplifyGraphqlApi" }, "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiCfnResources": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "These are potentially stored under nested stacks, but presented organized by type instead.", "stability": "stable", "summary": "L1 CDK resources from the Api which were generated as part of the transform." }, "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiCfnResources", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 871 }, "name": "AmplifyGraphqlApiCfnResources", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Remaining L1 resources generated, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 925 }, "name": "additionalCfnResources", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.CfnResource" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated Amplify DynamoDb Table L1 resource wrapper, keyed by model type name." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 910 }, "name": "amplifyDynamoDbTables", "type": { "collection": { "elementtype": { "fqn": "@aws-amplify/graphql-api-construct.AmplifyDynamoDbTableWrapper" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated AppSync DataSource L1 Resources, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 900 }, "name": "cfnDataSources", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_appsync.CfnDataSource" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated AppSync Function L1 Resources, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 895 }, "name": "cfnFunctionConfigurations", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_appsync.CfnFunctionConfiguration" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated Lambda Function L1 Resources, keyed by function name." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 920 }, "name": "cfnFunctions", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.CfnFunction" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated AppSync Api L1 Resource." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 875 }, "name": "cfnGraphqlApi", "type": { "fqn": "aws-cdk-lib.aws_appsync.CfnGraphQLApi" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated AppSync Schema L1 Resource." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 880 }, "name": "cfnGraphqlSchema", "type": { "fqn": "aws-cdk-lib.aws_appsync.CfnGraphQLSchema" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated AppSync Resolver L1 Resources, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 890 }, "name": "cfnResolvers", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_appsync.CfnResolver" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated IAM Role L1 Resources, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 915 }, "name": "cfnRoles", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.CfnRole" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated DynamoDB Table L1 Resources, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 905 }, "name": "cfnTables", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_dynamodb.CfnTable" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated AppSync Api Key L1 Resource." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 885 }, "name": "cfnApiKey", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.CfnApiKey" } } ], "symbolId": "src/types:AmplifyGraphqlApiCfnResources" }, "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiProps": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "Specifies what the input to transform into an Api, and configurations for\nthe transformation process.", "stability": "stable", "summary": "Input props for the AmplifyGraphqlApi construct." }, "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiProps", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 781 }, "name": "AmplifyGraphqlApiProps", "properties": [ { "abstract": true, "docs": { "remarks": "This object must be a superset of the configured auth providers in the Api definition.\nFor more information, refer to https://docs.amplify.aws/cli/graphql/authorization-rules/", "stability": "stable", "summary": "Required auth modes for the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 798 }, "name": "authorizationModes", "type": { "fqn": "@aws-amplify/graphql-api-construct.AuthorizationModes" } }, { "abstract": true, "docs": { "remarks": "Can be constructed via the AmplifyGraphqlDefinition class.", "stability": "stable", "summary": "The definition to transform in a full Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 786 }, "name": "definition", "type": { "fqn": "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition" } }, { "abstract": true, "docs": { "remarks": "Default: construct id.", "stability": "stable", "summary": "Name to be used for the AppSync Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 792 }, "name": "apiName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "deprecated": "use dataStoreConfiguration instead.", "remarks": "For more information, refer to https://docs.amplify.aws/lib/datastore/getting-started/q/platform/js/", "stability": "deprecated", "summary": "Configure conflict resolution on the Api, which is required to enable DataStore Api functionality." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 813 }, "name": "conflictResolution", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.ConflictResolution" } }, { "abstract": true, "docs": { "remarks": "Conflict resolution is required to enable DataStore Api functionality.\nFor more information, refer to https://docs.amplify.aws/lib/datastore/getting-started/q/platform/js/", "stability": "stable", "summary": "Configure DataStore conflict resolution on the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 857 }, "name": "dataStoreConfiguration", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.DataStoreConfiguration" } }, { "abstract": true, "docs": { "custom": { "function": "directives. The keys of this object are expected to be the\nfunction name provided in the definition, and value is the function that name refers to. If a name is not found in this\nmap, then it is interpreted as the `functionName`, and an arn will be constructed using the current aws account and region\n(or overridden values, if set in the directive)." }, "stability": "stable", "summary": "Lambda functions referenced in the definitions's." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 806 }, "name": "functionNameMap", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" }, "kind": "map" } } }, { "abstract": true, "docs": { "remarks": "For more information about what slots are available,\nrefer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#override-amplify-generated-resolvers.", "stability": "stable", "summary": "Overrides for a given slot in the generated resolver pipelines." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 828 }, "name": "functionSlots", "optional": true, "type": { "collection": { "elementtype": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.MutationFunctionSlot" }, { "fqn": "@aws-amplify/graphql-api-construct.QueryFunctionSlot" }, { "fqn": "@aws-amplify/graphql-api-construct.SubscriptionFunctionSlot" } ] } }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Specifies the logging configuration when writing GraphQL operations and tracing to Amazon CloudWatch for an AWS AppSync GraphQL API." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 862 }, "name": "logging", "optional": true, "type": { "union": { "types": [ { "primitive": "boolean" }, { "fqn": "@aws-amplify/graphql-api-construct.LogConfig" } ] } } }, { "abstract": true, "docs": { "remarks": "If no outputStorageStrategy is provided a default strategy will be used.", "stability": "stable", "summary": "Strategy to store construct outputs." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 851 }, "name": "outputStorageStrategy", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.IBackendOutputStorageStrategy" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "If using predictions, a bucket must be provided which will be used to search for assets." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 840 }, "name": "predictionsBucket", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_s3.IBucket" } }, { "abstract": true, "docs": { "remarks": "Only applies to resolvers, and takes the form\n{ : }\nIt is not recommended to use this parameter unless you are encountering stack resource count limits, and worth noting that\nafter initial deployment AppSync resolvers cannot be moved between nested stacks, they will need to be removed from the app,\nthen re-added from a new stack.", "stability": "stable", "summary": "StackMappings override the assigned nested stack on a per-resource basis." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 822 }, "name": "stackMappings", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "abstract": true, "docs": { "custom": { "aws-amplify": "/graphql-transformer-core >= 2.1.1" }, "remarks": "These custom transformers must be implemented with aws-cdk-lib >=2.129.0, and", "stability": "experimental", "summary": "Provide a list of additional custom transformers which are injected into the transform process." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 835 }, "name": "transformerPlugins", "optional": true, "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "This replaces feature flags from the Api construct, for general information on what these parameters do, refer to https://docs.amplify.aws/cli/reference/feature-flags/#graphQLTransformer." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 846 }, "name": "translationBehavior", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.PartialTranslationBehavior" } } ], "symbolId": "src/types:AmplifyGraphqlApiProps" }, "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiResources": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "These are potentially stored under nested stacks, but presented organized by type instead.", "stability": "stable", "summary": "Accessible resources from the Api which were generated as part of the transform." }, "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiResources", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 934 }, "name": "AmplifyGraphqlApiResources", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "L1 Cfn Resources, for when dipping down a level of abstraction is desirable." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 958 }, "name": "cfnResources", "type": { "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlApiCfnResources" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated Lambda Function L1 Resources, keyed by function name." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 953 }, "name": "functions", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated AppSync Api L2 Resource, includes the Schema." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 938 }, "name": "graphqlApi", "type": { "fqn": "aws-cdk-lib.aws_appsync.IGraphqlApi" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Nested Stacks generated by the Api Construct." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 963 }, "name": "nestedStacks", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.NestedStack" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated IAM Role L2 Resources, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 948 }, "name": "roles", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.IRole" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Generated DynamoDB Table L2 Resources, keyed by logicalId." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 943 }, "name": "tables", "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_dynamodb.ITable" }, "kind": "map" } } } ], "symbolId": "src/types:AmplifyGraphqlApiResources" }, "@aws-amplify/graphql-api-construct.AmplifyGraphqlDefinition": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "stability": "stable", "summary": "Class exposing utilities to produce IAmplifyGraphqlDefinition objects given various inputs." }, "fqn": "@aws-amplify/graphql-api-construct.AmplifyGraphqlDefinition", "initializer": { "docs": { "stability": "stable" } }, "kind": "class", "locationInModule": { "filename": "src/amplify-graphql-definition.ts", "line": 21 }, "methods": [ { "docs": { "stability": "stable", "summary": "Combines multiple IAmplifyGraphqlDefinitions into a single definition." }, "locationInModule": { "filename": "src/amplify-graphql-definition.ts", "line": 78 }, "name": "combine", "parameters": [ { "docs": { "summary": "the definitions to combine." }, "name": "definitions", "type": { "collection": { "elementtype": { "fqn": "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition" }, "kind": "array" } } } ], "returns": { "type": { "fqn": "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition" } }, "static": true }, { "docs": { "returns": "a fully formed amplify graphql definition, whose models will be resolved by DynamoDB tables created during deployment.", "stability": "stable", "summary": "Convert one or more appsync SchemaFile objects into an Amplify Graphql Schema, binding them to a DynamoDB data source." }, "locationInModule": { "filename": "src/amplify-graphql-definition.ts", "line": 48 }, "name": "fromFiles", "parameters": [ { "docs": { "summary": "one or more paths to the graphql files to process." }, "name": "filePaths", "type": { "primitive": "string" }, "variadic": true } ], "returns": { "type": { "fqn": "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition" } }, "static": true, "variadic": true }, { "docs": { "returns": "a fully formed amplify graphql definition", "stability": "stable", "summary": "Convert one or more appsync SchemaFile objects into an Amplify Graphql Schema." }, "locationInModule": { "filename": "src/amplify-graphql-definition.ts", "line": 63 }, "name": "fromFilesAndStrategy", "parameters": [ { "docs": { "summary": "one or more paths to the graphql files to process." }, "name": "filePaths", "type": { "union": { "types": [ { "primitive": "string" }, { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } ] } } }, { "docs": { "remarks": "The DynamoDB from\nCloudFormation will be used by default.", "summary": "the provisioning definition for datasources that resolve `@model`s in this schema." }, "name": "dataSourceStrategy", "optional": true, "type": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.DefaultDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.AmplifyDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.ImportedAmplifyDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy" } ] } } } ], "returns": { "type": { "fqn": "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition" } }, "static": true }, { "docs": { "returns": "a fully formed amplify graphql definition", "stability": "stable", "summary": "Produce a schema definition from a string input." }, "locationInModule": { "filename": "src/amplify-graphql-definition.ts", "line": 29 }, "name": "fromString", "parameters": [ { "docs": { "summary": "the graphql input as a string." }, "name": "schema", "type": { "primitive": "string" } }, { "docs": { "remarks": "The DynamoDB from CloudFormation will be used by default.", "summary": "the provisioning definition for datasources that resolve `@model`s and custom SQL statements in this schema." }, "name": "dataSourceStrategy", "optional": true, "type": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.DefaultDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.AmplifyDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.ImportedAmplifyDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy" } ] } } } ], "returns": { "type": { "fqn": "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition" } }, "static": true } ], "name": "AmplifyGraphqlDefinition", "symbolId": "src/amplify-graphql-definition:AmplifyGraphqlDefinition" }, "@aws-amplify/graphql-api-construct.ApiKeyAuthorizationConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Configuration for Api Keys on the Graphql Api." }, "fqn": "@aws-amplify/graphql-api-construct.ApiKeyAuthorizationConfig", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 190 }, "name": "ApiKeyAuthorizationConfig", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "A duration representing the time from Cloudformation deploy until expiry." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 199 }, "name": "expires", "type": { "fqn": "aws-cdk-lib.Duration" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Optional description for the Api Key to attach to the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 194 }, "name": "description", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/types:ApiKeyAuthorizationConfig" }, "@aws-amplify/graphql-api-construct.AuthorizationModes": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "At least one modes must be provided, and if more than one are provided a defaultAuthorizationMode must be specified.\nFor more information on Amplify Api auth, refer to https://docs.amplify.aws/cli/graphql/authorization-rules/#authorization-strategies", "stability": "stable", "summary": "Authorization Modes to apply to the Api." }, "fqn": "@aws-amplify/graphql-api-construct.AuthorizationModes", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 226 }, "name": "AuthorizationModes", "properties": [ { "abstract": true, "docs": { "deprecated": ", use iamConfig.allowListedRoles instead.", "stability": "deprecated", "summary": "A list of roles granted full R/W access to the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 274 }, "name": "adminRoles", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_iam.IRole" }, "kind": "array" } } }, { "abstract": true, "docs": { "remarks": "Applies to 'public' auth strategy.", "stability": "stable", "summary": "AppSync Api Key config, required if a 'apiKey' auth provider is specified in the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 262 }, "name": "apiKeyConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.ApiKeyAuthorizationConfig" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Default auth mode to provide to the Api, required if more than one config type is specified." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 230 }, "name": "defaultAuthorizationMode", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "This applies to any IAM principal except Amazon Cognito identity pool's authenticated and unauthenticated roles.\nThis behavior was has recently been improved.\nSee https://docs.amplify.aws/cli/react/tools/cli/migration/iam-auth-updates-for-cdk-construct for details.", "stability": "stable", "summary": "IAM Auth config, required to allow IAM-based access to this API." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 238 }, "name": "iamConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.IAMAuthorizationConfig" } }, { "abstract": true, "docs": { "remarks": "Applies to 'public' and 'private' auth strategies.", "stability": "stable", "summary": "Cognito Identity Pool config, required if an 'identityPool' auth provider is specified in the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 244 }, "name": "identityPoolConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.IdentityPoolAuthorizationConfig" } }, { "abstract": true, "docs": { "remarks": "Applies to 'custom' auth strategy.", "stability": "stable", "summary": "Lambda config, required if a 'function' auth provider is specified in the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 268 }, "name": "lambdaConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.LambdaAuthorizationConfig" } }, { "abstract": true, "docs": { "remarks": "Applies to 'owner', 'private', and 'group' auth strategies.", "stability": "stable", "summary": "Cognito OIDC config, required if a 'oidc' auth provider is specified in the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 256 }, "name": "oidcConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.OIDCAuthorizationConfig" } }, { "abstract": true, "docs": { "remarks": "Applies to 'owner', 'private', and 'group' auth strategies.", "stability": "stable", "summary": "Cognito UserPool config, required if a 'userPools' auth provider is specified in the Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 250 }, "name": "userPoolConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.UserPoolAuthorizationConfig" } } ], "symbolId": "src/types:AuthorizationModes" }, "@aws-amplify/graphql-api-construct.AutomergeConflictResolutionStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Enable optimistic concurrency on the project." }, "fqn": "@aws-amplify/graphql-api-construct.AutomergeConflictResolutionStrategy", "interfaces": [ "@aws-amplify/graphql-api-construct.ConflictResolutionStrategyBase" ], "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 301 }, "name": "AutomergeConflictResolutionStrategy", "properties": [ { "abstract": true, "docs": { "remarks": "For more information, refer to https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html#conflict-detection-and-resolution", "stability": "stable", "summary": "This conflict resolution strategy executes an auto-merge." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 306 }, "name": "handlerType", "type": { "primitive": "string" } } ], "symbolId": "src/types:AutomergeConflictResolutionStrategy" }, "@aws-amplify/graphql-api-construct.ConflictResolution": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "deprecated": "use DataStoreConfiguration instead.", "stability": "deprecated", "summary": "Project level configuration for conflict resolution." }, "fqn": "@aws-amplify/graphql-api-construct.ConflictResolution", "interfaces": [ "@aws-amplify/graphql-api-construct.DataStoreConfiguration" ], "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 357 }, "name": "ConflictResolution", "symbolId": "src/types:ConflictResolution" }, "@aws-amplify/graphql-api-construct.ConflictResolutionStrategyBase": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Common parameters for conflict resolution." }, "fqn": "@aws-amplify/graphql-api-construct.ConflictResolutionStrategyBase", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 289 }, "name": "ConflictResolutionStrategyBase", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The conflict detection type used for resolution." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 293 }, "name": "detectionType", "type": { "primitive": "string" } } ], "symbolId": "src/types:ConflictResolutionStrategyBase" }, "@aws-amplify/graphql-api-construct.CustomConflictResolutionStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Enable custom sync on the project, powered by a lambda." }, "fqn": "@aws-amplify/graphql-api-construct.CustomConflictResolutionStrategy", "interfaces": [ "@aws-amplify/graphql-api-construct.ConflictResolutionStrategyBase" ], "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 327 }, "name": "CustomConflictResolutionStrategy", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The function which will be invoked for conflict resolution." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 338 }, "name": "conflictHandler", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } }, { "abstract": true, "docs": { "remarks": "For more information, refer to https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html#conflict-detection-and-resolution", "stability": "stable", "summary": "This conflict resolution strategy uses a lambda handler type." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 333 }, "name": "handlerType", "type": { "primitive": "string" } } ], "symbolId": "src/types:CustomConflictResolutionStrategy" }, "@aws-amplify/graphql-api-construct.CustomSqlDataSourceStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "Although this is a\npublic type, you should rarely need to use this. The AmplifyGraphqlDefinition factory methods (e.g., `fromString`,\n`fromFilesAndStrategy`) will automatically construct this structure for you.", "stability": "stable", "summary": "The input type for defining a ModelDataSourceStrategy used to resolve a field annotated with a `@sql` directive." }, "fqn": "@aws-amplify/graphql-api-construct.CustomSqlDataSourceStrategy", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 256 }, "name": "CustomSqlDataSourceStrategy", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The field name with which the custom SQL is associated." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 261 }, "name": "fieldName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The strategy used to create the datasource that will resolve the custom SQL statement." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 264 }, "name": "strategy", "type": { "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The built-in type (either \"Query\" or \"Mutation\") with which the custom SQL is associated." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 258 }, "name": "typeName", "type": { "primitive": "string" } } ], "symbolId": "src/model-datasource-strategy-types:CustomSqlDataSourceStrategy" }, "@aws-amplify/graphql-api-construct.DataStoreConfiguration": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Project level configuration for DataStore." }, "fqn": "@aws-amplify/graphql-api-construct.DataStoreConfiguration", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 364 }, "name": "DataStoreConfiguration", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Model-specific conflict resolution overrides." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 373 }, "name": "models", "optional": true, "type": { "collection": { "elementtype": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.AutomergeConflictResolutionStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.OptimisticConflictResolutionStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.CustomConflictResolutionStrategy" } ] } }, "kind": "map" } } }, { "abstract": true, "docs": { "remarks": "Applies to all non-overridden models.", "stability": "stable", "summary": "Project-wide config for conflict resolution." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 368 }, "name": "project", "optional": true, "type": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.AutomergeConflictResolutionStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.OptimisticConflictResolutionStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.CustomConflictResolutionStrategy" } ] } } } ], "symbolId": "src/types:DataStoreConfiguration" }, "@aws-amplify/graphql-api-construct.DefaultDynamoDbModelDataSourceStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Use default CloudFormation type 'AWS::DynamoDB::Table' to provision table." }, "fqn": "@aws-amplify/graphql-api-construct.DefaultDynamoDbModelDataSourceStrategy", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 31 }, "name": "DefaultDynamoDbModelDataSourceStrategy", "properties": [ { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 32 }, "name": "dbType", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 33 }, "name": "provisionStrategy", "type": { "primitive": "string" } } ], "symbolId": "src/model-datasource-strategy-types:DefaultDynamoDbModelDataSourceStrategy" }, "@aws-amplify/graphql-api-construct.FieldLogLevel": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "stability": "stable", "summary": "log-level for fields in AppSync." }, "fqn": "@aws-amplify/graphql-api-construct.FieldLogLevel", "kind": "enum", "locationInModule": { "filename": "../../node_modules/aws-cdk-lib/aws-appsync/lib/graphqlapi.d.ts", "line": 173 }, "members": [ { "docs": { "stability": "stable", "summary": "Resolver logging is disabled." }, "name": "NONE" }, { "docs": { "stability": "stable", "summary": "Only Error messages appear in logs." }, "name": "ERROR" }, { "docs": { "stability": "stable", "summary": "Info and Error messages appear in logs." }, "name": "INFO" }, { "docs": { "stability": "stable", "summary": "Debug, Info, and Error messages, appear in logs." }, "name": "DEBUG" }, { "docs": { "stability": "stable", "summary": "All messages (Debug, Error, Info, and Trace) appear in logs." }, "name": "ALL" } ], "name": "FieldLogLevel", "symbolId": "aws-appsync/lib/graphqlapi:FieldLogLevel" }, "@aws-amplify/graphql-api-construct.FunctionSlotBase": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Common slot parameters." }, "fqn": "@aws-amplify/graphql-api-construct.FunctionSlotBase", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 399 }, "name": "FunctionSlotBase", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The field to attach this function to on the Api definition." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 403 }, "name": "fieldName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The overridden behavior for this slot." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 414 }, "name": "function", "type": { "fqn": "@aws-amplify/graphql-api-construct.FunctionSlotOverride" } }, { "abstract": true, "docs": { "remarks": "For more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers", "stability": "stable", "summary": "The slot index to use to inject this into the execution pipeline." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 409 }, "name": "slotIndex", "type": { "primitive": "number" } } ], "symbolId": "src/types:FunctionSlotBase" }, "@aws-amplify/graphql-api-construct.FunctionSlotOverride": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "This allows configuration of the underlying function,\nincluding the request and response mapping templates.", "stability": "stable", "summary": "Params exposed to support configuring and overriding pipelined slots." }, "fqn": "@aws-amplify/graphql-api-construct.FunctionSlotOverride", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 382 }, "name": "FunctionSlotOverride", "properties": [ { "abstract": true, "docs": { "remarks": "Executed before the datasource is invoked.", "stability": "stable", "summary": "Override request mapping template for the function slot." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 386 }, "name": "requestMappingTemplate", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.MappingTemplate" } }, { "abstract": true, "docs": { "remarks": "Executed after the datasource is invoked.", "stability": "stable", "summary": "Override response mapping template for the function slot." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 391 }, "name": "responseMappingTemplate", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.MappingTemplate" } } ], "symbolId": "src/types:FunctionSlotOverride" }, "@aws-amplify/graphql-api-construct.IAMAuthorizationConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Configuration for IAM Authorization on the Graphql Api." }, "fqn": "@aws-amplify/graphql-api-construct.IAMAuthorizationConfig", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 68 }, "name": "IAMAuthorizationConfig", "properties": [ { "abstract": true, "docs": { "deprecated": "Use 'enableIamAuthorizationMode' and IAM Policy to control access for IAM principals.\nSee https://docs.amplify.aws/cli/react/tools/cli/migration/iam-auth-updates-for-cdk-construct for details.", "remarks": "If an IRole is provided, the role `name` will be used for matching.\nIf a string is provided, the raw value will be used for matching.", "stability": "deprecated", "summary": "A list of IAM roles which will be granted full read/write access to the generated model if IAM auth is enabled." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 102 }, "name": "allowListedRoles", "optional": true, "type": { "collection": { "elementtype": { "union": { "types": [ { "primitive": "string" }, { "fqn": "aws-cdk-lib.aws_iam.IRole" } ] } }, "kind": "array" } } }, { "abstract": true, "docs": { "deprecated": "Use 'IdentityPoolAuthorizationConfig.authenticatedUserRole' instead.\nSee https://docs.amplify.aws/cli/react/tools/cli/migration/iam-auth-updates-for-cdk-construct for details.", "stability": "deprecated", "summary": "Authenticated user role, applies to { provider: iam, allow: private } access." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 84 }, "name": "authenticatedUserRole", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_iam.IRole" } }, { "abstract": true, "docs": { "custom": { "auth": "directive rules are not applied.\nInstead, access should be defined by IAM Policy, see https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsappsync.html.\n\nDoes not apply to authenticated and unauthenticated IAM Roles attached to Cognito Identity Pool.\nUse IdentityPoolAuthorizationConfig to configure their access." }, "remarks": "If enabled", "stability": "stable", "summary": "Enables access for IAM principals." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 111 }, "name": "enableIamAuthorizationMode", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "deprecated": "Use 'IdentityPoolAuthorizationConfig.identityPoolId' instead.\nSee https://docs.amplify.aws/cli/react/tools/cli/migration/iam-auth-updates-for-cdk-construct for details.", "remarks": "Format: `:`", "stability": "deprecated", "summary": "ID for the Cognito Identity Pool vending auth and unauth roles." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 76 }, "name": "identityPoolId", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "deprecated": "Use 'IdentityPoolAuthorizationConfig.unauthenticatedUserRole' instead.\nSee https://docs.amplify.aws/cli/react/tools/cli/migration/iam-auth-updates-for-cdk-construct for details.", "stability": "deprecated", "summary": "Unauthenticated user role, applies to { provider: iam, allow: public } access." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 92 }, "name": "unauthenticatedUserRole", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_iam.IRole" } } ], "symbolId": "src/types:IAMAuthorizationConfig" }, "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "stability": "stable", "summary": "Graphql Api definition, which can be implemented in multiple ways." }, "fqn": "@aws-amplify/graphql-api-construct.IAmplifyGraphqlDefinition", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 709 }, "name": "IAmplifyGraphqlDefinition", "properties": [ { "abstract": true, "docs": { "remarks": "The default strategy is to use DynamoDB from CloudFormation.", "returns": "datasource strategy mapping", "stability": "stable", "summary": "Retrieve the datasource strategy mapping." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 734 }, "name": "dataSourceStrategies", "type": { "collection": { "elementtype": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.DefaultDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.AmplifyDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.ImportedAmplifyDynamoDbModelDataSourceStrategy" }, { "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy" } ] } }, "kind": "map" } } }, { "abstract": true, "docs": { "returns": "generated function slots", "stability": "stable", "summary": "Retrieve any function slots defined explicitly in the Api definition." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 720 }, "name": "functionSlots", "type": { "collection": { "elementtype": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.MutationFunctionSlot" }, { "fqn": "@aws-amplify/graphql-api-construct.QueryFunctionSlot" }, { "fqn": "@aws-amplify/graphql-api-construct.SubscriptionFunctionSlot" } ] } }, "kind": "array" } } }, { "abstract": true, "docs": { "returns": "the rendered schema.", "stability": "stable", "summary": "Return the schema definition as a graphql string, with amplify directives allowed." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 714 }, "name": "schema", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "returns": "a list of mappings from custom SQL commands to data sources", "stability": "stable", "summary": "An array of custom Query or Mutation SQL commands to the data sources that resolves them." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 740 }, "name": "customSqlDataSourceStrategies", "optional": true, "type": { "collection": { "elementtype": { "fqn": "@aws-amplify/graphql-api-construct.CustomSqlDataSourceStrategy" }, "kind": "array" } } }, { "abstract": true, "docs": { "remarks": "Useful for wiring through aws_lambda.Function constructs into the definition directly,\nand generated references to invoke them.", "returns": "any lambda functions, keyed by their referenced 'name' in the generated schema.", "stability": "stable", "summary": "Retrieve the references to any lambda functions used in the definition." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 728 }, "name": "referencedLambdaFunctions", "optional": true, "type": { "collection": { "elementtype": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" }, "kind": "map" } } } ], "symbolId": "src/types:IAmplifyGraphqlDefinition" }, "@aws-amplify/graphql-api-construct.IBackendOutputEntry": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "stability": "stable", "summary": "Entry representing the required output from the backend for codegen generate commands to work." }, "fqn": "@aws-amplify/graphql-api-construct.IBackendOutputEntry", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 748 }, "name": "IBackendOutputEntry", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The string-map payload of generated config values." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 757 }, "name": "payload", "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The protocol version for this backend output." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 752 }, "name": "version", "type": { "primitive": "string" } } ], "symbolId": "src/types:IBackendOutputEntry" }, "@aws-amplify/graphql-api-construct.IBackendOutputStorageStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "stability": "stable", "summary": "Backend output strategy used to write config required for codegen tasks." }, "fqn": "@aws-amplify/graphql-api-construct.IBackendOutputStorageStrategy", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 765 }, "methods": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Add an entry to backend output." }, "locationInModule": { "filename": "src/types.ts", "line": 772 }, "name": "addBackendOutputEntry", "parameters": [ { "docs": { "summary": "the key." }, "name": "keyName", "type": { "primitive": "string" } }, { "docs": { "summary": "the record to store in the backend output." }, "name": "backendOutputEntry", "type": { "fqn": "@aws-amplify/graphql-api-construct.IBackendOutputEntry" } } ] } ], "name": "IBackendOutputStorageStrategy", "symbolId": "src/types:IBackendOutputStorageStrategy" }, "@aws-amplify/graphql-api-construct.IdentityPoolAuthorizationConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Configuration for Cognito Identity Pool Authorization on the Graphql Api." }, "fqn": "@aws-amplify/graphql-api-construct.IdentityPoolAuthorizationConfig", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 120 }, "name": "IdentityPoolAuthorizationConfig", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Authenticated user role, applies to { provider: iam, allow: private } access." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 130 }, "name": "authenticatedUserRole", "type": { "fqn": "aws-cdk-lib.aws_iam.IRole" } }, { "abstract": true, "docs": { "remarks": "Format: `:`", "stability": "stable", "summary": "ID for the Cognito Identity Pool vending auth and unauth roles." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 125 }, "name": "identityPoolId", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Unauthenticated user role, applies to { provider: iam, allow: public } access." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 135 }, "name": "unauthenticatedUserRole", "type": { "fqn": "aws-cdk-lib.aws_iam.IRole" } } ], "symbolId": "src/types:IdentityPoolAuthorizationConfig" }, "@aws-amplify/graphql-api-construct.ImportedAmplifyDynamoDbModelDataSourceStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "Tables can be imported only if they meet the following criteria.\n1. The imported table must have been created with through an Amplify Gen 1 project.\n2. The imported table must be in the same account and region as this construct.\n3. The imported table properties must match the corresponding table properties specified in this construct.\n (AttributeDefinitions, KeySchema, GlobalSecondaryIndexes, BillingModeSummary, ProvisionedThroughput, StreamSpecification, SSEDescription, DeletionProtectionEnabled)\n\nThe imported tables will follow the auth rules defined in this construct.\nThe auth rules of the source Gen 1 project will not apply to the API created by this construct.\nEnsure the correct auth rules have been set to prevent data exposure.", "stability": "stable", "summary": "Use custom resource type 'Custom::ImportedAmplifyDynamoDBTable' to manage an imported table." }, "fqn": "@aws-amplify/graphql-api-construct.ImportedAmplifyDynamoDbModelDataSourceStrategy", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 58 }, "name": "ImportedAmplifyDynamoDbModelDataSourceStrategy", "properties": [ { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 59 }, "name": "dbType", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 60 }, "name": "provisionStrategy", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 61 }, "name": "tableName", "type": { "primitive": "string" } } ], "symbolId": "src/model-datasource-strategy-types:ImportedAmplifyDynamoDbModelDataSourceStrategy" }, "@aws-amplify/graphql-api-construct.LambdaAuthorizationConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Configuration for Custom Lambda authorization on the Graphql Api." }, "fqn": "@aws-amplify/graphql-api-construct.LambdaAuthorizationConfig", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 207 }, "name": "LambdaAuthorizationConfig", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The authorizer lambda function." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 211 }, "name": "function", "type": { "fqn": "aws-cdk-lib.aws_lambda.IFunction" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "How long the results are cached." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 216 }, "name": "ttl", "type": { "fqn": "aws-cdk-lib.Duration" } } ], "symbolId": "src/types:LambdaAuthorizationConfig" }, "@aws-amplify/graphql-api-construct.LogConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "default": "excludeVerboseContent: true, fieldLogLevel: FieldLogLevel.NONE, retention: RetentionDays.ONE_WEEK", "remarks": "**WARNING**: Verbose logging will log the full incoming query including user parameters.\nSensitive information may be exposed in CloudWatch logs. Ensure that your IAM policies only grant access to authorized users.\n\nFor information on LogConfig, refer to https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html.\nFor information on RetentionDays, refer to https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_logs.RetentionDays.html.", "stability": "stable", "summary": "Customizable logging configuration when writing GraphQL operations and tracing to Amazon CloudWatch for an AWS AppSync GraphQL API." }, "fqn": "@aws-amplify/graphql-api-construct.LogConfig", "kind": "interface", "locationInModule": { "filename": "src/log-config-types.ts", "line": 18 }, "name": "LogConfig", "properties": [ { "abstract": true, "docs": { "default": "true", "remarks": "**WARNING**: Verbose logging will log the full incoming query including user parameters.\nSensitive information may be exposed in CloudWatch logs. Ensure that your IAM policies only grant access to authorized users.", "stability": "stable", "summary": "When set to `true`, excludes verbose information from the logs, such as: - GraphQL Query - Request Headers - Response Headers - Context - Evaluated Mapping Templates This setting applies regardless of the specified logging level." }, "immutable": true, "locationInModule": { "filename": "src/log-config-types.ts", "line": 42 }, "name": "excludeVerboseContent", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "FieldLogLevel.NONE", "remarks": "- **NONE**: No field-level logs are captured.\n- **ERROR**: Logs the following information only for the fields that are in the error category:\n - The error section in the server response.\n - Field-level errors.\n - The generated request/response functions that got resolved for error fields.\n- **INFO**: Logs the following information only for the fields that are in the info and error categories:\n - Info-level messages.\n - The user messages sent through `$util.log.info` and `console.log`.\n - Field-level tracing and mapping logs are not shown.\n- **DEBUG**: Logs the following information only for the fields that are in the debug, info, and error categories:\n - Debug-level messages.\n - The user messages sent through `$util.log.info`, `$util.log.debug`, `console.log`, and `console.debug`.\n - Field-level tracing and mapping logs are not shown.\n- **ALL**: The following information is logged for all fields in the query:\n - Field-level tracing information.\n - The generated request/response functions that were resolved for each field.", "stability": "stable", "summary": "The field logging level. Values can be `NONE`, `ERROR`, `INFO`, `DEBUG`, or `ALL`." }, "immutable": true, "locationInModule": { "filename": "src/log-config-types.ts", "line": 66 }, "name": "fieldLogLevel", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_appsync.FieldLogLevel" } }, { "abstract": true, "docs": { "default": "RetentionDays.ONE_WEEK", "see": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_logs.RetentionDays.html", "stability": "stable", "summary": "The number of days log events are kept in CloudWatch Logs." }, "immutable": true, "locationInModule": { "filename": "src/log-config-types.ts", "line": 25 }, "name": "retention", "optional": true, "type": { "fqn": "aws-cdk-lib.aws_logs.RetentionDays" } } ], "symbolId": "src/log-config-types:LogConfig" }, "@aws-amplify/graphql-api-construct.MutationFunctionSlot": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Slot types for Mutation Resolvers." }, "fqn": "@aws-amplify/graphql-api-construct.MutationFunctionSlot", "interfaces": [ "@aws-amplify/graphql-api-construct.FunctionSlotBase" ], "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 422 }, "name": "MutationFunctionSlot", "properties": [ { "abstract": true, "docs": { "remarks": "For more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers", "stability": "stable", "summary": "The slot name to inject this behavior into." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 432 }, "name": "slotName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "This slot type applies to the Mutation type on the Api definition." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 426 }, "name": "typeName", "type": { "primitive": "string" } } ], "symbolId": "src/types:MutationFunctionSlot" }, "@aws-amplify/graphql-api-construct.OIDCAuthorizationConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Configuration for OpenId Connect Authorization on the Graphql Api." }, "fqn": "@aws-amplify/graphql-api-construct.OIDCAuthorizationConfig", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 155 }, "name": "OIDCAuthorizationConfig", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Url for the OIDC token issuer." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 164 }, "name": "oidcIssuerUrl", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The issuer for the OIDC configuration." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 159 }, "name": "oidcProviderName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "auth_time claim in OIDC token is required for this validation to work.", "stability": "stable", "summary": "The duration an OIDC token is valid after being authenticated by OIDC provider." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 176 }, "name": "tokenExpiryFromAuth", "type": { "fqn": "aws-cdk-lib.Duration" } }, { "abstract": true, "docs": { "remarks": "This validation uses iat claim of OIDC token.", "stability": "stable", "summary": "The duration an OIDC token is valid after being issued to a user." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 182 }, "name": "tokenExpiryFromIssue", "type": { "fqn": "aws-cdk-lib.Duration" } }, { "abstract": true, "docs": { "remarks": "A regular expression can be specified so AppSync can validate against multiple client identifiers at a time. Example", "stability": "stable", "summary": "The client identifier of the Relying party at the OpenID identity provider." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 170 }, "name": "clientId", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/types:OIDCAuthorizationConfig" }, "@aws-amplify/graphql-api-construct.OptimisticConflictResolutionStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Enable automerge on the project." }, "fqn": "@aws-amplify/graphql-api-construct.OptimisticConflictResolutionStrategy", "interfaces": [ "@aws-amplify/graphql-api-construct.ConflictResolutionStrategyBase" ], "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 314 }, "name": "OptimisticConflictResolutionStrategy", "properties": [ { "abstract": true, "docs": { "remarks": "For more information, refer to https://docs.aws.amazon.com/appsync/latest/devguide/conflict-detection-and-sync.html#conflict-detection-and-resolution", "stability": "stable", "summary": "This conflict resolution strategy the _version to perform optimistic concurrency." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 319 }, "name": "handlerType", "type": { "primitive": "string" } } ], "symbolId": "src/types:OptimisticConflictResolutionStrategy" }, "@aws-amplify/graphql-api-construct.PartialTranslationBehavior": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "A utility interface equivalent to Partial." }, "fqn": "@aws-amplify/graphql-api-construct.PartialTranslationBehavior", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 589 }, "name": "PartialTranslationBehavior", "properties": [ { "abstract": true, "docs": { "default": "false", "remarks": "- Removing or renaming a model\n - Modifying the primary key of a model\n - Modifying a Local Secondary Index of a model (only applies to projects with secondaryKeyAsGSI turned off)\n\nALL DATA WILL BE LOST when the table replacement happens. When enabled, destructive updates are allowed.\nThis will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".", "stability": "experimental", "summary": "The following schema updates require replacement of the underlying DynamoDB table:." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 681 }, "name": "allowDestructiveGraphqlSchemaUpdates", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Disable resolver deduping, this can sometimes cause problems because dedupe ordering isn't stable today, which can lead to circular dependencies across stacks if models are reordered." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 601 }, "name": "disableResolverDeduping", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "index": "can be provided a null name field to disable the generation of the query on the Api." }, "default": "true", "remarks": "If enabled,", "stability": "stable", "summary": "Automate generation of query names, and as a result attaching all indexes as queries to the generated Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 646 }, "name": "enableAutoIndexQueryNames", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "Not recommended for use, prefer\nto use `Object.values(resources.additionalResources['AWS::Elasticsearch::Domain']).forEach((domain: CfnDomain) => {\n domain.NodeToNodeEncryptionOptions = { Enabled: True };\n});", "stability": "stable", "summary": "If enabled, set nodeToNodeEncryption on the searchable domain (if one exists)." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 661 }, "name": "enableSearchNodeToNodeEncryption", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "When enabled, internal cfn outputs which existed in Amplify-generated apps will continue to be emitted." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 667 }, "name": "enableTransformerCfnOutputs", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Ensure that the owner field is still populated even if a static iam or group authorization applies." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 626 }, "name": "populateOwnerFieldForStaticGroupAuth", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "When enabled, any global secondary index update operation will replace the table instead of iterative deployment, which will WIPE ALL\nEXISTING DATA but cost much less time for deployment This will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".", "stability": "experimental", "summary": "This behavior will only come into effect when both \"allowDestructiveGraphqlSchemaUpdates\" and this value are set to true." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 691 }, "name": "replaceTableUponGsiUpdate", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Enable custom primary key support, there's no good reason to disable this unless trying not to update a legacy app." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 652 }, "name": "respectPrimaryKeyAttributesOnConnectionField", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Enabling sandbox mode will enable api key auth on all models in the transformed schema." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 607 }, "name": "sandboxModeEnabled", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "index": "as an LSI instead of a GSI." }, "default": "true", "stability": "stable", "summary": "If disabled, generated." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 639 }, "name": "secondaryKeyAsGSI", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "model": "parameter behavior, where setting a single field doesn't implicitly set the other fields to null." }, "default": "true", "stability": "stable", "summary": "Restore parity w/ GQLv1." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 594 }, "name": "shouldDeepMergeDirectiveConfigDefaults", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "When enabled, suppresses default behavior of redacting relational fields when auth rules do not exactly match." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 620 }, "name": "subscriptionsInheritPrimaryAuth", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "This is a legacy parameter from the Graphql Transformer existing in Amplify CLI, not recommended to change.", "stability": "stable", "summary": "If enabled, disable api key resource generation even if specified as an auth rule on the construct." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 633 }, "name": "suppressApiKeyGeneration", "optional": true, "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Ensure that oidc and userPool auth use the `sub` field in the for the username field, which disallows new users with the same id to access data from a deleted user in the pool." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 614 }, "name": "useSubUsernameForDefaultIdentityClaim", "optional": true, "type": { "primitive": "boolean" } } ], "symbolId": "src/types:PartialTranslationBehavior" }, "@aws-amplify/graphql-api-construct.PointInTimeRecoverySpecification": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Reference to PointInTimeRecovey Specification for continuous backups." }, "fqn": "@aws-amplify/graphql-api-construct.PointInTimeRecoverySpecification", "kind": "interface", "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 25 }, "name": "PointInTimeRecoverySpecification", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Indicates whether point in time recovery is enabled (true) or disabled (false) on the table." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 29 }, "name": "pointInTimeRecoveryEnabled", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "remarks": "Your table data is only recoverable to any point-in-time from within the configured recovery period.\nIf no value is provided, the value will default to 35.", "stability": "stable", "summary": "The number of preceding days for which continuous backups are taken and maintained." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 35 }, "name": "recoveryPeriodInDays", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "src/amplify-dynamodb-table-wrapper:PointInTimeRecoverySpecification" }, "@aws-amplify/graphql-api-construct.ProvisionedConcurrencyConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "The configuration for the provisioned concurrency of the Lambda." }, "fqn": "@aws-amplify/graphql-api-construct.ProvisionedConcurrencyConfig", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 122 }, "name": "ProvisionedConcurrencyConfig", "properties": [ { "abstract": true, "docs": { "remarks": "*", "stability": "stable", "summary": "The amount of provisioned concurrency to allocate." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 124 }, "name": "provisionedConcurrentExecutions", "type": { "primitive": "number" } } ], "symbolId": "src/model-datasource-strategy-types:ProvisionedConcurrencyConfig" }, "@aws-amplify/graphql-api-construct.ProvisionedThroughput": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Wrapper for provisioned throughput config in DDB." }, "fqn": "@aws-amplify/graphql-api-construct.ProvisionedThroughput", "kind": "interface", "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 41 }, "name": "ProvisionedThroughput", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The read capacity units on the table or index." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 45 }, "name": "readCapacityUnits", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The write capacity units on the table or index." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 50 }, "name": "writeCapacityUnits", "type": { "primitive": "number" } } ], "symbolId": "src/amplify-dynamodb-table-wrapper:ProvisionedThroughput" }, "@aws-amplify/graphql-api-construct.QueryFunctionSlot": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Slot types for Query Resolvers." }, "fqn": "@aws-amplify/graphql-api-construct.QueryFunctionSlot", "interfaces": [ "@aws-amplify/graphql-api-construct.FunctionSlotBase" ], "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 440 }, "name": "QueryFunctionSlot", "properties": [ { "abstract": true, "docs": { "remarks": "For more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers", "stability": "stable", "summary": "The slot name to inject this behavior into." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 450 }, "name": "slotName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "This slot type applies to the Query type on the Api definition." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 444 }, "name": "typeName", "type": { "primitive": "string" } } ], "symbolId": "src/types:QueryFunctionSlot" }, "@aws-amplify/graphql-api-construct.RetentionDays": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "stability": "stable", "summary": "How long, in days, the log contents will be retained." }, "fqn": "@aws-amplify/graphql-api-construct.RetentionDays", "kind": "enum", "locationInModule": { "filename": "../../node_modules/aws-cdk-lib/aws-logs/lib/log-group.d.ts", "line": 239 }, "members": [ { "docs": { "stability": "stable", "summary": "1 day." }, "name": "ONE_DAY" }, { "docs": { "stability": "stable", "summary": "3 days." }, "name": "THREE_DAYS" }, { "docs": { "stability": "stable", "summary": "5 days." }, "name": "FIVE_DAYS" }, { "docs": { "stability": "stable", "summary": "1 week." }, "name": "ONE_WEEK" }, { "docs": { "stability": "stable", "summary": "2 weeks." }, "name": "TWO_WEEKS" }, { "docs": { "stability": "stable", "summary": "1 month." }, "name": "ONE_MONTH" }, { "docs": { "stability": "stable", "summary": "2 months." }, "name": "TWO_MONTHS" }, { "docs": { "stability": "stable", "summary": "3 months." }, "name": "THREE_MONTHS" }, { "docs": { "stability": "stable", "summary": "4 months." }, "name": "FOUR_MONTHS" }, { "docs": { "stability": "stable", "summary": "5 months." }, "name": "FIVE_MONTHS" }, { "docs": { "stability": "stable", "summary": "6 months." }, "name": "SIX_MONTHS" }, { "docs": { "stability": "stable", "summary": "1 year." }, "name": "ONE_YEAR" }, { "docs": { "stability": "stable", "summary": "13 months." }, "name": "THIRTEEN_MONTHS" }, { "docs": { "stability": "stable", "summary": "18 months." }, "name": "EIGHTEEN_MONTHS" }, { "docs": { "stability": "stable", "summary": "2 years." }, "name": "TWO_YEARS" }, { "docs": { "stability": "stable", "summary": "3 years." }, "name": "THREE_YEARS" }, { "docs": { "stability": "stable", "summary": "5 years." }, "name": "FIVE_YEARS" }, { "docs": { "stability": "stable", "summary": "6 years." }, "name": "SIX_YEARS" }, { "docs": { "stability": "stable", "summary": "7 years." }, "name": "SEVEN_YEARS" }, { "docs": { "stability": "stable", "summary": "8 years." }, "name": "EIGHT_YEARS" }, { "docs": { "stability": "stable", "summary": "9 years." }, "name": "NINE_YEARS" }, { "docs": { "stability": "stable", "summary": "10 years." }, "name": "TEN_YEARS" }, { "docs": { "stability": "stable", "summary": "Retain logs forever." }, "name": "INFINITE" } ], "name": "RetentionDays", "symbolId": "aws-logs/lib/log-group:RetentionDays" }, "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "A strategy that creates a Lambda to connect to a pre-existing SQL table to resolve model data." }, "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 67 }, "name": "SQLLambdaModelDataSourceStrategy", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The parameters the Lambda data source will use to connect to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 82 }, "name": "dbConnectionConfig", "type": { "union": { "types": [ { "fqn": "@aws-amplify/graphql-api-construct.SqlModelDataSourceSecretsManagerDbConnectionConfig" }, { "fqn": "@aws-amplify/graphql-api-construct.SqlModelDataSourceSsmDbConnectionConfig" }, { "fqn": "@aws-amplify/graphql-api-construct.SqlModelDataSourceSsmDbConnectionStringConfig" } ] } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The type of the SQL database used to process model operations for this definition." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 77 }, "name": "dbType", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "This will be used to name the AppSync DataSource itself, plus any associated resources like resolver Lambdas.\nThis name must be unique across all schema definitions in a GraphQL API.", "stability": "stable", "summary": "The name of the strategy." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 72 }, "name": "name", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "The key is the value of the `references` attribute of the `@sql` directive in the `schema`; the value is the SQL\nto be executed.", "stability": "stable", "summary": "Custom SQL statements." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 93 }, "name": "customSqlStatements", "optional": true, "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The configuration for the provisioned concurrency of the Lambda." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 98 }, "name": "sqlLambdaProvisionedConcurrencyConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.ProvisionedConcurrencyConfig" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The configuration of the VPC into which to install the Lambda." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 87 }, "name": "vpcConfiguration", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.VpcConfig" } } ], "symbolId": "src/model-datasource-strategy-types:SQLLambdaModelDataSourceStrategy" }, "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategyFactory": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "stability": "stable", "summary": "Class exposing utilities to produce SQLLambdaModelDataSourceStrategy objects given various inputs." }, "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategyFactory", "initializer": { "docs": { "stability": "stable" } }, "kind": "class", "locationInModule": { "filename": "src/sql-model-datasource-strategy.ts", "line": 88 }, "methods": [ { "docs": { "remarks": "The key\nof the `customSqlStatements` record is the file's base name (that is, the name of the file minus the directory and extension).", "stability": "stable", "summary": "Creates a SQLLambdaModelDataSourceStrategy where the binding's `customSqlStatements` are populated from `sqlFiles`." }, "locationInModule": { "filename": "src/sql-model-datasource-strategy.ts", "line": 95 }, "name": "fromCustomSqlFiles", "parameters": [ { "docs": { "summary": "the list of files to load SQL statements from." }, "name": "sqlFiles", "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "docs": { "summary": "the remaining SQLLambdaModelDataSourceStrategy options." }, "name": "options", "type": { "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy" } } ], "returns": { "type": { "fqn": "@aws-amplify/graphql-api-construct.SQLLambdaModelDataSourceStrategy" } }, "static": true } ], "name": "SQLLambdaModelDataSourceStrategyFactory", "symbolId": "src/sql-model-datasource-strategy:SQLLambdaModelDataSourceStrategyFactory" }, "@aws-amplify/graphql-api-construct.SSESpecification": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Represents the settings used to enable server-side encryption." }, "fqn": "@aws-amplify/graphql-api-construct.SSESpecification", "kind": "interface", "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 64 }, "name": "SSESpecification", "properties": [ { "abstract": true, "docs": { "remarks": "If enabled (true), server-side encryption type is set to `KMS` and an AWS managed key is used ( AWS KMS charges apply).\nIf disabled (false) or not specified, server-side encryption is set to AWS owned key.", "stability": "stable", "summary": "Indicates whether server-side encryption is done using an AWS managed key or an AWS owned key." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 70 }, "name": "sseEnabled", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "remarks": "To specify a key, use its key ID, Amazon Resource Name (ARN), alias name, or alias ARN. Note that you should only provide\nthis parameter if the key is different from the default DynamoDB key `alias/aws/dynamodb` .", "stability": "stable", "summary": "The AWS KMS key that should be used for the AWS KMS encryption." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 77 }, "name": "kmsMasterKeyId", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "The only supported value is:\n`KMS` Server-side encryption that uses AWS Key Management Service.\n The key is stored in your account and is managed by AWS KMS ( AWS KMS charges apply).", "stability": "stable", "summary": "Server-side encryption type." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 84 }, "name": "sseType", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.SSEType" } } ], "symbolId": "src/amplify-dynamodb-table-wrapper:SSESpecification" }, "@aws-amplify/graphql-api-construct.SSEType": { "assembly": "@aws-amplify/graphql-api-construct", "docs": { "remarks": "The key is stored in your account and is managed by KMS (AWS KMS charges apply).", "stability": "stable", "summary": "Server Side Encryption Type Values - `KMS` - Server-side encryption that uses AWS KMS." }, "fqn": "@aws-amplify/graphql-api-construct.SSEType", "kind": "enum", "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 57 }, "members": [ { "docs": { "stability": "stable" }, "name": "KMS" } ], "name": "SSEType", "symbolId": "src/amplify-dynamodb-table-wrapper:SSEType" }, "@aws-amplify/graphql-api-construct.SqlModelDataSourceSecretsManagerDbConnectionConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "The managed secret should be in the same region as the lambda.", "stability": "experimental", "summary": "The credentials stored in Secrets Manager that the lambda data source will use to connect to the database." }, "fqn": "@aws-amplify/graphql-api-construct.SqlModelDataSourceSecretsManagerDbConnectionConfig", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 197 }, "name": "SqlModelDataSourceSecretsManagerDbConnectionConfig", "properties": [ { "abstract": true, "docs": { "stability": "experimental", "summary": "The database name." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 211 }, "name": "databaseName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The hostame of the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 214 }, "name": "hostname", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "The port number of the database proxy, cluster, or instance." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 208 }, "name": "port", "type": { "primitive": "number" } }, { "abstract": true, "docs": { "remarks": "*", "stability": "experimental", "summary": "The ARN of the managed secret with username, password, and hostname to use when connecting to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 199 }, "name": "secretArn", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "If not supplied, the secret is expected to be encrypted with the default\nAWS-managed key.", "stability": "experimental", "summary": "The ARN of the customer managed encryption key for the secret." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 205 }, "name": "keyArn", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "An optional configuration for a custom SSL certificate authority to use when connecting to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 219 }, "name": "sslCertConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.SslCertConfig" } } ], "symbolId": "src/model-datasource-strategy-types:SqlModelDataSourceSecretsManagerDbConnectionConfig" }, "@aws-amplify/graphql-api-construct.SqlModelDataSourceSsmDbConnectionConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "These parameters are retrieved from Secure Systems Manager in the same region as the Lambda.", "stability": "stable", "summary": "The Secure Systems Manager parameter paths the Lambda data source will use to connect to the database." }, "fqn": "@aws-amplify/graphql-api-construct.SqlModelDataSourceSsmDbConnectionConfig", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 227 }, "name": "SqlModelDataSourceSsmDbConnectionConfig", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The Secure Systems Manager parameter containing the database name." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 243 }, "name": "databaseNameSsmPath", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "For RDS-based SQL data sources, this can be the hostname\nof a database proxy, cluster, or instance.", "stability": "stable", "summary": "The Secure Systems Manager parameter containing the hostname of the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 231 }, "name": "hostnameSsmPath", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Secure Systems Manager parameter containing the password to use when connecting to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 240 }, "name": "passwordSsmPath", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Secure Systems Manager parameter containing the port number of the database proxy, cluster, or instance." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 234 }, "name": "portSsmPath", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The Secure Systems Manager parameter containing the username to use when connecting to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 237 }, "name": "usernameSsmPath", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "An optional configuration for a custom SSL certificate authority to use when connecting to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 248 }, "name": "sslCertConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.SslCertConfig" } } ], "symbolId": "src/model-datasource-strategy-types:SqlModelDataSourceSsmDbConnectionConfig" }, "@aws-amplify/graphql-api-construct.SqlModelDataSourceSsmDbConnectionStringConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "experimental", "summary": "The configuration option to use a Secure Systems Manager parameter to store the connection string to the database." }, "fqn": "@aws-amplify/graphql-api-construct.SqlModelDataSourceSsmDbConnectionStringConfig", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 176 }, "name": "SqlModelDataSourceSsmDbConnectionStringConfig", "properties": [ { "abstract": true, "docs": { "remarks": "If more than one path is provided,\nthe SQL Lambda will attempt to retrieve connection information from each path in order until it finds a valid\npath entry, then stop. If the connection information contained in that path is invalid, the SQL Lambda will not\nattempt to retrieve connection information from subsequent paths in the array.", "stability": "experimental", "summary": "The SSM Path to the secure connection string used for connecting to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 183 }, "name": "connectionUriSsmPath", "type": { "union": { "types": [ { "primitive": "string" }, { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } ] } } }, { "abstract": true, "docs": { "stability": "experimental", "summary": "An optional configuration for a custom SSL certificate authority to use when connecting to the database." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 188 }, "name": "sslCertConfig", "optional": true, "type": { "fqn": "@aws-amplify/graphql-api-construct.SslCertConfig" } } ], "symbolId": "src/model-datasource-strategy-types:SqlModelDataSourceSsmDbConnectionStringConfig" }, "@aws-amplify/graphql-api-construct.SslCertConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "Although we can't declare it in the actual interface definition because it results in invalid C#, each conforming type\nmust have a `configType: string` field to allow for discriminated union behavior.", "stability": "stable", "summary": "Marker interface." }, "fqn": "@aws-amplify/graphql-api-construct.SslCertConfig", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 155 }, "name": "SslCertConfig", "symbolId": "src/model-datasource-strategy-types:SslCertConfig" }, "@aws-amplify/graphql-api-construct.SslCertSsmPathConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable" }, "fqn": "@aws-amplify/graphql-api-construct.SslCertSsmPathConfig", "interfaces": [ "@aws-amplify/graphql-api-construct.SslCertConfig" ], "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 157 }, "name": "SslCertSsmPathConfig", "properties": [ { "abstract": true, "docs": { "remarks": "Amplify resolves the trust store to use as follows:\n- If the `ssmPath` parameter is provided, use it.\n - If the parameter is a single string, use it.\n - If the parameter is an array, iterate over them in order\n - In either case, if the parameter is provided but the certificate content isn't retrievable, fails with an error.\n- If the database host is an RDS cluster, instance, or proxy (in other words, if the database host ends with \"rds.amazonaws.com\"), use\n an RDS-specific trust store vended by AWS. See\n https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html#UsingWithRDS.SSL.CertificatesAllRegions\n- Otherwise, use the trust store vended with the NodeJS runtime version that the SQL lambda is running on", "stability": "stable", "summary": "The SSM path to a custom SSL certificate to use instead of the default." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 169 }, "name": "ssmPath", "type": { "union": { "types": [ { "primitive": "string" }, { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } ] } } } ], "symbolId": "src/model-datasource-strategy-types:SslCertSsmPathConfig" }, "@aws-amplify/graphql-api-construct.StreamSpecification": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Represents the DynamoDB Streams configuration for a table in DynamoDB." }, "fqn": "@aws-amplify/graphql-api-construct.StreamSpecification", "kind": "interface", "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 90 }, "name": "StreamSpecification", "properties": [ { "abstract": true, "docs": { "remarks": "Valid values for `StreamViewType` are:\n- `KEYS_ONLY` - Only the key attributes of the modified item are written to the stream.\n- `NEW_IMAGE` - The entire item, as it appears after it was modified, is written to the stream.\n- `OLD_IMAGE` - The entire item, as it appeared before it was modified, is written to the stream.\n- `NEW_AND_OLD_IMAGES` - Both the new and the old item images of the item are written to the stream.", "stability": "stable", "summary": "When an item in the table is modified, `StreamViewType` determines what information is written to the stream for this table." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 99 }, "name": "streamViewType", "type": { "fqn": "aws-cdk-lib.aws_dynamodb.StreamViewType" } } ], "symbolId": "src/amplify-dynamodb-table-wrapper:StreamSpecification" }, "@aws-amplify/graphql-api-construct.SubnetAvailabilityZone": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "Although it is possible to create multiple\nsubnets in a single availability zone, VPC service endpoints may only be deployed to a single subnet in a given availability zone. This\nstructure ensures that the Lambda function and VPC service endpoints are mutually consistent.", "stability": "stable", "summary": "Subnet configuration for VPC endpoints used by a Lambda resolver for a SQL-based data source." }, "fqn": "@aws-amplify/graphql-api-construct.SubnetAvailabilityZone", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 132 }, "name": "SubnetAvailabilityZone", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The availability zone of the subnet." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 137 }, "name": "availabilityZone", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The subnet ID to install the Lambda data source in." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 134 }, "name": "subnetId", "type": { "primitive": "string" } } ], "symbolId": "src/model-datasource-strategy-types:SubnetAvailabilityZone" }, "@aws-amplify/graphql-api-construct.SubscriptionFunctionSlot": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Slot types for Subscription Resolvers." }, "fqn": "@aws-amplify/graphql-api-construct.SubscriptionFunctionSlot", "interfaces": [ "@aws-amplify/graphql-api-construct.FunctionSlotBase" ], "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 458 }, "name": "SubscriptionFunctionSlot", "properties": [ { "abstract": true, "docs": { "remarks": "For more information on slotting, refer to https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers", "stability": "stable", "summary": "The slot name to inject this behavior into." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 468 }, "name": "slotName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "This slot type applies to the Subscription type on the Api definition." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 462 }, "name": "typeName", "type": { "primitive": "string" } } ], "symbolId": "src/types:SubscriptionFunctionSlot" }, "@aws-amplify/graphql-api-construct.TimeToLiveSpecification": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Shape for TTL config." }, "fqn": "@aws-amplify/graphql-api-construct.TimeToLiveSpecification", "kind": "interface", "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 9 }, "name": "TimeToLiveSpecification", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Boolean determining if the ttl is enabled or not." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 13 }, "name": "enabled", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Attribute name to apply to the ttl spec." }, "immutable": true, "locationInModule": { "filename": "src/amplify-dynamodb-table-wrapper.ts", "line": 18 }, "name": "attributeName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/amplify-dynamodb-table-wrapper:TimeToLiveSpecification" }, "@aws-amplify/graphql-api-construct.TranslationBehavior": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "This is intended to replace feature flags, to ensure param coercion happens in\na single location, and isn't spread around the transformers, where they can\nhave different default behaviors.", "stability": "stable", "summary": "Strongly typed set of shared parameters for all transformers, and core layer." }, "fqn": "@aws-amplify/graphql-api-construct.TranslationBehavior", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 486 }, "name": "TranslationBehavior", "properties": [ { "abstract": true, "docs": { "default": "false", "remarks": "- Removing or renaming a model\n - Modifying the primary key of a model\n - Modifying a Local Secondary Index of a model (only applies to projects with secondaryKeyAsGSI turned off)\n\nALL DATA WILL BE LOST when the table replacement happens. When enabled, destructive updates are allowed.\nThis will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".", "stability": "experimental", "summary": "The following schema updates require replacement of the underlying DynamoDB table:." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 571 }, "name": "allowDestructiveGraphqlSchemaUpdates", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Disable resolver deduping, this can sometimes cause problems because dedupe ordering isn't stable today, which can lead to circular dependencies across stacks if models are reordered." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 498 }, "name": "disableResolverDeduping", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "index": "can be provided a null name field to disable the generation of the query on the Api." }, "default": "true", "remarks": "If enabled,", "stability": "stable", "summary": "Automate generation of query names, and as a result attaching all indexes as queries to the generated Api." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 543 }, "name": "enableAutoIndexQueryNames", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 551 }, "name": "enableSearchNodeToNodeEncryption", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "When enabled, internal cfn outputs which existed in Amplify-generated apps will continue to be emitted." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 557 }, "name": "enableTransformerCfnOutputs", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Ensure that the owner field is still populated even if a static iam or group authorization applies." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 523 }, "name": "populateOwnerFieldForStaticGroupAuth", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "When enabled, any GSI update operation will replace the table instead of iterative deployment, which will WIPE ALL EXISTING DATA but\ncost much less time for deployment This will only affect DynamoDB tables with provision strategy \"AMPLIFY_TABLE\".", "stability": "experimental", "summary": "This behavior will only come into effect when both \"allowDestructiveGraphqlSchemaUpdates\" and this value are set to true." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 581 }, "name": "replaceTableUponGsiUpdate", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Enable custom primary key support, there's no good reason to disable this unless trying not to update a legacy app." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 549 }, "name": "respectPrimaryKeyAttributesOnConnectionField", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "Enabling sandbox mode will enable api key auth on all models in the transformed schema." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 504 }, "name": "sandboxModeEnabled", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "index": "as an LSI instead of a GSI." }, "default": "true", "stability": "stable", "summary": "If disabled, generated." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 536 }, "name": "secondaryKeyAsGSI", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "custom": { "model": "parameter behavior, where setting a single field doesn't implicitly set the other fields to null." }, "default": "true", "stability": "stable", "summary": "Restore parity w/ GQLv1." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 491 }, "name": "shouldDeepMergeDirectiveConfigDefaults", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "stability": "stable", "summary": "When enabled, suppresses default behavior of redacting relational fields when auth rules do not exactly match." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 517 }, "name": "subscriptionsInheritPrimaryAuth", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "false", "remarks": "This is a legacy parameter from the Graphql Transformer existing in Amplify CLI, not recommended to change.", "stability": "stable", "summary": "If enabled, disable api key resource generation even if specified as an auth rule on the construct." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 530 }, "name": "suppressApiKeyGeneration", "type": { "primitive": "boolean" } }, { "abstract": true, "docs": { "default": "true", "stability": "stable", "summary": "Ensure that oidc and userPool auth use the `sub` field in the for the username field, which disallows new users with the same id to access data from a deleted user in the pool." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 511 }, "name": "useSubUsernameForDefaultIdentityClaim", "type": { "primitive": "boolean" } } ], "symbolId": "src/types:TranslationBehavior" }, "@aws-amplify/graphql-api-construct.UserPoolAuthorizationConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "stability": "stable", "summary": "Configuration for Cognito UserPool Authorization on the Graphql Api." }, "fqn": "@aws-amplify/graphql-api-construct.UserPoolAuthorizationConfig", "kind": "interface", "locationInModule": { "filename": "src/types.ts", "line": 143 }, "name": "UserPoolAuthorizationConfig", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The Cognito User Pool which is used to authenticated JWT tokens, and vends group and user information." }, "immutable": true, "locationInModule": { "filename": "src/types.ts", "line": 147 }, "name": "userPool", "type": { "fqn": "aws-cdk-lib.aws_cognito.IUserPool" } } ], "symbolId": "src/types:UserPoolAuthorizationConfig" }, "@aws-amplify/graphql-api-construct.VpcConfig": { "assembly": "@aws-amplify/graphql-api-construct", "datatype": true, "docs": { "remarks": "The SQL Lambda will be deployed\ninto the specified VPC, subnets, and security groups. The specified subnets and security groups must be in the same VPC. The VPC must\nhave at least one subnet. The construct will also create VPC service endpoints in the specified subnets, as well as inbound security\nrules, to allow traffic on port 443 within each security group. This allows the Lambda to read database connection information from\nSecure Systems Manager.", "stability": "stable", "summary": "Configuration of the VPC in which to install a Lambda to resolve queries against a SQL-based data source." }, "fqn": "@aws-amplify/graphql-api-construct.VpcConfig", "kind": "interface", "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 108 }, "name": "VpcConfig", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "The security groups to install the Lambda data source in." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 113 }, "name": "securityGroupIds", "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The subnets to install the Lambda data source in, one per availability zone." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 116 }, "name": "subnetAvailabilityZoneConfig", "type": { "collection": { "elementtype": { "fqn": "@aws-amplify/graphql-api-construct.SubnetAvailabilityZone" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "The VPC to install the Lambda data source in." }, "immutable": true, "locationInModule": { "filename": "src/model-datasource-strategy-types.ts", "line": 110 }, "name": "vpcId", "type": { "primitive": "string" } } ], "symbolId": "src/model-datasource-strategy-types:VpcConfig" } }, "version": "1.20.3", "fingerprint": "IW0P0JYVA+diTo23Fc0HRgkPQV5yGpfvNeoIu6/qYkQ=" }