@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,187 lines • 158 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MemorydbCluster = exports.MemorydbClusterTimeoutsOutputReference = exports.MemorydbClusterShardsList = exports.MemorydbClusterShardsOutputReference = exports.MemorydbClusterShardsNodesList = exports.MemorydbClusterShardsNodesOutputReference = exports.MemorydbClusterShardsNodesEndpointList = exports.MemorydbClusterShardsNodesEndpointOutputReference = exports.MemorydbClusterClusterEndpointList = exports.MemorydbClusterClusterEndpointOutputReference = void 0;
exports.memorydbClusterClusterEndpointToTerraform = memorydbClusterClusterEndpointToTerraform;
exports.memorydbClusterClusterEndpointToHclTerraform = memorydbClusterClusterEndpointToHclTerraform;
exports.memorydbClusterShardsNodesEndpointToTerraform = memorydbClusterShardsNodesEndpointToTerraform;
exports.memorydbClusterShardsNodesEndpointToHclTerraform = memorydbClusterShardsNodesEndpointToHclTerraform;
exports.memorydbClusterShardsNodesToTerraform = memorydbClusterShardsNodesToTerraform;
exports.memorydbClusterShardsNodesToHclTerraform = memorydbClusterShardsNodesToHclTerraform;
exports.memorydbClusterShardsToTerraform = memorydbClusterShardsToTerraform;
exports.memorydbClusterShardsToHclTerraform = memorydbClusterShardsToHclTerraform;
exports.memorydbClusterTimeoutsToTerraform = memorydbClusterTimeoutsToTerraform;
exports.memorydbClusterTimeoutsToHclTerraform = memorydbClusterTimeoutsToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function memorydbClusterClusterEndpointToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function memorydbClusterClusterEndpointToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class MemorydbClusterClusterEndpointOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// address - computed: true, optional: false, required: false
get address() {
return this.getStringAttribute('address');
}
// port - computed: true, optional: false, required: false
get port() {
return this.getNumberAttribute('port');
}
}
exports.MemorydbClusterClusterEndpointOutputReference = MemorydbClusterClusterEndpointOutputReference;
_a = JSII_RTTI_SYMBOL_1;
MemorydbClusterClusterEndpointOutputReference[_a] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterClusterEndpointOutputReference", version: "21.22.1" };
class MemorydbClusterClusterEndpointList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new MemorydbClusterClusterEndpointOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.MemorydbClusterClusterEndpointList = MemorydbClusterClusterEndpointList;
_b = JSII_RTTI_SYMBOL_1;
MemorydbClusterClusterEndpointList[_b] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterClusterEndpointList", version: "21.22.1" };
function memorydbClusterShardsNodesEndpointToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function memorydbClusterShardsNodesEndpointToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class MemorydbClusterShardsNodesEndpointOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// address - computed: true, optional: false, required: false
get address() {
return this.getStringAttribute('address');
}
// port - computed: true, optional: false, required: false
get port() {
return this.getNumberAttribute('port');
}
}
exports.MemorydbClusterShardsNodesEndpointOutputReference = MemorydbClusterShardsNodesEndpointOutputReference;
_c = JSII_RTTI_SYMBOL_1;
MemorydbClusterShardsNodesEndpointOutputReference[_c] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterShardsNodesEndpointOutputReference", version: "21.22.1" };
class MemorydbClusterShardsNodesEndpointList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new MemorydbClusterShardsNodesEndpointOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.MemorydbClusterShardsNodesEndpointList = MemorydbClusterShardsNodesEndpointList;
_d = JSII_RTTI_SYMBOL_1;
MemorydbClusterShardsNodesEndpointList[_d] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterShardsNodesEndpointList", version: "21.22.1" };
function memorydbClusterShardsNodesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function memorydbClusterShardsNodesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class MemorydbClusterShardsNodesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// endpoint - computed: true, optional: false, required: false
this._endpoint = new MemorydbClusterShardsNodesEndpointList(this, "endpoint", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// availability_zone - computed: true, optional: false, required: false
get availabilityZone() {
return this.getStringAttribute('availability_zone');
}
// create_time - computed: true, optional: false, required: false
get createTime() {
return this.getStringAttribute('create_time');
}
get endpoint() {
return this._endpoint;
}
// name - computed: true, optional: false, required: false
get name() {
return this.getStringAttribute('name');
}
}
exports.MemorydbClusterShardsNodesOutputReference = MemorydbClusterShardsNodesOutputReference;
_e = JSII_RTTI_SYMBOL_1;
MemorydbClusterShardsNodesOutputReference[_e] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterShardsNodesOutputReference", version: "21.22.1" };
class MemorydbClusterShardsNodesList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new MemorydbClusterShardsNodesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.MemorydbClusterShardsNodesList = MemorydbClusterShardsNodesList;
_f = JSII_RTTI_SYMBOL_1;
MemorydbClusterShardsNodesList[_f] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterShardsNodesList", version: "21.22.1" };
function memorydbClusterShardsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function memorydbClusterShardsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class MemorydbClusterShardsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// nodes - computed: true, optional: false, required: false
this._nodes = new MemorydbClusterShardsNodesList(this, "nodes", true);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// name - computed: true, optional: false, required: false
get name() {
return this.getStringAttribute('name');
}
get nodes() {
return this._nodes;
}
// num_nodes - computed: true, optional: false, required: false
get numNodes() {
return this.getNumberAttribute('num_nodes');
}
// slots - computed: true, optional: false, required: false
get slots() {
return this.getStringAttribute('slots');
}
}
exports.MemorydbClusterShardsOutputReference = MemorydbClusterShardsOutputReference;
_g = JSII_RTTI_SYMBOL_1;
MemorydbClusterShardsOutputReference[_g] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterShardsOutputReference", version: "21.22.1" };
class MemorydbClusterShardsList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new MemorydbClusterShardsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.MemorydbClusterShardsList = MemorydbClusterShardsList;
_h = JSII_RTTI_SYMBOL_1;
MemorydbClusterShardsList[_h] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterShardsList", version: "21.22.1" };
function memorydbClusterTimeoutsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
function memorydbClusterTimeoutsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class MemorydbClusterTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.MemorydbClusterTimeoutsOutputReference = MemorydbClusterTimeoutsOutputReference;
_j = JSII_RTTI_SYMBOL_1;
MemorydbClusterTimeoutsOutputReference[_j] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbClusterTimeoutsOutputReference", version: "21.22.1" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/memorydb_cluster aws_memorydb_cluster}
*/
class MemorydbCluster extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a MemorydbCluster resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the MemorydbCluster to import
* @param importFromId The id of the existing MemorydbCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/memorydb_cluster#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the MemorydbCluster to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_memorydb_cluster", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/memorydb_cluster aws_memorydb_cluster} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options MemorydbClusterConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'aws_memorydb_cluster',
terraformGeneratorMetadata: {
providerName: 'aws',
providerVersion: '6.25.0',
providerVersionConstraint: '~> 6.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// cluster_endpoint - computed: true, optional: false, required: false
this._clusterEndpoint = new MemorydbClusterClusterEndpointList(this, "cluster_endpoint", false);
// shards - computed: true, optional: false, required: false
this._shards = new MemorydbClusterShardsList(this, "shards", true);
// timeouts - computed: false, optional: true, required: false
this._timeouts = new MemorydbClusterTimeoutsOutputReference(this, "timeouts");
this._aclName = config.aclName;
this._autoMinorVersionUpgrade = config.autoMinorVersionUpgrade;
this._dataTiering = config.dataTiering;
this._description = config.description;
this._engine = config.engine;
this._engineVersion = config.engineVersion;
this._finalSnapshotName = config.finalSnapshotName;
this._id = config.id;
this._kmsKeyArn = config.kmsKeyArn;
this._maintenanceWindow = config.maintenanceWindow;
this._multiRegionClusterName = config.multiRegionClusterName;
this._name = config.name;
this._namePrefix = config.namePrefix;
this._nodeType = config.nodeType;
this._numReplicasPerShard = config.numReplicasPerShard;
this._numShards = config.numShards;
this._parameterGroupName = config.parameterGroupName;
this._port = config.port;
this._region = config.region;
this._securityGroupIds = config.securityGroupIds;
this._snapshotArns = config.snapshotArns;
this._snapshotName = config.snapshotName;
this._snapshotRetentionLimit = config.snapshotRetentionLimit;
this._snapshotWindow = config.snapshotWindow;
this._snsTopicArn = config.snsTopicArn;
this._subnetGroupName = config.subnetGroupName;
this._tags = config.tags;
this._tagsAll = config.tagsAll;
this._tlsEnabled = config.tlsEnabled;
this._timeouts.internalValue = config.timeouts;
}
get aclName() {
return this.getStringAttribute('acl_name');
}
set aclName(value) {
this._aclName = value;
}
// Temporarily expose input value. Use with caution.
get aclNameInput() {
return this._aclName;
}
// arn - computed: true, optional: false, required: false
get arn() {
return this.getStringAttribute('arn');
}
get autoMinorVersionUpgrade() {
return this.getBooleanAttribute('auto_minor_version_upgrade');
}
set autoMinorVersionUpgrade(value) {
this._autoMinorVersionUpgrade = value;
}
resetAutoMinorVersionUpgrade() {
this._autoMinorVersionUpgrade = undefined;
}
// Temporarily expose input value. Use with caution.
get autoMinorVersionUpgradeInput() {
return this._autoMinorVersionUpgrade;
}
get clusterEndpoint() {
return this._clusterEndpoint;
}
get dataTiering() {
return this.getBooleanAttribute('data_tiering');
}
set dataTiering(value) {
this._dataTiering = value;
}
resetDataTiering() {
this._dataTiering = undefined;
}
// Temporarily expose input value. Use with caution.
get dataTieringInput() {
return this._dataTiering;
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get engine() {
return this.getStringAttribute('engine');
}
set engine(value) {
this._engine = value;
}
resetEngine() {
this._engine = undefined;
}
// Temporarily expose input value. Use with caution.
get engineInput() {
return this._engine;
}
// engine_patch_version - computed: true, optional: false, required: false
get enginePatchVersion() {
return this.getStringAttribute('engine_patch_version');
}
get engineVersion() {
return this.getStringAttribute('engine_version');
}
set engineVersion(value) {
this._engineVersion = value;
}
resetEngineVersion() {
this._engineVersion = undefined;
}
// Temporarily expose input value. Use with caution.
get engineVersionInput() {
return this._engineVersion;
}
get finalSnapshotName() {
return this.getStringAttribute('final_snapshot_name');
}
set finalSnapshotName(value) {
this._finalSnapshotName = value;
}
resetFinalSnapshotName() {
this._finalSnapshotName = undefined;
}
// Temporarily expose input value. Use with caution.
get finalSnapshotNameInput() {
return this._finalSnapshotName;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
get kmsKeyArn() {
return this.getStringAttribute('kms_key_arn');
}
set kmsKeyArn(value) {
this._kmsKeyArn = value;
}
resetKmsKeyArn() {
this._kmsKeyArn = undefined;
}
// Temporarily expose input value. Use with caution.
get kmsKeyArnInput() {
return this._kmsKeyArn;
}
get maintenanceWindow() {
return this.getStringAttribute('maintenance_window');
}
set maintenanceWindow(value) {
this._maintenanceWindow = value;
}
resetMaintenanceWindow() {
this._maintenanceWindow = undefined;
}
// Temporarily expose input value. Use with caution.
get maintenanceWindowInput() {
return this._maintenanceWindow;
}
get multiRegionClusterName() {
return this.getStringAttribute('multi_region_cluster_name');
}
set multiRegionClusterName(value) {
this._multiRegionClusterName = value;
}
resetMultiRegionClusterName() {
this._multiRegionClusterName = undefined;
}
// Temporarily expose input value. Use with caution.
get multiRegionClusterNameInput() {
return this._multiRegionClusterName;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
resetName() {
this._name = undefined;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get namePrefix() {
return this.getStringAttribute('name_prefix');
}
set namePrefix(value) {
this._namePrefix = value;
}
resetNamePrefix() {
this._namePrefix = undefined;
}
// Temporarily expose input value. Use with caution.
get namePrefixInput() {
return this._namePrefix;
}
get nodeType() {
return this.getStringAttribute('node_type');
}
set nodeType(value) {
this._nodeType = value;
}
// Temporarily expose input value. Use with caution.
get nodeTypeInput() {
return this._nodeType;
}
get numReplicasPerShard() {
return this.getNumberAttribute('num_replicas_per_shard');
}
set numReplicasPerShard(value) {
this._numReplicasPerShard = value;
}
resetNumReplicasPerShard() {
this._numReplicasPerShard = undefined;
}
// Temporarily expose input value. Use with caution.
get numReplicasPerShardInput() {
return this._numReplicasPerShard;
}
get numShards() {
return this.getNumberAttribute('num_shards');
}
set numShards(value) {
this._numShards = value;
}
resetNumShards() {
this._numShards = undefined;
}
// Temporarily expose input value. Use with caution.
get numShardsInput() {
return this._numShards;
}
get parameterGroupName() {
return this.getStringAttribute('parameter_group_name');
}
set parameterGroupName(value) {
this._parameterGroupName = value;
}
resetParameterGroupName() {
this._parameterGroupName = undefined;
}
// Temporarily expose input value. Use with caution.
get parameterGroupNameInput() {
return this._parameterGroupName;
}
get port() {
return this.getNumberAttribute('port');
}
set port(value) {
this._port = value;
}
resetPort() {
this._port = undefined;
}
// Temporarily expose input value. Use with caution.
get portInput() {
return this._port;
}
get region() {
return this.getStringAttribute('region');
}
set region(value) {
this._region = value;
}
resetRegion() {
this._region = undefined;
}
// Temporarily expose input value. Use with caution.
get regionInput() {
return this._region;
}
get securityGroupIds() {
return cdktf.Fn.tolist(this.getListAttribute('security_group_ids'));
}
set securityGroupIds(value) {
this._securityGroupIds = value;
}
resetSecurityGroupIds() {
this._securityGroupIds = undefined;
}
// Temporarily expose input value. Use with caution.
get securityGroupIdsInput() {
return this._securityGroupIds;
}
get shards() {
return this._shards;
}
get snapshotArns() {
return this.getListAttribute('snapshot_arns');
}
set snapshotArns(value) {
this._snapshotArns = value;
}
resetSnapshotArns() {
this._snapshotArns = undefined;
}
// Temporarily expose input value. Use with caution.
get snapshotArnsInput() {
return this._snapshotArns;
}
get snapshotName() {
return this.getStringAttribute('snapshot_name');
}
set snapshotName(value) {
this._snapshotName = value;
}
resetSnapshotName() {
this._snapshotName = undefined;
}
// Temporarily expose input value. Use with caution.
get snapshotNameInput() {
return this._snapshotName;
}
get snapshotRetentionLimit() {
return this.getNumberAttribute('snapshot_retention_limit');
}
set snapshotRetentionLimit(value) {
this._snapshotRetentionLimit = value;
}
resetSnapshotRetentionLimit() {
this._snapshotRetentionLimit = undefined;
}
// Temporarily expose input value. Use with caution.
get snapshotRetentionLimitInput() {
return this._snapshotRetentionLimit;
}
get snapshotWindow() {
return this.getStringAttribute('snapshot_window');
}
set snapshotWindow(value) {
this._snapshotWindow = value;
}
resetSnapshotWindow() {
this._snapshotWindow = undefined;
}
// Temporarily expose input value. Use with caution.
get snapshotWindowInput() {
return this._snapshotWindow;
}
get snsTopicArn() {
return this.getStringAttribute('sns_topic_arn');
}
set snsTopicArn(value) {
this._snsTopicArn = value;
}
resetSnsTopicArn() {
this._snsTopicArn = undefined;
}
// Temporarily expose input value. Use with caution.
get snsTopicArnInput() {
return this._snsTopicArn;
}
get subnetGroupName() {
return this.getStringAttribute('subnet_group_name');
}
set subnetGroupName(value) {
this._subnetGroupName = value;
}
resetSubnetGroupName() {
this._subnetGroupName = undefined;
}
// Temporarily expose input value. Use with caution.
get subnetGroupNameInput() {
return this._subnetGroupName;
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
get tagsAll() {
return this.getStringMapAttribute('tags_all');
}
set tagsAll(value) {
this._tagsAll = value;
}
resetTagsAll() {
this._tagsAll = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsAllInput() {
return this._tagsAll;
}
get tlsEnabled() {
return this.getBooleanAttribute('tls_enabled');
}
set tlsEnabled(value) {
this._tlsEnabled = value;
}
resetTlsEnabled() {
this._tlsEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get tlsEnabledInput() {
return this._tlsEnabled;
}
get timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
acl_name: cdktf.stringToTerraform(this._aclName),
auto_minor_version_upgrade: cdktf.booleanToTerraform(this._autoMinorVersionUpgrade),
data_tiering: cdktf.booleanToTerraform(this._dataTiering),
description: cdktf.stringToTerraform(this._description),
engine: cdktf.stringToTerraform(this._engine),
engine_version: cdktf.stringToTerraform(this._engineVersion),
final_snapshot_name: cdktf.stringToTerraform(this._finalSnapshotName),
id: cdktf.stringToTerraform(this._id),
kms_key_arn: cdktf.stringToTerraform(this._kmsKeyArn),
maintenance_window: cdktf.stringToTerraform(this._maintenanceWindow),
multi_region_cluster_name: cdktf.stringToTerraform(this._multiRegionClusterName),
name: cdktf.stringToTerraform(this._name),
name_prefix: cdktf.stringToTerraform(this._namePrefix),
node_type: cdktf.stringToTerraform(this._nodeType),
num_replicas_per_shard: cdktf.numberToTerraform(this._numReplicasPerShard),
num_shards: cdktf.numberToTerraform(this._numShards),
parameter_group_name: cdktf.stringToTerraform(this._parameterGroupName),
port: cdktf.numberToTerraform(this._port),
region: cdktf.stringToTerraform(this._region),
security_group_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(this._securityGroupIds),
snapshot_arns: cdktf.listMapper(cdktf.stringToTerraform, false)(this._snapshotArns),
snapshot_name: cdktf.stringToTerraform(this._snapshotName),
snapshot_retention_limit: cdktf.numberToTerraform(this._snapshotRetentionLimit),
snapshot_window: cdktf.stringToTerraform(this._snapshotWindow),
sns_topic_arn: cdktf.stringToTerraform(this._snsTopicArn),
subnet_group_name: cdktf.stringToTerraform(this._subnetGroupName),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
tags_all: cdktf.hashMapper(cdktf.stringToTerraform)(this._tagsAll),
tls_enabled: cdktf.booleanToTerraform(this._tlsEnabled),
timeouts: memorydbClusterTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
acl_name: {
value: cdktf.stringToHclTerraform(this._aclName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
auto_minor_version_upgrade: {
value: cdktf.booleanToHclTerraform(this._autoMinorVersionUpgrade),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
data_tiering: {
value: cdktf.booleanToHclTerraform(this._dataTiering),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
description: {
value: cdktf.stringToHclTerraform(this._description),
isBlock: false,
type: "simple",
storageClassType: "string",
},
engine: {
value: cdktf.stringToHclTerraform(this._engine),
isBlock: false,
type: "simple",
storageClassType: "string",
},
engine_version: {
value: cdktf.stringToHclTerraform(this._engineVersion),
isBlock: false,
type: "simple",
storageClassType: "string",
},
final_snapshot_name: {
value: cdktf.stringToHclTerraform(this._finalSnapshotName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
kms_key_arn: {
value: cdktf.stringToHclTerraform(this._kmsKeyArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
maintenance_window: {
value: cdktf.stringToHclTerraform(this._maintenanceWindow),
isBlock: false,
type: "simple",
storageClassType: "string",
},
multi_region_cluster_name: {
value: cdktf.stringToHclTerraform(this._multiRegionClusterName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name_prefix: {
value: cdktf.stringToHclTerraform(this._namePrefix),
isBlock: false,
type: "simple",
storageClassType: "string",
},
node_type: {
value: cdktf.stringToHclTerraform(this._nodeType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
num_replicas_per_shard: {
value: cdktf.numberToHclTerraform(this._numReplicasPerShard),
isBlock: false,
type: "simple",
storageClassType: "number",
},
num_shards: {
value: cdktf.numberToHclTerraform(this._numShards),
isBlock: false,
type: "simple",
storageClassType: "number",
},
parameter_group_name: {
value: cdktf.stringToHclTerraform(this._parameterGroupName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
port: {
value: cdktf.numberToHclTerraform(this._port),
isBlock: false,
type: "simple",
storageClassType: "number",
},
region: {
value: cdktf.stringToHclTerraform(this._region),
isBlock: false,
type: "simple",
storageClassType: "string",
},
security_group_ids: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._securityGroupIds),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
snapshot_arns: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._snapshotArns),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
snapshot_name: {
value: cdktf.stringToHclTerraform(this._snapshotName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
snapshot_retention_limit: {
value: cdktf.numberToHclTerraform(this._snapshotRetentionLimit),
isBlock: false,
type: "simple",
storageClassType: "number",
},
snapshot_window: {
value: cdktf.stringToHclTerraform(this._snapshotWindow),
isBlock: false,
type: "simple",
storageClassType: "string",
},
sns_topic_arn: {
value: cdktf.stringToHclTerraform(this._snsTopicArn),
isBlock: false,
type: "simple",
storageClassType: "string",
},
subnet_group_name: {
value: cdktf.stringToHclTerraform(this._subnetGroupName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
tags_all: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tagsAll),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
tls_enabled: {
value: cdktf.booleanToHclTerraform(this._tlsEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
timeouts: {
value: memorydbClusterTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "MemorydbClusterTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.MemorydbCluster = MemorydbCluster;
_k = JSII_RTTI_SYMBOL_1;
MemorydbCluster[_k] = { fqn: "@cdktf/provider-aws.memorydbCluster.MemorydbCluster", version: "21.22.1" };
// =================
// STATIC PROPERTIES
// =================
MemorydbCluster.tfResourceType = "aws_memorydb_cluster";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWVtb3J5ZGItY2x1c3Rlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBaUpBLDhGQU9DO0FBR0Qsb0dBUUM7QUE4REQsc0dBT0M7QUFHRCw0R0FRQztBQThERCxzRkFPQztBQUdELDRGQVFDO0FBeUVELDRFQU9DO0FBR0Qsa0ZBUUM7QUFxRkQsZ0ZBVUM7QUFHRCxzRkE0QkM7O0FBbmhCRCwrQkFBK0I7QUF3SS9CLFNBQWdCLHlDQUF5QyxDQUFDLE1BQXVDO0lBQy9GLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU8sRUFDTixDQUFBO0FBQ0gsQ0FBQztBQUdELFNBQWdCLDRDQUE0QyxDQUFDLE1BQXVDO0lBQ2xHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHLEVBQ2IsQ0FBQztJQUNGLE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELE1BQWEsNkNBQThDLFNB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