awscdkresourcesmongodbatlas

package module
v3.1.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 6, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

README

MongoDB Atlas AWS CDK Resources

Code Health Package CDK npm version PyPI version NuGet version Maven Central Go Reference

View on Construct Hub

Use MongoDB Atlas AWS CDK (or Cloud Development Kit) constructs to manage MongoDB Atlas. The AWS CDK is a framework for defining infrastructure as code (IaC). It allows developers to write code in their preferred programming language, such as TypeScript for example, to define and deploy infrastructure. AWS CDK gets synthesized down into AWS CloudFormation templates at deployment so users no longer have to write or maintain YAML/JSON based CloudFormation templates.

Available Packages

NPM

The npm package is available at awscdk-resources-mongodbatlas

npm i awscdk-resources-mongodbatlas
PyPI

The PyPI package is available at awscdk-resources-mongodbatlas

pip install awscdk-resources-mongodbatlas
Nuget

The Nuget package is available at MongoDB.AWSCDKResourcesMongoDBAtlas

dotnet add package MongoDB.AWSCDKResourcesMongoDBAtlas --version 1.0.0
Maven

The Maven package is available at awscdk-resources-mongodbatlas

<dependency>
    <groupId>org.mongodb</groupId>
    <artifactId>awscdk-resources-mongodbatlas</artifactId>
    <version>1.0.0</version>
</dependency>
Go

The go package is generated into the github.com/mongodb/awscdk-resources-mongodbatlas-go package.

go get github.com/mongodb/awscdk-resources-mongodbatlas-go/awscdkresourcesmongodbatlas

Available Constructors

MongoDB Atlas AWS CDK Resources provides L1, L2 and L3 CDK constructors. Please, have a look at README.md for a full lists of constructors and examples.

Getting Started

See the cdk examples for how to setup prerequisites & get started with your first cluster, using our AWS CDK sample code. We also provide a quick guide on How to Deploy MongoDB Atlas with AWS CDK in TypeScript.

Support, Bugs, Feature Requests

Feature requests can be submitted at feedback.mongodb.com - just select "Atlas CloudFormation Resources" as the category or vote for an already suggested feature.

Support for the MongoDB Atlas Resource Provider for CloudFormation is provided under MongoDB Atlas support plans, starting with Developer. Please submit support questions within the Atlas UI. In addition, support questions submitted under the Issues section of this repo are also being monitored. Bugs should be filed under the Issues section of this repo.

MongoDB Atlas API Keys Credential Management

Atlas API keys Configuration are required for both CloudFormation and CDK resources, and this Atlas API key pair are provided as input by the use of a Profile

AWS CloudFormation limits Third Parties from using non-AWS API Keys as either hardcoded secrets in CloudFormation templates or via CDK, hence we now require all the users store MongoDB Atlas API Keys via AWS Secrets Manager.

NOTE: the process for configuring the PROFILE is the same and is required both for CloudFormation and CDK

1. Configure your MongoDB Atlas API Keys

You'll need to generate an API key pair (public and private keys) for your Atlas organization and configure them to grant CloudFormation access to your Atlas project. Refer to the Atlas documentation for detailed instructions.

2. Configure your Profile

To use Atlas CloudFormation resources, you must configure a "profile" with your API keys using AWS Secrets Manager.

The secret should follow this format:

SecretName: cfn/atlas/profile/{ProfileName}
SecretValue: {"PublicKey": "YourPublicKey", "PrivateKey": "YourPrivateKey"}

To create a new secret for a default profile, use the PROFILE SECRET TEMPLATE file provided in this repository.

Here are some examples of how to use this template:

example 1:
  ProfileName: default
  SecretName: cfn/atlas/profile/default
  SecretValue: {"PublicKey": "YourPublicKey", "PrivateKey": "YourPrivateKey"}
example 2:
  ProfileName: testProfile
  SecretName: cfn/atlas/profile/testProfile
  SecretValue: {"PublicKey": "YourPublicKey", "PrivateKey": "YourPrivateKey"}

Contributing

See our CONTRIBUTING.md guide.

Issues

Autoclose stale issues and PRs
  • After 5 days of no activity (no comments or commits on an issue/PR) we automatically tag it as "stale" and add a message: This issue/PR has gone 5 days without any activity and meets the project's definition of "stale". This will be auto-closed if there is no new activity over the next 5 days. If the issue is still relevant and active, you can simply comment with a "bump" to keep it open, or add the label "not_stale". Thanks for keeping our repository healthy!
  • After 5 more days of no activity we automatically close the issue/PR.
One-click reproducible issues principle

Our support will prioritise issues that contain all the required information that follows the following principles:

  • We should be able to make no changes to your provided script and successfully run a local execution reproducing the issue.

    • This means that you should kindly provide all the required instructions. This includes but not limited to:

      • AWS CDK package version used to reproduce the issue
      • CFN resource version and AWS region used to reproduce the issue
    • Issues that cannot be properly reproduced will be de-prioritised in favour of the ones that succeed.

  • Before opening an issue, you have to try to specifically isolate it to the CDK MongoDB Atlas constructor by removing as many dependencies as possible. If the issue only happens with other dependencies, then:

    • If other CDK constructors are required, please make sure you also include those. Same "one-click reproducible issue" principle applies.
    • If external components are required to replicate it, please make sure you also provides instructions on those parts.

Documentation

Overview

MongoDB Atlas CDK Construct Library for AWS CloudFormation Resources

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AtlasBasicPrivateEndpoint_IsConstruct

func AtlasBasicPrivateEndpoint_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func AtlasBasic_IsConstruct

func AtlasBasic_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func AtlasEncryptionAtRestExpress_IsConstruct

func AtlasEncryptionAtRestExpress_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func AtlasEncryptionAtRest_IsConstruct

func AtlasEncryptionAtRest_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func AtlasServerlessBasic_IsConstruct

func AtlasServerlessBasic_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnAlertConfiguration_CFN_RESOURCE_TYPE_NAME

func CfnAlertConfiguration_CFN_RESOURCE_TYPE_NAME() *string

func CfnAlertConfiguration_IsCfnElement

func CfnAlertConfiguration_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnAlertConfiguration_IsCfnResource

func CfnAlertConfiguration_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnAlertConfiguration_IsConstruct

func CfnAlertConfiguration_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnAuditing_CFN_RESOURCE_TYPE_NAME

func CfnAuditing_CFN_RESOURCE_TYPE_NAME() *string

func CfnAuditing_IsCfnElement

func CfnAuditing_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnAuditing_IsCfnResource

func CfnAuditing_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnAuditing_IsConstruct

func CfnAuditing_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnCloudBackUpRestoreJobs_CFN_RESOURCE_TYPE_NAME

func CfnCloudBackUpRestoreJobs_CFN_RESOURCE_TYPE_NAME() *string

func CfnCloudBackUpRestoreJobs_IsCfnElement

func CfnCloudBackUpRestoreJobs_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCloudBackUpRestoreJobs_IsCfnResource

func CfnCloudBackUpRestoreJobs_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCloudBackUpRestoreJobs_IsConstruct

func CfnCloudBackUpRestoreJobs_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnCloudBackupSchedule_CFN_RESOURCE_TYPE_NAME

func CfnCloudBackupSchedule_CFN_RESOURCE_TYPE_NAME() *string

func CfnCloudBackupSchedule_IsCfnElement

func CfnCloudBackupSchedule_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCloudBackupSchedule_IsCfnResource

func CfnCloudBackupSchedule_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCloudBackupSchedule_IsConstruct

func CfnCloudBackupSchedule_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnCloudBackupSnapshotExportBucket_CFN_RESOURCE_TYPE_NAME

func CfnCloudBackupSnapshotExportBucket_CFN_RESOURCE_TYPE_NAME() *string

func CfnCloudBackupSnapshotExportBucket_IsCfnElement

func CfnCloudBackupSnapshotExportBucket_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCloudBackupSnapshotExportBucket_IsCfnResource

func CfnCloudBackupSnapshotExportBucket_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCloudBackupSnapshotExportBucket_IsConstruct

func CfnCloudBackupSnapshotExportBucket_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnCloudBackupSnapshot_CFN_RESOURCE_TYPE_NAME

func CfnCloudBackupSnapshot_CFN_RESOURCE_TYPE_NAME() *string

func CfnCloudBackupSnapshot_IsCfnElement

func CfnCloudBackupSnapshot_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCloudBackupSnapshot_IsCfnResource

func CfnCloudBackupSnapshot_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCloudBackupSnapshot_IsConstruct

func CfnCloudBackupSnapshot_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnClusterOutageSimulation_CFN_RESOURCE_TYPE_NAME added in v3.1.0

func CfnClusterOutageSimulation_CFN_RESOURCE_TYPE_NAME() *string

func CfnClusterOutageSimulation_IsCfnElement added in v3.1.0

func CfnClusterOutageSimulation_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnClusterOutageSimulation_IsCfnResource added in v3.1.0

func CfnClusterOutageSimulation_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnClusterOutageSimulation_IsConstruct added in v3.1.0

func CfnClusterOutageSimulation_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnCluster_CFN_RESOURCE_TYPE_NAME

func CfnCluster_CFN_RESOURCE_TYPE_NAME() *string

func CfnCluster_IsCfnElement

func CfnCluster_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCluster_IsCfnResource

func CfnCluster_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCluster_IsConstruct

func CfnCluster_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnCustomDbRole_CFN_RESOURCE_TYPE_NAME

func CfnCustomDbRole_CFN_RESOURCE_TYPE_NAME() *string

func CfnCustomDbRole_IsCfnElement

func CfnCustomDbRole_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCustomDbRole_IsCfnResource

func CfnCustomDbRole_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCustomDbRole_IsConstruct

func CfnCustomDbRole_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnCustomDnsConfigurationClusterAws_CFN_RESOURCE_TYPE_NAME

func CfnCustomDnsConfigurationClusterAws_CFN_RESOURCE_TYPE_NAME() *string

func CfnCustomDnsConfigurationClusterAws_IsCfnElement

func CfnCustomDnsConfigurationClusterAws_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnCustomDnsConfigurationClusterAws_IsCfnResource

func CfnCustomDnsConfigurationClusterAws_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnCustomDnsConfigurationClusterAws_IsConstruct

func CfnCustomDnsConfigurationClusterAws_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnDataLakes_CFN_RESOURCE_TYPE_NAME

func CfnDataLakes_CFN_RESOURCE_TYPE_NAME() *string

func CfnDataLakes_IsCfnElement

func CfnDataLakes_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnDataLakes_IsCfnResource

func CfnDataLakes_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnDataLakes_IsConstruct

func CfnDataLakes_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnDatabaseUser_CFN_RESOURCE_TYPE_NAME

func CfnDatabaseUser_CFN_RESOURCE_TYPE_NAME() *string

func CfnDatabaseUser_IsCfnElement

func CfnDatabaseUser_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnDatabaseUser_IsCfnResource

func CfnDatabaseUser_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnDatabaseUser_IsConstruct

func CfnDatabaseUser_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnEncryptionAtRest_CFN_RESOURCE_TYPE_NAME

func CfnEncryptionAtRest_CFN_RESOURCE_TYPE_NAME() *string

func CfnEncryptionAtRest_IsCfnElement

func CfnEncryptionAtRest_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnEncryptionAtRest_IsCfnResource

func CfnEncryptionAtRest_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnEncryptionAtRest_IsConstruct

func CfnEncryptionAtRest_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnFederatedDatabaseInstance_CFN_RESOURCE_TYPE_NAME

func CfnFederatedDatabaseInstance_CFN_RESOURCE_TYPE_NAME() *string

func CfnFederatedDatabaseInstance_IsCfnElement

func CfnFederatedDatabaseInstance_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnFederatedDatabaseInstance_IsCfnResource

func CfnFederatedDatabaseInstance_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnFederatedDatabaseInstance_IsConstruct

func CfnFederatedDatabaseInstance_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnFederatedQueryLimit_CFN_RESOURCE_TYPE_NAME

func CfnFederatedQueryLimit_CFN_RESOURCE_TYPE_NAME() *string

func CfnFederatedQueryLimit_IsCfnElement

func CfnFederatedQueryLimit_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnFederatedQueryLimit_IsCfnResource

func CfnFederatedQueryLimit_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnFederatedQueryLimit_IsConstruct

func CfnFederatedQueryLimit_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnFederatedSettingsOrgRoleMapping_CFN_RESOURCE_TYPE_NAME

func CfnFederatedSettingsOrgRoleMapping_CFN_RESOURCE_TYPE_NAME() *string

func CfnFederatedSettingsOrgRoleMapping_IsCfnElement

func CfnFederatedSettingsOrgRoleMapping_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnFederatedSettingsOrgRoleMapping_IsCfnResource

func CfnFederatedSettingsOrgRoleMapping_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnFederatedSettingsOrgRoleMapping_IsConstruct

func CfnFederatedSettingsOrgRoleMapping_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnGlobalClusterConfig_CFN_RESOURCE_TYPE_NAME

func CfnGlobalClusterConfig_CFN_RESOURCE_TYPE_NAME() *string

func CfnGlobalClusterConfig_IsCfnElement

func CfnGlobalClusterConfig_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnGlobalClusterConfig_IsCfnResource

func CfnGlobalClusterConfig_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnGlobalClusterConfig_IsConstruct

func CfnGlobalClusterConfig_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnLdapConfiguration_CFN_RESOURCE_TYPE_NAME

func CfnLdapConfiguration_CFN_RESOURCE_TYPE_NAME() *string

func CfnLdapConfiguration_IsCfnElement

func CfnLdapConfiguration_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnLdapConfiguration_IsCfnResource

func CfnLdapConfiguration_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnLdapConfiguration_IsConstruct

func CfnLdapConfiguration_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnLdapVerify_CFN_RESOURCE_TYPE_NAME

func CfnLdapVerify_CFN_RESOURCE_TYPE_NAME() *string

func CfnLdapVerify_IsCfnElement

func CfnLdapVerify_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnLdapVerify_IsCfnResource

func CfnLdapVerify_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnLdapVerify_IsConstruct

func CfnLdapVerify_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnMaintenanceWindow_CFN_RESOURCE_TYPE_NAME

func CfnMaintenanceWindow_CFN_RESOURCE_TYPE_NAME() *string

func CfnMaintenanceWindow_IsCfnElement

func CfnMaintenanceWindow_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnMaintenanceWindow_IsCfnResource

func CfnMaintenanceWindow_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnMaintenanceWindow_IsConstruct

func CfnMaintenanceWindow_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnNetworkContainer_CFN_RESOURCE_TYPE_NAME

func CfnNetworkContainer_CFN_RESOURCE_TYPE_NAME() *string

func CfnNetworkContainer_IsCfnElement

func CfnNetworkContainer_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnNetworkContainer_IsCfnResource

func CfnNetworkContainer_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnNetworkContainer_IsConstruct

func CfnNetworkContainer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnNetworkPeering_CFN_RESOURCE_TYPE_NAME

func CfnNetworkPeering_CFN_RESOURCE_TYPE_NAME() *string

func CfnNetworkPeering_IsCfnElement

func CfnNetworkPeering_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnNetworkPeering_IsCfnResource

func CfnNetworkPeering_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnNetworkPeering_IsConstruct

func CfnNetworkPeering_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnOnlineArchive_CFN_RESOURCE_TYPE_NAME

func CfnOnlineArchive_CFN_RESOURCE_TYPE_NAME() *string

func CfnOnlineArchive_IsCfnElement

func CfnOnlineArchive_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnOnlineArchive_IsCfnResource

func CfnOnlineArchive_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnOnlineArchive_IsConstruct

func CfnOnlineArchive_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnOrgInvitation_CFN_RESOURCE_TYPE_NAME

func CfnOrgInvitation_CFN_RESOURCE_TYPE_NAME() *string

func CfnOrgInvitation_IsCfnElement

func CfnOrgInvitation_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnOrgInvitation_IsCfnResource

func CfnOrgInvitation_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnOrgInvitation_IsConstruct

func CfnOrgInvitation_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnOrganization_CFN_RESOURCE_TYPE_NAME added in v3.1.0

func CfnOrganization_CFN_RESOURCE_TYPE_NAME() *string

func CfnOrganization_IsCfnElement added in v3.1.0

func CfnOrganization_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnOrganization_IsCfnResource added in v3.1.0

func CfnOrganization_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnOrganization_IsConstruct added in v3.1.0

func CfnOrganization_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnPrivateEndPointRegionalMode_CFN_RESOURCE_TYPE_NAME

func CfnPrivateEndPointRegionalMode_CFN_RESOURCE_TYPE_NAME() *string

func CfnPrivateEndPointRegionalMode_IsCfnElement

func CfnPrivateEndPointRegionalMode_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnPrivateEndPointRegionalMode_IsCfnResource

func CfnPrivateEndPointRegionalMode_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnPrivateEndPointRegionalMode_IsConstruct

func CfnPrivateEndPointRegionalMode_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnPrivateEndpointAdl_CFN_RESOURCE_TYPE_NAME

func CfnPrivateEndpointAdl_CFN_RESOURCE_TYPE_NAME() *string

func CfnPrivateEndpointAdl_IsCfnElement

func CfnPrivateEndpointAdl_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnPrivateEndpointAdl_IsCfnResource

func CfnPrivateEndpointAdl_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnPrivateEndpointAdl_IsConstruct

func CfnPrivateEndpointAdl_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnPrivateEndpointAws_CFN_RESOURCE_TYPE_NAME

func CfnPrivateEndpointAws_CFN_RESOURCE_TYPE_NAME() *string

func CfnPrivateEndpointAws_IsCfnElement

func CfnPrivateEndpointAws_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnPrivateEndpointAws_IsCfnResource

func CfnPrivateEndpointAws_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnPrivateEndpointAws_IsConstruct

func CfnPrivateEndpointAws_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnPrivateEndpointService_CFN_RESOURCE_TYPE_NAME

func CfnPrivateEndpointService_CFN_RESOURCE_TYPE_NAME() *string

func CfnPrivateEndpointService_IsCfnElement

func CfnPrivateEndpointService_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnPrivateEndpointService_IsCfnResource

func CfnPrivateEndpointService_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnPrivateEndpointService_IsConstruct

func CfnPrivateEndpointService_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnPrivateEndpoint_CFN_RESOURCE_TYPE_NAME

func CfnPrivateEndpoint_CFN_RESOURCE_TYPE_NAME() *string

func CfnPrivateEndpoint_IsCfnElement

func CfnPrivateEndpoint_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnPrivateEndpoint_IsCfnResource

func CfnPrivateEndpoint_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnPrivateEndpoint_IsConstruct

func CfnPrivateEndpoint_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_CFN_RESOURCE_TYPE_NAME

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_CFN_RESOURCE_TYPE_NAME() *string

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_IsCfnElement

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_IsCfnResource

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_IsConstruct

func CfnPrivatelinkEndpointServiceDataFederationOnlineArchive_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnProjectInvitation_CFN_RESOURCE_TYPE_NAME

func CfnProjectInvitation_CFN_RESOURCE_TYPE_NAME() *string

func CfnProjectInvitation_IsCfnElement

func CfnProjectInvitation_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnProjectInvitation_IsCfnResource

func CfnProjectInvitation_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnProjectInvitation_IsConstruct

func CfnProjectInvitation_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnProjectIpAccessList_CFN_RESOURCE_TYPE_NAME

func CfnProjectIpAccessList_CFN_RESOURCE_TYPE_NAME() *string

func CfnProjectIpAccessList_IsCfnElement

func CfnProjectIpAccessList_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnProjectIpAccessList_IsCfnResource

func CfnProjectIpAccessList_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnProjectIpAccessList_IsConstruct

func CfnProjectIpAccessList_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnProject_CFN_RESOURCE_TYPE_NAME

func CfnProject_CFN_RESOURCE_TYPE_NAME() *string

func CfnProject_IsCfnElement

func CfnProject_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnProject_IsCfnResource

func CfnProject_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnProject_IsConstruct

func CfnProject_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnSearchIndex_CFN_RESOURCE_TYPE_NAME

func CfnSearchIndex_CFN_RESOURCE_TYPE_NAME() *string

func CfnSearchIndex_IsCfnElement

func CfnSearchIndex_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnSearchIndex_IsCfnResource

func CfnSearchIndex_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnSearchIndex_IsConstruct

func CfnSearchIndex_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnServerlessInstance_CFN_RESOURCE_TYPE_NAME

func CfnServerlessInstance_CFN_RESOURCE_TYPE_NAME() *string

func CfnServerlessInstance_IsCfnElement

func CfnServerlessInstance_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnServerlessInstance_IsCfnResource

func CfnServerlessInstance_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnServerlessInstance_IsConstruct

func CfnServerlessInstance_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnServerlessPrivateEndpoint_CFN_RESOURCE_TYPE_NAME

func CfnServerlessPrivateEndpoint_CFN_RESOURCE_TYPE_NAME() *string

func CfnServerlessPrivateEndpoint_IsCfnElement

func CfnServerlessPrivateEndpoint_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnServerlessPrivateEndpoint_IsCfnResource

func CfnServerlessPrivateEndpoint_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnServerlessPrivateEndpoint_IsConstruct

func CfnServerlessPrivateEndpoint_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnTeams_CFN_RESOURCE_TYPE_NAME

func CfnTeams_CFN_RESOURCE_TYPE_NAME() *string

func CfnTeams_IsCfnElement

func CfnTeams_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnTeams_IsCfnResource

func CfnTeams_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnTeams_IsConstruct

func CfnTeams_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnThirdPartyIntegration_CFN_RESOURCE_TYPE_NAME

func CfnThirdPartyIntegration_CFN_RESOURCE_TYPE_NAME() *string

func CfnThirdPartyIntegration_IsCfnElement

func CfnThirdPartyIntegration_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnThirdPartyIntegration_IsCfnResource

func CfnThirdPartyIntegration_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnThirdPartyIntegration_IsConstruct

func CfnThirdPartyIntegration_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnTrigger_CFN_RESOURCE_TYPE_NAME

func CfnTrigger_CFN_RESOURCE_TYPE_NAME() *string

func CfnTrigger_IsCfnElement

func CfnTrigger_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnTrigger_IsCfnResource

func CfnTrigger_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnTrigger_IsConstruct

func CfnTrigger_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func CfnX509AuthenticationDatabaseUser_CFN_RESOURCE_TYPE_NAME

func CfnX509AuthenticationDatabaseUser_CFN_RESOURCE_TYPE_NAME() *string

func CfnX509AuthenticationDatabaseUser_IsCfnElement

func CfnX509AuthenticationDatabaseUser_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element.

func CfnX509AuthenticationDatabaseUser_IsCfnResource

func CfnX509AuthenticationDatabaseUser_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource.

func CfnX509AuthenticationDatabaseUser_IsConstruct

func CfnX509AuthenticationDatabaseUser_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func DatadogIntegration_IsConstruct

func DatadogIntegration_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func MicrosoftTeamsIntegration_IsConstruct

func MicrosoftTeamsIntegration_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func MongoAtlasBootstrap_IsConstruct

func MongoAtlasBootstrap_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func MongoSecretProfile_IsConstruct

func MongoSecretProfile_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func NewAtlasBasicPrivateEndpoint_Override

func NewAtlasBasicPrivateEndpoint_Override(a AtlasBasicPrivateEndpoint, scope constructs.Construct, id *string, props *AtlasBasicPrivateEndpointProps)

Creates an instance of AtlasBasicPrivateEndpoint.

func NewAtlasBasic_Override

func NewAtlasBasic_Override(a AtlasBasic, scope constructs.Construct, id *string, props *AtlasBasicProps)

Creates an instance of AtlasBasic.

func NewAtlasEncryptionAtRestExpress_Override

func NewAtlasEncryptionAtRestExpress_Override(a AtlasEncryptionAtRestExpress, scope constructs.Construct, id *string, props *AtlasEncryptionAtRestExpressProps)

func NewAtlasEncryptionAtRest_Override

func NewAtlasEncryptionAtRest_Override(a AtlasEncryptionAtRest, scope constructs.Construct, id *string, props *AtlasEncryptionAtRestProps)

func NewAtlasServerlessBasic_Override

func NewAtlasServerlessBasic_Override(a AtlasServerlessBasic, scope constructs.Construct, id *string, props *AtlasServerlessBasicProps)

Creates an instance of AtlasServerlessBasic.

func NewCfnAlertConfiguration_Override

func NewCfnAlertConfiguration_Override(c CfnAlertConfiguration, scope constructs.Construct, id *string, props *CfnAlertConfigurationProps)

Create a new `MongoDB::Atlas::AlertConfiguration`.

func NewCfnAuditing_Override

func NewCfnAuditing_Override(c CfnAuditing, scope constructs.Construct, id *string, props *CfnAuditingProps)

Create a new `MongoDB::Atlas::Auditing`.

func NewCfnCloudBackUpRestoreJobs_Override

func NewCfnCloudBackUpRestoreJobs_Override(c CfnCloudBackUpRestoreJobs, scope constructs.Construct, id *string, props *CfnCloudBackUpRestoreJobsProps)

Create a new `MongoDB::Atlas::CloudBackUpRestoreJobs`.

func NewCfnCloudBackupSchedule_Override

func NewCfnCloudBackupSchedule_Override(c CfnCloudBackupSchedule, scope constructs.Construct, id *string, props *CfnCloudBackupScheduleProps)

Create a new `MongoDB::Atlas::CloudBackupSchedule`.

func NewCfnCloudBackupSnapshotExportBucket_Override

func NewCfnCloudBackupSnapshotExportBucket_Override(c CfnCloudBackupSnapshotExportBucket, scope constructs.Construct, id *string, props *CfnCloudBackupSnapshotExportBucketProps)

Create a new `MongoDB::Atlas::CloudBackupSnapshotExportBucket`.

func NewCfnCloudBackupSnapshot_Override

func NewCfnCloudBackupSnapshot_Override(c CfnCloudBackupSnapshot, scope constructs.Construct, id *string, props *CfnCloudBackupSnapshotProps)

Create a new `MongoDB::Atlas::CloudBackupSnapshot`.

func NewCfnClusterOutageSimulation_Override added in v3.1.0

func NewCfnClusterOutageSimulation_Override(c CfnClusterOutageSimulation, scope constructs.Construct, id *string, props *CfnClusterOutageSimulationProps)

Create a new `MongoDB::Atlas::ClusterOutageSimulation`.

func NewCfnCluster_Override

func NewCfnCluster_Override(c CfnCluster, scope constructs.Construct, id *string, props *CfnClusterProps)

Create a new `MongoDB::Atlas::Cluster`.

func NewCfnCustomDbRole_Override

func NewCfnCustomDbRole_Override(c CfnCustomDbRole, scope constructs.Construct, id *string, props *CfnCustomDbRoleProps)

Create a new `MongoDB::Atlas::CustomDBRole`.

func NewCfnCustomDnsConfigurationClusterAws_Override

func NewCfnCustomDnsConfigurationClusterAws_Override(c CfnCustomDnsConfigurationClusterAws, scope constructs.Construct, id *string, props *CfnCustomDnsConfigurationClusterAwsProps)

Create a new `MongoDB::Atlas::CustomDnsConfigurationClusterAws`.

func NewCfnDataLakes_Override

func NewCfnDataLakes_Override(c CfnDataLakes, scope constructs.Construct, id *string, props *CfnDataLakesProps)

Create a new `MongoDB::Atlas::DataLakes`.

func NewCfnDatabaseUser_Override

func NewCfnDatabaseUser_Override(c CfnDatabaseUser, scope constructs.Construct, id *string, props *CfnDatabaseUserProps)

Create a new `MongoDB::Atlas::DatabaseUser`.

func NewCfnEncryptionAtRest_Override

func NewCfnEncryptionAtRest_Override(c CfnEncryptionAtRest, scope constructs.Construct, id *string, props *CfnEncryptionAtRestProps)

Create a new `MongoDB::Atlas::EncryptionAtRest`.

func NewCfnFederatedDatabaseInstance_Override

func NewCfnFederatedDatabaseInstance_Override(c CfnFederatedDatabaseInstance, scope constructs.Construct, id *string, props *CfnFederatedDatabaseInstanceProps)

Create a new `MongoDB::Atlas::FederatedDatabaseInstance`.

func NewCfnFederatedQueryLimit_Override

func NewCfnFederatedQueryLimit_Override(c CfnFederatedQueryLimit, scope constructs.Construct, id *string, props *CfnFederatedQueryLimitProps)

Create a new `MongoDB::Atlas::FederatedQueryLimit`.

func NewCfnFederatedSettingsOrgRoleMapping_Override

func NewCfnFederatedSettingsOrgRoleMapping_Override(c CfnFederatedSettingsOrgRoleMapping, scope constructs.Construct, id *string, props *CfnFederatedSettingsOrgRoleMappingProps)

Create a new `MongoDB::Atlas::FederatedSettingsOrgRoleMapping`.

func NewCfnGlobalClusterConfig_Override

func NewCfnGlobalClusterConfig_Override(c CfnGlobalClusterConfig, scope constructs.Construct, id *string, props *CfnGlobalClusterConfigProps)

Create a new `MongoDB::Atlas::GlobalClusterConfig`.

func NewCfnLdapConfiguration_Override

func NewCfnLdapConfiguration_Override(c CfnLdapConfiguration, scope constructs.Construct, id *string, props *CfnLdapConfigurationProps)

Create a new `MongoDB::Atlas::LDAPConfiguration`.

func NewCfnLdapVerify_Override

func NewCfnLdapVerify_Override(c CfnLdapVerify, scope constructs.Construct, id *string, props *CfnLdapVerifyProps)

Create a new `MongoDB::Atlas::LDAPVerify`.

func NewCfnMaintenanceWindow_Override

func NewCfnMaintenanceWindow_Override(c CfnMaintenanceWindow, scope constructs.Construct, id *string, props *CfnMaintenanceWindowProps)

Create a new `MongoDB::Atlas::MaintenanceWindow`.

func NewCfnNetworkContainer_Override

func NewCfnNetworkContainer_Override(c CfnNetworkContainer, scope constructs.Construct, id *string, props *CfnNetworkContainerProps)

Create a new `MongoDB::Atlas::NetworkContainer`.

func NewCfnNetworkPeering_Override

func NewCfnNetworkPeering_Override(c CfnNetworkPeering, scope constructs.Construct, id *string, props *CfnNetworkPeeringProps)

Create a new `MongoDB::Atlas::NetworkPeering`.

func NewCfnOnlineArchive_Override

func NewCfnOnlineArchive_Override(c CfnOnlineArchive, scope constructs.Construct, id *string, props *CfnOnlineArchiveProps)

Create a new `MongoDB::Atlas::OnlineArchive`.

func NewCfnOrgInvitation_Override

func NewCfnOrgInvitation_Override(c CfnOrgInvitation, scope constructs.Construct, id *string, props *CfnOrgInvitationProps)

Create a new `MongoDB::Atlas::OrgInvitation`.

func NewCfnOrganization_Override added in v3.1.0

func NewCfnOrganization_Override(c CfnOrganization, scope constructs.Construct, id *string, props *CfnOrganizationProps)

Create a new `MongoDB::Atlas::Organization`.

func NewCfnPrivateEndPointRegionalMode_Override

func NewCfnPrivateEndPointRegionalMode_Override(c CfnPrivateEndPointRegionalMode, scope constructs.Construct, id *string, props *CfnPrivateEndPointRegionalModeProps)

Create a new `MongoDB::Atlas::PrivateEndPointRegionalMode`.

func NewCfnPrivateEndpointAdl_Override

func NewCfnPrivateEndpointAdl_Override(c CfnPrivateEndpointAdl, scope constructs.Construct, id *string, props *CfnPrivateEndpointAdlProps)

Create a new `MongoDB::Atlas::PrivateEndpointADL`.

func NewCfnPrivateEndpointAws_Override

func NewCfnPrivateEndpointAws_Override(c CfnPrivateEndpointAws, scope constructs.Construct, id *string, props *CfnPrivateEndpointAwsProps)

Create a new `MongoDB::Atlas::PrivateEndpointAWS`.

func NewCfnPrivateEndpointService_Override

func NewCfnPrivateEndpointService_Override(c CfnPrivateEndpointService, scope constructs.Construct, id *string, props *CfnPrivateEndpointServiceProps)

Create a new `MongoDB::Atlas::PrivateEndpointService`.

func NewCfnPrivateEndpoint_Override

func NewCfnPrivateEndpoint_Override(c CfnPrivateEndpoint, scope constructs.Construct, id *string, props *CfnPrivateEndpointProps)

Create a new `MongoDB::Atlas::PrivateEndpoint`.

func NewCfnPrivatelinkEndpointServiceDataFederationOnlineArchive_Override

func NewCfnPrivatelinkEndpointServiceDataFederationOnlineArchive_Override(c CfnPrivatelinkEndpointServiceDataFederationOnlineArchive, scope constructs.Construct, id *string, props *CfnPrivatelinkEndpointServiceDataFederationOnlineArchiveProps)

Create a new `MongoDB::Atlas::PrivatelinkEndpointServiceDataFederationOnlineArchive`.

func NewCfnProjectInvitation_Override

func NewCfnProjectInvitation_Override(c CfnProjectInvitation, scope constructs.Construct, id *string, props *CfnProjectInvitationProps)

Create a new `MongoDB::Atlas::ProjectInvitation`.

func NewCfnProjectIpAccessList_Override

func NewCfnProjectIpAccessList_Override(c CfnProjectIpAccessList, scope constructs.Construct, id *string, props *CfnProjectIpAccessListProps)

Create a new `MongoDB::Atlas::ProjectIpAccessList`.

func NewCfnProject_Override

func NewCfnProject_Override(c CfnProject, scope constructs.Construct, id *string, props *CfnProjectProps)

Create a new `MongoDB::Atlas::Project`.

func NewCfnSearchIndex_Override

func NewCfnSearchIndex_Override(c CfnSearchIndex, scope constructs.Construct, id *string, props *CfnSearchIndexProps)

Create a new `MongoDB::Atlas::SearchIndex`.

func NewCfnServerlessInstance_Override

func NewCfnServerlessInstance_Override(c CfnServerlessInstance, scope constructs.Construct, id *string, props *CfnServerlessInstanceProps)

Create a new `MongoDB::Atlas::ServerlessInstance`.

func NewCfnServerlessPrivateEndpoint_Override

func NewCfnServerlessPrivateEndpoint_Override(c CfnServerlessPrivateEndpoint, scope constructs.Construct, id *string, props *CfnServerlessPrivateEndpointProps)

Create a new `MongoDB::Atlas::ServerlessPrivateEndpoint`.

func NewCfnTeams_Override

func NewCfnTeams_Override(c CfnTeams, scope constructs.Construct, id *string, props *CfnTeamsProps)

Create a new `MongoDB::Atlas::Teams`.

func NewCfnThirdPartyIntegration_Override

func NewCfnThirdPartyIntegration_Override(c CfnThirdPartyIntegration, scope constructs.Construct, id *string, props *CfnThirdPartyIntegrationProps)

Create a new `MongoDB::Atlas::ThirdPartyIntegration`.

func NewCfnTrigger_Override

func NewCfnTrigger_Override(c CfnTrigger, scope constructs.Construct, id *string, props *CfnTriggerProps)

Create a new `MongoDB::Atlas::Trigger`.

func NewCfnX509AuthenticationDatabaseUser_Override

func NewCfnX509AuthenticationDatabaseUser_Override(c CfnX509AuthenticationDatabaseUser, scope constructs.Construct, id *string, props *CfnX509AuthenticationDatabaseUserProps)

Create a new `MongoDB::Atlas::X509AuthenticationDatabaseUser`.

func NewDatadogIntegration_Override

func NewDatadogIntegration_Override(d DatadogIntegration, scope constructs.Construct, id *string, props *DatadogIntegrationProps)

func NewMicrosoftTeamsIntegration_Override

func NewMicrosoftTeamsIntegration_Override(m MicrosoftTeamsIntegration, scope constructs.Construct, id *string, props *MicrosoftTeamsIntegrationProps)

func NewMongoAtlasBootstrapProps_Override

func NewMongoAtlasBootstrapProps_Override(m MongoAtlasBootstrapProps)

func NewMongoAtlasBootstrap_Override

func NewMongoAtlasBootstrap_Override(m MongoAtlasBootstrap, scope constructs.Construct, id *string, props MongoAtlasBootstrapProps)

func NewMongoSecretProfile_Override

func NewMongoSecretProfile_Override(m MongoSecretProfile, scope constructs.Construct, id *string, profileName *string)

func NewPagerDutyIntegration_Override

func NewPagerDutyIntegration_Override(p PagerDutyIntegration, scope constructs.Construct, id *string, props *PagerDutyIntegrationProps)

func PagerDutyIntegration_IsConstruct

func PagerDutyIntegration_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

Types

type AccessListDefinition

type AccessListDefinition struct {
	// Unique string of the Amazon Web Services (AWS) security group that you want to add to the project's IP access list.
	//
	// Your IP access list entry can be one awsSecurityGroup, one cidrBlock, or one ipAddress. You must configure Virtual Private Connection (VPC) peering for your project before you can add an AWS security group to an IP access list. You cannot set AWS security groups as temporary access list entries. Don't set this parameter if you set cidrBlock or ipAddress.
	AwsSecurityGroup *string `field:"optional" json:"awsSecurityGroup" yaml:"awsSecurityGroup"`
	// Range of IP addresses in Classless Inter-Domain Routing (CIDR) notation that you want to add to the project's IP access list.
	//
	// Your IP access list entry can be one awsSecurityGroup, one cidrBlock, or one ipAddress. Don't set this parameter if you set awsSecurityGroup or ipAddress
	CidrBlock *string `field:"optional" json:"cidrBlock" yaml:"cidrBlock"`
	// Remark that explains the purpose or scope of this IP access list entry.
	Comment *string `field:"optional" json:"comment" yaml:"comment"`
	// Date and time after which MongoDB Cloud deletes the temporary access list entry.
	//
	// This parameter expresses its value in the ISO 8601 timestamp format in UTC and can include the time zone designation. The date must be later than the current date but no later than one week after you submit this request. The resource returns this parameter if you specified an expiration date when creating this IP access list entry.
	DeleteAfterDate *string `field:"optional" json:"deleteAfterDate" yaml:"deleteAfterDate"`
	// IP address that you want to add to the project's IP access list.
	//
	// Your IP access list entry can be one awsSecurityGroup, one cidrBlock, or one ipAddress. Don't set this parameter if you set awsSecurityGroup or cidrBlock.
	IpAddress *string `field:"optional" json:"ipAddress" yaml:"ipAddress"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
}

type Action

type Action struct {
	// Human-readable label that identifies the privilege action.
	Action *string `field:"optional" json:"action" yaml:"action"`
	// List of resources on which you grant the action.
	Resources *[]*Resource `field:"optional" json:"resources" yaml:"resources"`
}

type AdvancedAutoScaling

type AdvancedAutoScaling struct {
	Compute *Compute `field:"optional" json:"compute" yaml:"compute"`
	DiskGb  *DiskGb  `field:"optional" json:"diskGb" yaml:"diskGb"`
}

AWS Automatic Cluster Scaling.

type AdvancedRegionConfig

type AdvancedRegionConfig struct {
	AnalyticsAutoScaling *AdvancedAutoScaling             `field:"optional" json:"analyticsAutoScaling" yaml:"analyticsAutoScaling"`
	AnalyticsSpecs       *Specs                           `field:"optional" json:"analyticsSpecs" yaml:"analyticsSpecs"`
	AutoScaling          *AdvancedAutoScaling             `field:"optional" json:"autoScaling" yaml:"autoScaling"`
	BackingProviderName  *string                          `field:"optional" json:"backingProviderName" yaml:"backingProviderName"`
	ElectableSpecs       *Specs                           `field:"optional" json:"electableSpecs" yaml:"electableSpecs"`
	Priority             *float64                         `field:"optional" json:"priority" yaml:"priority"`
	ProviderName         AdvancedRegionConfigProviderName `field:"optional" json:"providerName" yaml:"providerName"`
	ReadOnlySpecs        *Specs                           `field:"optional" json:"readOnlySpecs" yaml:"readOnlySpecs"`
	RegionName           *string                          `field:"optional" json:"regionName" yaml:"regionName"`
}

Hardware specifications for nodes set for a given region.

Each regionConfigs object describes the region's priority in elections and the number and type of MongoDB nodes that MongoDB Cloud deploys to the region. Each regionConfigs object must have either an analyticsSpecs object, electableSpecs object, or readOnlySpecs object. Tenant clusters only require electableSpecs. Dedicated clusters can specify any of these specifications, but must have at least one electableSpecs object within a replicationSpec. Every hardware specification must use the same instanceSize.

Example:

If you set "replicationSpecs[n].regionConfigs[m].analyticsSpecs.instanceSize" : "M30", set "replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize" : "M30"if you have electable nodes and"replicationSpecs[n].regionConfigs[m].readOnlySpecs.instanceSize" : "M30" if you have read-only nodes.",

type AdvancedRegionConfigProviderName

type AdvancedRegionConfigProviderName string
const (
	// AWS.
	AdvancedRegionConfigProviderName_AWS AdvancedRegionConfigProviderName = "AWS"
	// GCP.
	AdvancedRegionConfigProviderName_GCP AdvancedRegionConfigProviderName = "GCP"
	// AZURE.
	AdvancedRegionConfigProviderName_AZURE AdvancedRegionConfigProviderName = "AZURE"
	// TENANT.
	AdvancedRegionConfigProviderName_TENANT AdvancedRegionConfigProviderName = "TENANT"
)

type AdvancedReplicationSpec

type AdvancedReplicationSpec struct {
	// Hardware specifications for nodes set for a given region.
	//
	// Each regionConfigs object describes the region's priority in elections and the number and type of MongoDB nodes that MongoDB Cloud deploys to the region. Each regionConfigs object must have either an analyticsSpecs object, electableSpecs object, or readOnlySpecs object. Tenant clusters only require electableSpecs. Dedicated clusters can specify any of these specifications, but must have at least one electableSpecs object within a replicationSpec. Every hardware specification must use the same instanceSize.
	//
	// Example:
	//
	// If you set "replicationSpecs[n].regionConfigs[m].analyticsSpecs.instanceSize" : "M30", set "replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize" : "M30"if you have electable nodes and"replicationSpecs[n].regionConfigs[m].readOnlySpecs.instanceSize" : "M30" if you have read-only nodes.",
	AdvancedRegionConfigs *[]*AdvancedRegionConfig `field:"optional" json:"advancedRegionConfigs" yaml:"advancedRegionConfigs"`
	// Unique 24-hexadecimal digit string that identifies the replication object for a zone in a Multi-Cloud Cluster.
	//
	// If you include existing zones in the request, you must specify this parameter. If you add a new zone to an existing Multi-Cloud Cluster, you may specify this parameter. The request deletes any existing zones in the Multi-Cloud Cluster that you exclude from the request.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// Positive integer that specifies the number of shards to deploy in each specified zone.
	//
	// If you set this value to 1 and "clusterType" : "SHARDED", MongoDB Cloud deploys a single-shard sharded cluster. Don't create a sharded cluster with a single shard for production environments. Single-shard sharded clusters don't provide the same benefits as multi-shard configurations.
	NumShards *float64 `field:"optional" json:"numShards" yaml:"numShards"`
	// Human-readable label that identifies the zone in a Global Cluster.
	//
	// Provide this value only if "clusterType" : "GEOSHARDED".
	ZoneName *string `field:"optional" json:"zoneName" yaml:"zoneName"`
}

List of settings that configure your cluster regions.

For Global Clusters, each object in the array represents a zone where your clusters nodes deploy. For non-Global replica sets and sharded clusters, this array has one object representing where your clusters nodes deploy.

type ApiAtlasDiskBackupCopySettingView

type ApiAtlasDiskBackupCopySettingView struct {
	// A label that identifies the cloud provider that stores the snapshot copy.
	CloudProvider *string `field:"optional" json:"cloudProvider" yaml:"cloudProvider"`
	// List that describes which types of snapshots to copy.
	Frequencies *[]*string `field:"optional" json:"frequencies" yaml:"frequencies"`
	// Target region to copy snapshots belonging to replicationSpecId to.
	RegionName *string `field:"optional" json:"regionName" yaml:"regionName"`
	// Unique 24-hexadecimal digit string that identifies the replication object for a zone in a cluster.
	ReplicationSpecId *string `field:"optional" json:"replicationSpecId" yaml:"replicationSpecId"`
	// Flag that indicates whether to copy the oplogs to the target region.
	ShouldCopyOplogs *bool `field:"optional" json:"shouldCopyOplogs" yaml:"shouldCopyOplogs"`
}

type ApiAtlasDiskBackupShardedClusterSnapshotMemberView

type ApiAtlasDiskBackupShardedClusterSnapshotMemberView struct {
	// Human-readable label that identifies the cloud provider that stores this snapshot.
	//
	// The resource returns this parameter when `"type": "replicaSet".`
	CloudProvider ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider `field:"optional" json:"cloudProvider" yaml:"cloudProvider"`
	// Unique 24-hexadecimal digit string that identifies the snapshot.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// Human-readable label that identifies the shard or config host from which MongoDB Cloud took this snapshot.
	ReplicaSetName *string `field:"optional" json:"replicaSetName" yaml:"replicaSetName"`
}

type ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider

type ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider string

Human-readable label that identifies the cloud provider that stores this snapshot.

The resource returns this parameter when `"type": "replicaSet".`

const (
	// AWS.
	ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider_AWS ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider = "AWS"
	// AZURE.
	ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider_AZURE ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider = "AZURE"
	// GCP.
	ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider_GCP ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider = "GCP"
)

type ApiAtlasDiskBackupShardedClusterSnapshotView

type ApiAtlasDiskBackupShardedClusterSnapshotView struct {
	// Date and time when MongoDB Cloud took the snapshot.
	//
	// This parameter expresses its value in the ISO 8601 timestamp format in UTC.
	CreatedAt *string `field:"optional" json:"createdAt" yaml:"createdAt"`
	// Human-readable phrase or sentence that explains the purpose of the snapshot.
	//
	// The resource returns this parameter when `"status": "onDemand"`.
	Description *string `field:"optional" json:"description" yaml:"description"`
	// Date and time when MongoDB Cloud deletes the snapshot.
	//
	// This parameter expresses its value in the ISO 8601 timestamp format in UTC.
	ExpiresAt *string `field:"optional" json:"expiresAt" yaml:"expiresAt"`
	// Human-readable label that identifies how often this snapshot triggers.
	FrequencyType ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType `field:"optional" json:"frequencyType" yaml:"frequencyType"`
	// Unique 24-hexadecimal digit string that identifies the snapshot.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// Unique string that identifies the Amazon Web Services (AWS) Key Management Service (KMS) Customer Master Key (CMK) used to encrypt the snapshot.
	//
	// The resource returns this value when `"encryptionEnabled" : true`.
	MasterKeyUuid *string `field:"optional" json:"masterKeyUuid" yaml:"masterKeyUuid"`
	// List that includes the snapshots and the cloud provider that stores the snapshots.
	//
	// The resource returns this parameter when `"type" : "SHARDED_CLUSTER"`.
	Members *[]*ApiAtlasDiskBackupShardedClusterSnapshotMemberView `field:"optional" json:"members" yaml:"members"`
	// Version of the MongoDB host that this snapshot backs up.
	MongodVersion *string `field:"optional" json:"mongodVersion" yaml:"mongodVersion"`
	// List that contains unique identifiers for the policy items.
	PolicyItems *[]*string `field:"optional" json:"policyItems" yaml:"policyItems"`
	// List that contains the unique identifiers of the snapshots created for the shards and config host for a sharded cluster.
	//
	// The resource returns this parameter when `"type": "SHARDED_CLUSTER"`. These identifiers should match the ones specified in the **members[n].id** parameters. This allows you to map a snapshot to its shard or config host name.
	SnapshotIds *[]*string `field:"optional" json:"snapshotIds" yaml:"snapshotIds"`
	// Human-readable label that identifies when this snapshot triggers.
	SnapshotType ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType `field:"optional" json:"snapshotType" yaml:"snapshotType"`
	// Human-readable label that indicates the stage of the backup process for this snapshot.
	Status ApiAtlasDiskBackupShardedClusterSnapshotViewStatus `field:"optional" json:"status" yaml:"status"`
	// Number of bytes taken to store the backup snapshot.
	StorageSizeBytes *string `field:"optional" json:"storageSizeBytes" yaml:"storageSizeBytes"`
	// Human-readable label that categorizes the cluster as a replica set or sharded cluster.
	Type ApiAtlasDiskBackupShardedClusterSnapshotViewType `field:"optional" json:"type" yaml:"type"`
}

type ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType

type ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType string

Human-readable label that identifies how often this snapshot triggers.

const (
	// hourly.
	ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType_HOURLY ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType = "HOURLY"
	// daily.
	ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType_DAILY ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType = "DAILY"
	// weekly.
	ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType_WEEKLY ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType = "WEEKLY"
	// monthly.
	ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType_MONTHLY ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType = "MONTHLY"
)

type ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType

type ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType string

Human-readable label that identifies when this snapshot triggers.

const (
	// onDemand.
	ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType_ON_DEMAND ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType = "ON_DEMAND"
	// scheduled.
	ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType_SCHEDULED ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType = "SCHEDULED"
)

type ApiAtlasDiskBackupShardedClusterSnapshotViewStatus

type ApiAtlasDiskBackupShardedClusterSnapshotViewStatus string

Human-readable label that indicates the stage of the backup process for this snapshot.

const (
	// queued.
	ApiAtlasDiskBackupShardedClusterSnapshotViewStatus_QUEUED ApiAtlasDiskBackupShardedClusterSnapshotViewStatus = "QUEUED"
	// inProgress.
	ApiAtlasDiskBackupShardedClusterSnapshotViewStatus_IN_PROGRESS ApiAtlasDiskBackupShardedClusterSnapshotViewStatus = "IN_PROGRESS"
	// completed.
	ApiAtlasDiskBackupShardedClusterSnapshotViewStatus_COMPLETED ApiAtlasDiskBackupShardedClusterSnapshotViewStatus = "COMPLETED"
	// failed.
	ApiAtlasDiskBackupShardedClusterSnapshotViewStatus_FAILED ApiAtlasDiskBackupShardedClusterSnapshotViewStatus = "FAILED"
)

type ApiAtlasDiskBackupShardedClusterSnapshotViewType

type ApiAtlasDiskBackupShardedClusterSnapshotViewType string

Human-readable label that categorizes the cluster as a replica set or sharded cluster.

const (
	// REPLICA_SET.
	ApiAtlasDiskBackupShardedClusterSnapshotViewType_REPLICA_SET ApiAtlasDiskBackupShardedClusterSnapshotViewType = "REPLICA_SET"
	// SHARDED_CLUSTER.
	ApiAtlasDiskBackupShardedClusterSnapshotViewType_SHARDED_CLUSTER ApiAtlasDiskBackupShardedClusterSnapshotViewType = "SHARDED_CLUSTER"
)

type ApiAtlasFtsAnalyzersViewManual

type ApiAtlasFtsAnalyzersViewManual struct {
	// Filters that examine text one character at a time and perform filtering operations.
	CharFilters *[]*string `field:"optional" json:"charFilters" yaml:"charFilters"`
	// Human-readable name that identifies the custom analyzer.
	//
	// Names must be unique within an index, and must not start with any of the following strings:
	// - `lucene.`
	// - `builtin.`
	// - `mongodb.`
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Filter that performs operations such as:.
	//
	// - Stemming, which reduces related words, such as "talking", "talked", and "talks" to their root word "talk".
	//
	// - Redaction, the removal of sensitive information from public documents.
	TokenFilters *[]*string `field:"optional" json:"tokenFilters" yaml:"tokenFilters"`
	// Tokenizer that you want to use to create tokens.
	//
	// Tokens determine how Atlas Search splits up text into discrete chunks for indexing.
	Tokenizer interface{} `field:"optional" json:"tokenizer" yaml:"tokenizer"`
}

type ApiAtlasFtsMappingsViewManual

type ApiAtlasFtsMappingsViewManual struct {
	// Flag that indicates whether the index uses dynamic or static mappings.
	//
	// Required for search indexes if **mappings.fields** is omitted.
	Dynamic *bool `field:"optional" json:"dynamic" yaml:"dynamic"`
	// One or more field specifications for the Atlas Search index.
	//
	// Stringify json representation of field with types and properties. Required for search indexes if **mappings.dynamic** is omitted or set to **false**.
	Fields *string `field:"optional" json:"fields" yaml:"fields"`
}

type ApiAtlasFtsSynonymMappingDefinitionView

type ApiAtlasFtsSynonymMappingDefinitionView struct {
	// Specific pre-defined method chosen to apply to the synonyms to be searched.
	Analyzer *string `field:"required" json:"analyzer" yaml:"analyzer"`
	// Human-readable label that identifies the synonym definition.
	//
	// Each **synonym.name** must be unique within the same index definition.
	Name *string `field:"required" json:"name" yaml:"name"`
	// Data set that stores the mapping one or more words map to one or more synonyms of those words.
	Source *SynonymSource `field:"required" json:"source" yaml:"source"`
}

type ApiAtlasNdsUserToDnMappingView

type ApiAtlasNdsUserToDnMappingView struct {
	// Lightweight Directory Access Protocol (LDAP) query template that inserts the LDAP name that the regular expression matches into an LDAP query Uniform Resource Identifier (URI).
	//
	// The formatting for the query must conform to [RFC 4515](https://datatracker.ietf.org/doc/html/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).
	LdapQuery *string `field:"optional" json:"ldapQuery" yaml:"ldapQuery"`
	// Regular expression that MongoDB Cloud uses to match against the provided Lightweight Directory Access Protocol (LDAP) username.
	//
	// Each parenthesis-enclosed section represents a regular expression capture group that the substitution or `ldapQuery` template uses.
	Match *string `field:"optional" json:"match" yaml:"match"`
	// Lightweight Directory Access Protocol (LDAP) Distinguished Name (DN) template that converts the LDAP username that matches regular expression in the *match* parameter into an LDAP Distinguished Name (DN).
	Substitution *string `field:"optional" json:"substitution" yaml:"substitution"`
}

type ApiDeleteCopiedBackupsView

type ApiDeleteCopiedBackupsView struct {
	// A label that identifies the cloud provider for the deleted copy setting whose backup copies you want to delete.
	CloudProvider *string `field:"optional" json:"cloudProvider" yaml:"cloudProvider"`
	// Target region for the deleted copy setting whose backup copies you want to delete.
	RegionName *string `field:"optional" json:"regionName" yaml:"regionName"`
	// Unique 24-hexadecimal digit string that identifies the replication object for a zone in a cluster.
	ReplicationSpecId *string `field:"optional" json:"replicationSpecId" yaml:"replicationSpecId"`
}

type ApiKey added in v3.1.0

type ApiKey struct {
	// Purpose or explanation provided when someone created this organization API key.
	//
	// 1 to 250 characters.
	Description *string `field:"optional" json:"description" yaml:"description"`
	// List of roles to grant this API key.
	//
	// If you provide this list, provide a minimum of one role and ensure each role applies to this organization.
	Roles *[]*string `field:"optional" json:"roles" yaml:"roles"`
}

type ApiPolicyItemView

type ApiPolicyItemView struct {
	// Desired frequency of the new backup policy item specified by frequencyType.
	FrequencyInterval *float64 `field:"optional" json:"frequencyInterval" yaml:"frequencyInterval"`
	// Frequency associated with the backup policy item.
	//
	// One of the following values: hourly, daily, weekly or monthly.
	FrequencyType *string `field:"optional" json:"frequencyType" yaml:"frequencyType"`
	// Unique identifier of the backup policy item.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// Metric of duration of the backup policy item: days, weeks, or months.
	RetentionUnit *string `field:"optional" json:"retentionUnit" yaml:"retentionUnit"`
	// Duration for which the backup is kept.
	//
	// Associated with retentionUnit.
	RetentionValue *float64 `field:"optional" json:"retentionValue" yaml:"retentionValue"`
}

type ApiPolicyView

type ApiPolicyView struct {
	Id          *string               `field:"optional" json:"id" yaml:"id"`
	PolicyItems *[]*ApiPolicyItemView `field:"optional" json:"policyItems" yaml:"policyItems"`
}

type AtlasBasic

type AtlasBasic interface {
	constructs.Construct
	IpAccessList() CfnProjectIpAccessList
	MCluster() CfnCluster
	MDBUser() CfnDatabaseUser
	MProject() CfnProject
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewAtlasBasic

func NewAtlasBasic(scope constructs.Construct, id *string, props *AtlasBasicProps) AtlasBasic

Creates an instance of AtlasBasic.

type AtlasBasicPrivateEndpoint

type AtlasBasicPrivateEndpoint interface {
	constructs.Construct
	AtlasBasic() AtlasBasic
	AwsPrivateEndpoint() awsec2.CfnVPCEndpoint
	// The tree node.
	Node() constructs.Node
	PrivateEndpointAws() CfnPrivateEndpointAws
	PrivateEndpointService() CfnPrivateEndpointService
	// Returns a string representation of this construct.
	ToString() *string
}

func NewAtlasBasicPrivateEndpoint

func NewAtlasBasicPrivateEndpoint(scope constructs.Construct, id *string, props *AtlasBasicPrivateEndpointProps) AtlasBasicPrivateEndpoint

Creates an instance of AtlasBasicPrivateEndpoint.

type AtlasBasicPrivateEndpointProps

type AtlasBasicPrivateEndpointProps struct {
	AtlasBasicProps      *AtlasBasicProps      `field:"required" json:"atlasBasicProps" yaml:"atlasBasicProps"`
	PrivateEndpointProps *PrivateEndpointProps `field:"required" json:"privateEndpointProps" yaml:"privateEndpointProps"`
	// Default: us-east-1.
	//
	Region  *string `field:"required" json:"region" yaml:"region"`
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

type AtlasBasicProps

type AtlasBasicProps struct {
	ClusterProps      *ClusterProps      `field:"required" json:"clusterProps" yaml:"clusterProps"`
	IpAccessListProps *IpAccessListProps `field:"required" json:"ipAccessListProps" yaml:"ipAccessListProps"`
	ProjectProps      *ProjectProps      `field:"required" json:"projectProps" yaml:"projectProps"`
	DbUserProps       *DatabaseUserProps `field:"optional" json:"dbUserProps" yaml:"dbUserProps"`
	Profile           *string            `field:"optional" json:"profile" yaml:"profile"`
}

type AtlasEncryptionAtRest

type AtlasEncryptionAtRest interface {
	constructs.Construct
	CfnEncryptionAtRest() CfnEncryptionAtRest
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewAtlasEncryptionAtRest

func NewAtlasEncryptionAtRest(scope constructs.Construct, id *string, props *AtlasEncryptionAtRestProps) AtlasEncryptionAtRest

type AtlasEncryptionAtRestExpress

type AtlasEncryptionAtRestExpress interface {
	constructs.Construct
	AccessList() CfnProjectIpAccessList
	Cluster() CfnCluster
	DatabaseUser() CfnDatabaseUser
	EncryptionAtRest() CfnEncryptionAtRest
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewAtlasEncryptionAtRestExpress

func NewAtlasEncryptionAtRestExpress(scope constructs.Construct, id *string, props *AtlasEncryptionAtRestExpressProps) AtlasEncryptionAtRestExpress

type AtlasEncryptionAtRestExpressProps

type AtlasEncryptionAtRestExpressProps struct {
	EncryptionAtRest *EncryptionAtRestProps `field:"required" json:"encryptionAtRest" yaml:"encryptionAtRest"`
	ProjectId        *string                `field:"required" json:"projectId" yaml:"projectId"`
	AccessList       *IpAccessListProps     `field:"optional" json:"accessList" yaml:"accessList"`
	Cluster          *ClusterProps          `field:"optional" json:"cluster" yaml:"cluster"`
	DatabaseUser     *DatabaseUserProps     `field:"optional" json:"databaseUser" yaml:"databaseUser"`
	Profile          *string                `field:"optional" json:"profile" yaml:"profile"`
}

type AtlasEncryptionAtRestProps

type AtlasEncryptionAtRestProps struct {
	// The AWS customer master key used to encrypt and decrypt the MongoDB master keys.
	CustomerMasterKeyId *string `field:"required" json:"customerMasterKeyId" yaml:"customerMasterKeyId"`
	// Unique identifier of the Atlas project to which the user belongs.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// ID of an AWS IAM role authorized to manage an AWS customer master key.
	RoleId *string `field:"required" json:"roleId" yaml:"roleId"`
	// Specifies whether Encryption at Rest is enabled for an Atlas project.
	//
	// To disable Encryption at Rest, pass only this parameter with a value of false. When you disable Encryption at Rest, Atlas also removes the configuration details.
	// Default Value: true.
	Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// The AWS region in which the AWS customer master key exists.
	//
	// Default Value: US_EAST_1.
	Region *string `field:"optional" json:"region" yaml:"region"`
}

type AtlasRole

type AtlasRole struct {
	// Unique 24-hexadecimal digit string that identifies the organization to which this role belongs.
	//
	// You can set a value for this parameter or **groupId** but not both in the same request.
	OrgId *string `field:"optional" json:"orgId" yaml:"orgId"`
	// Unique 24-hexadecimal digit string that identifies the project to which this role belongs.
	//
	// You can set a value for this parameter or **orgId** but not both in the same request.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team.
	//
	// These roles include organization- and project-level roles.
	//
	// Organization Roles
	//
	// * ORG_OWNER
	// * ORG_MEMBER
	// * ORG_GROUP_CREATOR
	// * ORG_BILLING_ADMIN
	// * ORG_READ_ONLY
	//
	// Project Roles
	//
	// * GROUP_CLUSTER_MANAGER
	// * GROUP_DATA_ACCESS_ADMIN
	// * GROUP_DATA_ACCESS_READ_ONLY
	// * GROUP_DATA_ACCESS_READ_WRITE
	// * GROUP_OWNER
	// * GROUP_READ_ONLY.
	RoleName AtlasRoleRoleName `field:"optional" json:"roleName" yaml:"roleName"`
}

type AtlasRoleRoleName

type AtlasRoleRoleName string

Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team.

These roles include organization- and project-level roles.

Organization Roles

* ORG_OWNER * ORG_MEMBER * ORG_GROUP_CREATOR * ORG_BILLING_ADMIN * ORG_READ_ONLY

Project Roles

* GROUP_CLUSTER_MANAGER * GROUP_DATA_ACCESS_ADMIN * GROUP_DATA_ACCESS_READ_ONLY * GROUP_DATA_ACCESS_READ_WRITE * GROUP_OWNER * GROUP_READ_ONLY.

const (
	// ORG_OWNER.
	AtlasRoleRoleName_ORG_OWNER AtlasRoleRoleName = "ORG_OWNER"
	// ORG_MEMBER.
	AtlasRoleRoleName_ORG_MEMBER AtlasRoleRoleName = "ORG_MEMBER"
	// ORG_GROUP_CREATOR.
	AtlasRoleRoleName_ORG_GROUP_CREATOR AtlasRoleRoleName = "ORG_GROUP_CREATOR"
	// ORG_BILLING_ADMIN.
	AtlasRoleRoleName_ORG_BILLING_ADMIN AtlasRoleRoleName = "ORG_BILLING_ADMIN"
	// ORG_READ_ONLY.
	AtlasRoleRoleName_ORG_READ_ONLY AtlasRoleRoleName = "ORG_READ_ONLY"
	// GROUP_CLUSTER_MANAGER.
	AtlasRoleRoleName_GROUP_CLUSTER_MANAGER AtlasRoleRoleName = "GROUP_CLUSTER_MANAGER"
	// GROUP_DATA_ACCESS_ADMIN.
	AtlasRoleRoleName_GROUP_DATA_ACCESS_ADMIN AtlasRoleRoleName = "GROUP_DATA_ACCESS_ADMIN"
	// GROUP_DATA_ACCESS_READ_ONLY.
	AtlasRoleRoleName_GROUP_DATA_ACCESS_READ_ONLY AtlasRoleRoleName = "GROUP_DATA_ACCESS_READ_ONLY"
	// GROUP_DATA_ACCESS_READ_WRITE.
	AtlasRoleRoleName_GROUP_DATA_ACCESS_READ_WRITE AtlasRoleRoleName = "GROUP_DATA_ACCESS_READ_WRITE"
	// GROUP_OWNER.
	AtlasRoleRoleName_GROUP_OWNER AtlasRoleRoleName = "GROUP_OWNER"
	// GROUP_READ_ONLY.
	AtlasRoleRoleName_GROUP_READ_ONLY AtlasRoleRoleName = "GROUP_READ_ONLY"
)

type AtlasServerlessBasic

type AtlasServerlessBasic interface {
	constructs.Construct
	IpAccessList() CfnProjectIpAccessList
	MDBUser() CfnDatabaseUser
	MProject() CfnProject
	Mserverless() CfnServerlessInstance
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewAtlasServerlessBasic

func NewAtlasServerlessBasic(scope constructs.Construct, id *string, props *AtlasServerlessBasicProps) AtlasServerlessBasic

Creates an instance of AtlasServerlessBasic.

type AtlasServerlessBasicProps

type AtlasServerlessBasicProps struct {
	ProjectProps      *ProjectProps               `field:"required" json:"projectProps" yaml:"projectProps"`
	ServerlessProps   *CfnServerlessInstanceProps `field:"required" json:"serverlessProps" yaml:"serverlessProps"`
	DbUserProps       *DatabaseUserProps          `field:"optional" json:"dbUserProps" yaml:"dbUserProps"`
	IpAccessListProps *IpAccessListProps          `field:"optional" json:"ipAccessListProps" yaml:"ipAccessListProps"`
	Profile           *string                     `field:"optional" json:"profile" yaml:"profile"`
}

type AtlasUser

type AtlasUser struct {
	// Two alphabet characters that identifies MongoDB Cloud user's geographic location.
	//
	// This parameter uses the ISO 3166-1a2 code format.
	Country *string `field:"optional" json:"country" yaml:"country"`
	// Email address that belongs to the MongoDB Cloud user.
	EmailAddress *string `field:"optional" json:"emailAddress" yaml:"emailAddress"`
	// First or given name that belongs to the MongoDB Cloud user.
	FirstName *string `field:"optional" json:"firstName" yaml:"firstName"`
	// Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// Last name, family name, or surname that belongs to the MongoDB Cloud user.
	LastName *string `field:"optional" json:"lastName" yaml:"lastName"`
	// List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both.
	//
	// RFC 5988 outlines these relationships.
	Links *[]*Link `field:"optional" json:"links" yaml:"links"`
	// Mobile phone number that belongs to the MongoDB Cloud user.
	MobileNumber *string `field:"optional" json:"mobileNumber" yaml:"mobileNumber"`
	// Password applied with the username to log in to MongoDB Cloud.
	//
	// MongoDB Cloud does not return this parameter except in response to creating a new MongoDB Cloud user. Only the MongoDB Cloud user can update their password after it has been set from the MongoDB Cloud console.
	Password *string `field:"optional" json:"password" yaml:"password"`
	// List of objects that display the MongoDB Cloud user's roles and the corresponding organization or project to which that role applies.
	//
	// A role can apply to one organization or one project but not both.
	Roles *[]*AtlasRole `field:"optional" json:"roles" yaml:"roles"`
	// List of unique 24-hexadecimal digit strings that identifies the teams to which this MongoDB Cloud user belongs.
	TeamIds *[]*string `field:"optional" json:"teamIds" yaml:"teamIds"`
	// Email address that represents the username of the MongoDB Cloud user.
	Username *string `field:"optional" json:"username" yaml:"username"`
}

type AuthConfig

type AuthConfig struct {
	// The type of authentication event that the trigger listens for.
	OperationType AuthConfigOperationType `field:"required" json:"operationType" yaml:"operationType"`
	// The type(s) of authentication provider that the trigger listens to.
	Providers *[]AuthConfigProviders `field:"required" json:"providers" yaml:"providers"`
}

type AuthConfigOperationType

type AuthConfigOperationType string

The type of authentication event that the trigger listens for.

const (
	// LOGIN.
	AuthConfigOperationType_LOGIN AuthConfigOperationType = "LOGIN"
	// CREATE.
	AuthConfigOperationType_CREATE AuthConfigOperationType = "CREATE"
	// DELETE.
	AuthConfigOperationType_DELETE AuthConfigOperationType = "DELETE"
)

type AuthConfigProviders

type AuthConfigProviders string
const (
	// anon-user.
	AuthConfigProviders_ANON_USER AuthConfigProviders = "ANON_USER"
	// api-key.
	AuthConfigProviders_API_KEY AuthConfigProviders = "API_KEY"
	// custom-token.
	AuthConfigProviders_CUSTOM_TOKEN AuthConfigProviders = "CUSTOM_TOKEN"
	// custom-function.
	AuthConfigProviders_CUSTOM_FUNCTION AuthConfigProviders = "CUSTOM_FUNCTION"
	// local-userpass.
	AuthConfigProviders_LOCAL_USERPASS AuthConfigProviders = "LOCAL_USERPASS"
	// oauth2-apple.
	AuthConfigProviders_OAUTH2_APPLE AuthConfigProviders = "OAUTH2_APPLE"
	// oauth2-facebook.
	AuthConfigProviders_OAUTH2_FACEBOOK AuthConfigProviders = "OAUTH2_FACEBOOK"
	// oauth2-google.
	AuthConfigProviders_OAUTH2_GOOGLE AuthConfigProviders = "OAUTH2_GOOGLE"
)

type AwsKmsConfiguration

type AwsKmsConfiguration struct {
	// The AWS customer master key used to encrypt and decrypt the MongoDB master keys.
	CustomerMasterKeyId *string `field:"optional" json:"customerMasterKeyId" yaml:"customerMasterKeyId"`
	// Specifies whether Encryption at Rest is enabled for an Atlas project.
	//
	// To disable Encryption at Rest, pass only this parameter with a value of false. When you disable Encryption at Rest, Atlas also removes the configuration details.
	Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
	// The AWS region in which the AWS customer master key exists.
	Region *string `field:"optional" json:"region" yaml:"region"`
	// ID of an AWS IAM role authorized to manage an AWS customer master key.
	RoleId *string `field:"optional" json:"roleId" yaml:"roleId"`
}

Specifies AWS KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.

type AwsPrivateEndpointConfig

type AwsPrivateEndpointConfig struct {
	// Status of the AWS PrivateEndpoint connection.
	AwsPrivateEndpointStatus *string `field:"optional" json:"awsPrivateEndpointStatus" yaml:"awsPrivateEndpointStatus"`
	// Unique identifiers of the interface endpoints in your VPC that you added to the AWS PrivateLink connection.
	InterfaceEndpointId *string `field:"optional" json:"interfaceEndpointId" yaml:"interfaceEndpointId"`
	// Aws Region.
	Region *string `field:"optional" json:"region" yaml:"region"`
	// List of string representing the AWS VPC Subnet ID (like: subnet-xxxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint).
	SubnetIds *[]*string `field:"optional" json:"subnetIds" yaml:"subnetIds"`
	// String Representing the AWS VPC ID (like: vpc-xxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint).
	VpcId *string `field:"optional" json:"vpcId" yaml:"vpcId"`
}

AWS Private endpoint configuration properties.

type CfnAlertConfiguration

type CfnAlertConfiguration interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::AlertConfiguration.Enabled`.
	AttrEnabled() awscdk.IResolvable
	// Attribute `MongoDB::Atlas::AlertConfiguration.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::AlertConfiguration.Updated`.
	AttrUpdated() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnAlertConfigurationProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::AlertConfiguration`.

func NewCfnAlertConfiguration

func NewCfnAlertConfiguration(scope constructs.Construct, id *string, props *CfnAlertConfigurationProps) CfnAlertConfiguration

Create a new `MongoDB::Atlas::AlertConfiguration`.

type CfnAlertConfigurationProps

type CfnAlertConfigurationProps struct {
	// Date and time when MongoDB Cloud created the alert configuration.
	//
	// This parameter expresses its value in the ISO 8601 timestamp format in UTC.
	Created *string `field:"optional" json:"created" yaml:"created"`
	// Event type that triggers an alert.
	EventTypeName *string `field:"optional" json:"eventTypeName" yaml:"eventTypeName"`
	// List of rules that determine whether MongoDB Cloud checks an object for the alert configuration.
	//
	// You can filter using the matchers array if the **eventTypeName** specifies an event for a host, replica set, or sharded cluster.
	Matchers *[]*Matcher `field:"optional" json:"matchers" yaml:"matchers"`
	// Threshold for the metric that, when exceeded, triggers an alert.
	//
	// The resource returns this parameter when '"eventTypeName" : "OUTSIDE_METRIC_THRESHOLD"'.
	MetricThreshold *MetricThresholdView `field:"optional" json:"metricThreshold" yaml:"metricThreshold"`
	// List that contains the targets that MongoDB Cloud sends notifications.
	Notifications *[]*NotificationView `field:"optional" json:"notifications" yaml:"notifications"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Limit that triggers an alert when exceeded.
	//
	// The resource returns this parameter when **eventTypeName** has not been set to 'OUTSIDE_METRIC_THRESHOLD'.
	Threshold *IntegerThresholdView `field:"optional" json:"threshold" yaml:"threshold"`
	// Human-readable label that displays the alert type.
	TypeName *string `field:"optional" json:"typeName" yaml:"typeName"`
}

Returns and edits the conditions that trigger alerts and how MongoDB Cloud notifies users.

This collection remains under revision and may change. Refer to the legacy documentation for this collection in the following link.

type CfnAuditing

type CfnAuditing interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::Auditing.AuditAuthorizationSuccess`.
	AttrAuditAuthorizationSuccess() awscdk.IResolvable
	// Attribute `MongoDB::Atlas::Auditing.AuditFilter`.
	AttrAuditFilter() *string
	// Attribute `MongoDB::Atlas::Auditing.ConfigurationType`.
	AttrConfigurationType() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnAuditingProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::Auditing`.

func NewCfnAuditing

func NewCfnAuditing(scope constructs.Construct, id *string, props *CfnAuditingProps) CfnAuditing

Create a new `MongoDB::Atlas::Auditing`.

type CfnAuditingProps

type CfnAuditingProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	GroupId *string `field:"required" json:"groupId" yaml:"groupId"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Returns and edits database auditing settings for MongoDB Cloud projects.

type CfnCloudBackUpRestoreJobs

type CfnCloudBackUpRestoreJobs interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.DeliveryUrl`.
	AttrDeliveryUrl() *[]*string
	// Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.ExpiresAt`.
	AttrExpiresAt() *string
	// Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.FinishedAt`.
	AttrFinishedAt() *string
	// Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.Timestamp`.
	AttrTimestamp() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnCloudBackUpRestoreJobsProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::CloudBackUpRestoreJobs`.

func NewCfnCloudBackUpRestoreJobs

func NewCfnCloudBackUpRestoreJobs(scope constructs.Construct, id *string, props *CfnCloudBackUpRestoreJobsProps) CfnCloudBackUpRestoreJobs

Create a new `MongoDB::Atlas::CloudBackUpRestoreJobs`.

type CfnCloudBackUpRestoreJobsProps

type CfnCloudBackUpRestoreJobsProps struct {
	// Type of restore job to create.The value can be any one of download,automated or point_in_time.
	DeliveryType CfnCloudBackUpRestoreJobsPropsDeliveryType `field:"required" json:"deliveryType" yaml:"deliveryType"`
	// The instance name of the Serverless/Cluster whose snapshot you want to restore or you want to retrieve restore jobs.
	InstanceName *string `field:"required" json:"instanceName" yaml:"instanceName"`
	// Type of instance specified on the Instance Name serverless or cluster.
	InstanceType CfnCloudBackUpRestoreJobsPropsInstanceType `field:"required" json:"instanceType" yaml:"instanceType"`
	// The unique identifier of the project for the Atlas cluster.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Unique identifier of the source snapshot ID of the restore job.
	SnapshotId *string `field:"required" json:"snapshotId" yaml:"snapshotId"`
	// Indicates whether the restore job was canceled.
	Cancelled *bool `field:"optional" json:"cancelled" yaml:"cancelled"`
	// If set to true, the CloudFormation resource will wait until the job is completed, WARNING: if the snapshot has a big load of data, the cloud formation resource might take a long time to finish leading to high costs.
	EnableSynchronousCreation *bool `field:"optional" json:"enableSynchronousCreation" yaml:"enableSynchronousCreation"`
	// Indicates whether the restore job expired.
	Expired *bool `field:"optional" json:"expired" yaml:"expired"`
	// Indicates whether the restore job failed.
	Failed *bool `field:"optional" json:"failed" yaml:"failed"`
	// Oplog operation number from which to you want to restore this snapshot.
	//
	// This is the second part of an Oplog timestamp.
	OpLogInc *string `field:"optional" json:"opLogInc" yaml:"opLogInc"`
	// Timestamp in the number of seconds that have elapsed since the UNIX epoch from which to you want to restore this snapshot.
	//
	// This is the first part of an Oplog timestamp.
	OpLogTs *string `field:"optional" json:"opLogTs" yaml:"opLogTs"`
	// If you performed a Point-in-Time restores at a time specified by a Unix time in seconds since epoch, pointInTimeUTCSeconds indicates the Unix time used.
	PointInTimeUtcSeconds *float64 `field:"optional" json:"pointInTimeUtcSeconds" yaml:"pointInTimeUtcSeconds"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Options that needs to be set to control the synchronous creation flow, this options need to be set if EnableSynchronousCreation is se to TRUE.
	SynchronousCreationOptions *SynchronousCreationOptions `field:"optional" json:"synchronousCreationOptions" yaml:"synchronousCreationOptions"`
	// Name of the target Atlas cluster to which the restore job restores the snapshot.
	//
	// Only visible if deliveryType is automated.
	TargetClusterName *string `field:"optional" json:"targetClusterName" yaml:"targetClusterName"`
	// Name of the target Atlas project of the restore job.
	//
	// Only visible if deliveryType is automated.
	TargetProjectId *string `field:"optional" json:"targetProjectId" yaml:"targetProjectId"`
}

Returns, starts, and cancels Cloud Backup restore jobs.

type CfnCloudBackUpRestoreJobsPropsDeliveryType

type CfnCloudBackUpRestoreJobsPropsDeliveryType string

Type of restore job to create.The value can be any one of download,automated or point_in_time.

const (
	// download.
	CfnCloudBackUpRestoreJobsPropsDeliveryType_DOWNLOAD CfnCloudBackUpRestoreJobsPropsDeliveryType = "DOWNLOAD"
	// automated.
	CfnCloudBackUpRestoreJobsPropsDeliveryType_AUTOMATED CfnCloudBackUpRestoreJobsPropsDeliveryType = "AUTOMATED"
	// pointInTime.
	CfnCloudBackUpRestoreJobsPropsDeliveryType_POINT_IN_TIME CfnCloudBackUpRestoreJobsPropsDeliveryType = "POINT_IN_TIME"
)

type CfnCloudBackUpRestoreJobsPropsInstanceType

type CfnCloudBackUpRestoreJobsPropsInstanceType string

Type of instance specified on the Instance Name serverless or cluster.

const (
	// serverless.
	CfnCloudBackUpRestoreJobsPropsInstanceType_SERVERLESS CfnCloudBackUpRestoreJobsPropsInstanceType = "SERVERLESS"
	// cluster.
	CfnCloudBackUpRestoreJobsPropsInstanceType_CLUSTER CfnCloudBackUpRestoreJobsPropsInstanceType = "CLUSTER"
)

type CfnCloudBackupSchedule

type CfnCloudBackupSchedule interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::CloudBackupSchedule.ClusterId`.
	AttrClusterId() *string
	// Attribute `MongoDB::Atlas::CloudBackupSchedule.NextSnapshot`.
	AttrNextSnapshot() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnCloudBackupScheduleProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::CloudBackupSchedule`.

func NewCfnCloudBackupSchedule

func NewCfnCloudBackupSchedule(scope constructs.Construct, id *string, props *CfnCloudBackupScheduleProps) CfnCloudBackupSchedule

Create a new `MongoDB::Atlas::CloudBackupSchedule`.

type CfnCloudBackupScheduleProps

type CfnCloudBackupScheduleProps struct {
	// The name of the Atlas cluster that contains the snapshots you want to retrieve.
	ClusterName *string `field:"required" json:"clusterName" yaml:"clusterName"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Flag that indicates whether automatic export of cloud backup snapshots to the AWS bucket is enabled.
	AutoExportEnabled *bool `field:"optional" json:"autoExportEnabled" yaml:"autoExportEnabled"`
	// List that contains a document for each copy setting item in the desired backup policy.
	CopySettings *[]*ApiAtlasDiskBackupCopySettingView `field:"optional" json:"copySettings" yaml:"copySettings"`
	// List that contains a document for each deleted copy setting whose backup copies you want to delete.
	DeleteCopiedBackups *[]*ApiDeleteCopiedBackupsView `field:"optional" json:"deleteCopiedBackups" yaml:"deleteCopiedBackups"`
	// Policy for automatically exporting cloud backup snapshots.
	Export *Export `field:"optional" json:"export" yaml:"export"`
	// Unique identifier of the snapshot.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both.
	//
	// RFC 5988 outlines these relationships.
	Links *[]*Link `field:"optional" json:"links" yaml:"links"`
	// Rules set for this backup schedule.
	Policies *[]*ApiPolicyView `field:"optional" json:"policies" yaml:"policies"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// UTC Hour of day between 0 and 23 representing which hour of the day that Atlas takes a snapshot.
	ReferenceHourOfDay *float64 `field:"optional" json:"referenceHourOfDay" yaml:"referenceHourOfDay"`
	// UTC Minute of day between 0 and 59 representing which minute of the referenceHourOfDay that Atlas takes the snapshot.
	ReferenceMinuteOfHour *float64 `field:"optional" json:"referenceMinuteOfHour" yaml:"referenceMinuteOfHour"`
	// Number of days back in time you can restore to with Continuous Cloud Backup accuracy.
	//
	// Must be a positive, non-zero integer.
	RestoreWindowDays *float64 `field:"optional" json:"restoreWindowDays" yaml:"restoreWindowDays"`
	// Flag indicating if updates to retention in the backup policy were applied to snapshots that Atlas took earlier.
	UpdateSnapshots *bool `field:"optional" json:"updateSnapshots" yaml:"updateSnapshots"`
	// Specify true to use organization and project names instead of organization and project UUIDs in the path for the metadata files that Atlas uploads to your S3 bucket after it finishes exporting the snapshots.
	UseOrgAndGroupNamesInExportPrefix *bool `field:"optional" json:"useOrgAndGroupNamesInExportPrefix" yaml:"useOrgAndGroupNamesInExportPrefix"`
}

An example resource schema demonstrating some basic constructs and validation rules.

type CfnCloudBackupSnapshot

type CfnCloudBackupSnapshot interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.CloudProvider`.
	AttrCloudProvider() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.CreatedAt`.
	AttrCreatedAt() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.ExpiresAt`.
	AttrExpiresAt() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.MasterKeyUUID`.
	AttrMasterKeyUUID() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.MongodVersion`.
	AttrMongodVersion() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.ReplicaSetName`.
	AttrReplicaSetName() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.SnapshotId`.
	AttrSnapshotId() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.SnapshotIds`.
	AttrSnapshotIds() *[]*string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.Status`.
	AttrStatus() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.StorageSizeBytes`.
	AttrStorageSizeBytes() *string
	// Attribute `MongoDB::Atlas::CloudBackupSnapshot.Type`.
	AttrType() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnCloudBackupSnapshotProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::CloudBackupSnapshot`.

func NewCfnCloudBackupSnapshot

func NewCfnCloudBackupSnapshot(scope constructs.Construct, id *string, props *CfnCloudBackupSnapshotProps) CfnCloudBackupSnapshot

Create a new `MongoDB::Atlas::CloudBackupSnapshot`.

type CfnCloudBackupSnapshotExportBucket

type CfnCloudBackupSnapshotExportBucket interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::CloudBackupSnapshotExportBucket.Id`.
	AttrId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnCloudBackupSnapshotExportBucketProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::CloudBackupSnapshotExportBucket`.

func NewCfnCloudBackupSnapshotExportBucket

func NewCfnCloudBackupSnapshotExportBucket(scope constructs.Construct, id *string, props *CfnCloudBackupSnapshotExportBucketProps) CfnCloudBackupSnapshotExportBucket

Create a new `MongoDB::Atlas::CloudBackupSnapshotExportBucket`.

type CfnCloudBackupSnapshotExportBucketProps

type CfnCloudBackupSnapshotExportBucketProps struct {
	// Human-readable label that identifies the AWS bucket that the role is authorized to access.
	BucketName *string `field:"required" json:"bucketName" yaml:"bucketName"`
	// Unique 24-hexadecimal character string that identifies the AWS IAM role that MongoDB Cloud uses to access the AWS S3 bucket.
	IamRoleId *string `field:"required" json:"iamRoleId" yaml:"iamRoleId"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

The exportBuckets resource allows you to grant Atlas access to the specified bucket for exporting backup snapshots.

type CfnCloudBackupSnapshotProps

type CfnCloudBackupSnapshotProps struct {
	// The instance name of the Serverless/Cluster whose snapshot you want to restore or you want to retrieve restore snapshot.
	InstanceName *string `field:"required" json:"instanceName" yaml:"instanceName"`
	// Type of instance specified on the Instance Name serverless or cluster.
	InstanceType CfnCloudBackupSnapshotPropsInstanceType `field:"required" json:"instanceType" yaml:"instanceType"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Human-readable phrase or sentence that explains the purpose of the snapshot.
	//
	// The resource returns this parameter when `"status": "onDemand"`.
	Description *string `field:"optional" json:"description" yaml:"description"`
	// Human-readable label that identifies how often this snapshot triggers.
	FrequencyType CfnCloudBackupSnapshotPropsFrequencyType `field:"optional" json:"frequencyType" yaml:"frequencyType"`
	// Flag that indicates whether the response returns the total number of items (**totalCount**) in the response.
	IncludeCount *bool `field:"optional" json:"includeCount" yaml:"includeCount"`
	// Number of items that the response returns per page.
	ItemsPerPage *float64 `field:"optional" json:"itemsPerPage" yaml:"itemsPerPage"`
	// List that includes the snapshots and the cloud provider that stores the snapshots.
	//
	// The resource returns this parameter when `"type" : "SHARDED_CLUSTER"`.
	Members *[]*ApiAtlasDiskBackupShardedClusterSnapshotMemberView `field:"optional" json:"members" yaml:"members"`
	// Number of the page that displays the current set of the total objects that the response returns.
	PageNum *float64 `field:"optional" json:"pageNum" yaml:"pageNum"`
	// List that contains unique identifiers for the policy items.
	PolicyItems *[]*string `field:"optional" json:"policyItems" yaml:"policyItems"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// List of returned documents that MongoDB Cloud provides when completing this request.
	Results *[]*ApiAtlasDiskBackupShardedClusterSnapshotView `field:"optional" json:"results" yaml:"results"`
	// Number of days that MongoDB Cloud should retain the on-demand snapshot.
	//
	// Must be at least **1**.
	RetentionInDays *float64 `field:"optional" json:"retentionInDays" yaml:"retentionInDays"`
	// Human-readable label that identifies when this snapshot triggers.
	SnapshotType CfnCloudBackupSnapshotPropsSnapshotType `field:"optional" json:"snapshotType" yaml:"snapshotType"`
	// Number of documents returned in this response.
	TotalCount *float64 `field:"optional" json:"totalCount" yaml:"totalCount"`
}

Returns, takes, and removes Cloud Backup snapshots.

type CfnCloudBackupSnapshotPropsFrequencyType

type CfnCloudBackupSnapshotPropsFrequencyType string

Human-readable label that identifies how often this snapshot triggers.

const (
	// hourly.
	CfnCloudBackupSnapshotPropsFrequencyType_HOURLY CfnCloudBackupSnapshotPropsFrequencyType = "HOURLY"
	// daily.
	CfnCloudBackupSnapshotPropsFrequencyType_DAILY CfnCloudBackupSnapshotPropsFrequencyType = "DAILY"
	// weekly.
	CfnCloudBackupSnapshotPropsFrequencyType_WEEKLY CfnCloudBackupSnapshotPropsFrequencyType = "WEEKLY"
	// monthly.
	CfnCloudBackupSnapshotPropsFrequencyType_MONTHLY CfnCloudBackupSnapshotPropsFrequencyType = "MONTHLY"
)

type CfnCloudBackupSnapshotPropsInstanceType

type CfnCloudBackupSnapshotPropsInstanceType string

Type of instance specified on the Instance Name serverless or cluster.

const (
	// serverless.
	CfnCloudBackupSnapshotPropsInstanceType_SERVERLESS CfnCloudBackupSnapshotPropsInstanceType = "SERVERLESS"
	// cluster.
	CfnCloudBackupSnapshotPropsInstanceType_CLUSTER CfnCloudBackupSnapshotPropsInstanceType = "CLUSTER"
)

type CfnCloudBackupSnapshotPropsSnapshotType

type CfnCloudBackupSnapshotPropsSnapshotType string

Human-readable label that identifies when this snapshot triggers.

const (
	// onDemand.
	CfnCloudBackupSnapshotPropsSnapshotType_ON_DEMAND CfnCloudBackupSnapshotPropsSnapshotType = "ON_DEMAND"
	// scheduled.
	CfnCloudBackupSnapshotPropsSnapshotType_SCHEDULED CfnCloudBackupSnapshotPropsSnapshotType = "SCHEDULED"
)

type CfnCluster

type CfnCluster interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::Cluster.CreatedDate`.
	AttrCreatedDate() *string
	// Attribute `MongoDB::Atlas::Cluster.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::Cluster.MongoDBVersion`.
	AttrMongoDBVersion() *string
	// Attribute `MongoDB::Atlas::Cluster.StateName`.
	AttrStateName() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Attribute `MongoDB::Atlas::Cluster.ConnectionStrings`.
	ConnectionStrings() *ConnectionStrings
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnClusterProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::Cluster`.

func NewCfnCluster

func NewCfnCluster(scope constructs.Construct, id *string, props *CfnClusterProps) CfnCluster

Create a new `MongoDB::Atlas::Cluster`.

type CfnClusterOutageSimulation added in v3.1.0

type CfnClusterOutageSimulation interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::ClusterOutageSimulation.SimulationId`.
	AttrSimulationId() *string
	// Attribute `MongoDB::Atlas::ClusterOutageSimulation.StartRequestDate`.
	AttrStartRequestDate() *string
	// Attribute `MongoDB::Atlas::ClusterOutageSimulation.State`.
	AttrState() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnClusterOutageSimulationProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::ClusterOutageSimulation`.

func NewCfnClusterOutageSimulation added in v3.1.0

func NewCfnClusterOutageSimulation(scope constructs.Construct, id *string, props *CfnClusterOutageSimulationProps) CfnClusterOutageSimulation

Create a new `MongoDB::Atlas::ClusterOutageSimulation`.

type CfnClusterOutageSimulationProps added in v3.1.0

type CfnClusterOutageSimulationProps struct {
	// Human-readable label that identifies the cluster .
	ClusterName *string `field:"required" json:"clusterName" yaml:"clusterName"`
	// List of settings that configure your cluster regions.
	//
	// For Global Clusters, each object in the array represents a zone where your clusters nodes deploy. For non-Global replica sets and sharded clusters, this array has one object representing where your clusters nodes deploy.
	OutageFilters *[]*Filter `field:"required" json:"outageFilters" yaml:"outageFilters"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"required" json:"profile" yaml:"profile"`
	// Human-readable label that identifies the project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
}

An example resource schema demonstrating some basic constructs and validation rules.

type CfnClusterProps

type CfnClusterProps struct {
	// Human-readable label that identifies the advanced cluster.
	Name *string `field:"required" json:"name" yaml:"name"`
	// Unique identifier of the project the cluster belongs to.
	ProjectId        *string      `field:"required" json:"projectId" yaml:"projectId"`
	AdvancedSettings *ProcessArgs `field:"optional" json:"advancedSettings" yaml:"advancedSettings"`
	// Flag that indicates whether the cluster can perform backups.
	//
	// If set to true, the cluster can perform backups. You must set this value to true for NVMe clusters. Backup uses Cloud Backups for dedicated clusters and Shared Cluster Backups for tenant clusters. If set to false, the cluster doesn't use backups.
	BackupEnabled *bool `field:"optional" json:"backupEnabled" yaml:"backupEnabled"`
	// Settings needed to configure the MongoDB Connector for Business Intelligence for this cluster.
	BiConnector *CfnClusterPropsBiConnector `field:"optional" json:"biConnector" yaml:"biConnector"`
	// Configuration of nodes that comprise the cluster.
	ClusterType *string `field:"optional" json:"clusterType" yaml:"clusterType"`
	// Storage capacity that the host's root volume possesses expressed in gigabytes.
	//
	// Increase this number to add capacity. MongoDB Cloud requires this parameter if you set replicationSpecs. If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.
	DiskSizeGb *float64 `field:"optional" json:"diskSizeGb" yaml:"diskSizeGb"`
	// Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster.
	//
	// To enable customer key management for encryption at rest, the cluster replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize setting must be M10 or higher and "backupEnabled" : false or omitted entirely.
	EncryptionAtRestProvider CfnClusterPropsEncryptionAtRestProvider `field:"optional" json:"encryptionAtRestProvider" yaml:"encryptionAtRestProvider"`
	// Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster.
	//
	// The MongoDB Cloud console doesn't display your labels.
	Labels *[]*CfnClusterPropsLabels `field:"optional" json:"labels" yaml:"labels"`
	// Major MongoDB version of the cluster.
	//
	// MongoDB Cloud deploys the cluster with the latest stable release of the specified version.
	MongoDbMajorVersion *string `field:"optional" json:"mongoDbMajorVersion" yaml:"mongoDbMajorVersion"`
	// Flag that indicates whether the cluster is paused or not.
	Paused *bool `field:"optional" json:"paused" yaml:"paused"`
	// Flag that indicates whether the cluster uses continuous cloud backups.
	PitEnabled *bool `field:"optional" json:"pitEnabled" yaml:"pitEnabled"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// List of settings that configure your cluster regions.
	//
	// For Global Clusters, each object in the array represents a zone where your clusters nodes deploy. For non-Global replica sets and sharded clusters, this array has one object representing where your clusters nodes deploy.
	ReplicationSpecs *[]*AdvancedReplicationSpec `field:"optional" json:"replicationSpecs" yaml:"replicationSpecs"`
	// Root Certificate Authority that MongoDB Cloud cluster uses.
	//
	// MongoDB Cloud supports Internet Security Research Group.
	RootCertType *string `field:"optional" json:"rootCertType" yaml:"rootCertType"`
	// List of settings that configure your cluster regions.
	//
	// For Global Clusters, each object in the array represents a zone where your clusters nodes deploy. For non-Global replica sets and sharded clusters, this array has one object representing where your clusters nodes deploy.
	Tags *[]*Tag `field:"optional" json:"tags" yaml:"tags"`
	// Flag that indicates whether termination protection is enabled on the cluster.
	//
	// If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
	TerminationProtectionEnabled *bool `field:"optional" json:"terminationProtectionEnabled" yaml:"terminationProtectionEnabled"`
	// Method by which the cluster maintains the MongoDB versions.
	//
	// If value is CONTINUOUS, you must not specify mongoDBMajorVersion.
	VersionReleaseSystem *string `field:"optional" json:"versionReleaseSystem" yaml:"versionReleaseSystem"`
}

The cluster resource provides access to your cluster configurations.

The resource lets you create, edit and delete clusters. The resource requires your Project ID.

type CfnClusterPropsBiConnector

type CfnClusterPropsBiConnector struct {
	// Flag that indicates whether MongoDB Connector for Business Intelligence is enabled on the specified cluster.
	Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
	// Data source node designated for the MongoDB Connector for Business Intelligence on MongoDB Cloud.
	//
	// The MongoDB Connector for Business Intelligence on MongoDB Cloud reads data from the primary, secondary, or analytics node based on your read preferences. Defaults to ANALYTICS node, or SECONDARY if there are no ANALYTICS nodes.
	// Default: ANALYTICS node, or SECONDARY if there are no ANALYTICS nodes.
	//
	ReadPreference *string `field:"optional" json:"readPreference" yaml:"readPreference"`
}

Settings needed to configure the MongoDB Connector for Business Intelligence for this cluster.

type CfnClusterPropsEncryptionAtRestProvider

type CfnClusterPropsEncryptionAtRestProvider string

Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster.

To enable customer key management for encryption at rest, the cluster replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize setting must be M10 or higher and "backupEnabled" : false or omitted entirely.

const (
	// AWS.
	CfnClusterPropsEncryptionAtRestProvider_AWS CfnClusterPropsEncryptionAtRestProvider = "AWS"
	// GCP.
	CfnClusterPropsEncryptionAtRestProvider_GCP CfnClusterPropsEncryptionAtRestProvider = "GCP"
	// AZURE.
	CfnClusterPropsEncryptionAtRestProvider_AZURE CfnClusterPropsEncryptionAtRestProvider = "AZURE"
	// NONE.
	CfnClusterPropsEncryptionAtRestProvider_NONE CfnClusterPropsEncryptionAtRestProvider = "NONE"
)

type CfnClusterPropsLabels

type CfnClusterPropsLabels struct {
	Key   *string `field:"optional" json:"key" yaml:"key"`
	Value *string `field:"optional" json:"value" yaml:"value"`
}

type CfnCustomDbRole

type CfnCustomDbRole interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnCustomDbRoleProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::CustomDBRole`.

func NewCfnCustomDbRole

func NewCfnCustomDbRole(scope constructs.Construct, id *string, props *CfnCustomDbRoleProps) CfnCustomDbRole

Create a new `MongoDB::Atlas::CustomDBRole`.

type CfnCustomDbRoleProps

type CfnCustomDbRoleProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Human-readable label that identifies the role for the request.
	//
	// This name must be unique for this custom role in this project.
	RoleName *string `field:"required" json:"roleName" yaml:"roleName"`
	// List of the individual privilege actions that the role grants.
	Actions *[]*Action `field:"optional" json:"actions" yaml:"actions"`
	// List of the built-in roles that this custom role inherits.
	InheritedRoles *[]*InheritedRole `field:"optional" json:"inheritedRoles" yaml:"inheritedRoles"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Returns, adds, edits, and removes custom database user privilege roles.

type CfnCustomDnsConfigurationClusterAws

type CfnCustomDnsConfigurationClusterAws interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnCustomDnsConfigurationClusterAwsProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::CustomDnsConfigurationClusterAws`.

func NewCfnCustomDnsConfigurationClusterAws

func NewCfnCustomDnsConfigurationClusterAws(scope constructs.Construct, id *string, props *CfnCustomDnsConfigurationClusterAwsProps) CfnCustomDnsConfigurationClusterAws

Create a new `MongoDB::Atlas::CustomDnsConfigurationClusterAws`.

type CfnCustomDnsConfigurationClusterAwsProps

type CfnCustomDnsConfigurationClusterAwsProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Flag that indicates whether the project's clusters deployed to Amazon Web Services (AWS) use a custom Domain Name System (DNS).
	Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

An example resource schema demonstrating some basic constructs and validation rules.

type CfnDataLakes

type CfnDataLakes interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::DataLakes.Hostnames`.
	AttrHostnames() *[]*string
	// Attribute `MongoDB::Atlas::DataLakes.StartDate`.
	AttrStartDate() *float64
	// Attribute `MongoDB::Atlas::DataLakes.State`.
	AttrState() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnDataLakesProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::DataLakes`.

func NewCfnDataLakes

func NewCfnDataLakes(scope constructs.Construct, id *string, props *CfnDataLakesProps) CfnDataLakes

Create a new `MongoDB::Atlas::DataLakes`.

type CfnDataLakesProps

type CfnDataLakesProps struct {
	// Cloud provider linked to this data lake.
	CloudProviderConfig *DataLakeCloudProviderConfigView `field:"optional" json:"cloudProviderConfig" yaml:"cloudProviderConfig"`
	// Information about the cloud provider region to which the data lake routes client connections.
	//
	// MongoDB Cloud supports AWS only.
	DataProcessRegion *DataLakeDataProcessRegionView `field:"optional" json:"dataProcessRegion" yaml:"dataProcessRegion"`
	// Timestamp that specifies the end point for the range of log messages to download.
	//
	// MongoDB Cloud expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch.
	EndDate *float64 `field:"optional" json:"endDate" yaml:"endDate"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Flag that indicates whether this request should check if the requesting IAM role can read from the S3 bucket.
	//
	// AWS checks if the role can list the objects in the bucket before writing to it. Some IAM roles only need write permissions. This flag allows you to skip that check.
	SkipRoleValidation *bool `field:"optional" json:"skipRoleValidation" yaml:"skipRoleValidation"`
	// Configuration information for each data store and its mapping to MongoDB Cloud databases.
	Storage *DataLakeStorageView `field:"optional" json:"storage" yaml:"storage"`
	// Human-readable label that identifies the Federated Database to remove.
	TenantName *string `field:"optional" json:"tenantName" yaml:"tenantName"`
}

Returns, adds, edits, and removes Federated Database Instances.

type CfnDatabaseUser

type CfnDatabaseUser interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::DatabaseUser.UserCFNIdentifier`.
	AttrUserCFNIdentifier() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnDatabaseUserProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::DatabaseUser`.

func NewCfnDatabaseUser

func NewCfnDatabaseUser(scope constructs.Construct, id *string, props *CfnDatabaseUserProps) CfnDatabaseUser

Create a new `MongoDB::Atlas::DatabaseUser`.

type CfnDatabaseUserProps

type CfnDatabaseUserProps struct {
	// MongoDB database against which the MongoDB database user authenticates.
	//
	// MongoDB database users must provide both a username and authentication database to log into MongoDB.  Default value is `admin`.
	DatabaseName *string `field:"required" json:"databaseName" yaml:"databaseName"`
	// Unique 24-hexadecimal digit string that identifies your Atlas Project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// List that provides the pairings of one role with one applicable database.
	Roles *[]*RoleDefinition `field:"required" json:"roles" yaml:"roles"`
	// Human-readable label that represents the user that authenticates to MongoDB.
	//
	// The format of this label depends on the method of authentication. This will be USER_ARN or ROLE_ARN if AWSIAMType is USER or ROLE. Refer https://www.mongodb.com/docs/atlas/reference/api-resources-spec/#tag/Database-Users/operation/createDatabaseUser for details.
	Username *string `field:"required" json:"username" yaml:"username"`
	// Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role.
	//
	// Default value is `NONE`.
	AwsiamType CfnDatabaseUserPropsAwsiamType `field:"optional" json:"awsiamType" yaml:"awsiamType"`
	// Date and time when MongoDB Cloud deletes the user.
	//
	// This parameter expresses its value in the ISO 8601 timestamp format in UTC and can include the time zone designation. You must specify a future date that falls within one week of making the Application Programming Interface (API) request.
	DeleteAfterDate *string `field:"optional" json:"deleteAfterDate" yaml:"deleteAfterDate"`
	// List that contains the key-value pairs for tagging and categorizing the MongoDB database user.
	//
	// The labels that you define do not appear in the console.
	Labels *[]*LabelDefinition `field:"optional" json:"labels" yaml:"labels"`
	// Method by which the provided username is authenticated.
	//
	// Default value is `NONE`.
	LdapAuthType CfnDatabaseUserPropsLdapAuthType `field:"optional" json:"ldapAuthType" yaml:"ldapAuthType"`
	// The user’s password.
	//
	// This field is not included in the entity returned from the server.
	Password *string `field:"optional" json:"password" yaml:"password"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided `default` is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// List that contains clusters and MongoDB Atlas Data Lakes that this database user can access.
	//
	// If omitted, MongoDB Cloud grants the database user access to all the clusters and MongoDB Atlas Data Lakes in the project.
	Scopes *[]*ScopeDefinition `field:"optional" json:"scopes" yaml:"scopes"`
	// Method that briefs who owns the certificate provided.
	//
	// Default value is `NONE`.
	X509Type CfnDatabaseUserPropsX509Type `field:"optional" json:"x509Type" yaml:"x509Type"`
}

Returns, adds, edits, and removes database users.

type CfnDatabaseUserPropsAwsiamType

type CfnDatabaseUserPropsAwsiamType string

Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role.

const (
	// NONE.
	CfnDatabaseUserPropsAwsiamType_NONE CfnDatabaseUserPropsAwsiamType = "NONE"
	// USER.
	CfnDatabaseUserPropsAwsiamType_USER CfnDatabaseUserPropsAwsiamType = "USER"
	// ROLE.
	CfnDatabaseUserPropsAwsiamType_ROLE CfnDatabaseUserPropsAwsiamType = "ROLE"
)

type CfnDatabaseUserPropsLdapAuthType

type CfnDatabaseUserPropsLdapAuthType string

Method by which the provided username is authenticated.

Default value is `NONE`.

const (
	// NONE.
	CfnDatabaseUserPropsLdapAuthType_NONE CfnDatabaseUserPropsLdapAuthType = "NONE"
	// USER.
	CfnDatabaseUserPropsLdapAuthType_USER CfnDatabaseUserPropsLdapAuthType = "USER"
	// GROUP.
	CfnDatabaseUserPropsLdapAuthType_GROUP CfnDatabaseUserPropsLdapAuthType = "GROUP"
)

type CfnDatabaseUserPropsX509Type

type CfnDatabaseUserPropsX509Type string

Method that briefs who owns the certificate provided.

Default value is `NONE`.

const (
	// NONE.
	CfnDatabaseUserPropsX509Type_NONE CfnDatabaseUserPropsX509Type = "NONE"
	// MANAGED.
	CfnDatabaseUserPropsX509Type_MANAGED CfnDatabaseUserPropsX509Type = "MANAGED"
	// CUSTOMER.
	CfnDatabaseUserPropsX509Type_CUSTOMER CfnDatabaseUserPropsX509Type = "CUSTOMER"
)

type CfnEncryptionAtRest

type CfnEncryptionAtRest interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::EncryptionAtRest.Id`.
	AttrId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnEncryptionAtRestProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::EncryptionAtRest`.

func NewCfnEncryptionAtRest

func NewCfnEncryptionAtRest(scope constructs.Construct, id *string, props *CfnEncryptionAtRestProps) CfnEncryptionAtRest

Create a new `MongoDB::Atlas::EncryptionAtRest`.

type CfnEncryptionAtRestProps

type CfnEncryptionAtRestProps struct {
	AwsKms *AwsKmsConfiguration `field:"required" json:"awsKms" yaml:"awsKms"`
	// Unique identifier of the Atlas project to which the user belongs.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Returns and edits the Encryption at Rest using Customer Key Management configuration.

type CfnFederatedDatabaseInstance

type CfnFederatedDatabaseInstance interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::FederatedDatabaseInstance.CloudProviderConfig.ExternalId`.
	AttrExternalId() *string
	// Attribute `MongoDB::Atlas::FederatedDatabaseInstance.HostNames`.
	AttrHostNames() *[]*string
	// Attribute `MongoDB::Atlas::FederatedDatabaseInstance.CloudProviderConfig.IamAssumedRoleARN`.
	AttrIamAssumedRoleARNN() *string
	// Attribute `MongoDB::Atlas::FederatedDatabaseInstance.CloudProviderConfig.IamUserARN`.
	AttrIamUserARN() *string
	// Attribute `MongoDB::Atlas::FederatedDatabaseInstance.State`.
	AttrState() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnFederatedDatabaseInstanceProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::FederatedDatabaseInstance`.

func NewCfnFederatedDatabaseInstance

func NewCfnFederatedDatabaseInstance(scope constructs.Construct, id *string, props *CfnFederatedDatabaseInstanceProps) CfnFederatedDatabaseInstance

Create a new `MongoDB::Atlas::FederatedDatabaseInstance`.

type CfnFederatedDatabaseInstanceProps

type CfnFederatedDatabaseInstanceProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Human-readable label that identifies the data federation.
	TenantName *string `field:"required" json:"tenantName" yaml:"tenantName"`
	// Cloud provider linked to this data lake.
	CloudProviderConfig *CloudProviderConfig `field:"optional" json:"cloudProviderConfig" yaml:"cloudProviderConfig"`
	// Information about the cloud provider region to which the data lake routes client connections.
	//
	// MongoDB Cloud supports AWS only.
	DataProcessRegion *DataProcessRegion `field:"optional" json:"dataProcessRegion" yaml:"dataProcessRegion"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Flag that indicates whether this request should check if the requesting IAM role can read from the S3 bucket.
	//
	// AWS checks if the role can list the objects in the bucket before writing to it. Some IAM roles only need write permissions. This flag allows you to skip that check.
	SkipRoleValidation *bool `field:"optional" json:"skipRoleValidation" yaml:"skipRoleValidation"`
	// Configuration information for each data store and its mapping to MongoDB Cloud databases.
	Storage *Storage `field:"optional" json:"storage" yaml:"storage"`
}

Returns, adds, edits, and removes Federated Database Instances.

type CfnFederatedQueryLimit

type CfnFederatedQueryLimit interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::FederatedQueryLimit.CurrentUsage`.
	AttrCurrentUsage() *string
	// Attribute `MongoDB::Atlas::FederatedQueryLimit.DefaultLimit`.
	AttrDefaultLimit() *string
	// Attribute `MongoDB::Atlas::FederatedQueryLimit.LastModifiedDate`.
	AttrLastModifiedDate() *string
	// Attribute `MongoDB::Atlas::FederatedQueryLimit.MaximumLimit`.
	AttrMaximumLimit() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnFederatedQueryLimitProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::FederatedQueryLimit`.

func NewCfnFederatedQueryLimit

func NewCfnFederatedQueryLimit(scope constructs.Construct, id *string, props *CfnFederatedQueryLimitProps) CfnFederatedQueryLimit

Create a new `MongoDB::Atlas::FederatedQueryLimit`.

type CfnFederatedQueryLimitProps

type CfnFederatedQueryLimitProps struct {
	// Human-readable label that identifies this data federation instance limit.
	LimitName CfnFederatedQueryLimitPropsLimitName `field:"required" json:"limitName" yaml:"limitName"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Human-readable label that identifies the data federated database instance to which the query limit applies.
	TenantName *string `field:"required" json:"tenantName" yaml:"tenantName"`
	// Amount to set the limit to.
	Value *string `field:"required" json:"value" yaml:"value"`
	// Only used for Data Federation limits.
	//
	// Action to take when the usage limit is exceeded. If limit span is set to QUERY, this is ignored because MongoDB Cloud stops the query when it exceeds the usage limit. "enum" : [ "BLOCK", "BLOCK_AND_KILL" ]
	OverrunPolicy *string `field:"optional" json:"overrunPolicy" yaml:"overrunPolicy"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Query limit for one federated database instance.

type CfnFederatedQueryLimitPropsLimitName

type CfnFederatedQueryLimitPropsLimitName string

Human-readable label that identifies this data federation instance limit.

const (
	// bytesProcessed.query.
	CfnFederatedQueryLimitPropsLimitName_BYTES_PROCESSED_QUERY CfnFederatedQueryLimitPropsLimitName = "BYTES_PROCESSED_QUERY"
	// bytesProcessed.daily.
	CfnFederatedQueryLimitPropsLimitName_BYTES_PROCESSED_DAILY CfnFederatedQueryLimitPropsLimitName = "BYTES_PROCESSED_DAILY"
	// bytesProcessed.weekly.
	CfnFederatedQueryLimitPropsLimitName_BYTES_PROCESSED_WEEKLY CfnFederatedQueryLimitPropsLimitName = "BYTES_PROCESSED_WEEKLY"
	// bytesProcessed.monthly.
	CfnFederatedQueryLimitPropsLimitName_BYTES_PROCESSED_MONTHLY CfnFederatedQueryLimitPropsLimitName = "BYTES_PROCESSED_MONTHLY"
)

type CfnFederatedSettingsOrgRoleMapping

type CfnFederatedSettingsOrgRoleMapping interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::FederatedSettingsOrgRoleMapping.Id`.
	AttrId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnFederatedSettingsOrgRoleMappingProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::FederatedSettingsOrgRoleMapping`.

func NewCfnFederatedSettingsOrgRoleMapping

func NewCfnFederatedSettingsOrgRoleMapping(scope constructs.Construct, id *string, props *CfnFederatedSettingsOrgRoleMappingProps) CfnFederatedSettingsOrgRoleMapping

Create a new `MongoDB::Atlas::FederatedSettingsOrgRoleMapping`.

type CfnFederatedSettingsOrgRoleMappingProps

type CfnFederatedSettingsOrgRoleMappingProps struct {
	// Unique human-readable label that identifies the identity provider group to whichthis role mapping applies.
	ExternalGroupName *string `field:"required" json:"externalGroupName" yaml:"externalGroupName"`
	// Unique 24-hexadecimal digit string that identifies your federation.
	FederationSettingsId *string `field:"required" json:"federationSettingsId" yaml:"federationSettingsId"`
	// Unique 24-hexadecimal digit string that identifies the organization that contains your projects.
	OrgId *string `field:"required" json:"orgId" yaml:"orgId"`
	// Atlas roles and the unique identifiers of the groups and organizations associated with each role.
	RoleAssignments *[]*RoleAssignment `field:"required" json:"roleAssignments" yaml:"roleAssignments"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Returns, adds, edits, and removes federation-related features such as role mappings and connected organization configurations.

type CfnGlobalClusterConfig

type CfnGlobalClusterConfig interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnGlobalClusterConfigProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::GlobalClusterConfig`.

func NewCfnGlobalClusterConfig

func NewCfnGlobalClusterConfig(scope constructs.Construct, id *string, props *CfnGlobalClusterConfigProps) CfnGlobalClusterConfig

Create a new `MongoDB::Atlas::GlobalClusterConfig`.

type CfnGlobalClusterConfigProps

type CfnGlobalClusterConfigProps struct {
	// The name of the Atlas cluster that contains the snapshots you want to retrieve.
	ClusterName *string `field:"required" json:"clusterName" yaml:"clusterName"`
	// The unique identifier of the project for the Atlas cluster.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// List that contains comma-separated key value pairs to map zones to geographic regions.
	//
	// These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to the human-readable label for the desired custom zone. MongoDB Cloud maps the ISO 3166-1a2 code to the nearest geographical zone by default. Include this parameter to override the default mappings.
	//
	// This parameter returns an empty object if no custom zones exist.
	CustomZoneMappings *[]*ZoneMapping `field:"optional" json:"customZoneMappings" yaml:"customZoneMappings"`
	// List that contains comma-separated key value pairs to map zones to geographic regions.
	//
	// These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to the human-readable label for the desired custom zone. MongoDB Cloud maps the ISO 3166-1a2 code to the nearest geographical zone by default. Include this parameter to override the default mappings.
	//
	// This parameter returns an empty object if no custom zones exist.
	ManagedNamespaces *[]*ManagedNamespace `field:"optional" json:"managedNamespaces" yaml:"managedNamespaces"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Flag that indicates whether all custom zone mapping to be deleted during delete.
	RemoveAllZoneMapping *bool `field:"optional" json:"removeAllZoneMapping" yaml:"removeAllZoneMapping"`
}

Returns, adds, and removes Global Cluster managed namespaces and custom zone mappings.

type CfnLdapConfiguration

type CfnLdapConfiguration interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnLdapConfigurationProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::LDAPConfiguration`.

func NewCfnLdapConfiguration

func NewCfnLdapConfiguration(scope constructs.Construct, id *string, props *CfnLdapConfigurationProps) CfnLdapConfiguration

Create a new `MongoDB::Atlas::LDAPConfiguration`.

type CfnLdapConfigurationProps

type CfnLdapConfigurationProps struct {
	// Password that MongoDB Cloud uses to authenticate the **bindUsername**.
	BindPassword *string `field:"required" json:"bindPassword" yaml:"bindPassword"`
	// Full Distinguished Name (DN) of the Lightweight Directory Access Protocol (LDAP) user that MongoDB Cloud uses to connect to the LDAP host.
	//
	// LDAP distinguished names must be formatted according to RFC 2253.
	BindUsername *string `field:"required" json:"bindUsername" yaml:"bindUsername"`
	// Human-readable label that identifies the hostname or Internet Protocol (IP) address of the Lightweight Directory Access Protocol (LDAP) host.
	//
	// This host must have access to the internet or have a Virtual Private Cloud (VPC) peering connection to your cluster.
	Hostname *string `field:"required" json:"hostname" yaml:"hostname"`
	// Port to which the Lightweight Directory Access Protocol (LDAP) host listens for client connections.
	Port *float64 `field:"required" json:"port" yaml:"port"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Flag that indicates whether users can authenticate using an Lightweight Directory Access Protocol (LDAP) host.
	AuthenticationEnabled *bool `field:"optional" json:"authenticationEnabled" yaml:"authenticationEnabled"`
	// Flag that indicates whether users can authorize access to MongoDB Cloud resources using an Lightweight Directory Access Protocol (LDAP) host.
	AuthorizationEnabled *bool `field:"optional" json:"authorizationEnabled" yaml:"authorizationEnabled"`
	// Lightweight Directory Access Protocol (LDAP) query template that MongoDB Cloud runs to obtain the LDAP groups associated with the authenticated user.
	//
	// MongoDB Cloud uses this parameter only for user authorization. Use the `{USER}` placeholder in the Uniform Resource Locator (URL) to substitute the authenticated username. The query relates to the host specified with the hostname. Format this query according to [RFC 4515](https://tools.ietf.org/search/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).
	AuthzQueryTemplate *string `field:"optional" json:"authzQueryTemplate" yaml:"authzQueryTemplate"`
	// Certificate Authority (CA) certificate that MongoDB Cloud uses to verify the identity of the Lightweight Directory Access Protocol (LDAP) host.
	//
	// MongoDB Cloud allows self-signed certificates. To delete an assigned value, pass an empty string: `"caCertificate": ""`
	CaCertificate *string `field:"optional" json:"caCertificate" yaml:"caCertificate"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// The current status of the LDAP over TLS/SSL configuration.
	Status *string `field:"optional" json:"status" yaml:"status"`
	// User-to-Distinguished Name (DN) map that MongoDB Cloud uses to transform a Lightweight Directory Access Protocol (LDAP) username into an LDAP DN.
	UserToDnMapping *[]*ApiAtlasNdsUserToDnMappingView `field:"optional" json:"userToDnMapping" yaml:"userToDnMapping"`
}

Returns, edits, verifies, and removes LDAP configurations.

type CfnLdapVerify

type CfnLdapVerify interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::LDAPVerify.RequestId`.
	AttrRequestId() *string
	// Attribute `MongoDB::Atlas::LDAPVerify.Status`.
	AttrStatus() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnLdapVerifyProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::LDAPVerify`.

func NewCfnLdapVerify

func NewCfnLdapVerify(scope constructs.Construct, id *string, props *CfnLdapVerifyProps) CfnLdapVerify

Create a new `MongoDB::Atlas::LDAPVerify`.

type CfnLdapVerifyProps

type CfnLdapVerifyProps struct {
	// Password that MongoDB Cloud uses to authenticate the **bindUsername**.
	BindPassword *string `field:"required" json:"bindPassword" yaml:"bindPassword"`
	// Full Distinguished Name (DN) of the Lightweight Directory Access Protocol (LDAP) user that MongoDB Cloud uses to connect to the LDAP host.
	//
	// LDAP distinguished names must be formatted according to RFC 2253.
	BindUsername *string `field:"required" json:"bindUsername" yaml:"bindUsername"`
	// Human-readable label that identifies the hostname or Internet Protocol (IP) address of the Lightweight Directory Access Protocol (LDAP) host.
	//
	// This host must have access to the internet or have a Virtual Private Cloud (VPC) peering connection to your cluster.
	HostName *string `field:"required" json:"hostName" yaml:"hostName"`
	// Port to which the Lightweight Directory Access Protocol (LDAP) host listens for client connections.
	Port *float64 `field:"required" json:"port" yaml:"port"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Lightweight Directory Access Protocol (LDAP) query template that MongoDB Cloud runs to obtain the LDAP groups associated with the authenticated user.
	//
	// MongoDB Cloud uses this parameter only for user authorization. Use the `{USER}` placeholder in the Uniform Resource Locator (URL) to substitute the authenticated username. The query relates to the host specified with the hostname. Format this query according to [RFC 4515](https://tools.ietf.org/search/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).
	AuthzQueryTemplate *string `field:"optional" json:"authzQueryTemplate" yaml:"authzQueryTemplate"`
	// Certificate Authority (CA) certificate that MongoDB Cloud uses to verify the identity of the Lightweight Directory Access Protocol (LDAP) host.
	//
	// MongoDB Cloud allows self-signed certificates. To delete an assigned value, pass an empty string: `"caCertificate": ""`
	CaCertificate *string `field:"optional" json:"caCertificate" yaml:"caCertificate"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// List of validation messages related to the verification of the provided LDAP over TLS configuration details.
	//
	// The array contains a document for each test that Atlas runs. Atlas stops running tests after the first failure.
	Validations *[]*Validation `field:"optional" json:"validations" yaml:"validations"`
}

Requests a verification of an LDAP configuration over TLS for an Atlas project.

Pass the requestId in the response object to the Verify |ldap| Configuration endpoint to get the status of a verification request. Atlas retains only the most recent request for each project.

type CfnMaintenanceWindow

type CfnMaintenanceWindow interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnMaintenanceWindowProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::MaintenanceWindow`.

func NewCfnMaintenanceWindow

func NewCfnMaintenanceWindow(scope constructs.Construct, id *string, props *CfnMaintenanceWindowProps) CfnMaintenanceWindow

Create a new `MongoDB::Atlas::MaintenanceWindow`.

type CfnMaintenanceWindowProps

type CfnMaintenanceWindowProps struct {
	// Zero-based integer that represents the hour of the of the day that the maintenance window starts according to a 24-hour clock.
	//
	// Use `0` for midnight and `12` for noon.
	HourOfDay *float64 `field:"required" json:"hourOfDay" yaml:"hourOfDay"`
	// Flag that indicates whether MongoDB Cloud should defer all maintenance windows for one week after you enable them.
	AutoDeferOnceEnabled *bool `field:"optional" json:"autoDeferOnceEnabled" yaml:"autoDeferOnceEnabled"`
	// One-based integer that represents the day of the week that the maintenance window starts.
	//
	// | Value | Day of Week |
	// |---|---|
	// | `1` | Sunday |
	// | `2` | Monday |
	// | `3` | Tuesday |
	// | `4` | Wednesday |
	// | `5` | Thursday |
	// | `6` | Friday |
	// | `7` | Saturday |.
	DayOfWeek *float64 `field:"optional" json:"dayOfWeek" yaml:"dayOfWeek"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml)
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Flag that indicates whether MongoDB Cloud starts the maintenance window immediately upon receiving this request.
	//
	// To start the maintenance window immediately for your project, MongoDB Cloud must have maintenance scheduled and you must set a maintenance window. This flag resets to `false` after MongoDB Cloud completes maintenance.
	StartAsap *bool `field:"optional" json:"startAsap" yaml:"startAsap"`
}

The maintenanceWindow resource provides access to retrieve or update the current Atlas project maintenance window.

type CfnNetworkContainer

type CfnNetworkContainer interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::NetworkContainer.Id`.
	AttrId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnNetworkContainerProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::NetworkContainer`.

func NewCfnNetworkContainer

func NewCfnNetworkContainer(scope constructs.Construct, id *string, props *CfnNetworkContainerProps) CfnNetworkContainer

Create a new `MongoDB::Atlas::NetworkContainer`.

type CfnNetworkContainerProps

type CfnNetworkContainerProps struct {
	// IP addresses expressed in Classless Inter-Domain Routing (CIDR) notation that MongoDB Cloud uses for the network peering containers in your project.
	//
	// MongoDB Cloud assigns all of the project's clusters deployed to this cloud provider an IP address from this range. MongoDB Cloud locks this value if an M10 or greater cluster or a network peering connection exists in this project.
	// These CIDR blocks must fall within the ranges reserved per RFC 1918. AWS further limits the block to between the /24 and /21 ranges.
	// To modify the CIDR block, the target project cannot have:
	// - Any M10 or greater clusters
	// - Any other VPC peering connections
	// You can also create a new project and create a network peering connection to set the desired MongoDB Cloud network peering container CIDR block for that project. MongoDB Cloud limits the number of MongoDB nodes per network peering connection based on the CIDR block and the region selected for the project.
	// Example: A project in an Amazon Web Services (AWS) region supporting three availability zones and an MongoDB CIDR network peering container block of limit of /24 equals 27 three-node replica sets.
	AtlasCidrBlock *string `field:"required" json:"atlasCidrBlock" yaml:"atlasCidrBlock"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Geographic area that Amazon Web Services (AWS) defines to which MongoDB Cloud deployed this network peering container.
	RegionName *string `field:"required" json:"regionName" yaml:"regionName"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Boolean flag that indicates whether MongoDB Cloud clusters exist in the specified network peering container.
	Provisioned *bool `field:"optional" json:"provisioned" yaml:"provisioned"`
	// Unique string that identifies the MongoDB Cloud VPC on AWS.
	VpcId *string `field:"optional" json:"vpcId" yaml:"vpcId"`
}

Returns, adds, edits, and removes network peering containers.

type CfnNetworkPeering

type CfnNetworkPeering interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::NetworkPeering.ConnectionId`.
	AttrConnectionId() *string
	// Attribute `MongoDB::Atlas::NetworkPeering.ErrorStateName`.
	AttrErrorStateName() *string
	// Attribute `MongoDB::Atlas::NetworkPeering.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::NetworkPeering.StatusName`.
	AttrStatusName() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnNetworkPeeringProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::NetworkPeering`.

func NewCfnNetworkPeering

func NewCfnNetworkPeering(scope constructs.Construct, id *string, props *CfnNetworkPeeringProps) CfnNetworkPeering

Create a new `MongoDB::Atlas::NetworkPeering`.

type CfnNetworkPeeringProps

type CfnNetworkPeeringProps struct {
	// Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that contains the specified network peering connection.
	ContainerId *string `field:"required" json:"containerId" yaml:"containerId"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Unique string that identifies the VPC on Amazon Web Services (AWS) that you want to peer with the MongoDB Cloud VPC.
	VpcId *string `field:"required" json:"vpcId" yaml:"vpcId"`
	// Amazon Web Services (AWS) region where the Virtual Peering Connection (VPC) that you peered with the MongoDB Cloud VPC resides.
	//
	// The resource returns null if your VPC and the MongoDB Cloud VPC reside in the same region.
	AccepterRegionName *string `field:"optional" json:"accepterRegionName" yaml:"accepterRegionName"`
	// Unique twelve-digit string that identifies the Amazon Web Services (AWS) account that owns the VPC that you peered with the MongoDB Cloud VPC.
	AwsAccountId *string `field:"optional" json:"awsAccountId" yaml:"awsAccountId"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Internet Protocol (IP) addresses expressed in Classless Inter-Domain Routing (CIDR) notation of the VPC's subnet that you want to peer with the MongoDB Cloud VPC.
	RouteTableCidrBlock *string `field:"optional" json:"routeTableCidrBlock" yaml:"routeTableCidrBlock"`
}

Returns, adds, edits, and removes network peering containers and peering connections.

type CfnOnlineArchive

type CfnOnlineArchive interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::OnlineArchive.ArchiveId`.
	AttrArchiveId() *string
	// Attribute `MongoDB::Atlas::OnlineArchive.State`.
	AttrState() *string
	// Attribute `MongoDB::Atlas::OnlineArchive.TotalCount`.
	AttrTotalCount() *float64
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnOnlineArchiveProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::OnlineArchive`.

func NewCfnOnlineArchive

func NewCfnOnlineArchive(scope constructs.Construct, id *string, props *CfnOnlineArchiveProps) CfnOnlineArchive

Create a new `MongoDB::Atlas::OnlineArchive`.

type CfnOnlineArchiveProps

type CfnOnlineArchiveProps struct {
	// Human-readable label that identifies the cluster that contains the collection from which you want to remove an online archive.
	ClusterName *string `field:"required" json:"clusterName" yaml:"clusterName"`
	// Rules by which MongoDB MongoDB Cloud archives data.
	//
	// Use the **criteria.type** field to choose how MongoDB Cloud selects data to archive. Choose data using the age of the data or a MongoDB query.
	// **"criteria.type": "DATE"** selects documents to archive based on a date.
	// **"criteria.type": "CUSTOM"** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **"criteria.type": "CUSTOM"** when **"collectionType": "TIMESERIES"**.
	Criteria *CriteriaView `field:"required" json:"criteria" yaml:"criteria"`
	// Classification of MongoDB database collection that you want to return.
	//
	// If you set this parameter to `TIMESERIES`, set `"criteria.type" : "date"` and `"criteria.dateFormat" : "ISODATE"`.
	CollectionType CfnOnlineArchivePropsCollectionType `field:"optional" json:"collectionType" yaml:"collectionType"`
	// Human-readable label that identifies the collection for which you created the online archive.
	CollName *string `field:"optional" json:"collName" yaml:"collName"`
	// Human-readable label of the database that contains the collection that contains the online archive.
	DbName *string `field:"optional" json:"dbName" yaml:"dbName"`
	// Flag that indicates whether the response returns the total number of items (**totalCount**) in the response.
	IncludeCount *bool `field:"optional" json:"includeCount" yaml:"includeCount"`
	// Number of items that the response returns per page.
	ItemsPerPage *float64 `field:"optional" json:"itemsPerPage" yaml:"itemsPerPage"`
	// Number of the page that displays the current set of the total objects that the response returns.
	PageNum *float64 `field:"optional" json:"pageNum" yaml:"pageNum"`
	// List that contains document parameters to use to logically divide data within a collection.
	//
	// Partitions provide a coarse level of filtering of the underlying collection data. To divide your data, specify up to two parameters that you frequently query. Any queries that don't use these parameters result in a full collection scan of all archived documents. This takes more time and increase your costs.
	PartitionFields *[]*PartitionFieldView `field:"optional" json:"partitionFields" yaml:"partitionFields"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Regular frequency and duration when archiving process occurs.
	Schedule *ScheduleView `field:"optional" json:"schedule" yaml:"schedule"`
}

Returns, adds, edits, or removes an online archive.

type CfnOnlineArchivePropsCollectionType

type CfnOnlineArchivePropsCollectionType string

Classification of MongoDB database collection that you want to return.

If you set this parameter to `TIMESERIES`, set `"criteria.type" : "date"` and `"criteria.dateFormat" : "ISODATE"`.

const (
	// STANDARD.
	CfnOnlineArchivePropsCollectionType_STANDARD CfnOnlineArchivePropsCollectionType = "STANDARD"
	// TIMESERIES.
	CfnOnlineArchivePropsCollectionType_TIMESERIES CfnOnlineArchivePropsCollectionType = "TIMESERIES"
)

type CfnOrgInvitation

type CfnOrgInvitation interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::OrgInvitation.CreatedAt`.
	AttrCreatedAt() *string
	// Attribute `MongoDB::Atlas::OrgInvitation.ExpiresAt`.
	AttrExpiresAt() *string
	// Attribute `MongoDB::Atlas::OrgInvitation.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::OrgInvitation.InviterUsername`.
	AttrInviterUsername() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnOrgInvitationProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::OrgInvitation`.

func NewCfnOrgInvitation

func NewCfnOrgInvitation(scope constructs.Construct, id *string, props *CfnOrgInvitationProps) CfnOrgInvitation

Create a new `MongoDB::Atlas::OrgInvitation`.

type CfnOrgInvitationProps

type CfnOrgInvitationProps struct {
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"required" json:"profile" yaml:"profile"`
	// Flag that indicates whether the response returns the total number of items (**totalCount**) in the response.
	IncludeCount *bool `field:"optional" json:"includeCount" yaml:"includeCount"`
	// Unique 24-hexadecimal digit string that identifies the invitation.
	InvitationId *string `field:"optional" json:"invitationId" yaml:"invitationId"`
	// Number of items that the response returns per page.
	ItemsPerPage *float64 `field:"optional" json:"itemsPerPage" yaml:"itemsPerPage"`
	// Unique 24-hexadecimal digit string that identifies the organization that contains your projects.
	OrgId *string `field:"optional" json:"orgId" yaml:"orgId"`
	// Human-readable label that identifies this organization.
	OrgName *string `field:"optional" json:"orgName" yaml:"orgName"`
	// Number of the page that displays the current set of the total objects that the response returns.
	PageNum *float64 `field:"optional" json:"pageNum" yaml:"pageNum"`
	// One or more organization or project level roles to assign to the MongoDB Cloud user.
	Roles *[]CfnOrgInvitationPropsRoles `field:"optional" json:"roles" yaml:"roles"`
	// List of unique 24-hexadecimal digit strings that identifies each team.
	TeamIds *[]*string `field:"optional" json:"teamIds" yaml:"teamIds"`
	// Number of documents returned in this response.
	TotalCount *float64 `field:"optional" json:"totalCount" yaml:"totalCount"`
	// Email address of the MongoDB Cloud user invited to join the organization.
	Username *string `field:"optional" json:"username" yaml:"username"`
}

Returns, adds, and edits organizational units in MongoDB Cloud.

type CfnOrgInvitationPropsRoles

type CfnOrgInvitationPropsRoles string
const (
	// ORG_OWNER.
	CfnOrgInvitationPropsRoles_ORG_OWNER CfnOrgInvitationPropsRoles = "ORG_OWNER"
	// ORG_MEMBER.
	CfnOrgInvitationPropsRoles_ORG_MEMBER CfnOrgInvitationPropsRoles = "ORG_MEMBER"
	// ORG_GROUP_CREATOR.
	CfnOrgInvitationPropsRoles_ORG_GROUP_CREATOR CfnOrgInvitationPropsRoles = "ORG_GROUP_CREATOR"
	// ORG_BILLING_ADMIN.
	CfnOrgInvitationPropsRoles_ORG_BILLING_ADMIN CfnOrgInvitationPropsRoles = "ORG_BILLING_ADMIN"
	// ORG_READ_ONLY.
	CfnOrgInvitationPropsRoles_ORG_READ_ONLY CfnOrgInvitationPropsRoles = "ORG_READ_ONLY"
	// GROUP_CLUSTER_MANAGER.
	CfnOrgInvitationPropsRoles_GROUP_CLUSTER_MANAGER CfnOrgInvitationPropsRoles = "GROUP_CLUSTER_MANAGER"
	// GROUP_DATA_ACCESS_ADMIN.
	CfnOrgInvitationPropsRoles_GROUP_DATA_ACCESS_ADMIN CfnOrgInvitationPropsRoles = "GROUP_DATA_ACCESS_ADMIN"
	// GROUP_DATA_ACCESS_READ_ONLY.
	CfnOrgInvitationPropsRoles_GROUP_DATA_ACCESS_READ_ONLY CfnOrgInvitationPropsRoles = "GROUP_DATA_ACCESS_READ_ONLY"
	// GROUP_DATA_ACCESS_READ_WRITE.
	CfnOrgInvitationPropsRoles_GROUP_DATA_ACCESS_READ_WRITE CfnOrgInvitationPropsRoles = "GROUP_DATA_ACCESS_READ_WRITE"
	// GROUP_OWNER.
	CfnOrgInvitationPropsRoles_GROUP_OWNER CfnOrgInvitationPropsRoles = "GROUP_OWNER"
	// GROUP_READ_ONLY.
	CfnOrgInvitationPropsRoles_GROUP_READ_ONLY CfnOrgInvitationPropsRoles = "GROUP_READ_ONLY"
)

type CfnOrganization added in v3.1.0

type CfnOrganization interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::Organization.OrgId`.
	AttrOrgId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnOrganizationProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::Organization`.

func NewCfnOrganization added in v3.1.0

func NewCfnOrganization(scope constructs.Construct, id *string, props *CfnOrganizationProps) CfnOrganization

Create a new `MongoDB::Atlas::Organization`.

type CfnOrganizationProps added in v3.1.0

type CfnOrganizationProps struct {
	// AwsSecretName used to set newly created Org credentials information.
	AwsSecretName *string `field:"required" json:"awsSecretName" yaml:"awsSecretName"`
	// Human-readable label that identifies the organization.
	Name *string `field:"required" json:"name" yaml:"name"`
	// Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user that you want to assign the Organization Owner role.
	//
	// This user must be a member of the same organization as the calling API key. If you provide federationSettingsId, this user must instead have the Organization Owner role on an organization in the specified federation. This parameter is required only when you authenticate with Programmatic API Keys.
	OrgOwnerId *string `field:"required" json:"orgOwnerId" yaml:"orgOwnerId"`
	ApiKey     *ApiKey `field:"optional" json:"apiKey" yaml:"apiKey"`
	// Unique 24-hexadecimal digit string that identifies the federation to link the newly created organization to.
	//
	// If specified, the proposed Organization Owner of the new organization must have the Organization Owner role in an organization associated with the federation.
	FederatedSettingsId *string `field:"optional" json:"federatedSettingsId" yaml:"federatedSettingsId"`
	// Flag that indicates whether this organization has been deleted.
	IsDeleted *bool `field:"optional" json:"isDeleted" yaml:"isDeleted"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Returns, adds, and edits organizational units in MongoDB Cloud.

type CfnPrivateEndPointRegionalMode

type CfnPrivateEndPointRegionalMode interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnPrivateEndPointRegionalModeProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::PrivateEndPointRegionalMode`.

func NewCfnPrivateEndPointRegionalMode

func NewCfnPrivateEndPointRegionalMode(scope constructs.Construct, id *string, props *CfnPrivateEndPointRegionalModeProps) CfnPrivateEndPointRegionalMode

Create a new `MongoDB::Atlas::PrivateEndPointRegionalMode`.

type CfnPrivateEndPointRegionalModeProps

type CfnPrivateEndPointRegionalModeProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

An example resource schema demonstrating some basic constructs and validation rules.

type CfnPrivateEndpoint

type CfnPrivateEndpoint interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::PrivateEndpoint.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::PrivateEndpoint.InterfaceEndpoints`.
	AttrInterfaceEndpoints() *[]*string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnPrivateEndpointProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::PrivateEndpoint`.

func NewCfnPrivateEndpoint

func NewCfnPrivateEndpoint(scope constructs.Construct, id *string, props *CfnPrivateEndpointProps) CfnPrivateEndpoint

Create a new `MongoDB::Atlas::PrivateEndpoint`.

type CfnPrivateEndpointAdl

type CfnPrivateEndpointAdl interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnPrivateEndpointAdlProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::PrivateEndpointADL`.

func NewCfnPrivateEndpointAdl

func NewCfnPrivateEndpointAdl(scope constructs.Construct, id *string, props *CfnPrivateEndpointAdlProps) CfnPrivateEndpointAdl

Create a new `MongoDB::Atlas::PrivateEndpointADL`.

type CfnPrivateEndpointAdlProps

type CfnPrivateEndpointAdlProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Human-readable label that identifies the cloud service provider.
	//
	// Atlas Data Lake supports Amazon Web Services only.
	Provider *string `field:"required" json:"provider" yaml:"provider"`
	// Human-readable string to associate with this private endpoint.
	Comment *string `field:"optional" json:"comment" yaml:"comment"`
	// Unique 22-character alphanumeric string that identifies the private endpoint.
	EndpointId *string `field:"optional" json:"endpointId" yaml:"endpointId"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Human-readable label that identifies the resource type associated with this private endpoint.
	Type *string `field:"optional" json:"type" yaml:"type"`
}

Adds one private endpoint for Federated Database Instances and Online Archives to the specified projects.

To use this resource, the requesting API Key must have the Project Atlas Admin or Project Charts Admin roles. This resource doesn't require the API Key to have an Access List.

type CfnPrivateEndpointAws

type CfnPrivateEndpointAws interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnPrivateEndpointAwsProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::PrivateEndpointAWS`.

func NewCfnPrivateEndpointAws

func NewCfnPrivateEndpointAws(scope constructs.Construct, id *string, props *CfnPrivateEndpointAwsProps) CfnPrivateEndpointAws

Create a new `MongoDB::Atlas::PrivateEndpointAWS`.

type CfnPrivateEndpointAwsProps

type CfnPrivateEndpointAwsProps struct {
	// Unique 24-hexadecimal digit string that identifies the private endpoint service for which you want to create a private endpoint.
	EndpointServiceId *string `field:"required" json:"endpointServiceId" yaml:"endpointServiceId"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// State of the Amazon Web Service PrivateLink connection when MongoDB Cloud received this request.
	ConnectionStatus *string `field:"optional" json:"connectionStatus" yaml:"connectionStatus"`
	// If this proper is set to TRUE, the cloud formation resource will return success Only if the private connection is Succeeded.
	EnforceConnectionSuccess *bool `field:"optional" json:"enforceConnectionSuccess" yaml:"enforceConnectionSuccess"`
	// Error message returned when requesting private connection resource.
	//
	// The resource returns null if the request succeeded.
	ErrorMessage *string `field:"optional" json:"errorMessage" yaml:"errorMessage"`
	// Unique string that identifies the private endpoint.
	//
	// for AWS is the VPC endpoint ID, example: vpce-xxxxxxxx.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup (../../../examples/profile-secret.yaml)
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Creates one private endpoint for the specified cloud service provider.

At this current version only AWS is supported.

type CfnPrivateEndpointProps

type CfnPrivateEndpointProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	GroupId *string `field:"required" json:"groupId" yaml:"groupId"`
	// Aws Region.
	Region *string `field:"required" json:"region" yaml:"region"`
	// Name of the AWS PrivateLink endpoint service.
	//
	// Atlas returns null while it is creating the endpoint service.
	EndpointServiceName *string `field:"optional" json:"endpointServiceName" yaml:"endpointServiceName"`
	// Error message pertaining to the AWS PrivateLink connection.
	//
	// Returns null if there are no errors.
	ErrorMessage *string `field:"optional" json:"errorMessage" yaml:"errorMessage"`
	// List of private endpoint associated to the service.
	PrivateEndpoints *[]*PrivateEndpoint `field:"optional" json:"privateEndpoints" yaml:"privateEndpoints"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup (../../../examples/profile-secret.yaml)
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Status of the Atlas PrivateEndpoint service connection.
	Status *string `field:"optional" json:"status" yaml:"status"`
}

The Private Endpoint creation flow consists of the creation of three related resources in the next order: 1.

Atlas Private Endpoint Service 2. Aws VPC private Endpoint 3. Atlas Private Endpoint

type CfnPrivateEndpointService

type CfnPrivateEndpointService interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::PrivateEndpointService.EndpointServiceName`.
	AttrEndpointServiceName() *string
	// Attribute `MongoDB::Atlas::PrivateEndpointService.ErrorMessage`.
	AttrErrorMessage() *string
	// Attribute `MongoDB::Atlas::PrivateEndpointService.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::PrivateEndpointService.InterfaceEndpoints`.
	AttrInterfaceEndpoints() *[]*string
	// Attribute `MongoDB::Atlas::PrivateEndpointService.Status`.
	AttrStatus() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnPrivateEndpointServiceProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::PrivateEndpointService`.

func NewCfnPrivateEndpointService

func NewCfnPrivateEndpointService(scope constructs.Construct, id *string, props *CfnPrivateEndpointServiceProps) CfnPrivateEndpointService

Create a new `MongoDB::Atlas::PrivateEndpointService`.

type CfnPrivateEndpointServiceProps

type CfnPrivateEndpointServiceProps struct {
	// Cloud service provider that manages this private endpoint, default : AWS.
	CloudProvider CfnPrivateEndpointServicePropsCloudProvider `field:"required" json:"cloudProvider" yaml:"cloudProvider"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Aws Region.
	Region *string `field:"required" json:"region" yaml:"region"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup (../../../examples/profile-secret.yaml)
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Creates one private endpoint service for the specified cloud service provider.

This cloud service provider manages the private endpoint service for the project. When you create a private endpoint service, MongoDB Cloud creates a network container in the project for the cloud provider for which you create the private endpoint service if one doesn't already exist.

type CfnPrivateEndpointServicePropsCloudProvider

type CfnPrivateEndpointServicePropsCloudProvider string

Cloud service provider that manages this private endpoint, default : AWS.

const (
	// AWS.
	CfnPrivateEndpointServicePropsCloudProvider_AWS CfnPrivateEndpointServicePropsCloudProvider = "AWS"
	// AZURE.
	CfnPrivateEndpointServicePropsCloudProvider_AZURE CfnPrivateEndpointServicePropsCloudProvider = "AZURE"
	// GCP.
	CfnPrivateEndpointServicePropsCloudProvider_GCP CfnPrivateEndpointServicePropsCloudProvider = "GCP"
)

type CfnPrivatelinkEndpointServiceDataFederationOnlineArchive

type CfnPrivatelinkEndpointServiceDataFederationOnlineArchive interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnPrivatelinkEndpointServiceDataFederationOnlineArchiveProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::PrivatelinkEndpointServiceDataFederationOnlineArchive`.

func NewCfnPrivatelinkEndpointServiceDataFederationOnlineArchive

func NewCfnPrivatelinkEndpointServiceDataFederationOnlineArchive(scope constructs.Construct, id *string, props *CfnPrivatelinkEndpointServiceDataFederationOnlineArchiveProps) CfnPrivatelinkEndpointServiceDataFederationOnlineArchive

Create a new `MongoDB::Atlas::PrivatelinkEndpointServiceDataFederationOnlineArchive`.

type CfnPrivatelinkEndpointServiceDataFederationOnlineArchiveProps

type CfnPrivatelinkEndpointServiceDataFederationOnlineArchiveProps struct {
	// Unique 22-character alphanumeric string that identifies the private endpoint.Reg ex ^vpce-[0-9a-f]{17}$ .
	//
	// Atlas Data Lake supports Amazon Web Services private endpoints using the AWS PrivateLink feature.
	EndpointId *string `field:"required" json:"endpointId" yaml:"endpointId"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Human-readable string to associate with this private endpoint.
	Comment *string `field:"optional" json:"comment" yaml:"comment"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Human-readable label that identifies the resource type associated with this private endpoint.
	Type *string `field:"optional" json:"type" yaml:"type"`
}

Adds one private endpoint for Federated Database Instances and Online Archives to the specified projects.

type CfnProject

type CfnProject interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::Project.Created`.
	AttrCreated() *string
	// Attribute `MongoDB::Atlas::Project.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::Project.ProjectOwnerId`.
	AttrProjectOwnerId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnProjectProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::Project`.

func NewCfnProject

func NewCfnProject(scope constructs.Construct, id *string, props *CfnProjectProps) CfnProject

Create a new `MongoDB::Atlas::Project`.

type CfnProjectInvitation

type CfnProjectInvitation interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::ProjectInvitation.CreatedAt`.
	AttrCreatedAt() *string
	// Attribute `MongoDB::Atlas::ProjectInvitation.ExpiresAt`.
	AttrExpiresAt() *string
	// Attribute `MongoDB::Atlas::ProjectInvitation.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::ProjectInvitation.InviterUsername`.
	AttrInviterUsername() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnProjectInvitationProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::ProjectInvitation`.

func NewCfnProjectInvitation

func NewCfnProjectInvitation(scope constructs.Construct, id *string, props *CfnProjectInvitationProps) CfnProjectInvitation

Create a new `MongoDB::Atlas::ProjectInvitation`.

type CfnProjectInvitationProps

type CfnProjectInvitationProps struct {
	// Unique 24-hexadecimal digit string that identifies the invitation.
	InvitationId *string `field:"optional" json:"invitationId" yaml:"invitationId"`
	// Number of the page that displays the current set of the total objects that the response returns.
	PageNum *float64 `field:"optional" json:"pageNum" yaml:"pageNum"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// One or more organization or project level roles to assign to the MongoDB Cloud user.
	Roles *[]CfnProjectInvitationPropsRoles `field:"optional" json:"roles" yaml:"roles"`
	// Number of documents returned in this response.
	TotalCount *float64 `field:"optional" json:"totalCount" yaml:"totalCount"`
	// Email address of the user account invited to this project.
	Username *string `field:"optional" json:"username" yaml:"username"`
}

Returns, adds, and edits collections of clusters and users in MongoDB Cloud.

type CfnProjectInvitationPropsRoles

type CfnProjectInvitationPropsRoles string
const (
	// GROUP_CLUSTER_MANAGER.
	CfnProjectInvitationPropsRoles_GROUP_CLUSTER_MANAGER CfnProjectInvitationPropsRoles = "GROUP_CLUSTER_MANAGER"
	// GROUP_DATA_ACCESS_ADMIN.
	CfnProjectInvitationPropsRoles_GROUP_DATA_ACCESS_ADMIN CfnProjectInvitationPropsRoles = "GROUP_DATA_ACCESS_ADMIN"
	// GROUP_DATA_ACCESS_READ_ONLY.
	CfnProjectInvitationPropsRoles_GROUP_DATA_ACCESS_READ_ONLY CfnProjectInvitationPropsRoles = "GROUP_DATA_ACCESS_READ_ONLY"
	// GROUP_DATA_ACCESS_READ_WRITE.
	CfnProjectInvitationPropsRoles_GROUP_DATA_ACCESS_READ_WRITE CfnProjectInvitationPropsRoles = "GROUP_DATA_ACCESS_READ_WRITE"
	// GROUP_OWNER.
	CfnProjectInvitationPropsRoles_GROUP_OWNER CfnProjectInvitationPropsRoles = "GROUP_OWNER"
	// GROUP_READ_ONLY.
	CfnProjectInvitationPropsRoles_GROUP_READ_ONLY CfnProjectInvitationPropsRoles = "GROUP_READ_ONLY"
)

type CfnProjectIpAccessList

type CfnProjectIpAccessList interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnProjectIpAccessListProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::ProjectIpAccessList`.

func NewCfnProjectIpAccessList

func NewCfnProjectIpAccessList(scope constructs.Construct, id *string, props *CfnProjectIpAccessListProps) CfnProjectIpAccessList

Create a new `MongoDB::Atlas::ProjectIpAccessList`.

type CfnProjectIpAccessListProps

type CfnProjectIpAccessListProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId   *string                  `field:"required" json:"projectId" yaml:"projectId"`
	AccessList  *[]*AccessListDefinition `field:"optional" json:"accessList" yaml:"accessList"`
	ListOptions *ListOptions             `field:"optional" json:"listOptions" yaml:"listOptions"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Number of documents returned in this response.
	TotalCount *float64 `field:"optional" json:"totalCount" yaml:"totalCount"`
}

Returns, adds, edits, and removes network access limits to database deployments in MongoDB Cloud.

type CfnProjectProps

type CfnProjectProps struct {
	// Name of the project to create.
	Name *string `field:"required" json:"name" yaml:"name"`
	// Unique identifier of the organization within which to create the project.
	OrgId *string `field:"required" json:"orgId" yaml:"orgId"`
	// The number of Atlas clusters deployed in the project.
	ClusterCount *float64 `field:"optional" json:"clusterCount" yaml:"clusterCount"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// API keys that you assigned to the specified project.
	ProjectApiKeys  *[]*ProjectApiKey `field:"optional" json:"projectApiKeys" yaml:"projectApiKeys"`
	ProjectSettings *ProjectSettings  `field:"optional" json:"projectSettings" yaml:"projectSettings"`
	// Teams to which the authenticated user has access in the project specified using its unique 24-hexadecimal digit identifier.
	ProjectTeams *[]*ProjectTeam `field:"optional" json:"projectTeams" yaml:"projectTeams"`
	// Region usage restrictions that designate the project's AWS region.Enum: "GOV_REGIONS_ONLY" "COMMERCIAL_FEDRAMP_REGIONS_ONLY" "NONE".
	RegionUsageRestrictions *string `field:"optional" json:"regionUsageRestrictions" yaml:"regionUsageRestrictions"`
	// Flag that indicates whether to create the project with default alert settings.
	WithDefaultAlertsSettings *bool `field:"optional" json:"withDefaultAlertsSettings" yaml:"withDefaultAlertsSettings"`
}

Retrieves or creates projects in any given Atlas organization.

type CfnSearchIndex

type CfnSearchIndex interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::SearchIndex.IndexId`.
	AttrIndexId() *string
	// Attribute `MongoDB::Atlas::SearchIndex.Status`.
	AttrStatus() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnSearchIndexProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::SearchIndex`.

func NewCfnSearchIndex

func NewCfnSearchIndex(scope constructs.Construct, id *string, props *CfnSearchIndexProps) CfnSearchIndex

Create a new `MongoDB::Atlas::SearchIndex`.

type CfnSearchIndexProps

type CfnSearchIndexProps struct {
	// Name of the cluster that contains the database and collection with one or more Application Search indexes.
	ClusterName *string `field:"required" json:"clusterName" yaml:"clusterName"`
	// Human-readable label that identifies the collection that contains one or more Atlas Search indexes.
	CollectionName *string `field:"required" json:"collectionName" yaml:"collectionName"`
	// Human-readable label that identifies the database that contains the collection with one or more Atlas Search indexes.
	Database *string `field:"required" json:"database" yaml:"database"`
	// Specific pre-defined method chosen to convert database field text into searchable words.
	//
	// This conversion reduces the text of fields into the smallest units of text. These units are called a **term** or **token**. This process, known as tokenization, involves a variety of changes made to the text in fields:
	//
	// - extracting words
	// - removing punctuation
	// - removing accents
	// - changing to lowercase
	// - removing common words
	// - reducing words to their root form (stemming)
	// - changing words to their base form (lemmatization)
	// MongoDB Cloud uses the selected process to build the Atlas Search index.
	Analyzer *string `field:"optional" json:"analyzer" yaml:"analyzer"`
	// List of user-defined methods to convert database field text into searchable words.
	Analyzers *[]*ApiAtlasFtsAnalyzersViewManual `field:"optional" json:"analyzers" yaml:"analyzers"`
	// Array of [Fields](https://www.mongodb.com/docs/atlas/atlas-search/field-types/knn-vector/#std-label-fts-data-types-knn-vector) to configure this vectorSearch index. Stringify json representation of field with types and properties. Required for vector indexes. It must contain at least one **vector** type field.
	Fields *string `field:"optional" json:"fields" yaml:"fields"`
	// Index specifications for the collection's fields.
	Mappings *ApiAtlasFtsMappingsViewManual `field:"optional" json:"mappings" yaml:"mappings"`
	// Human-readable label that identifies this index.
	//
	// Within each namespace, names of all indexes in the namespace must be unique.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Method applied to identify words when searching this index.
	SearchAnalyzer *string `field:"optional" json:"searchAnalyzer" yaml:"searchAnalyzer"`
	// Rule sets that map words to their synonyms in this index.
	Synonyms *[]*ApiAtlasFtsSynonymMappingDefinitionView `field:"optional" json:"synonyms" yaml:"synonyms"`
	// Type of index: **search** or **vectorSearch**.
	//
	// Default type is **search**.
	Type *string `field:"optional" json:"type" yaml:"type"`
}

Returns, adds, edits, and removes Atlas Search indexes.

Also returns and updates user-defined analyzers.

type CfnServerlessInstance

type CfnServerlessInstance interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::ServerlessInstance.CreateDate`.
	AttrCreateDate() *string
	// Attribute `MongoDB::Atlas::ServerlessInstance.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::ServerlessInstance.MongoDBVersion`.
	AttrMongoDBVersion() *string
	// Attribute `MongoDB::Atlas::ServerlessInstance.StateName`.
	AttrStateName() *string
	// Attribute `MongoDB::Atlas::ServerlessInstance.TotalCount`.
	AttrTotalCount() *float64
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnServerlessInstanceProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::ServerlessInstance`.

func NewCfnServerlessInstance

func NewCfnServerlessInstance(scope constructs.Construct, id *string, props *CfnServerlessInstanceProps) CfnServerlessInstance

Create a new `MongoDB::Atlas::ServerlessInstance`.

type CfnServerlessInstanceProps

type CfnServerlessInstanceProps struct {
	// Collection of Uniform Resource Locators that point to the MongoDB database.
	ConnectionStrings *ServerlessInstanceConnectionStrings `field:"optional" json:"connectionStrings" yaml:"connectionStrings"`
	// Flag that indicates whether the serverless instances uses Serverless Continuous Backup.
	//
	// If this parameter is false, the serverless instance uses Basic Backup. | Option | Description | |---|---| | Serverless Continuous Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and lets you restore the data from a selected point in time within the last 72 hours. Atlas also takes daily snapshots and retains these daily snapshots for 35 days. To learn more, see Serverless Instance Costs. | | Basic Backup | Atlas takes incremental snapshots of the data in your serverless instance every six hours and retains only the two most recent snapshots. You can use this option for free.
	ContinuousBackupEnabled *bool `field:"optional" json:"continuousBackupEnabled" yaml:"continuousBackupEnabled"`
	// Flag that indicates whether the response returns the total number of items (**totalCount**) in the response.
	IncludeCount *bool `field:"optional" json:"includeCount" yaml:"includeCount"`
	// Number of items that the response returns per page.
	ItemsPerPage *float64 `field:"optional" json:"itemsPerPage" yaml:"itemsPerPage"`
	// Human-readable label that identifies the serverless instance.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Number of the page that displays the current set of the total objects that the response returns.
	PageNum *float64 `field:"optional" json:"pageNum" yaml:"pageNum"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Group of settings that configure the provisioned MongoDB serverless instance.
	//
	// The options available relate to the cloud service provider.
	ProviderSettings *ServerlessInstanceProviderSettings `field:"optional" json:"providerSettings" yaml:"providerSettings"`
	// Flag that indicates whether termination protection is enabled on the serverless instance.
	//
	// If set to true, MongoDB Cloud won't delete the serverless instance. If set to false, MongoDB cloud will delete the serverless instance."
	TerminationProtectionEnabled *bool `field:"optional" json:"terminationProtectionEnabled" yaml:"terminationProtectionEnabled"`
}

Returns, adds, edits, and removes serverless instances.

type CfnServerlessPrivateEndpoint

type CfnServerlessPrivateEndpoint interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::ServerlessPrivateEndpoint.AwsPrivateEndpointMetaData`.
	AttrAwsPrivateEndpointMetaData() *string
	// Attribute `MongoDB::Atlas::ServerlessPrivateEndpoint.EndpointServiceName`.
	AttrEndpointServiceName() *string
	// Attribute `MongoDB::Atlas::ServerlessPrivateEndpoint.ErrorMessage`.
	AttrErrorMessage() *string
	// Attribute `MongoDB::Atlas::ServerlessPrivateEndpoint.Id`.
	AttrId() *string
	// Attribute `MongoDB::Atlas::ServerlessPrivateEndpoint.ProviderName`.
	AttrProviderName() *string
	// Attribute `MongoDB::Atlas::ServerlessPrivateEndpoint.Status`.
	AttrStatus() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnServerlessPrivateEndpointProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::ServerlessPrivateEndpoint`.

func NewCfnServerlessPrivateEndpoint

func NewCfnServerlessPrivateEndpoint(scope constructs.Construct, id *string, props *CfnServerlessPrivateEndpointProps) CfnServerlessPrivateEndpoint

Create a new `MongoDB::Atlas::ServerlessPrivateEndpoint`.

type CfnServerlessPrivateEndpointProps

type CfnServerlessPrivateEndpointProps struct {
	// Human-readable label that identifies the serverless instance for which the tenant endpoint will be created.
	InstanceName *string `field:"required" json:"instanceName" yaml:"instanceName"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Properties used to configure Aws private endpoint.
	AwsPrivateEndpointConfigurationProperties *AwsPrivateEndpointConfig `field:"optional" json:"awsPrivateEndpointConfigurationProperties" yaml:"awsPrivateEndpointConfigurationProperties"`
	// Unique string that identifies the private endpoint's network interface.
	CloudProviderEndpointId *string `field:"optional" json:"cloudProviderEndpointId" yaml:"cloudProviderEndpointId"`
	// Human-readable comment associated with the private endpoint.
	Comment *string `field:"optional" json:"comment" yaml:"comment"`
	// If true the resource will create the aws private endpoint and assign the Endpoint ID.
	CreateAndAssignAwsPrivateEndpoint *bool `field:"optional" json:"createAndAssignAwsPrivateEndpoint" yaml:"createAndAssignAwsPrivateEndpoint"`
	// IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.
	PrivateEndpointIpAddress *string `field:"optional" json:"privateEndpointIpAddress" yaml:"privateEndpointIpAddress"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

Returns, adds, edits, and removes private endpoints for serverless instances.

To learn more, see the Atlas Administration API tab on the following tutorial.

type CfnTeams

type CfnTeams interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::Teams.TeamId`.
	AttrTeamId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnTeamsProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::Teams`.

func NewCfnTeams

func NewCfnTeams(scope constructs.Construct, id *string, props *CfnTeamsProps) CfnTeams

Create a new `MongoDB::Atlas::Teams`.

type CfnTeamsProps

type CfnTeamsProps struct {
	// Unique 24-hexadecimal character string that identifies the team.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Unique 24-hexadecimal character string that identifies the team.
	OrgId *string `field:"optional" json:"orgId" yaml:"orgId"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal character string that identifies the project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// One or more organization- or project-level roles to assign to the MongoDB Cloud user.
	RoleNames *[]CfnTeamsPropsRoleNames `field:"optional" json:"roleNames" yaml:"roleNames"`
	// One or more organization- or project-level roles to assign to the MongoDB Cloud user.
	Usernames *[]*string `field:"optional" json:"usernames" yaml:"usernames"`
	// List of returned documents that MongoDB Cloud provides when completing this request.
	Users *[]*AtlasUser `field:"optional" json:"users" yaml:"users"`
}

Adds one team to the specified project.

All members of the team share the same project access. To use this resource, the requesting API Key must have the Project User Admin role. This resource doesn't require the API Key to have an Access List.

type CfnTeamsPropsRoleNames

type CfnTeamsPropsRoleNames string
const (
	// GROUP_CLUSTER_MANAGER.
	CfnTeamsPropsRoleNames_GROUP_CLUSTER_MANAGER CfnTeamsPropsRoleNames = "GROUP_CLUSTER_MANAGER"
	// GROUP_DATA_ACCESS_ADMIN.
	CfnTeamsPropsRoleNames_GROUP_DATA_ACCESS_ADMIN CfnTeamsPropsRoleNames = "GROUP_DATA_ACCESS_ADMIN"
	// GROUP_DATA_ACCESS_READ_ONLY.
	CfnTeamsPropsRoleNames_GROUP_DATA_ACCESS_READ_ONLY CfnTeamsPropsRoleNames = "GROUP_DATA_ACCESS_READ_ONLY"
	// GROUP_DATA_ACCESS_READ_WRITE.
	CfnTeamsPropsRoleNames_GROUP_DATA_ACCESS_READ_WRITE CfnTeamsPropsRoleNames = "GROUP_DATA_ACCESS_READ_WRITE"
	// GROUP_OWNER.
	CfnTeamsPropsRoleNames_GROUP_OWNER CfnTeamsPropsRoleNames = "GROUP_OWNER"
	// GROUP_READ_ONLY.
	CfnTeamsPropsRoleNames_GROUP_READ_ONLY CfnTeamsPropsRoleNames = "GROUP_READ_ONLY"
)

type CfnThirdPartyIntegration

type CfnThirdPartyIntegration interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnThirdPartyIntegrationProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::ThirdPartyIntegration`.

func NewCfnThirdPartyIntegration

func NewCfnThirdPartyIntegration(scope constructs.Construct, id *string, props *CfnThirdPartyIntegrationProps) CfnThirdPartyIntegration

Create a new `MongoDB::Atlas::ThirdPartyIntegration`.

type CfnThirdPartyIntegrationProps

type CfnThirdPartyIntegrationProps struct {
	// Key that allows MongoDB Cloud to access your Opsgenie/Datadog account.
	ApiKey *string `field:"optional" json:"apiKey" yaml:"apiKey"`
	// Key that allows MongoDB Cloud to access your Slack account.
	ApiToken *string `field:"optional" json:"apiToken" yaml:"apiToken"`
	// Name of the Slack channel to which MongoDB Cloud sends alert notifications.
	ChannelName *string `field:"optional" json:"channelName" yaml:"channelName"`
	// Flag that indicates whether someone has activated the Prometheus integration.
	Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
	// Combination of IPv4 address and Internet Assigned Numbers Authority (IANA) port or the IANA port alone to which Prometheus binds to ingest MongoDB metrics.
	ListenAddress *string `field:"optional" json:"listenAddress" yaml:"listenAddress"`
	// Endpoint web address of the Microsoft Teams webhook to which MongoDB Cloud sends notifications.
	MicrosoftTeamsWebhookUrl *string `field:"optional" json:"microsoftTeamsWebhookUrl" yaml:"microsoftTeamsWebhookUrl"`
	// Password required for your integration with Prometheus.
	Password *string `field:"optional" json:"password" yaml:"password"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Two-letter code that indicates which regional URL MongoDB uses to access the Opsgenie/Datadog API.
	Region *string `field:"optional" json:"region" yaml:"region"`
	// Routing key associated with your Splunk On-Call account.
	RoutingKey *string `field:"optional" json:"routingKey" yaml:"routingKey"`
	// Security Scheme to apply to HyperText Transfer Protocol (HTTP) traffic between Prometheus and MongoDB Cloud.
	Scheme CfnThirdPartyIntegrationPropsScheme `field:"optional" json:"scheme" yaml:"scheme"`
	// Parameter returned if someone configure this webhook with a secret.
	Secret *string `field:"optional" json:"secret" yaml:"secret"`
	// Desired method to discover the Prometheus service.
	ServiceDiscovery CfnThirdPartyIntegrationPropsServiceDiscovery `field:"optional" json:"serviceDiscovery" yaml:"serviceDiscovery"`
	// Service key associated with your PagerDuty account.
	ServiceKey *string `field:"optional" json:"serviceKey" yaml:"serviceKey"`
	// Human-readable label that identifies your Slack team.
	//
	// Set this parameter when you configure a legacy Slack integration.
	TeamName *string `field:"optional" json:"teamName" yaml:"teamName"`
	// Root-relative path to the Transport Layer Security (TLS) Privacy Enhanced Mail (PEM) key and certificate file on the host.
	TlsPemPath *string `field:"optional" json:"tlsPemPath" yaml:"tlsPemPath"`
	// Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud.
	//
	// The value must match the third-party service integration type.
	Type CfnThirdPartyIntegrationPropsType `field:"optional" json:"type" yaml:"type"`
	// Endpoint web address to which MongoDB Cloud sends notifications.
	Url *string `field:"optional" json:"url" yaml:"url"`
	// Human-readable label that identifies your Prometheus incoming webhook.
	UserName *string `field:"optional" json:"userName" yaml:"userName"`
}

Returns, adds, edits, and removes third-party service integration configurations.

MongoDB Cloud sends alerts to each third-party service that you configure.

type CfnThirdPartyIntegrationPropsScheme

type CfnThirdPartyIntegrationPropsScheme string

Security Scheme to apply to HyperText Transfer Protocol (HTTP) traffic between Prometheus and MongoDB Cloud.

const (
	// http.
	CfnThirdPartyIntegrationPropsScheme_HTTP CfnThirdPartyIntegrationPropsScheme = "HTTP"
	// https.
	CfnThirdPartyIntegrationPropsScheme_HTTPS CfnThirdPartyIntegrationPropsScheme = "HTTPS"
)

type CfnThirdPartyIntegrationPropsServiceDiscovery

type CfnThirdPartyIntegrationPropsServiceDiscovery string

Desired method to discover the Prometheus service.

const (
	// http.
	CfnThirdPartyIntegrationPropsServiceDiscovery_HTTP CfnThirdPartyIntegrationPropsServiceDiscovery = "HTTP"
	// file.
	CfnThirdPartyIntegrationPropsServiceDiscovery_FILE CfnThirdPartyIntegrationPropsServiceDiscovery = "FILE"
)

type CfnThirdPartyIntegrationPropsType

type CfnThirdPartyIntegrationPropsType string

Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud.

The value must match the third-party service integration type.

const (
	// PAGER_DUTY.
	CfnThirdPartyIntegrationPropsType_PAGER_DUTY CfnThirdPartyIntegrationPropsType = "PAGER_DUTY"
	// MICROSOFT_TEAMS.
	CfnThirdPartyIntegrationPropsType_MICROSOFT_TEAMS CfnThirdPartyIntegrationPropsType = "MICROSOFT_TEAMS"
	// SLACK.
	CfnThirdPartyIntegrationPropsType_SLACK CfnThirdPartyIntegrationPropsType = "SLACK"
	// DATADOG.
	CfnThirdPartyIntegrationPropsType_DATADOG CfnThirdPartyIntegrationPropsType = "DATADOG"
	// OPS_GENIE.
	CfnThirdPartyIntegrationPropsType_OPS_GENIE CfnThirdPartyIntegrationPropsType = "OPS_GENIE"
	// VICTOR_OPS.
	CfnThirdPartyIntegrationPropsType_VICTOR_OPS CfnThirdPartyIntegrationPropsType = "VICTOR_OPS"
	// WEBHOOK.
	CfnThirdPartyIntegrationPropsType_WEBHOOK CfnThirdPartyIntegrationPropsType = "WEBHOOK"
	// PROMETHEUS.
	CfnThirdPartyIntegrationPropsType_PROMETHEUS CfnThirdPartyIntegrationPropsType = "PROMETHEUS"
)

type CfnTrigger

type CfnTrigger interface {
	awscdk.CfnResource
	// Attribute `MongoDB::Atlas::Trigger.Id`.
	AttrId() *string
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnTriggerProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::Trigger`.

func NewCfnTrigger

func NewCfnTrigger(scope constructs.Construct, id *string, props *CfnTriggerProps) CfnTrigger

Create a new `MongoDB::Atlas::Trigger`.

type CfnTriggerProps

type CfnTriggerProps struct {
	// App Services Application ID.
	AppId *string `field:"required" json:"appId" yaml:"appId"`
	// Project Id for application services.
	ProjectId       *string         `field:"required" json:"projectId" yaml:"projectId"`
	AuthTrigger     *AuthConfig     `field:"optional" json:"authTrigger" yaml:"authTrigger"`
	DatabaseTrigger *DatabaseConfig `field:"optional" json:"databaseTrigger" yaml:"databaseTrigger"`
	// If `true`, the trigger is disabled and does not listen for events or execute.
	Disabled *bool `field:"optional" json:"disabled" yaml:"disabled"`
	// An object where each field name is an event processor ID and each value is an object that configures its corresponding event processor.
	//
	// For an example configuration object, see
	// [Send Trigger Events to AWS
	// EventBridge](https://www.mongodb.com/docs/realm/triggers/examples/send-events-aws-eventbridge#std-label-event_processor_example).
	EventProcessors *Event `field:"optional" json:"eventProcessors" yaml:"eventProcessors"`
	// The ID of the function that the trigger calls when it fires.
	//
	// This value is the same as `event_processors.FUNCTION.function_id`.
	// You can either define the value here or in `event_processors.FUNCTION.function_id`.
	// The App Services backend duplicates the value to the configuration location where you did not define it.
	//
	// For example, if you define `function_id`, the backend duplicates it to `event_processors.FUNCTION.function_id`.
	FunctionId *string `field:"optional" json:"functionId" yaml:"functionId"`
	// The name of the function that the trigger calls when it fires, i.e. the function described by `function_id`.
	//
	// This value is the same as `event_processors.FUNCTION.function_name`.
	// You can either define the value here or in `event_processors.FUNCTION.function_name`.
	// The App Services backend duplicates the value to the configuration location where you did not define it.
	//
	// For example, if you define `function_name`, the backend duplicates it to `event_processors.FUNCTION.function_name`.
	FunctionName *string `field:"optional" json:"functionName" yaml:"functionName"`
	// The trigger's name.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// The profile is defined in AWS Secret manager.
	//
	// See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
	Profile         *string         `field:"optional" json:"profile" yaml:"profile"`
	ScheduleTrigger *ScheduleConfig `field:"optional" json:"scheduleTrigger" yaml:"scheduleTrigger"`
	// The trigger's type.
	Type *string `field:"optional" json:"type" yaml:"type"`
}

View and manage your application's [triggers](https://www.mongodb.com/docs/atlas/app-services/triggers/overview/).

type CfnX509AuthenticationDatabaseUser

type CfnX509AuthenticationDatabaseUser interface {
	awscdk.CfnResource
	// Options for this resource, such as condition, update policy etc.
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	// AWS resource type.
	CfnResourceType() *string
	// Returns: the stack trace of the point where this Resource was created from, sourced
	// from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most
	// node +internal+ entries filtered.
	CreationStack() *[]*string
	// The logical ID for this CloudFormation stack element.
	//
	// The logical ID of the element
	// is calculated from the path of the resource node in the construct tree.
	//
	// To override this value, use `overrideLogicalId(newLogicalId)`.
	//
	// Returns: the logical ID as a stringified token. This value will only get
	// resolved during synthesis.
	LogicalId() *string
	// The tree node.
	Node() constructs.Node
	// Resource props.
	Props() *CfnX509AuthenticationDatabaseUserProps
	// Return a string that will be resolved to a CloudFormation `{ Ref }` for this element.
	//
	// If, by any chance, the intrinsic reference of a resource is not a string, you could
	// coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`.
	Ref() *string
	// The stack in which this element is defined.
	//
	// CfnElements must be defined within a stack scope (directly or indirectly).
	Stack() awscdk.Stack
	// Deprecated.
	// Deprecated: use `updatedProperties`
	//
	// Return properties modified after initiation
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperites() *map[string]interface{}
	// Return properties modified after initiation.
	//
	// Resources that expose mutable properties should override this function to
	// collect and return the properties object for this resource.
	UpdatedProperties() *map[string]interface{}
	// Syntactic sugar for `addOverride(path, undefined)`.
	AddDeletionOverride(path *string)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	//
	// This can be used for resources across stacks (or nested stack) boundaries
	// and the dependency will automatically be transferred to the relevant scope.
	AddDependency(target awscdk.CfnResource)
	// Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
	// Deprecated: use addDependency.
	AddDependsOn(target awscdk.CfnResource)
	// Add a value to the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	AddMetadata(key *string, value interface{})
	// Adds an override to the synthesized CloudFormation resource.
	//
	// To add a
	// property override, either use `addPropertyOverride` or prefix `path` with
	// "Properties." (i.e. `Properties.TopicName`).
	//
	// If the override is nested, separate each nested level using a dot (.) in the path parameter.
	// If there is an array as part of the nesting, specify the index in the path.
	//
	// To include a literal `.` in the property name, prefix with a `\`. In most
	// programming languages you will need to write this as `"\\."` because the
	// `\` itself will need to be escaped.
	//
	// For example,
	// “`typescript
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']);
	// cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE');
	// “`
	// would add the overrides
	// “`json
	// "Properties": {
	//   "GlobalSecondaryIndexes": [
	//     {
	//       "Projection": {
	//         "NonKeyAttributes": [ "myattribute" ]
	//         ...
	//       }
	//       ...
	//     },
	//     {
	//       "ProjectionType": "INCLUDE"
	//       ...
	//     },
	//   ]
	//   ...
	// }
	// “`
	//
	// The `value` argument to `addOverride` will not be processed or translated
	// in any way. Pass raw JSON values in here with the correct capitalization
	// for CloudFormation. If you pass CDK classes or structs, they will be
	// rendered with lowercased key names, and CloudFormation will reject the
	// template.
	AddOverride(path *string, value interface{})
	// Adds an override that deletes the value of a property from the resource definition.
	AddPropertyDeletionOverride(propertyPath *string)
	// Adds an override to a resource property.
	//
	// Syntactic sugar for `addOverride("Properties.<...>", value)`.
	AddPropertyOverride(propertyPath *string, value interface{})
	// Sets the deletion policy of the resource based on the removal policy specified.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). In some
	// cases, a snapshot can be taken of the resource prior to deletion
	// (`RemovalPolicy.SNAPSHOT`). A list of resources that support this policy
	// can be found in the following link:.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options
	//
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	// Returns a token for an runtime attribute of this resource.
	//
	// Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility
	// in case there is no generated attribute.
	GetAtt(attributeName *string, typeHint awscdk.ResolutionTypeHint) awscdk.Reference
	// Retrieve a value value from the CloudFormation Resource Metadata.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html
	//
	// Note that this is a different set of metadata from CDK node metadata; this
	// metadata ends up in the stack template under the resource, whereas CDK
	// node metadata ends up in the Cloud Assembly.
	//
	GetMetadata(key *string) interface{}
	// Retrieves an array of resources this resource depends on.
	//
	// This assembles dependencies on resources across stacks (including nested stacks)
	// automatically.
	ObtainDependencies() *[]interface{}
	// Get a shallow copy of dependencies between this resource and other resources in the same stack.
	ObtainResourceDependencies() *[]awscdk.CfnResource
	// Overrides the auto-generated logical ID with a specific ID.
	OverrideLogicalId(newLogicalId *string)
	// Indicates that this resource no longer depends on another resource.
	//
	// This can be used for resources across stacks (including nested stacks)
	// and the dependency will automatically be removed from the relevant scope.
	RemoveDependency(target awscdk.CfnResource)
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	// Replaces one dependency with another.
	ReplaceDependency(target awscdk.CfnResource, newTarget awscdk.CfnResource)
	// Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
	//
	// Returns: `true` if the resource should be included or `false` is the resource
	// should be omitted.
	ShouldSynthesize() *bool
	// Returns a string representation of this construct.
	//
	// Returns: a string representation of this resource.
	ToString() *string
	ValidateProperties(_properties interface{})
}

A CloudFormation `MongoDB::Atlas::X509AuthenticationDatabaseUser`.

func NewCfnX509AuthenticationDatabaseUser

func NewCfnX509AuthenticationDatabaseUser(scope constructs.Construct, id *string, props *CfnX509AuthenticationDatabaseUserProps) CfnX509AuthenticationDatabaseUser

Create a new `MongoDB::Atlas::X509AuthenticationDatabaseUser`.

type CfnX509AuthenticationDatabaseUserProps

type CfnX509AuthenticationDatabaseUserProps struct {
	// CustomerX509 represents Customer-managed X.509 configuration for an Atlas project.
	CustomerX509 *CustomerX509 `field:"optional" json:"customerX509" yaml:"customerX509"`
	// A number of months that the created certificate is valid for before expiry, up to 24 months.default 3.
	MonthsUntilExpiration *float64 `field:"optional" json:"monthsUntilExpiration" yaml:"monthsUntilExpiration"`
	// Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// The unique identifier for the project .
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Total number of unexpired certificates returned in this response.
	TotalCount *float64 `field:"optional" json:"totalCount" yaml:"totalCount"`
	// Username of the database user to create a certificate for.
	UserName *string `field:"optional" json:"userName" yaml:"userName"`
}

Generates one X.509 certificate for the specified MongoDB user. Atlas manages the certificate and MongoDB user that belong to one project. To use this resource, the requesting API Key must have the Project Atlas Admin role. This resource doesn't require the API Key to have an Access List.

To get MongoDB Cloud to generate a managed certificate for a database user, set `"x509Type" : "MANAGED"` on the desired MongoDB Database User.

If you are managing your own Certificate Authority (CA) in Self-Managed X.509 mode, you must generate certificates for database users using your own CA.

type CloudProviderConfig

type CloudProviderConfig struct {
	// Unique identifier of the role that the data lake can use to access the data stores.Required if specifying cloudProviderConfig.
	ExternalId *string `field:"optional" json:"externalId" yaml:"externalId"`
	// Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that the data lake assumes when accessing data stores.
	IamAssumedRoleArn *string `field:"optional" json:"iamAssumedRoleArn" yaml:"iamAssumedRoleArn"`
	// Amazon Resource Name (ARN) of the user that the data lake assumes when accessing data stores.
	IamUserArn *string `field:"optional" json:"iamUserArn" yaml:"iamUserArn"`
	// Unique identifier of the role that the data lake can use to access the data stores.Required if specifying cloudProviderConfig.
	RoleId *string `field:"optional" json:"roleId" yaml:"roleId"`
	// Name of the S3 data bucket that the provided role ID is authorized to access.Required if specifying cloudProviderConfig.
	TestS3Bucket *string `field:"optional" json:"testS3Bucket" yaml:"testS3Bucket"`
}

Cloud provider linked to this data lake..

type ClusterProps

type ClusterProps struct {
	AdvancedSettings *ProcessArgs                `field:"optional" json:"advancedSettings" yaml:"advancedSettings"`
	BackupEnabled    *bool                       `field:"optional" json:"backupEnabled" yaml:"backupEnabled"`
	BiConnector      *CfnClusterPropsBiConnector `field:"optional" json:"biConnector" yaml:"biConnector"`
	ClusterType      *string                     `field:"optional" json:"clusterType" yaml:"clusterType"`
	// Default: REPLICASET.
	//
	ConnectionStrings        *ConnectionStrings                      `field:"optional" json:"connectionStrings" yaml:"connectionStrings"`
	DiskSizeGb               *float64                                `field:"optional" json:"diskSizeGb" yaml:"diskSizeGb"`
	EncryptionAtRestProvider CfnClusterPropsEncryptionAtRestProvider `field:"optional" json:"encryptionAtRestProvider" yaml:"encryptionAtRestProvider"`
	Labels                   *[]*CfnClusterPropsLabels               `field:"optional" json:"labels" yaml:"labels"`
	MongoDbMajorVersion      *string                                 `field:"optional" json:"mongoDbMajorVersion" yaml:"mongoDbMajorVersion"`
	Name                     *string                                 `field:"optional" json:"name" yaml:"name"`
	// Default: auto-generated.
	//
	Paused                       *bool                       `field:"optional" json:"paused" yaml:"paused"`
	PitEnabled                   *bool                       `field:"optional" json:"pitEnabled" yaml:"pitEnabled"`
	ProjectId                    *string                     `field:"optional" json:"projectId" yaml:"projectId"`
	ReplicationSpecs             *[]*AdvancedReplicationSpec `field:"optional" json:"replicationSpecs" yaml:"replicationSpecs"`
	RootCertType                 *string                     `field:"optional" json:"rootCertType" yaml:"rootCertType"`
	TerminationProtectionEnabled *bool                       `field:"optional" json:"terminationProtectionEnabled" yaml:"terminationProtectionEnabled"`
	VersionReleaseSystem         *string                     `field:"optional" json:"versionReleaseSystem" yaml:"versionReleaseSystem"`
}

type Collection

type Collection struct {
	// Array that contains the data stores that map to a collection for this data lake.
	DataSources *[]*DataSource `field:"optional" json:"dataSources" yaml:"dataSources"`
	Name        *string        `field:"optional" json:"name" yaml:"name"`
}

Array of collections and data sources that map to a stores data store.

type Compute

type Compute struct {
	// Flag that indicates whether someone enabled instance size auto-scaling.
	//
	// Set to true to enable instance size auto-scaling. If enabled, you must specify a value for replicationSpecs[n].regionConfigs[m].autoScaling.compute.maxInstanceSize.
	// Set to false to disable instance size automatic scaling.
	Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
	// Maximum instance size to which your cluster can automatically scale.
	//
	// MongoDB Cloud requires this parameter if "replicationSpecs[n].regionConfigs[m].autoScaling.compute.enabled" : true.
	MaxInstanceSize *string `field:"optional" json:"maxInstanceSize" yaml:"maxInstanceSize"`
	// Minimum instance size to which your cluster can automatically scale.
	//
	// MongoDB Cloud requires this parameter if "replicationSpecs[n].regionConfigs[m].autoScaling.compute.enabled" : true.
	MinInstanceSize *string `field:"optional" json:"minInstanceSize" yaml:"minInstanceSize"`
	// Flag that indicates whether the instance size may scale down.
	//
	// MongoDB Cloud requires this parameter if "replicationSpecs[n].regionConfigs[m].autoScaling.compute.enabled" : true. If you enable this option, specify a value for replicationSpecs[n].regionConfigs[m].autoScaling.compute.minInstanceSize.
	ScaleDownEnabled *bool `field:"optional" json:"scaleDownEnabled" yaml:"scaleDownEnabled"`
}

Automatic Compute Scaling.

type ConnectionStrings

type ConnectionStrings struct {
	// Network peering connection strings for each interface Virtual Private Cloud (VPC) endpoint that you configured to connect to this cluster.
	//
	// This connection string uses the mongodb+srv:// protocol. The resource returns this parameter once someone creates a network peering connection to this cluster. This protocol tells the application to look up the host seed list in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connectionStrings.private. For Amazon Web Services (AWS) clusters, this resource returns this parameter only if you enable custom DNS.
	Private *string `field:"optional" json:"private" yaml:"private"`
	// Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink.
	//
	// Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related mongodb:// connection string that you use to connect to MongoDB Cloud through the interface endpoint that the key names.
	PrivateEndpoints *[]*string `field:"optional" json:"privateEndpoints" yaml:"privateEndpoints"`
	// Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink.
	//
	// Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related mongodb:// connection string that you use to connect to Atlas through the interface endpoint that the key names.
	PrivateEndpointsSrv *[]*string `field:"optional" json:"privateEndpointsSrv" yaml:"privateEndpointsSrv"`
	// Network peering connection strings for each interface Virtual Private Cloud (VPC) endpoint that you configured to connect to this cluster.
	//
	// This connection string uses the mongodb+srv:// protocol. The resource returns this parameter when someone creates a network peering connection to this cluster. This protocol tells the application to look up the host seed list in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your driver supports it. If it doesn't, use connectionStrings.private. For Amazon Web Services (AWS) clusters, this parameter returns only if you enable custom DNS.
	PrivateSrv *string `field:"optional" json:"privateSrv" yaml:"privateSrv"`
	// Private endpoint-aware connection string optimized for sharded clusters that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint.
	//
	// If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster supports it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[n].srvConnectionString.
	SrvShardOptimizedConnectionString *[]*string `field:"optional" json:"srvShardOptimizedConnectionString" yaml:"srvShardOptimizedConnectionString"`
	// Public connection string that you can use to connect to this cluster.
	//
	// This connection string uses the mongodb:// protocol.
	Standard *string `field:"optional" json:"standard" yaml:"standard"`
	// Public connection string that you can use to connect to this cluster.
	//
	// This connection string uses the mongodb+srv:// protocol.
	StandardSrv *string `field:"optional" json:"standardSrv" yaml:"standardSrv"`
}

Collection of Uniform Resource Locators that point to the MongoDB database.

type CriteriaView

type CriteriaView struct {
	// Indexed database parameter that stores the date that determines when data moves to the online archive.
	//
	// MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the expireAfterDays parameter. Set this parameter when you set "criteria.type" : "DATE".
	DateField *string `field:"optional" json:"dateField" yaml:"dateField"`
	// Syntax used to write the date after which data moves to the online archive.
	//
	// Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. Set this parameter when "criteria.type" : "DATE". You must set "criteria.type" : "DATE" if "collectionType": "TIMESERIES".
	DateFormat CriteriaViewDateFormat `field:"optional" json:"dateFormat" yaml:"dateFormat"`
	// Number of days after the value in the criteria.dateField when MongoDB Cloud archives data in the specified cluster. Set this parameter when you set "criteria.type" : "DATE".
	ExpireAfterDays *float64 `field:"optional" json:"expireAfterDays" yaml:"expireAfterDays"`
	// MongoDB find query that selects documents to archive.
	//
	// The specified query follows the syntax of the db.collection.find(query) command. This query can't use the empty document ({}) to return all documents. Set this parameter when "criteria.type" : "CUSTOM".
	Query *string `field:"optional" json:"query" yaml:"query"`
	// Means by which MongoDB Cloud selects data to archive.
	//
	// Data can be chosen using the age of the data or a MongoDB query.
	// **DATE** selects documents to archive based on a date.
	// **CUSTOM** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **CUSTOM** when `"collectionType": "TIMESERIES"`.
	Type CriteriaViewType `field:"optional" json:"type" yaml:"type"`
}

type CriteriaViewDateFormat

type CriteriaViewDateFormat string

Syntax used to write the date after which data moves to the online archive.

Date can be expressed as ISO 8601 or Epoch timestamps. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. Set this parameter when "criteria.type" : "DATE". You must set "criteria.type" : "DATE" if "collectionType": "TIMESERIES".

const (
	// ISODATE.
	CriteriaViewDateFormat_ISODATE CriteriaViewDateFormat = "ISODATE"
	// EPOCH_SECONDS.
	CriteriaViewDateFormat_EPOCH_SECONDS CriteriaViewDateFormat = "EPOCH_SECONDS"
	// EPOCH_MILLIS.
	CriteriaViewDateFormat_EPOCH_MILLIS CriteriaViewDateFormat = "EPOCH_MILLIS"
	// EPOCH_NANOSECONDS.
	CriteriaViewDateFormat_EPOCH_NANOSECONDS CriteriaViewDateFormat = "EPOCH_NANOSECONDS"
)

type CriteriaViewType

type CriteriaViewType string

Means by which MongoDB Cloud selects data to archive.

Data can be chosen using the age of the data or a MongoDB query. **DATE** selects documents to archive based on a date. **CUSTOM** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **CUSTOM** when `"collectionType": "TIMESERIES"`.

const (
	// DATE.
	CriteriaViewType_DATE CriteriaViewType = "DATE"
	// CUSTOM.
	CriteriaViewType_CUSTOM CriteriaViewType = "CUSTOM"
)

type CustomerX509

type CustomerX509 struct {
	// PEM string containing one or more customer CAs for database user authentication.
	Cas *string `field:"optional" json:"cas" yaml:"cas"`
}

type DataLakeAwsCloudProviderConfigView

type DataLakeAwsCloudProviderConfigView struct {
	// Unique identifier associated with the Identity and Access Management (IAM) role that the data lake assumes when accessing the data stores.
	ExternalId *string `field:"optional" json:"externalId" yaml:"externalId"`
	// Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that the data lake assumes when accessing data stores.
	IamAssumedRoleArn *string `field:"optional" json:"iamAssumedRoleArn" yaml:"iamAssumedRoleArn"`
	// Amazon Resource Name (ARN) of the user that the data lake assumes when accessing data stores.
	IamUserArn *string `field:"optional" json:"iamUserArn" yaml:"iamUserArn"`
	// Unique identifier of the role that the data lake can use to access the data stores.Required if specifying cloudProviderConfig.
	RoleId *string `field:"optional" json:"roleId" yaml:"roleId"`
	// Name of the S3 data bucket that the provided role ID is authorized to access.Required if specifying cloudProviderConfig.
	TestS3Bucket *string `field:"optional" json:"testS3Bucket" yaml:"testS3Bucket"`
}

type DataLakeCloudProviderConfigView

type DataLakeCloudProviderConfigView struct {
	// Name of the cloud service that hosts the data lake's data stores.
	Aws *DataLakeAwsCloudProviderConfigView `field:"optional" json:"aws" yaml:"aws"`
}

type DataLakeDataProcessRegionView

type DataLakeDataProcessRegionView struct {
	// Name of the cloud service that hosts the data lake's data stores.
	CloudProvider DataLakeDataProcessRegionViewCloudProvider `field:"optional" json:"cloudProvider" yaml:"cloudProvider"`
	// Name of the region to which the data lake routes client connections.
	Region DataLakeDataProcessRegionViewRegion `field:"optional" json:"region" yaml:"region"`
}

type DataLakeDataProcessRegionViewCloudProvider

type DataLakeDataProcessRegionViewCloudProvider string

Name of the cloud service that hosts the data lake's data stores.

const (
	// AWS.
	DataLakeDataProcessRegionViewCloudProvider_AWS DataLakeDataProcessRegionViewCloudProvider = "AWS"
	// GCP.
	DataLakeDataProcessRegionViewCloudProvider_GCP DataLakeDataProcessRegionViewCloudProvider = "GCP"
	// AZURE.
	DataLakeDataProcessRegionViewCloudProvider_AZURE DataLakeDataProcessRegionViewCloudProvider = "AZURE"
	// TENANT.
	DataLakeDataProcessRegionViewCloudProvider_TENANT DataLakeDataProcessRegionViewCloudProvider = "TENANT"
	// SERVERLESS.
	DataLakeDataProcessRegionViewCloudProvider_SERVERLESS DataLakeDataProcessRegionViewCloudProvider = "SERVERLESS"
)

type DataLakeDataProcessRegionViewRegion

type DataLakeDataProcessRegionViewRegion string

Name of the region to which the data lake routes client connections.

const (
	// DUBLIN_IRL.
	DataLakeDataProcessRegionViewRegion_DUBLIN_IRL DataLakeDataProcessRegionViewRegion = "DUBLIN_IRL"
	// FRANKFURT_DEU.
	DataLakeDataProcessRegionViewRegion_FRANKFURT_DEU DataLakeDataProcessRegionViewRegion = "FRANKFURT_DEU"
	// LONDON_GBR.
	DataLakeDataProcessRegionViewRegion_LONDON_GBR DataLakeDataProcessRegionViewRegion = "LONDON_GBR"
	// MUMBAI_IND.
	DataLakeDataProcessRegionViewRegion_MUMBAI_IND DataLakeDataProcessRegionViewRegion = "MUMBAI_IND"
	// OREGON_USA.
	DataLakeDataProcessRegionViewRegion_OREGON_USA DataLakeDataProcessRegionViewRegion = "OREGON_USA"
	// SYDNEY_AUS.
	DataLakeDataProcessRegionViewRegion_SYDNEY_AUS DataLakeDataProcessRegionViewRegion = "SYDNEY_AUS"
	// VIRGINIA_USA.
	DataLakeDataProcessRegionViewRegion_VIRGINIA_USA DataLakeDataProcessRegionViewRegion = "VIRGINIA_USA"
)

type DataLakeDatabaseCollectionView

type DataLakeDatabaseCollectionView struct {
	// Array that contains the data stores that map to a collection for this data lake.
	DataSources *[]*DataLakeDatabaseDataSourceView `field:"optional" json:"dataSources" yaml:"dataSources"`
	// Human-readable label that identifies the collection to which MongoDB Cloud maps the data in the data stores.
	Name *string `field:"optional" json:"name" yaml:"name"`
}

type DataLakeDatabaseDataSourceView

type DataLakeDatabaseDataSourceView struct {
	// Flag that validates the scheme in the specified URLs.
	//
	// If `true`, allows insecure `HTTP` scheme, doesn't verify the server's certificate chain and hostname, and accepts any certificate with any hostname presented by the server. If `false`, allows secure `HTTPS` scheme only.
	AllowInsecure *bool `field:"optional" json:"allowInsecure" yaml:"allowInsecure"`
	// Human-readable label that identifies the collection in the database.
	//
	// For creating a wildcard (`*`) collection, you must omit this parameter.
	Collection *string `field:"optional" json:"collection" yaml:"collection"`
	// Regex pattern to use for creating the wildcard (*) collection.
	//
	// To learn more about the regex syntax, see [Go programming language](https://pkg.go.dev/regexp).
	CollectionRegex *string `field:"optional" json:"collectionRegex" yaml:"collectionRegex"`
	// Human-readable label that identifies the database, which contains the collection in the cluster.
	//
	// You must omit this parameter to generate wildcard (`*`) collections for dynamically generated databases.
	Database *string `field:"optional" json:"database" yaml:"database"`
	// File format that MongoDB Cloud uses if it encounters a file without a file extension while searching **storeName**.
	DefaultFormat DataLakeDatabaseDataSourceViewDefaultFormat `field:"optional" json:"defaultFormat" yaml:"defaultFormat"`
	// File path that controls how MongoDB Cloud searches for and parses files in the **storeName** before mapping them to a collection.Specify “/“ to capture all files and folders from the “prefix“ path.
	Path *string `field:"optional" json:"path" yaml:"path"`
	// Human-readable label that identifies the data store that MongoDB Cloud maps to the collection.
	StoreName *string `field:"optional" json:"storeName" yaml:"storeName"`
	// URLs of the publicly accessible data files.
	//
	// You can't specify URLs that require authentication. Atlas Data Lake creates a partition for each URL. If empty or omitted, Data Lake uses the URLs from the store specified in the **dataSources.storeName** parameter.
	Urls *[]*string `field:"optional" json:"urls" yaml:"urls"`
}

type DataLakeDatabaseDataSourceViewDefaultFormat

type DataLakeDatabaseDataSourceViewDefaultFormat string

File format that MongoDB Cloud uses if it encounters a file without a file extension while searching **storeName**.

const (
	// .avro.
	DataLakeDatabaseDataSourceViewDefaultFormat_AVRO DataLakeDatabaseDataSourceViewDefaultFormat = "AVRO"
	// .avro.gz.
	DataLakeDatabaseDataSourceViewDefaultFormat_AVRO_GZ DataLakeDatabaseDataSourceViewDefaultFormat = "AVRO_GZ"
	// .bson.
	DataLakeDatabaseDataSourceViewDefaultFormat_BSON DataLakeDatabaseDataSourceViewDefaultFormat = "BSON"
	// .bson.gz.
	DataLakeDatabaseDataSourceViewDefaultFormat_BSON_GZ DataLakeDatabaseDataSourceViewDefaultFormat = "BSON_GZ"
	// .csv.
	DataLakeDatabaseDataSourceViewDefaultFormat_CSV DataLakeDatabaseDataSourceViewDefaultFormat = "CSV"
	// .json.
	DataLakeDatabaseDataSourceViewDefaultFormat_JSON DataLakeDatabaseDataSourceViewDefaultFormat = "JSON"
	// .json.gz.
	DataLakeDatabaseDataSourceViewDefaultFormat_JSON_GZ DataLakeDatabaseDataSourceViewDefaultFormat = "JSON_GZ"
	// .orc.
	DataLakeDatabaseDataSourceViewDefaultFormat_ORC DataLakeDatabaseDataSourceViewDefaultFormat = "ORC"
	// .tsv.
	DataLakeDatabaseDataSourceViewDefaultFormat_TSV DataLakeDatabaseDataSourceViewDefaultFormat = "TSV"
	// .tsv.gz.
	DataLakeDatabaseDataSourceViewDefaultFormat_TSV_GZ DataLakeDatabaseDataSourceViewDefaultFormat = "TSV_GZ"
)

type DataLakeDatabaseView

type DataLakeDatabaseView struct {
	// Array of collections and data sources that map to a “stores“ data store.
	Collections *[]*DataLakeDatabaseCollectionView `field:"optional" json:"collections" yaml:"collections"`
	// Maximum number of wildcard collections in the database.
	//
	// This only applies to S3 data sources.
	MaxWildcardCollections *float64 `field:"optional" json:"maxWildcardCollections" yaml:"maxWildcardCollections"`
	// Human-readable label that identifies the database to which the data lake maps data.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Array of aggregation pipelines that apply to the collection.
	//
	// This only applies to S3 data sources.
	Views *[]*DataLakeViewView `field:"optional" json:"views" yaml:"views"`
}

type DataLakeStorageView

type DataLakeStorageView struct {
	// Array that contains the queryable databases and collections for this data lake.
	Databases *[]*DataLakeDatabaseView `field:"optional" json:"databases" yaml:"databases"`
	// Array that contains the data stores for the data lake.
	Stores *[]*StoreDetail `field:"optional" json:"stores" yaml:"stores"`
}

type DataLakeViewView

type DataLakeViewView struct {
	// Human-readable label that identifies the view, which corresponds to an aggregation pipeline on a collection.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Aggregation pipeline stages to apply to the source collection.
	Pipeline *string `field:"optional" json:"pipeline" yaml:"pipeline"`
	// Human-readable label that identifies the source collection for the view.
	Source *string `field:"optional" json:"source" yaml:"source"`
}

type DataProcessRegion

type DataProcessRegion struct {
	// Name of the cloud service that hosts the data lake's data stores.
	CloudProvider *string `field:"optional" json:"cloudProvider" yaml:"cloudProvider"`
	// Name of the region to which the data lake routes client connections.
	Region *string `field:"optional" json:"region" yaml:"region"`
}

Information about the cloud provider region to which the data lake routes client connections.

MongoDB Cloud supports AWS only.

type DataSource

type DataSource struct {
	// Flag that validates the scheme in the specified URLs.
	//
	// If true, allows insecure HTTP scheme, doesn't verify the server's certificate chain and hostname, and accepts any certificate with any hostname presented by the server. If false, allows secure HTTPS scheme only.
	AllowInsecure *bool `field:"optional" json:"allowInsecure" yaml:"allowInsecure"`
	// Human-readable label that identifies the collection in the database.
	//
	// For creating a wildcard (*) collection, you must omit this parameter.
	Collection *string `field:"optional" json:"collection" yaml:"collection"`
	// Regex pattern to use for creating the wildcard (*) collection.
	//
	// To learn more about the regex syntax, see Go programming language.( https://pkg.go.dev/regexp ).
	CollectionRegex *string `field:"optional" json:"collectionRegex" yaml:"collectionRegex"`
	// Human-readable label that identifies the database, which contains the collection in the cluster.
	//
	// You must omit this parameter to generate wildcard (*) collections for dynamically generated databases.
	Database *string `field:"optional" json:"database" yaml:"database"`
	// Regex pattern to use for creating the wildcard (*) collection.
	//
	// To learn more about the regex syntax, see Go programming language.( https://pkg.go.dev/regexp ).
	DatabaseRegex *string `field:"optional" json:"databaseRegex" yaml:"databaseRegex"`
	// File format that MongoDB Cloud uses if it encounters a file without a file extension while searching storeName.Enum: ".avro" ".avro.bz2" ".avro.gz" ".bson" ".bson.bz2" ".bson.gz" ".bsonx" ".csv" ".csv.bz2" ".csv.gz" ".json" ".json.bz2" ".json.gz" ".orc" ".parquet" ".tsv" ".tsv.bz2" ".tsv.gz".
	DefaultFormat *string `field:"optional" json:"defaultFormat" yaml:"defaultFormat"`
	// File path that controls how MongoDB Cloud searches for and parses files in the storeName before mapping them to a collection.Specify / to capture all files and folders from the prefix path.
	Path *string `field:"optional" json:"path" yaml:"path"`
	// Name for the field that includes the provenance of the documents in the results.
	//
	// MongoDB Cloud returns different fields in the results for each supported provider.
	ProvenanceFieldName *string `field:"optional" json:"provenanceFieldName" yaml:"provenanceFieldName"`
	// Human-readable label that identifies the data store that MongoDB Cloud maps to the collection.
	StoreName *string `field:"optional" json:"storeName" yaml:"storeName"`
	// URLs of the publicly accessible data files.
	//
	// You can't specify URLs that require authentication. Atlas Data Lake creates a partition for each URL. If empty or omitted, Data Lake uses the URLs from the store specified in the dataSources.storeName parameter.
	Urls *[]*string `field:"optional" json:"urls" yaml:"urls"`
}

type Database

type Database struct {
	// Array of collections and data sources that map to a stores data store.
	Collections *[]*Collection `field:"optional" json:"collections" yaml:"collections"`
	// Maximum number of wildcard collections in the database.
	//
	// This only applies to S3 data sources.
	MaxWildcardCollections *string `field:"optional" json:"maxWildcardCollections" yaml:"maxWildcardCollections"`
	// Human-readable label that identifies the database to which the data lake maps data.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Array of aggregation pipelines that apply to the collection.
	//
	// This only applies to S3 data sources.
	Views *[]*View `field:"optional" json:"views" yaml:"views"`
}

type DatabaseConfig

type DatabaseConfig struct {
	// The name of a collection in the specified database.
	//
	// The
	// trigger listens to events from this collection.
	Collection *string `field:"optional" json:"collection" yaml:"collection"`
	// The name of a database in the linked data source.
	Database *string `field:"optional" json:"database" yaml:"database"`
	// If `true`, indicates that `UPDATE` change events should include the most current [majority-committed](https://www.mongodb.com/docs/manual/reference/read-concern-majority/) version of the modified document in the `fullDocument` field.
	FullDocument *bool `field:"optional" json:"fullDocument" yaml:"fullDocument"`
	// If true, indicates that `UPDATE` change events should include a snapshot of the modified document from immediately before the update was applied.
	//
	// You must enable [document
	// preimages](https://www.mongodb.com/docs/atlas/app-services/mongodb/preimages/)
	// for your cluster to include these snapshots.
	FullDocumentBeforeChange *bool `field:"optional" json:"fullDocumentBeforeChange" yaml:"fullDocumentBeforeChange"`
	// stringify version of a [$match](https://www.mongodb.com/docs/manual/reference/operator/aggregation/match) expression filters change events. The trigger will only fire if the expression evaluates to true for a given change event.
	Match *string `field:"optional" json:"match" yaml:"match"`
	// The type(s) of MongoDB change event that the trigger listens for.
	OperationTypes *[]DatabaseConfigOperationTypes `field:"optional" json:"operationTypes" yaml:"operationTypes"`
	// stringify version of a [$project](https://www.mongodb.com/docs/manual/reference/operator/aggregation/project/) expressions to limit the data included in each event.
	Project *string `field:"optional" json:"project" yaml:"project"`
	// The _id value of a linked MongoDB data source.
	//
	// See [Get a Data Source](#operation/adminGetService).
	ServiceId *string `field:"optional" json:"serviceId" yaml:"serviceId"`
	// If `true`, enabling the Trigger after it was disabled will not invoke events that occurred while the Trigger was disabled.
	SkipCatchupEvents *bool `field:"optional" json:"skipCatchupEvents" yaml:"skipCatchupEvents"`
	// If `true`, when this Trigger's resume token cannot be found in the cluster's oplog, the Trigger automatically resumes processing events at the next relevant change stream event.
	//
	// All change stream events from when the Trigger was suspended until the Trigger
	// resumes execution do not have the Trigger fire for them.
	TolerateResumeErrors *bool `field:"optional" json:"tolerateResumeErrors" yaml:"tolerateResumeErrors"`
	// If `true`, event ordering is disabled and this Trigger can process events in parallel.
	//
	// If `false`, event
	// ordering is enabled and the Trigger executes events
	// serially.
	Unordered *bool `field:"optional" json:"unordered" yaml:"unordered"`
}

type DatabaseConfigOperationTypes

type DatabaseConfigOperationTypes string
const (
	// INSERT.
	DatabaseConfigOperationTypes_INSERT DatabaseConfigOperationTypes = "INSERT"
	// UPDATE.
	DatabaseConfigOperationTypes_UPDATE DatabaseConfigOperationTypes = "UPDATE"
	// REPLACE.
	DatabaseConfigOperationTypes_REPLACE DatabaseConfigOperationTypes = "REPLACE"
	// DELETE.
	DatabaseConfigOperationTypes_DELETE DatabaseConfigOperationTypes = "DELETE"
)

type DatabaseUserProps

type DatabaseUserProps struct {
	AwsiamType      CfnDatabaseUserPropsAwsiamType `field:"optional" json:"awsiamType" yaml:"awsiamType"`
	DatabaseName    *string                        `field:"optional" json:"databaseName" yaml:"databaseName"`
	DeleteAfterDate *string                        `field:"optional" json:"deleteAfterDate" yaml:"deleteAfterDate"`
	// Default: admin.
	//
	Labels       *[]*LabelDefinition              `field:"optional" json:"labels" yaml:"labels"`
	LdapAuthType CfnDatabaseUserPropsLdapAuthType `field:"optional" json:"ldapAuthType" yaml:"ldapAuthType"`
	Password     *string                          `field:"optional" json:"password" yaml:"password"`
	// Default: cdk-pwd.
	//
	ProjectId *string             `field:"optional" json:"projectId" yaml:"projectId"`
	Roles     *[]*RoleDefinition  `field:"optional" json:"roles" yaml:"roles"`
	Scopes    *[]*ScopeDefinition `field:"optional" json:"scopes" yaml:"scopes"`
	// Default: cdk-user.
	//
	Username *string                      `field:"optional" json:"username" yaml:"username"`
	X509Type CfnDatabaseUserPropsX509Type `field:"optional" json:"x509Type" yaml:"x509Type"`
}

type DatadogIntegration

type DatadogIntegration interface {
	constructs.Construct
	CfnThirdPartyIntegration() CfnThirdPartyIntegration
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewDatadogIntegration

func NewDatadogIntegration(scope constructs.Construct, id *string, props *DatadogIntegrationProps) DatadogIntegration

type DatadogIntegrationProps

type DatadogIntegrationProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Atlas API keys.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Key that allows MongoDB Cloud to access your Datadog account.
	ApiKey *string `field:"required" json:"apiKey" yaml:"apiKey"`
	// Two-letter code that indicates which regional URL MongoDB uses to access the Datadog API.
	Region DatadogRegion `field:"required" json:"region" yaml:"region"`
}

type DatadogRegion

type DatadogRegion string
const (
	DatadogRegion_US  DatadogRegion = "US"
	DatadogRegion_EU  DatadogRegion = "EU"
	DatadogRegion_US3 DatadogRegion = "US3"
	DatadogRegion_US5 DatadogRegion = "US5"
)

type DiskGb

type DiskGb struct {
	// Flag that indicates whether this cluster enables disk auto-scaling.
	//
	// The maximum memory allowed for the selected cluster tier and the oplog size can limit storage auto-scaling.
	Enabled *bool `field:"optional" json:"enabled" yaml:"enabled"`
}

Automatic cluster storage settings that apply to this cluster.

type EncryptionAtRestProps

type EncryptionAtRestProps struct {
	// The AWS customer master key used to encrypt and decrypt the MongoDB master keys.
	CustomerMasterKeyId *string `field:"required" json:"customerMasterKeyId" yaml:"customerMasterKeyId"`
	// ID of an AWS IAM role authorized to manage an AWS customer master key.
	RoleId *string `field:"required" json:"roleId" yaml:"roleId"`
	// Specifies whether Encryption at Rest is enabled for an Atlas project.
	//
	// To disable Encryption at Rest, pass only this parameter with a value of false. When you disable Encryption at Rest, Atlas also removes the configuration details.
	// Default Value: true.
	EnabledEncryptionAtRest *bool `field:"optional" json:"enabledEncryptionAtRest" yaml:"enabledEncryptionAtRest"`
	// The AWS region in which the AWS customer master key exists.
	Region *string `field:"optional" json:"region" yaml:"region"`
}

type Event

type Event struct {
	Awseventbridge *EventAwseventbridge `field:"optional" json:"awseventbridge" yaml:"awseventbridge"`
	Function       *EventFunction       `field:"optional" json:"function" yaml:"function"`
}

type EventAwseventbridge

type EventAwseventbridge struct {
	AwsConfig *EventAwseventbridgeAwsConfig `field:"optional" json:"awsConfig" yaml:"awsConfig"`
}

type EventAwseventbridgeAwsConfig

type EventAwseventbridgeAwsConfig struct {
	// An AWS Account ID.
	AccountId *string `field:"optional" json:"accountId" yaml:"accountId"`
	// If `true`, event objects are serialized using EJSON.
	ExtendedJsonEnabled *bool `field:"optional" json:"extendedJsonEnabled" yaml:"extendedJsonEnabled"`
	// An AWS region.
	Region *string `field:"optional" json:"region" yaml:"region"`
}

type EventFunction

type EventFunction struct {
	FuncConfig *EventFunctionFuncConfig `field:"optional" json:"funcConfig" yaml:"funcConfig"`
}

type EventFunctionFuncConfig

type EventFunctionFuncConfig struct {
	// The ID of the function that the trigger calls when it fires.
	//
	// This value is the same as the root-level `function_id`.
	// You can either define the value here or in `function_id`.
	// The App Services backend duplicates the value to the configuration location where you did not define it.
	//
	// For example, if you define `event_processors.FUNCTION.function_id`, the backend duplicates it to `function_id`.
	FunctionId *string `field:"optional" json:"functionId" yaml:"functionId"`
	// The name of the function that the trigger calls when it fires, i.e. the function described by `function_id`.
	//
	// This value is the same as the root-level `function_name`.
	// You can either define the value here or in `function_name`.
	// The App Services backend duplicates the value to the configuration location where you did not define it.
	//
	// For example, if you define `event_processors.FUNCTION.function_name`, the backend duplicates it to `function_name`.
	FunctionName *string `field:"optional" json:"functionName" yaml:"functionName"`
}

type Export

type Export struct {
	// Unique identifier of the AWS bucket to export the cloud backup snapshot to.
	ExportBucketId *string `field:"optional" json:"exportBucketId" yaml:"exportBucketId"`
	// Frequency associated with the export policy.
	//
	// Value can be daily, weekly, or monthly.
	FrequencyType *string `field:"optional" json:"frequencyType" yaml:"frequencyType"`
}

type Filter added in v3.1.0

type Filter struct {
	CloudProvider FilterCloudProvider `field:"optional" json:"cloudProvider" yaml:"cloudProvider"`
	Region        *string             `field:"optional" json:"region" yaml:"region"`
	Type          *string             `field:"optional" json:"type" yaml:"type"`
}

type FilterCloudProvider added in v3.1.0

type FilterCloudProvider string
const (
	// AWS.
	FilterCloudProvider_AWS FilterCloudProvider = "AWS"
	// AZURE.
	FilterCloudProvider_AZURE FilterCloudProvider = "AZURE"
	// GCP.
	FilterCloudProvider_GCP FilterCloudProvider = "GCP"
)

type InheritedRole

type InheritedRole struct {
	Db   *string `field:"optional" json:"db" yaml:"db"`
	Role *string `field:"optional" json:"role" yaml:"role"`
}

type IntegerThresholdView

type IntegerThresholdView struct {
	// Comparison operator to apply when checking the current metric value.
	Operator IntegerThresholdViewOperator `field:"optional" json:"operator" yaml:"operator"`
	// Value of metric that, when exceeded, triggers an alert.
	Threshold *float64 `field:"optional" json:"threshold" yaml:"threshold"`
	// Element used to express the quantity.
	//
	// This can be an element of time, storage capacity, and the like.
	Units *string `field:"optional" json:"units" yaml:"units"`
}

type IntegerThresholdViewOperator

type IntegerThresholdViewOperator string

Comparison operator to apply when checking the current metric value.

const (
	// GREATER_THAN.
	IntegerThresholdViewOperator_GREATER_THAN IntegerThresholdViewOperator = "GREATER_THAN"
	// LESS_THAN.
	IntegerThresholdViewOperator_LESS_THAN IntegerThresholdViewOperator = "LESS_THAN"
)

type IpAccessListProps

type IpAccessListProps struct {
	AccessList  *[]*AccessListDefinition `field:"required" json:"accessList" yaml:"accessList"`
	ListOptions *ListOptions             `field:"optional" json:"listOptions" yaml:"listOptions"`
	// Default: allow-all.
	//
	ProjectId  *string  `field:"optional" json:"projectId" yaml:"projectId"`
	TotalCount *float64 `field:"optional" json:"totalCount" yaml:"totalCount"`
}

type LabelDefinition

type LabelDefinition struct {
	Key   *string `field:"optional" json:"key" yaml:"key"`
	Value *string `field:"optional" json:"value" yaml:"value"`
}
type Link struct {
	// Uniform Resource Locator (URL) that points another API resource to which this response has some relationship.
	//
	// This URL often begins with `https://mms.mongodb.com`.
	Href *string `field:"optional" json:"href" yaml:"href"`
	// Uniform Resource Locator (URL) that defines the semantic relationship between this resource and another API resource.
	//
	// This URL often begins with `https://mms.mongodb.com`.
	Rel *string `field:"optional" json:"rel" yaml:"rel"`
}

type ListOptions

type ListOptions struct {
	// Flag that indicates whether the response returns the total number of items (totalCount) in the response.
	IncludeCount *bool `field:"optional" json:"includeCount" yaml:"includeCount"`
	// Number of items that the response returns per page.
	ItemsPerPage *float64 `field:"optional" json:"itemsPerPage" yaml:"itemsPerPage"`
	// Number of the page that displays the current set of the total objects that the response returns.
	PageNum *float64 `field:"optional" json:"pageNum" yaml:"pageNum"`
}

type ManagedNamespace

type ManagedNamespace struct {
	// Human-readable label of the collection to manage for this Global Cluster.
	Collection *string `field:"optional" json:"collection" yaml:"collection"`
	// Database parameter used to divide the *collection* into shards.
	//
	// Global clusters require a compound shard key. This compound shard key combines the location parameter and the user-selected custom key.
	CustomShardKey *string `field:"optional" json:"customShardKey" yaml:"customShardKey"`
	// Human-readable label of the database to manage for this Global Cluster.
	Db *string `field:"optional" json:"db" yaml:"db"`
	// Flag that indicates whether someone hashed the custom shard key for the specified collection.
	//
	// If you set this value to `false`, MongoDB Cloud uses ranged sharding.
	IsCustomShardKeyHashed *bool `field:"optional" json:"isCustomShardKeyHashed" yaml:"isCustomShardKeyHashed"`
	// Flag that indicates whether someone [hashed](https://www.mongodb.com/docs/manual/reference/method/sh.shardCollection/#hashed-shard-keys) the custom shard key. If this parameter returns `false`, this cluster uses [ranged sharding](https://www.mongodb.com/docs/manual/core/ranged-sharding/).
	IsShardKeyUnique *bool `field:"optional" json:"isShardKeyUnique" yaml:"isShardKeyUnique"`
}

type Matcher

type Matcher struct {
	// Name of the parameter in the target object that MongoDB Cloud checks.
	//
	// The parameter must match all rules for MongoDB Cloud to check for alert configurations.
	FieldName MatcherFieldName `field:"optional" json:"fieldName" yaml:"fieldName"`
	// Comparison operator to apply when checking the current metric value against **matcher[n].value**.
	Operator MatcherOperator `field:"optional" json:"operator" yaml:"operator"`
	// Value to match or exceed using the specified **matchers.operator**.
	Value *string `field:"optional" json:"value" yaml:"value"`
}

type MatcherFieldName

type MatcherFieldName string

Name of the parameter in the target object that MongoDB Cloud checks.

The parameter must match all rules for MongoDB Cloud to check for alert configurations.

const (
	// CLUSTER_NAME.
	MatcherFieldName_CLUSTER_NAME MatcherFieldName = "CLUSTER_NAME"
	// HOSTNAME.
	MatcherFieldName_HOSTNAME MatcherFieldName = "HOSTNAME"
	// HOSTNAME_AND_PORT.
	MatcherFieldName_HOSTNAME_AND_PORT MatcherFieldName = "HOSTNAME_AND_PORT"
	// PORT.
	MatcherFieldName_PORT MatcherFieldName = "PORT"
	// REPLICA_SET_NAME.
	MatcherFieldName_REPLICA_SET_NAME MatcherFieldName = "REPLICA_SET_NAME"
	// SHARD_NAME.
	MatcherFieldName_SHARD_NAME MatcherFieldName = "SHARD_NAME"
	// TYPE_NAME.
	MatcherFieldName_TYPE_NAME MatcherFieldName = "TYPE_NAME"
)

type MatcherOperator

type MatcherOperator string

Comparison operator to apply when checking the current metric value against **matcher[n].value**.

const (
	// EQUALS.
	MatcherOperator_EQUALS MatcherOperator = "EQUALS"
	// CONTAINS.
	MatcherOperator_CONTAINS MatcherOperator = "CONTAINS"
	// STARTS_WITH.
	MatcherOperator_STARTS_WITH MatcherOperator = "STARTS_WITH"
	// ENDS_WITH.
	MatcherOperator_ENDS_WITH MatcherOperator = "ENDS_WITH"
	// NOT_EQUALS.
	MatcherOperator_NOT_EQUALS MatcherOperator = "NOT_EQUALS"
	// NOT_CONTAINS.
	MatcherOperator_NOT_CONTAINS MatcherOperator = "NOT_CONTAINS"
	// REGEX.
	MatcherOperator_REGEX MatcherOperator = "REGEX"
)

type MetricThresholdView

type MetricThresholdView struct {
	// Human-readable label that identifies the metric against which MongoDB Cloud checks the configured **metricThreshold.threshold**.
	MetricName *string `field:"optional" json:"metricName" yaml:"metricName"`
	// MongoDB Cloud computes the current metric value as an average.
	Mode MetricThresholdViewMode `field:"optional" json:"mode" yaml:"mode"`
	// Comparison operator to apply when checking the current metric value.
	Operator MetricThresholdViewOperator `field:"optional" json:"operator" yaml:"operator"`
	// Value of metric that, when exceeded, triggers an alert.
	Threshold *float64 `field:"optional" json:"threshold" yaml:"threshold"`
	// Element used to express the quantity.
	//
	// This can be an element of time, storage capacity, and the like.
	Units *string `field:"optional" json:"units" yaml:"units"`
}

type MetricThresholdViewMode

type MetricThresholdViewMode string

MongoDB Cloud computes the current metric value as an average.

const (
	// AVERAGE.
	MetricThresholdViewMode_AVERAGE MetricThresholdViewMode = "AVERAGE"
)

type MetricThresholdViewOperator

type MetricThresholdViewOperator string

Comparison operator to apply when checking the current metric value.

const (
	// GREATER_THAN.
	MetricThresholdViewOperator_GREATER_THAN MetricThresholdViewOperator = "GREATER_THAN"
	// LESS_THAN.
	MetricThresholdViewOperator_LESS_THAN MetricThresholdViewOperator = "LESS_THAN"
)

type MicrosoftTeamsIntegration

type MicrosoftTeamsIntegration interface {
	constructs.Construct
	CfnThirdPartyIntegration() CfnThirdPartyIntegration
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewMicrosoftTeamsIntegration

func NewMicrosoftTeamsIntegration(scope constructs.Construct, id *string, props *MicrosoftTeamsIntegrationProps) MicrosoftTeamsIntegration

type MicrosoftTeamsIntegrationProps

type MicrosoftTeamsIntegrationProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Atlas API keys.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// Endpoint web address of the Microsoft Teams webhook to which MongoDB Cloud sends notifications.
	MicrosoftTeamsWebhookUrl *string `field:"required" json:"microsoftTeamsWebhookUrl" yaml:"microsoftTeamsWebhookUrl"`
}

type MongoAtlasBootstrap

type MongoAtlasBootstrap interface {
	constructs.Construct
	// The tree node.
	Node() constructs.Node
	Role() awsiam.IRole
	// Returns a string representation of this construct.
	ToString() *string
}

Generate the CFN extension execution role. See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html

func NewMongoAtlasBootstrap

func NewMongoAtlasBootstrap(scope constructs.Construct, id *string, props MongoAtlasBootstrapProps) MongoAtlasBootstrap

type MongoAtlasBootstrapProps

type MongoAtlasBootstrapProps interface {
	// The IAM role name for CloudFormation Extension Execution.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html
	//
	// Default: auto generat the name.
	//
	RoleName() *string
	// The secret profile name for MongoDB Atlas.
	// See: https://github.com/mongodb/mongodbatlas-cloudformation-resources/tree/master#2-configure-your-profile
	//
	// Default: generate a dummy secret.
	//
	SecretProfile() *string
	// List of strings representing mongoDB atlas types to activate.
	//
	// the exported AtlasBasicResources can be used for AtlasBasic resources
	// if not provided non resources will be activated.
	//
	// Example:
	//   typesToActivate=["Cluster","Project"] this will actiate MongoDB::Atlas::Project && MongoDB::Atlas::Cluster
	//
	TypesToActivate() *[]*string
}

func NewMongoAtlasBootstrapProps

func NewMongoAtlasBootstrapProps() MongoAtlasBootstrapProps

type MongoSecretProfile

type MongoSecretProfile interface {
	constructs.Construct
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewMongoSecretProfile

func NewMongoSecretProfile(scope constructs.Construct, id *string, profileName *string) MongoSecretProfile

type NotificationView

type NotificationView struct {
	// Slack API token or Bot token that MongoDB Cloud needs to send alert notifications via Slack.
	//
	// The resource requires this parameter when '"notifications.typeName" : "SLACK"'. If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes the token.
	ApiToken *string `field:"optional" json:"apiToken" yaml:"apiToken"`
	// Name of the Slack channel to which MongoDB Cloud sends alert notifications.
	//
	// The resource requires this parameter when '"notifications.typeName" : "SLACK"'.
	ChannelName *string `field:"optional" json:"channelName" yaml:"channelName"`
	// Datadog API Key that MongoDB Cloud needs to send alert notifications to Datadog.
	//
	// You can find this API key in the Datadog dashboard. The resource requires this parameter when '"notifications.typeName" : "DATADOG"'.
	DatadogApiKey *string `field:"optional" json:"datadogApiKey" yaml:"datadogApiKey"`
	// Datadog region that indicates which API Uniform Resource Locator (URL) to use.
	//
	// The resource requires this parameter when '"notifications.typeName" : "DATADOG"'.
	DatadogRegion NotificationViewDatadogRegion `field:"optional" json:"datadogRegion" yaml:"datadogRegion"`
	// Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.
	DelayMin *float64 `field:"optional" json:"delayMin" yaml:"delayMin"`
	// Email address to which MongoDB Cloud sends alert notifications.
	//
	// The resource requires this parameter when '"notifications.typeName" : "EMAIL"'. You don't need to set this value to send emails to individual or groups of MongoDB Cloud users including:
	//
	// - specific MongoDB Cloud users ('"notifications.typeName" : "USER"')
	// - MongoDB Cloud users with specific project roles ('"notifications.typeName" : "GROUP"')
	// - MongoDB Cloud users with specific organization roles ('"notifications.typeName" : "ORG"')
	// - MongoDB Cloud teams ('"notifications.typeName" : "TEAM"')
	//
	// To send emails to one MongoDB Cloud user or grouping of users, set the **notifications.emailEnabled** parameter.
	EmailAddress *string `field:"optional" json:"emailAddress" yaml:"emailAddress"`
	// Flag that indicates whether MongoDB Cloud should send email notifications.
	//
	// The resource requires this parameter when one of the following values have been set:
	//
	// - '"notifications.typeName" : "ORG"'
	// - '"notifications.typeName" : "GROUP"'
	// - '"notifications.typeName" : "USER"'
	EmailEnabled *bool `field:"optional" json:"emailEnabled" yaml:"emailEnabled"`
	// Flowdock API token that MongoDB Cloud needs to send alert notifications to Flowdock.
	//
	// The resource requires this parameter when '"notifications.typeName" : "FLOWDOCK"'. If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes the token.
	FlowdockApiToken *string `field:"optional" json:"flowdockApiToken" yaml:"flowdockApiToken"`
	// Flowdock flow name to which MongoDB Cloud sends alert notifications.
	//
	// This name appears after the organization name in the Uniform Resource Locator (URL) path: 'www.flowdock.com/app/<organization-name>/<flow-name>'. The resource requires this parameter when '"notifications.typeName" : "FLOWDOCK"'.
	FlowName *string `field:"optional" json:"flowName" yaml:"flowName"`
	// Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.
	//
	// PagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.
	IntervalMin *float64 `field:"optional" json:"intervalMin" yaml:"intervalMin"`
	// Microsoft Teams Webhook Uniform Resource Locator (URL) that MongoDB Cloud needs to send this notification via Microsoft Teams.
	//
	// The resource requires this parameter when '"notifications.typeName" : "MICROSOFT_TEAMS"'. If the URL later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
	MicrosoftTeamsWebhookUrl *string `field:"optional" json:"microsoftTeamsWebhookUrl" yaml:"microsoftTeamsWebhookUrl"`
	// Mobile phone number to which MongoDB Cloud sends alert notifications.
	//
	// The resource requires this parameter when '"notifications.typeName" : "SMS"'.
	MobileNumber *string `field:"optional" json:"mobileNumber" yaml:"mobileNumber"`
	// HipChat API token that MongoDB Cloud needs to send alert notifications to HipChat.
	//
	// The resource requires this parameter when '"notifications.typeName" : "HIP_CHAT"'". If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes it.
	NotificationToken *string `field:"optional" json:"notificationToken" yaml:"notificationToken"`
	// API Key that MongoDB Cloud needs to send this notification via Opsgenie.
	//
	// The resource requires this parameter when '"notifications.typeName" : "OPS_GENIE"'. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
	OpsGenieApiKey *string `field:"optional" json:"opsGenieApiKey" yaml:"opsGenieApiKey"`
	// Opsgenie region that indicates which API Uniform Resource Locator (URL) to use.
	OpsGenieRegion NotificationViewOpsGenieRegion `field:"optional" json:"opsGenieRegion" yaml:"opsGenieRegion"`
	// Flowdock organization name to which MongoDB Cloud sends alert notifications.
	//
	// This name appears after 'www.flowdock.com/app/' in the Uniform Resource Locator (URL) path. The resource requires this parameter when '"notifications.typeName" : "FLOWDOCK"'.
	OrgName *string `field:"optional" json:"orgName" yaml:"orgName"`
	// List that contains the one or more organization or project roles that receive the configured alert.
	//
	// The resource requires this parameter when '"notifications.typeName" : "GROUP"' or '"notifications.typeName" : "ORG"'. If you include this parameter, MongoDB Cloud sends alerts only to users assigned the roles you specify in the array. If you omit this parameter, MongoDB Cloud sends alerts to users assigned any role.
	Roles *[]NotificationViewRoles `field:"optional" json:"roles" yaml:"roles"`
	// HipChat API room name to which MongoDB Cloud sends alert notifications.
	//
	// The resource requires this parameter when '"notifications.typeName" : "HIP_CHAT"'".
	RoomName *string `field:"optional" json:"roomName" yaml:"roomName"`
	// PagerDuty service key that MongoDB Cloud needs to send notifications via PagerDuty.
	//
	// The resource requires this parameter when '"notifications.typeName" : "PAGER_DUTY"'. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
	ServiceKey *string `field:"optional" json:"serviceKey" yaml:"serviceKey"`
	// Degree of seriousness given to this notification.
	Severity NotificationViewSeverity `field:"optional" json:"severity" yaml:"severity"`
	// Flag that indicates whether MongoDB Cloud should send text message notifications.
	//
	// The resource requires this parameter when one of the following values have been set:
	//
	// - '"notifications.typeName" : "ORG"'
	// - '"notifications.typeName" : "GROUP"'
	// - '"notifications.typeName" : "USER"'
	SmsEnabled *bool `field:"optional" json:"smsEnabled" yaml:"smsEnabled"`
	// Unique 24-hexadecimal digit string that identifies one MongoDB Cloud team.
	//
	// The resource requires this parameter when '"notifications.typeName" : "TEAM"'.
	TeamId *string `field:"optional" json:"teamId" yaml:"teamId"`
	// Name of the MongoDB Cloud team that receives this notification.
	//
	// The resource requires this parameter when '"notifications.typeName" : "TEAM"'.
	TeamName *string `field:"optional" json:"teamName" yaml:"teamName"`
	// Human-readable label that displays the alert notification type.
	TypeName NotificationViewTypeName `field:"optional" json:"typeName" yaml:"typeName"`
	// MongoDB Cloud username of the person to whom MongoDB Cloud sends notifications.
	//
	// Specify only MongoDB Cloud users who belong to the project that owns the alert configuration. The resource requires this parameter when '"notifications.typeName" : "USER"'.
	Username *string `field:"optional" json:"username" yaml:"username"`
	// API key that MongoDB Cloud needs to send alert notifications to Splunk On-Call.
	//
	// The resource requires this parameter when '"notifications.typeName" : "VICTOR_OPS"'. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
	VictorOpsApiKey *string `field:"optional" json:"victorOpsApiKey" yaml:"victorOpsApiKey"`
	// Routing key that MongoDB Cloud needs to send alert notifications to Splunk On-Call.
	//
	// The resource requires this parameter when '"notifications.typeName" : "VICTOR_OPS"'. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
	VictorOpsRoutingKey *string `field:"optional" json:"victorOpsRoutingKey" yaml:"victorOpsRoutingKey"`
	// An optional field for your webhook secret.
	WebhookSecret *string `field:"optional" json:"webhookSecret" yaml:"webhookSecret"`
	// Your webhook URL.
	WebhookUrl *string `field:"optional" json:"webhookUrl" yaml:"webhookUrl"`
}

type NotificationViewDatadogRegion

type NotificationViewDatadogRegion string

Datadog region that indicates which API Uniform Resource Locator (URL) to use.

The resource requires this parameter when '"notifications.typeName" : "DATADOG"'.

const (
	// EU.
	NotificationViewDatadogRegion_EU NotificationViewDatadogRegion = "EU"
	// US.
	NotificationViewDatadogRegion_US NotificationViewDatadogRegion = "US"
)

type NotificationViewOpsGenieRegion

type NotificationViewOpsGenieRegion string

Opsgenie region that indicates which API Uniform Resource Locator (URL) to use.

const (
	// EU.
	NotificationViewOpsGenieRegion_EU NotificationViewOpsGenieRegion = "EU"
	// US.
	NotificationViewOpsGenieRegion_US NotificationViewOpsGenieRegion = "US"
)

type NotificationViewRoles

type NotificationViewRoles string
const (
	// GROUP_CLUSTER_MANAGER.
	NotificationViewRoles_GROUP_CLUSTER_MANAGER NotificationViewRoles = "GROUP_CLUSTER_MANAGER"
	// GROUP_DATA_ACCESS_ADMIN.
	NotificationViewRoles_GROUP_DATA_ACCESS_ADMIN NotificationViewRoles = "GROUP_DATA_ACCESS_ADMIN"
	// GROUP_DATA_ACCESS_READ_ONLY.
	NotificationViewRoles_GROUP_DATA_ACCESS_READ_ONLY NotificationViewRoles = "GROUP_DATA_ACCESS_READ_ONLY"
	// GROUP_DATA_ACCESS_READ_WRITE.
	NotificationViewRoles_GROUP_DATA_ACCESS_READ_WRITE NotificationViewRoles = "GROUP_DATA_ACCESS_READ_WRITE"
	// GROUP_OWNER.
	NotificationViewRoles_GROUP_OWNER NotificationViewRoles = "GROUP_OWNER"
	// GROUP_READ_WRITE.
	NotificationViewRoles_GROUP_READ_WRITE NotificationViewRoles = "GROUP_READ_WRITE"
	// ORG_OWNER.
	NotificationViewRoles_ORG_OWNER NotificationViewRoles = "ORG_OWNER"
	// ORG_MEMBER.
	NotificationViewRoles_ORG_MEMBER NotificationViewRoles = "ORG_MEMBER"
	// ORG_GROUP_CREATOR.
	NotificationViewRoles_ORG_GROUP_CREATOR NotificationViewRoles = "ORG_GROUP_CREATOR"
	// ORG_BILLING_ADMIN.
	NotificationViewRoles_ORG_BILLING_ADMIN NotificationViewRoles = "ORG_BILLING_ADMIN"
	// ORG_READ_ONLY.
	NotificationViewRoles_ORG_READ_ONLY NotificationViewRoles = "ORG_READ_ONLY"
)

type NotificationViewSeverity

type NotificationViewSeverity string

Degree of seriousness given to this notification.

const (
	// CRITICAL.
	NotificationViewSeverity_CRITICAL NotificationViewSeverity = "CRITICAL"
	// ERROR.
	NotificationViewSeverity_ERROR NotificationViewSeverity = "ERROR"
	// WARNING.
	NotificationViewSeverity_WARNING NotificationViewSeverity = "WARNING"
)

type NotificationViewTypeName

type NotificationViewTypeName string

Human-readable label that displays the alert notification type.

const (
	// DATADOG.
	NotificationViewTypeName_DATADOG NotificationViewTypeName = "DATADOG"
	// EMAIL.
	NotificationViewTypeName_EMAIL NotificationViewTypeName = "EMAIL"
	// FLOWDOCK.
	NotificationViewTypeName_FLOWDOCK NotificationViewTypeName = "FLOWDOCK"
	// GROUP.
	NotificationViewTypeName_GROUP NotificationViewTypeName = "GROUP"
	// MICROSOFT_TEAMS.
	NotificationViewTypeName_MICROSOFT_TEAMS NotificationViewTypeName = "MICROSOFT_TEAMS"
	// OPS_GENIE.
	NotificationViewTypeName_OPS_GENIE NotificationViewTypeName = "OPS_GENIE"
	// ORG.
	NotificationViewTypeName_ORG NotificationViewTypeName = "ORG"
	// PAGER_DUTY.
	NotificationViewTypeName_PAGER_DUTY NotificationViewTypeName = "PAGER_DUTY"
	// PROMETHEUS.
	NotificationViewTypeName_PROMETHEUS NotificationViewTypeName = "PROMETHEUS"
	// SLACK.
	NotificationViewTypeName_SLACK NotificationViewTypeName = "SLACK"
	// SMS.
	NotificationViewTypeName_SMS NotificationViewTypeName = "SMS"
	// TEAM.
	NotificationViewTypeName_TEAM NotificationViewTypeName = "TEAM"
	// USER.
	NotificationViewTypeName_USER NotificationViewTypeName = "USER"
	// VICTOR_OPS.
	NotificationViewTypeName_VICTOR_OPS NotificationViewTypeName = "VICTOR_OPS"
	// WEBHOOK.
	NotificationViewTypeName_WEBHOOK NotificationViewTypeName = "WEBHOOK"
)

type PagerDutyIntegration

type PagerDutyIntegration interface {
	constructs.Construct
	CfnThirdPartyIntegration() CfnThirdPartyIntegration
	// The tree node.
	Node() constructs.Node
	// Returns a string representation of this construct.
	ToString() *string
}

func NewPagerDutyIntegration

func NewPagerDutyIntegration(scope constructs.Construct, id *string, props *PagerDutyIntegrationProps) PagerDutyIntegration

type PagerDutyIntegrationProps

type PagerDutyIntegrationProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Atlas API keys.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
	// PagerDuty region that indicates the API Uniform Resource Locator (URL) to use.
	Region PagerDutyRegion `field:"required" json:"region" yaml:"region"`
	// Service key associated with your PagerDuty account.
	ServiceKey *string `field:"required" json:"serviceKey" yaml:"serviceKey"`
}

type PagerDutyRegion

type PagerDutyRegion string
const (
	PagerDutyRegion_US PagerDutyRegion = "US"
	PagerDutyRegion_EU PagerDutyRegion = "EU"
)

type PartitionFieldView

type PartitionFieldView struct {
	// Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data.
	//
	// To specify a nested parameter, use the dot notation.
	FieldName *string `field:"optional" json:"fieldName" yaml:"fieldName"`
	// Data type of the parameter that that MongoDB Cloud uses to partition data.
	//
	// Partition parameters of type [UUID](http://bsonspec.org/spec.html) must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3.
	FieldType PartitionFieldViewFieldType `field:"optional" json:"fieldType" yaml:"fieldType"`
	// Sequence in which MongoDB Cloud slices the collection data to create partitions.
	//
	// The resource expresses this sequence starting with zero. The value of the **criteria.dateField** parameter defaults as the first item in the partition sequence.
	Order *float64 `field:"optional" json:"order" yaml:"order"`
}

type PartitionFieldViewFieldType

type PartitionFieldViewFieldType string

Data type of the parameter that that MongoDB Cloud uses to partition data.

Partition parameters of type [UUID](http://bsonspec.org/spec.html) must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3.

const (
	// date.
	PartitionFieldViewFieldType_DATE PartitionFieldViewFieldType = "DATE"
	// int.
	PartitionFieldViewFieldType_INT PartitionFieldViewFieldType = "INT"
	// long.
	PartitionFieldViewFieldType_LONG PartitionFieldViewFieldType = "LONG"
	// objectId.
	PartitionFieldViewFieldType_OBJECT_ID PartitionFieldViewFieldType = "OBJECT_ID"
	// string.
	PartitionFieldViewFieldType_STRING PartitionFieldViewFieldType = "STRING"
	// uuid.
	PartitionFieldViewFieldType_UUID PartitionFieldViewFieldType = "UUID"
)

type PrivateEndpoint

type PrivateEndpoint struct {
	// Status of the Atlas PrivateEndpoint connection.
	AtlasPrivateEndpointStatus *string `field:"optional" json:"atlasPrivateEndpointStatus" yaml:"atlasPrivateEndpointStatus"`
	// Status of the AWS PrivateEndpoint connection.
	AwsPrivateEndpointStatus *string `field:"optional" json:"awsPrivateEndpointStatus" yaml:"awsPrivateEndpointStatus"`
	// Unique identifiers of the interface endpoints in your VPC that you added to the AWS PrivateLink connection.
	InterfaceEndpointId *string `field:"optional" json:"interfaceEndpointId" yaml:"interfaceEndpointId"`
	// List of string representing the AWS VPC Subnet ID (like: subnet-xxxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint).
	SubnetIds *[]*string `field:"optional" json:"subnetIds" yaml:"subnetIds"`
	// String Representing the AWS VPC ID (like: vpc-xxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint).
	VpcId *string `field:"optional" json:"vpcId" yaml:"vpcId"`
}

type PrivateEndpointProps

type PrivateEndpointProps struct {
	AwsSubnetId *string `field:"required" json:"awsSubnetId" yaml:"awsSubnetId"`
	AwsVpcId    *string `field:"required" json:"awsVpcId" yaml:"awsVpcId"`
}

type ProcessArgs

type ProcessArgs struct {
	// Default level of acknowledgment requested from MongoDB for read operations set for this cluster.
	DefaultReadConcern *string `field:"optional" json:"defaultReadConcern" yaml:"defaultReadConcern"`
	// Default level of acknowledgment requested from MongoDB for write operations set for this cluster.
	DefaultWriteConcern *string `field:"optional" json:"defaultWriteConcern" yaml:"defaultWriteConcern"`
	// Flag that indicates whether you can insert or update documents where all indexed entries don't exceed 1024 bytes.
	//
	// If you set this to false, mongod writes documents that exceed this limit but doesn't index them.
	FailIndexKeyTooLong *bool `field:"optional" json:"failIndexKeyTooLong" yaml:"failIndexKeyTooLong"`
	// Flag that indicates whether the cluster allows execution of operations that perform server-side executions of JavaScript.
	JavascriptEnabled *bool `field:"optional" json:"javascriptEnabled" yaml:"javascriptEnabled"`
	// Minimum Transport Layer Security (TLS) version that the cluster accepts for incoming connections.
	//
	// Clusters using TLS 1.0 or 1.1 should consider setting TLS 1.2 as the minimum TLS protocol version.
	MinimumEnabledTlsProtocol *string `field:"optional" json:"minimumEnabledTlsProtocol" yaml:"minimumEnabledTlsProtocol"`
	// Flag that indicates whether the cluster disables executing any query that requires a collection scan to return results.
	NoTableScan *bool `field:"optional" json:"noTableScan" yaml:"noTableScan"`
	// Minimum retention window for cluster's oplog expressed in hours.
	//
	// A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.
	OplogMinRetentionHours *float64 `field:"optional" json:"oplogMinRetentionHours" yaml:"oplogMinRetentionHours"`
	// Storage limit of cluster's oplog expressed in megabytes.
	//
	// A value of null indicates that the cluster uses the default oplog size that MongoDB Cloud calculates.
	OplogSizeMb *float64 `field:"optional" json:"oplogSizeMb" yaml:"oplogSizeMb"`
	// Number of documents per database to sample when gathering schema information.
	SampleRefreshIntervalBiConnector *float64 `field:"optional" json:"sampleRefreshIntervalBiConnector" yaml:"sampleRefreshIntervalBiConnector"`
	// Interval in seconds at which the mongosqld process re-samples data to create its relational schema.
	SampleSizeBiConnector *float64 `field:"optional" json:"sampleSizeBiConnector" yaml:"sampleSizeBiConnector"`
	// Lifetime, in seconds, of multi-document transactions.
	//
	// Atlas considers the transactions that exceed this limit as expired and so aborts them through a periodic cleanup process.
	TransactionLifetimeLimitSeconds *float64 `field:"optional" json:"transactionLifetimeLimitSeconds" yaml:"transactionLifetimeLimitSeconds"`
}

Advanced configuration details to add for one cluster in the specified project.

type ProjectApiKey

type ProjectApiKey struct {
	// Unique 24-hexadecimal digit string that identifies this organization API key assigned to this project.
	Key *string `field:"optional" json:"key" yaml:"key"`
	// List of roles to grant this API key.
	//
	// If you provide this list, provide a minimum of one role and ensure each role applies to this project.Items Enum: "ORG_OWNER" "ORG_MEMBER" "ORG_GROUP_CREATOR" "ORG_BILLING_ADMIN" "ORG_READ_ONLY" "ORG_TEAM_MEMBERS_ADMIN" "GROUP_ATLAS_ADMIN" "GROUP_AUTOMATION_ADMIN" "GROUP_BACKUP_ADMIN" "GROUP_MONITORING_ADMIN" "GROUP_OWNER" "GROUP_READ_ONLY" "GROUP_USER_ADMIN" "GROUP_BILLING_ADMIN" "GROUP_DATA_ACCESS_ADMIN" "GROUP_DATA_ACCESS_READ_ONLY" "GROUP_DATA_ACCESS_READ_WRITE" "GROUP_CHARTS_ADMIN" "GROUP_CLUSTER_MANAGER" "GROUP_SEARCH_INDEX_EDITOR"
	RoleNames *[]*string `field:"optional" json:"roleNames" yaml:"roleNames"`
}

type ProjectProps

type ProjectProps struct {
	// Default: auto-generated.
	//
	OrgId                     *string           `field:"required" json:"orgId" yaml:"orgId"`
	ClusterCount              *float64          `field:"optional" json:"clusterCount" yaml:"clusterCount"`
	Name                      *string           `field:"optional" json:"name" yaml:"name"`
	ProjectApiKeys            *[]*ProjectApiKey `field:"optional" json:"projectApiKeys" yaml:"projectApiKeys"`
	ProjectOwnerId            *string           `field:"optional" json:"projectOwnerId" yaml:"projectOwnerId"`
	ProjectSettings           *ProjectSettings  `field:"optional" json:"projectSettings" yaml:"projectSettings"`
	ProjectTeams              *[]*ProjectTeam   `field:"optional" json:"projectTeams" yaml:"projectTeams"`
	WithDefaultAlertsSettings *bool             `field:"optional" json:"withDefaultAlertsSettings" yaml:"withDefaultAlertsSettings"`
}

type ProjectSettings

type ProjectSettings struct {
	// Flag that indicates whether to collect database-specific metrics for the specified project.
	IsCollectDatabaseSpecificsStatisticsEnabled *bool `field:"optional" json:"isCollectDatabaseSpecificsStatisticsEnabled" yaml:"isCollectDatabaseSpecificsStatisticsEnabled"`
	// Flag that indicates whether to enable the Data Explorer for the specified project.
	IsDataExplorerEnabled *bool `field:"optional" json:"isDataExplorerEnabled" yaml:"isDataExplorerEnabled"`
	// Flag that indicates whether to enable extended storage sizes for the specified project.
	IsExtendedStorageSizesEnabled *bool `field:"optional" json:"isExtendedStorageSizesEnabled" yaml:"isExtendedStorageSizesEnabled"`
	// Flag that indicates whether to enable the Performance Advisor and Profiler for the specified project.
	IsPerformanceAdvisorEnabled *bool `field:"optional" json:"isPerformanceAdvisorEnabled" yaml:"isPerformanceAdvisorEnabled"`
	// Flag that indicates whether to enable the Real Time Performance Panel for the specified project.
	IsRealtimePerformancePanelEnabled *bool `field:"optional" json:"isRealtimePerformancePanelEnabled" yaml:"isRealtimePerformancePanelEnabled"`
	// Flag that indicates whether to enable the Schema Advisor for the specified project.
	IsSchemaAdvisorEnabled *bool `field:"optional" json:"isSchemaAdvisorEnabled" yaml:"isSchemaAdvisorEnabled"`
}

type ProjectTeam

type ProjectTeam struct {
	// One or more organization- or project-level roles to assign to the MongoDB Cloud user.
	//
	// tems Enum: "GROUP_CLUSTER_MANAGER" "GROUP_DATA_ACCESS_ADMIN" "GROUP_DATA_ACCESS_READ_ONLY" "GROUP_DATA_ACCESS_READ_WRITE" "GROUP_OWNER" "GROUP_READ_ONLY".
	RoleNames *[]*string `field:"optional" json:"roleNames" yaml:"roleNames"`
	// Unique 24-hexadecimal character string that identifies the team.
	//
	// string = 24 characters ^([a-f0-9]{24})$.
	TeamId *string `field:"optional" json:"teamId" yaml:"teamId"`
}

type ReadPreference

type ReadPreference struct {
	// Maximum replication lag, or staleness, for reads from secondaries.
	MaxStalenessSeconds *string `field:"optional" json:"maxStalenessSeconds" yaml:"maxStalenessSeconds"`
	// "primary" "primaryPreferred" "secondary" "secondaryPreferred" "nearest" Read preference mode that specifies to which replica set member to route the read requests.
	Mode *string `field:"optional" json:"mode" yaml:"mode"`
	// List that contains tag sets or tag specification documents.
	//
	// If specified, Atlas Data Lake routes read requests to replica set member or members that are associated with the specified tags.
	TagSets *[]*[]*TagSet `field:"optional" json:"tagSets" yaml:"tagSets"`
}

type Resource

type Resource struct {
	// Flag that indicates whether to grant the action on the cluster resource.
	//
	// If true, MongoDB Cloud ignores the actions.resources.collection and actions.resources.db parameters.
	Cluster *bool `field:"optional" json:"cluster" yaml:"cluster"`
	// Human-readable label that identifies the collection on which you grant the action to one MongoDB user.
	//
	// If you don't set this parameter, you grant the action to all collections in the database specified in the actions.resources.db parameter. If you set "actions.resources.cluster" : true, MongoDB Cloud ignores this parameter.
	Collection *string `field:"optional" json:"collection" yaml:"collection"`
	// Human-readable label that identifies the database on which you grant the action to one MongoDB user.
	//
	// If you set "actions.resources.cluster" : true, MongoDB Cloud ignores this parameter.
	Db *string `field:"optional" json:"db" yaml:"db"`
}

List of resources on which you grant the action.

type RoleAssignment

type RoleAssignment struct {
	// List that contains comma-separated key value pairs to map zones to geographic regions.
	//
	// These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to a unique 24-hexadecimal string that identifies the custom zone.
	//
	// This parameter returns an empty object if no custom zones exist.
	OrgId *string `field:"optional" json:"orgId" yaml:"orgId"`
	// List that contains comma-separated key value pairs to map zones to geographic regions.
	//
	// These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to a unique 24-hexadecimal string that identifies the custom zone.
	//
	// This parameter returns an empty object if no custom zones exist.
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	Role      *string `field:"optional" json:"role" yaml:"role"`
}

type RoleDefinition

type RoleDefinition struct {
	CollectionName *string `field:"optional" json:"collectionName" yaml:"collectionName"`
	DatabaseName   *string `field:"optional" json:"databaseName" yaml:"databaseName"`
	RoleName       *string `field:"optional" json:"roleName" yaml:"roleName"`
}

type ScheduleConfig

type ScheduleConfig struct {
	// A [cron expression](https://www.mongodb.com/docs/atlas/app-services/triggers/scheduled-triggers/#cron-expressions) that specifies when the trigger executes.
	Schedule *string `field:"optional" json:"schedule" yaml:"schedule"`
	// If `true`, enabling the trigger after it was disabled will not invoke events that occurred while the trigger was disabled.
	SkipcatchupEvents *bool `field:"optional" json:"skipcatchupEvents" yaml:"skipcatchupEvents"`
}

type ScheduleView

type ScheduleView struct {
	// Day of the month when the scheduled archive starts.
	DayOfMonth *float64 `field:"optional" json:"dayOfMonth" yaml:"dayOfMonth"`
	// Day of the month when the scheduled archive starts.
	DayOfWeek *float64 `field:"optional" json:"dayOfWeek" yaml:"dayOfWeek"`
	// Hour of the day when the scheduled window to run one online archive ends.
	EndHour *float64 `field:"optional" json:"endHour" yaml:"endHour"`
	// Minute of the hour when the scheduled window to run one online archive ends.
	EndMinute *float64 `field:"optional" json:"endMinute" yaml:"endMinute"`
	// Hour of the day when the when the scheduled window to run one online archive starts.
	StartHour *float64 `field:"optional" json:"startHour" yaml:"startHour"`
	// Minute of the hour when the scheduled window to run one online archive starts.
	StartMinute *float64         `field:"optional" json:"startMinute" yaml:"startMinute"`
	Type        ScheduleViewType `field:"optional" json:"type" yaml:"type"`
}

type ScheduleViewType

type ScheduleViewType string
const (
	// DAILY.
	ScheduleViewType_DAILY ScheduleViewType = "DAILY"
	// MONTHLY.
	ScheduleViewType_MONTHLY ScheduleViewType = "MONTHLY"
	// DEFAULT.
	ScheduleViewType_DEFAULT ScheduleViewType = "DEFAULT"
	// WEEKLY.
	ScheduleViewType_WEEKLY ScheduleViewType = "WEEKLY"
)

type ScopeDefinition

type ScopeDefinition struct {
	Name *string             `field:"optional" json:"name" yaml:"name"`
	Type ScopeDefinitionType `field:"optional" json:"type" yaml:"type"`
}

type ScopeDefinitionType

type ScopeDefinitionType string
const (
	// CLUSTER.
	ScopeDefinitionType_CLUSTER ScopeDefinitionType = "CLUSTER"
	// DATA_LAKE.
	ScopeDefinitionType_DATA_LAKE ScopeDefinitionType = "DATA_LAKE"
)

type ServerlessInstanceConnectionStrings

type ServerlessInstanceConnectionStrings struct {
	// List of private endpoint connection strings that you can use to connect to this serverless instance through a private endpoint.
	//
	// This parameter returns only if you created a private endpoint for this serverless instance and it is AVAILABLE.
	PrivateEndpoint *[]*ServerlessInstancePrivateEndpoint `field:"optional" json:"privateEndpoint" yaml:"privateEndpoint"`
	// Public connection string that you can use to connect to this serverless instance.
	//
	// This connection string uses the `mongodb+srv://` protocol.
	StandardSrv *string `field:"optional" json:"standardSrv" yaml:"standardSrv"`
}

type ServerlessInstancePrivateEndpoint

type ServerlessInstancePrivateEndpoint struct {
	// List that contains the private endpoints through which you connect to MongoDB Cloud when you use **connectionStrings.privateEndpoint[n].srvConnectionString**.
	Endpoints *[]*ServerlessInstancePrivateEndpointEndpoint `field:"optional" json:"endpoints" yaml:"endpoints"`
	// Private endpoint-aware connection string that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint.
	//
	// The `mongodb+srv` protocol tells the driver to look up the seed list of hosts in the Domain Name System (DNS).
	SrvConnectionString *string `field:"optional" json:"srvConnectionString" yaml:"srvConnectionString"`
	// MongoDB process type to which your application connects.
	Type ServerlessInstancePrivateEndpointType `field:"optional" json:"type" yaml:"type"`
}

type ServerlessInstancePrivateEndpointEndpoint

type ServerlessInstancePrivateEndpointEndpoint struct {
	// Unique provider identifier of the private endpoint.
	EndpointId *string `field:"optional" json:"endpointId" yaml:"endpointId"`
	// Cloud provider where the private endpoint is deployed.
	ProviderName *string `field:"optional" json:"providerName" yaml:"providerName"`
	// Region where the private endpoint is deployed.
	Region *string `field:"optional" json:"region" yaml:"region"`
}

type ServerlessInstancePrivateEndpointType

type ServerlessInstancePrivateEndpointType string

MongoDB process type to which your application connects.

const (
	// MONGOS.
	ServerlessInstancePrivateEndpointType_MONGOS ServerlessInstancePrivateEndpointType = "MONGOS"
)

type ServerlessInstanceProviderSettings

type ServerlessInstanceProviderSettings struct {
	// Human-readable label that identifies the cloud service provider.
	ProviderName ServerlessInstanceProviderSettingsProviderName `field:"optional" json:"providerName" yaml:"providerName"`
	// Human-readable label that identifies the geographic location of your MongoDB serverless instance.
	//
	// The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
	RegionName *string `field:"optional" json:"regionName" yaml:"regionName"`
}

type ServerlessInstanceProviderSettingsProviderName

type ServerlessInstanceProviderSettingsProviderName string

Human-readable label that identifies the cloud service provider.

const (
	// SERVERLESS.
	ServerlessInstanceProviderSettingsProviderName_SERVERLESS ServerlessInstanceProviderSettingsProviderName = "SERVERLESS"
)

type ServerlessPrivateEndpoint

type ServerlessPrivateEndpoint struct {
	// Status of the Atlas PrivateEndpoint connection.
	AtlasPrivateEndpointStatus *string `field:"optional" json:"atlasPrivateEndpointStatus" yaml:"atlasPrivateEndpointStatus"`
	// Status of the AWS PrivateEndpoint connection.
	AwsPrivateEndpointStatus *string `field:"optional" json:"awsPrivateEndpointStatus" yaml:"awsPrivateEndpointStatus"`
	// string to represent the comment.
	Comment                           *string `field:"optional" json:"comment" yaml:"comment"`
	CreateAndAssignAWSPrivateEndpoint *bool   `field:"optional" json:"createAndAssignAWSPrivateEndpoint" yaml:"createAndAssignAWSPrivateEndpoint"`
	// Unique identifiers of the interface endpoints in your VPC that you added to the AWS PrivateLink connection.
	InterfaceEndpointId *string `field:"optional" json:"interfaceEndpointId" yaml:"interfaceEndpointId"`
	// List of string representing the AWS VPC Subnet ID (like: subnet-xxxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint).
	SubnetIds *[]*string `field:"optional" json:"subnetIds" yaml:"subnetIds"`
	// String Representing the AWS VPC ID (like: vpc-xxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint).
	VpcId *string `field:"optional" json:"vpcId" yaml:"vpcId"`
}

type Specs

type Specs struct {
	// Target throughput desired for storage attached to your AWS-provisioned cluster. Only change this parameter if you:.
	//
	// set "replicationSpecs[n].regionConfigs[m].providerName" : "AWS".
	// set "replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize" : "M30" or greater not including Mxx_NVME tiers.
	// The maximum input/output operations per second (IOPS) depend on the selected .instanceSize and .diskSizeGB. This parameter defaults to the cluster tier's standard IOPS value. Changing this value impacts cluster cost. MongoDB Cloud enforces minimum ratios of storage capacity to system memory for given cluster tiers. This keeps cluster performance consistent with large datasets.
	//
	// Instance sizes M10 to M40 have a ratio of disk capacity to system memory of 60:1.
	// Instance sizes greater than M40 have a ratio of 120:1.
	DiskIops *string `field:"optional" json:"diskIops" yaml:"diskIops"`
	// Type of storage you want to attach to your AWS-provisioned cluster.
	//
	// STANDARD volume types can't exceed the default input/output operations per second (IOPS) rate for the selected volume size.
	//
	// PROVISIONED volume types must fall within the allowable IOPS range for the selected volume size."
	EbsVolumeType *string `field:"optional" json:"ebsVolumeType" yaml:"ebsVolumeType"`
	// Hardware specification for the instance sizes in this region.
	//
	// Each instance size has a default storage and memory capacity. The instance size you select applies to all the data-bearing hosts in your instance size. If you deploy a Global Cluster, you must choose a instance size of M30 or greater.
	InstanceSize *string `field:"optional" json:"instanceSize" yaml:"instanceSize"`
	// Number of read-only nodes for MongoDB Cloud deploys to the region.
	//
	// Read-only nodes can never become the primary, but can enable local reads.
	NodeCount *float64 `field:"optional" json:"nodeCount" yaml:"nodeCount"`
}

type Storage

type Storage struct {
	// Array that contains the queryable databases and collections for this data lake.
	Databases *[]*Database `field:"optional" json:"databases" yaml:"databases"`
	// Array that contains the data stores for the data lake.
	Stores *[]*Store `field:"optional" json:"stores" yaml:"stores"`
}

Configuration information for each data store and its mapping to MongoDB Cloud databases.

type Store

type Store struct {
	// Human-readable label of the MongoDB Cloud cluster on which the store is based.
	ClusterName *string `field:"optional" json:"clusterName" yaml:"clusterName"`
	// Human-readable label that identifies the data store.
	//
	// The databases.[n].collections.[n].dataSources.[n].storeName field references this values as part of the mapping configuration. To use MongoDB Cloud as a data store, the data lake requires a serverless instance or an M10 or higher cluster.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Unique 24-hexadecimal digit string that identifies the project.Regex ^([a-f0-9]{24})$ .
	ProjectId *string `field:"optional" json:"projectId" yaml:"projectId"`
	// Allowed values atlas, http, online_archive, s3 and DataLakeAzureBlobStore.
	Provider *string `field:"optional" json:"provider" yaml:"provider"`
	// MongoDB Cloud cluster read preference, which describes how to route read requests to the cluster.
	ReadPreference *ReadPreference `field:"optional" json:"readPreference" yaml:"readPreference"`
}

Array that contains the data stores for the data lake.

type StoreDetail

type StoreDetail struct {
	// Human-readable label that identifies the Federated Database to update.
	AdditionalStorageClasses *[]*string `field:"optional" json:"additionalStorageClasses" yaml:"additionalStorageClasses"`
	// Human-readable label that identifies the Federated Database to update.
	Bucket *string `field:"optional" json:"bucket" yaml:"bucket"`
	// Human-readable label that identifies the Federated Database to update.
	Delimiter *string `field:"optional" json:"delimiter" yaml:"delimiter"`
	// Human-readable label that identifies the Federated Database to update.
	IncludeTags *bool `field:"optional" json:"includeTags" yaml:"includeTags"`
	// Human-readable label that identifies the data store.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Human-readable label that identifies the Federated Database to update.
	Prefix *string `field:"optional" json:"prefix" yaml:"prefix"`
	// Human-readable label that identifies the Federated Database to update.
	Provider *string `field:"optional" json:"provider" yaml:"provider"`
	// Human-readable label that identifies the Federated Database to update.
	Region *string `field:"optional" json:"region" yaml:"region"`
}

Configuration information for each data store and its mapping to MongoDB Cloud databases.

type SynchronousCreationOptions

type SynchronousCreationOptions struct {
	// Represents the time interval, measured in seconds, for the synchronous process to wait before checking again to verify if the job has been completed.
	//
	// example: if set to 20, it will chek every 20 seconds if the resource is completed, default (30 seconds).
	CallbackDelaySeconds *float64 `field:"optional" json:"callbackDelaySeconds" yaml:"callbackDelaySeconds"`
	// if set to true, the process will return success, in the event of a timeOut, default false.
	ReturnSuccessIfTimeOut *bool `field:"optional" json:"returnSuccessIfTimeOut" yaml:"returnSuccessIfTimeOut"`
	// The amount of time the process will wait until exiting with a success, default (1200 seconds).
	TimeOutInSeconds *float64 `field:"optional" json:"timeOutInSeconds" yaml:"timeOutInSeconds"`
}

Options that needs to be set to control the synchronous creation flow, this options need to be set if EnableSynchronousCreation is se to TRUE.

type SynonymSource

type SynonymSource struct {
	// Human-readable label that identifies the MongoDB collection that stores words and their applicable synonyms.
	Collection *string `field:"required" json:"collection" yaml:"collection"`
}

type Tag

type Tag struct {
	// Constant that defines the set of the tag.
	//
	// For example, environment in the environment : production tag.
	Key *string `field:"optional" json:"key" yaml:"key"`
	// Variable that belongs to the set of the tag.
	//
	// For example, production in the environment : production tag.
	Value *string `field:"optional" json:"value" yaml:"value"`
}

Advanced configuration details to add for one cluster in the specified project.

type TagSet

type TagSet struct {
	// Human-readable label of the tag.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Human-readable label of the tag.
	Value *string `field:"optional" json:"value" yaml:"value"`
}

type ThirdPartyIntegrationProps

type ThirdPartyIntegrationProps struct {
	// Unique 24-hexadecimal digit string that identifies your project.
	ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
	// Atlas API keys.
	Profile *string `field:"optional" json:"profile" yaml:"profile"`
}

type Validation

type Validation struct {
	Status         *string `field:"optional" json:"status" yaml:"status"`
	ValidationType *string `field:"optional" json:"validationType" yaml:"validationType"`
}

type View

type View struct {
	// Human-readable label that identifies the view, which corresponds to an aggregation pipeline on a collection.
	Name *string `field:"optional" json:"name" yaml:"name"`
	// Aggregation pipeline stages to apply to the source collection.
	Pipeline *string `field:"optional" json:"pipeline" yaml:"pipeline"`
	// Human-readable label that identifies the source collection for the view.
	Source *string `field:"optional" json:"source" yaml:"source"`
}

type ZoneMapping

type ZoneMapping struct {
	// Code that represents a location that maps to a zone in your global cluster.
	//
	// MongoDB Cloud represents this location with a ISO 3166-2 location and subdivision codes when possible.
	Location *string `field:"optional" json:"location" yaml:"location"`
	// Human-readable label that identifies the zone in your global cluster.
	//
	// This zone maps to a location code.
	Zone *string `field:"optional" json:"zone" yaml:"zone"`
}

Source Files

Directories

Path Synopsis
Package jsii contains the functionaility needed for jsii packages to initialize their dependencies and themselves.
Package jsii contains the functionaility needed for jsii packages to initialize their dependencies and themselves.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL