UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

2 lines (1 loc) 33.8 kB
"use strict";var _a,_b,_c,_d,_e;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnUser=exports.CfnSubnetGroup=exports.CfnParameterGroup=exports.CfnCluster=exports.CfnACL=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnACLPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("aclName",cdk.requiredValidator)(properties.aclName)),errors.collect(cdk.propertyValidator("aclName",cdk.validateString)(properties.aclName)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("userNames",cdk.listValidator(cdk.validateString))(properties.userNames)),errors.wrap('supplied properties not correct for "CfnACLProps"')}function cfnACLPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnACLPropsValidator(properties).assertSuccess(),{ACLName:cdk.stringToCloudFormation(properties.aclName),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),UserNames:cdk.listMapper(cdk.stringToCloudFormation)(properties.userNames)}):properties}function CfnACLPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("aclName","ACLName",cfn_parse.FromCloudFormation.getString(properties.ACLName)),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("userNames","UserNames",properties.UserNames!=null?cfn_parse.FromCloudFormation.getStringArray(properties.UserNames):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnACL extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnACL.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_memorydb_CfnACLProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnACL),error}cdk.requireProperty(props,"aclName",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrStatus=cdk.Token.asString(this.getAtt("Status",cdk.ResolutionTypeHint.STRING)),this.aclName=props.aclName,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::MemoryDB::ACL",props.tags,{tagPropertyName:"tags"}),this.userNames=props.userNames}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnACLPropsFromCloudFormation(resourceProperties),ret=new CfnACL(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnACL.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{aclName:this.aclName,tags:this.tags.renderTags(),userNames:this.userNames}}renderProperties(props){return cfnACLPropsToCloudFormation(props)}}exports.CfnACL=CfnACL,_a=JSII_RTTI_SYMBOL_1,CfnACL[_a]={fqn:"aws-cdk-lib.aws_memorydb.CfnACL",version:"2.70.0"},CfnACL.CFN_RESOURCE_TYPE_NAME="AWS::MemoryDB::ACL";function CfnClusterPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("aclName",cdk.requiredValidator)(properties.aclName)),errors.collect(cdk.propertyValidator("aclName",cdk.validateString)(properties.aclName)),errors.collect(cdk.propertyValidator("autoMinorVersionUpgrade",cdk.validateBoolean)(properties.autoMinorVersionUpgrade)),errors.collect(cdk.propertyValidator("clusterEndpoint",CfnCluster_EndpointPropertyValidator)(properties.clusterEndpoint)),errors.collect(cdk.propertyValidator("clusterName",cdk.requiredValidator)(properties.clusterName)),errors.collect(cdk.propertyValidator("clusterName",cdk.validateString)(properties.clusterName)),errors.collect(cdk.propertyValidator("dataTiering",cdk.validateString)(properties.dataTiering)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("engineVersion",cdk.validateString)(properties.engineVersion)),errors.collect(cdk.propertyValidator("finalSnapshotName",cdk.validateString)(properties.finalSnapshotName)),errors.collect(cdk.propertyValidator("kmsKeyId",cdk.validateString)(properties.kmsKeyId)),errors.collect(cdk.propertyValidator("maintenanceWindow",cdk.validateString)(properties.maintenanceWindow)),errors.collect(cdk.propertyValidator("nodeType",cdk.requiredValidator)(properties.nodeType)),errors.collect(cdk.propertyValidator("nodeType",cdk.validateString)(properties.nodeType)),errors.collect(cdk.propertyValidator("numReplicasPerShard",cdk.validateNumber)(properties.numReplicasPerShard)),errors.collect(cdk.propertyValidator("numShards",cdk.validateNumber)(properties.numShards)),errors.collect(cdk.propertyValidator("parameterGroupName",cdk.validateString)(properties.parameterGroupName)),errors.collect(cdk.propertyValidator("port",cdk.validateNumber)(properties.port)),errors.collect(cdk.propertyValidator("securityGroupIds",cdk.listValidator(cdk.validateString))(properties.securityGroupIds)),errors.collect(cdk.propertyValidator("snapshotArns",cdk.listValidator(cdk.validateString))(properties.snapshotArns)),errors.collect(cdk.propertyValidator("snapshotName",cdk.validateString)(properties.snapshotName)),errors.collect(cdk.propertyValidator("snapshotRetentionLimit",cdk.validateNumber)(properties.snapshotRetentionLimit)),errors.collect(cdk.propertyValidator("snapshotWindow",cdk.validateString)(properties.snapshotWindow)),errors.collect(cdk.propertyValidator("snsTopicArn",cdk.validateString)(properties.snsTopicArn)),errors.collect(cdk.propertyValidator("snsTopicStatus",cdk.validateString)(properties.snsTopicStatus)),errors.collect(cdk.propertyValidator("subnetGroupName",cdk.validateString)(properties.subnetGroupName)),errors.collect(cdk.propertyValidator("tlsEnabled",cdk.validateBoolean)(properties.tlsEnabled)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterProps"')}function cfnClusterPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterPropsValidator(properties).assertSuccess(),{ACLName:cdk.stringToCloudFormation(properties.aclName),ClusterName:cdk.stringToCloudFormation(properties.clusterName),NodeType:cdk.stringToCloudFormation(properties.nodeType),AutoMinorVersionUpgrade:cdk.booleanToCloudFormation(properties.autoMinorVersionUpgrade),ClusterEndpoint:cfnClusterEndpointPropertyToCloudFormation(properties.clusterEndpoint),DataTiering:cdk.stringToCloudFormation(properties.dataTiering),Description:cdk.stringToCloudFormation(properties.description),EngineVersion:cdk.stringToCloudFormation(properties.engineVersion),FinalSnapshotName:cdk.stringToCloudFormation(properties.finalSnapshotName),KmsKeyId:cdk.stringToCloudFormation(properties.kmsKeyId),MaintenanceWindow:cdk.stringToCloudFormation(properties.maintenanceWindow),NumReplicasPerShard:cdk.numberToCloudFormation(properties.numReplicasPerShard),NumShards:cdk.numberToCloudFormation(properties.numShards),ParameterGroupName:cdk.stringToCloudFormation(properties.parameterGroupName),Port:cdk.numberToCloudFormation(properties.port),SecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.securityGroupIds),SnapshotArns:cdk.listMapper(cdk.stringToCloudFormation)(properties.snapshotArns),SnapshotName:cdk.stringToCloudFormation(properties.snapshotName),SnapshotRetentionLimit:cdk.numberToCloudFormation(properties.snapshotRetentionLimit),SnapshotWindow:cdk.stringToCloudFormation(properties.snapshotWindow),SnsTopicArn:cdk.stringToCloudFormation(properties.snsTopicArn),SnsTopicStatus:cdk.stringToCloudFormation(properties.snsTopicStatus),SubnetGroupName:cdk.stringToCloudFormation(properties.subnetGroupName),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),TLSEnabled:cdk.booleanToCloudFormation(properties.tlsEnabled)}):properties}function CfnClusterPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("aclName","ACLName",cfn_parse.FromCloudFormation.getString(properties.ACLName)),ret.addPropertyResult("clusterName","ClusterName",cfn_parse.FromCloudFormation.getString(properties.ClusterName)),ret.addPropertyResult("nodeType","NodeType",cfn_parse.FromCloudFormation.getString(properties.NodeType)),ret.addPropertyResult("autoMinorVersionUpgrade","AutoMinorVersionUpgrade",properties.AutoMinorVersionUpgrade!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AutoMinorVersionUpgrade):void 0),ret.addPropertyResult("clusterEndpoint","ClusterEndpoint",properties.ClusterEndpoint!=null?CfnClusterEndpointPropertyFromCloudFormation(properties.ClusterEndpoint):void 0),ret.addPropertyResult("dataTiering","DataTiering",properties.DataTiering!=null?cfn_parse.FromCloudFormation.getString(properties.DataTiering):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("engineVersion","EngineVersion",properties.EngineVersion!=null?cfn_parse.FromCloudFormation.getString(properties.EngineVersion):void 0),ret.addPropertyResult("finalSnapshotName","FinalSnapshotName",properties.FinalSnapshotName!=null?cfn_parse.FromCloudFormation.getString(properties.FinalSnapshotName):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("maintenanceWindow","MaintenanceWindow",properties.MaintenanceWindow!=null?cfn_parse.FromCloudFormation.getString(properties.MaintenanceWindow):void 0),ret.addPropertyResult("numReplicasPerShard","NumReplicasPerShard",properties.NumReplicasPerShard!=null?cfn_parse.FromCloudFormation.getNumber(properties.NumReplicasPerShard):void 0),ret.addPropertyResult("numShards","NumShards",properties.NumShards!=null?cfn_parse.FromCloudFormation.getNumber(properties.NumShards):void 0),ret.addPropertyResult("parameterGroupName","ParameterGroupName",properties.ParameterGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.ParameterGroupName):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getNumber(properties.Port):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SecurityGroupIds):void 0),ret.addPropertyResult("snapshotArns","SnapshotArns",properties.SnapshotArns!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SnapshotArns):void 0),ret.addPropertyResult("snapshotName","SnapshotName",properties.SnapshotName!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotName):void 0),ret.addPropertyResult("snapshotRetentionLimit","SnapshotRetentionLimit",properties.SnapshotRetentionLimit!=null?cfn_parse.FromCloudFormation.getNumber(properties.SnapshotRetentionLimit):void 0),ret.addPropertyResult("snapshotWindow","SnapshotWindow",properties.SnapshotWindow!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotWindow):void 0),ret.addPropertyResult("snsTopicArn","SnsTopicArn",properties.SnsTopicArn!=null?cfn_parse.FromCloudFormation.getString(properties.SnsTopicArn):void 0),ret.addPropertyResult("snsTopicStatus","SnsTopicStatus",properties.SnsTopicStatus!=null?cfn_parse.FromCloudFormation.getString(properties.SnsTopicStatus):void 0),ret.addPropertyResult("subnetGroupName","SubnetGroupName",properties.SubnetGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.SubnetGroupName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("tlsEnabled","TLSEnabled",properties.TLSEnabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.TLSEnabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCluster extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCluster.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_memorydb_CfnClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCluster),error}cdk.requireProperty(props,"aclName",this),cdk.requireProperty(props,"clusterName",this),cdk.requireProperty(props,"nodeType",this),this.attrArn=cdk.Token.asString(this.getAtt("ARN",cdk.ResolutionTypeHint.STRING)),this.attrClusterEndpointAddress=cdk.Token.asString(this.getAtt("ClusterEndpoint.Address",cdk.ResolutionTypeHint.STRING)),this.attrClusterEndpointPort=cdk.Token.asNumber(this.getAtt("ClusterEndpoint.Port",cdk.ResolutionTypeHint.NUMBER)),this.attrParameterGroupStatus=cdk.Token.asString(this.getAtt("ParameterGroupStatus",cdk.ResolutionTypeHint.STRING)),this.attrStatus=cdk.Token.asString(this.getAtt("Status",cdk.ResolutionTypeHint.STRING)),this.aclName=props.aclName,this.clusterName=props.clusterName,this.nodeType=props.nodeType,this.autoMinorVersionUpgrade=props.autoMinorVersionUpgrade,this.clusterEndpoint=props.clusterEndpoint,this.dataTiering=props.dataTiering,this.description=props.description,this.engineVersion=props.engineVersion,this.finalSnapshotName=props.finalSnapshotName,this.kmsKeyId=props.kmsKeyId,this.maintenanceWindow=props.maintenanceWindow,this.numReplicasPerShard=props.numReplicasPerShard,this.numShards=props.numShards,this.parameterGroupName=props.parameterGroupName,this.port=props.port,this.securityGroupIds=props.securityGroupIds,this.snapshotArns=props.snapshotArns,this.snapshotName=props.snapshotName,this.snapshotRetentionLimit=props.snapshotRetentionLimit,this.snapshotWindow=props.snapshotWindow,this.snsTopicArn=props.snsTopicArn,this.snsTopicStatus=props.snsTopicStatus,this.subnetGroupName=props.subnetGroupName,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::MemoryDB::Cluster",props.tags,{tagPropertyName:"tags"}),this.tlsEnabled=props.tlsEnabled}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterPropsFromCloudFormation(resourceProperties),ret=new CfnCluster(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnCluster.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{aclName:this.aclName,clusterName:this.clusterName,nodeType:this.nodeType,autoMinorVersionUpgrade:this.autoMinorVersionUpgrade,clusterEndpoint:this.clusterEndpoint,dataTiering:this.dataTiering,description:this.description,engineVersion:this.engineVersion,finalSnapshotName:this.finalSnapshotName,kmsKeyId:this.kmsKeyId,maintenanceWindow:this.maintenanceWindow,numReplicasPerShard:this.numReplicasPerShard,numShards:this.numShards,parameterGroupName:this.parameterGroupName,port:this.port,securityGroupIds:this.securityGroupIds,snapshotArns:this.snapshotArns,snapshotName:this.snapshotName,snapshotRetentionLimit:this.snapshotRetentionLimit,snapshotWindow:this.snapshotWindow,snsTopicArn:this.snsTopicArn,snsTopicStatus:this.snsTopicStatus,subnetGroupName:this.subnetGroupName,tags:this.tags.renderTags(),tlsEnabled:this.tlsEnabled}}renderProperties(props){return cfnClusterPropsToCloudFormation(props)}}exports.CfnCluster=CfnCluster,_b=JSII_RTTI_SYMBOL_1,CfnCluster[_b]={fqn:"aws-cdk-lib.aws_memorydb.CfnCluster",version:"2.70.0"},CfnCluster.CFN_RESOURCE_TYPE_NAME="AWS::MemoryDB::Cluster";function CfnCluster_EndpointPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("address",cdk.validateString)(properties.address)),errors.collect(cdk.propertyValidator("port",cdk.validateNumber)(properties.port)),errors.wrap('supplied properties not correct for "EndpointProperty"')}function cfnClusterEndpointPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_EndpointPropertyValidator(properties).assertSuccess(),{Address:cdk.stringToCloudFormation(properties.address),Port:cdk.numberToCloudFormation(properties.port)}):properties}function CfnClusterEndpointPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("address","Address",properties.Address!=null?cfn_parse.FromCloudFormation.getString(properties.Address):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getNumber(properties.Port):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnParameterGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("family",cdk.requiredValidator)(properties.family)),errors.collect(cdk.propertyValidator("family",cdk.validateString)(properties.family)),errors.collect(cdk.propertyValidator("parameterGroupName",cdk.requiredValidator)(properties.parameterGroupName)),errors.collect(cdk.propertyValidator("parameterGroupName",cdk.validateString)(properties.parameterGroupName)),errors.collect(cdk.propertyValidator("parameters",cdk.validateObject)(properties.parameters)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnParameterGroupProps"')}function cfnParameterGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnParameterGroupPropsValidator(properties).assertSuccess(),{Family:cdk.stringToCloudFormation(properties.family),ParameterGroupName:cdk.stringToCloudFormation(properties.parameterGroupName),Description:cdk.stringToCloudFormation(properties.description),Parameters:cdk.objectToCloudFormation(properties.parameters),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnParameterGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("family","Family",cfn_parse.FromCloudFormation.getString(properties.Family)),ret.addPropertyResult("parameterGroupName","ParameterGroupName",cfn_parse.FromCloudFormation.getString(properties.ParameterGroupName)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse.FromCloudFormation.getAny(properties.Parameters):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnParameterGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnParameterGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_memorydb_CfnParameterGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnParameterGroup),error}cdk.requireProperty(props,"family",this),cdk.requireProperty(props,"parameterGroupName",this),this.attrArn=cdk.Token.asString(this.getAtt("ARN",cdk.ResolutionTypeHint.STRING)),this.family=props.family,this.parameterGroupName=props.parameterGroupName,this.description=props.description,this.parameters=props.parameters,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::MemoryDB::ParameterGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnParameterGroupPropsFromCloudFormation(resourceProperties),ret=new CfnParameterGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnParameterGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{family:this.family,parameterGroupName:this.parameterGroupName,description:this.description,parameters:this.parameters,tags:this.tags.renderTags()}}renderProperties(props){return cfnParameterGroupPropsToCloudFormation(props)}}exports.CfnParameterGroup=CfnParameterGroup,_c=JSII_RTTI_SYMBOL_1,CfnParameterGroup[_c]={fqn:"aws-cdk-lib.aws_memorydb.CfnParameterGroup",version:"2.70.0"},CfnParameterGroup.CFN_RESOURCE_TYPE_NAME="AWS::MemoryDB::ParameterGroup";function CfnSubnetGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("subnetGroupName",cdk.requiredValidator)(properties.subnetGroupName)),errors.collect(cdk.propertyValidator("subnetGroupName",cdk.validateString)(properties.subnetGroupName)),errors.collect(cdk.propertyValidator("subnetIds",cdk.requiredValidator)(properties.subnetIds)),errors.collect(cdk.propertyValidator("subnetIds",cdk.listValidator(cdk.validateString))(properties.subnetIds)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnSubnetGroupProps"')}function cfnSubnetGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnSubnetGroupPropsValidator(properties).assertSuccess(),{SubnetGroupName:cdk.stringToCloudFormation(properties.subnetGroupName),SubnetIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds),Description:cdk.stringToCloudFormation(properties.description),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnSubnetGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("subnetGroupName","SubnetGroupName",cfn_parse.FromCloudFormation.getString(properties.SubnetGroupName)),ret.addPropertyResult("subnetIds","SubnetIds",cfn_parse.FromCloudFormation.getStringArray(properties.SubnetIds)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnSubnetGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnSubnetGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_memorydb_CfnSubnetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSubnetGroup),error}cdk.requireProperty(props,"subnetGroupName",this),cdk.requireProperty(props,"subnetIds",this),this.attrArn=cdk.Token.asString(this.getAtt("ARN",cdk.ResolutionTypeHint.STRING)),this.subnetGroupName=props.subnetGroupName,this.subnetIds=props.subnetIds,this.description=props.description,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::MemoryDB::SubnetGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSubnetGroupPropsFromCloudFormation(resourceProperties),ret=new CfnSubnetGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnSubnetGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{subnetGroupName:this.subnetGroupName,subnetIds:this.subnetIds,description:this.description,tags:this.tags.renderTags()}}renderProperties(props){return cfnSubnetGroupPropsToCloudFormation(props)}}exports.CfnSubnetGroup=CfnSubnetGroup,_d=JSII_RTTI_SYMBOL_1,CfnSubnetGroup[_d]={fqn:"aws-cdk-lib.aws_memorydb.CfnSubnetGroup",version:"2.70.0"},CfnSubnetGroup.CFN_RESOURCE_TYPE_NAME="AWS::MemoryDB::SubnetGroup";function CfnUserPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("accessString",cdk.requiredValidator)(properties.accessString)),errors.collect(cdk.propertyValidator("accessString",cdk.validateString)(properties.accessString)),errors.collect(cdk.propertyValidator("authenticationMode",cdk.requiredValidator)(properties.authenticationMode)),errors.collect(cdk.propertyValidator("authenticationMode",cdk.validateObject)(properties.authenticationMode)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("userName",cdk.requiredValidator)(properties.userName)),errors.collect(cdk.propertyValidator("userName",cdk.validateString)(properties.userName)),errors.wrap('supplied properties not correct for "CfnUserProps"')}function cfnUserPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnUserPropsValidator(properties).assertSuccess(),{AccessString:cdk.stringToCloudFormation(properties.accessString),AuthenticationMode:cdk.objectToCloudFormation(properties.authenticationMode),UserName:cdk.stringToCloudFormation(properties.userName),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnUserPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("accessString","AccessString",cfn_parse.FromCloudFormation.getString(properties.AccessString)),ret.addPropertyResult("authenticationMode","AuthenticationMode",cfn_parse.FromCloudFormation.getAny(properties.AuthenticationMode)),ret.addPropertyResult("userName","UserName",cfn_parse.FromCloudFormation.getString(properties.UserName)),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnUser extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnUser.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_memorydb_CfnUserProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnUser),error}cdk.requireProperty(props,"accessString",this),cdk.requireProperty(props,"authenticationMode",this),cdk.requireProperty(props,"userName",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrStatus=cdk.Token.asString(this.getAtt("Status",cdk.ResolutionTypeHint.STRING)),this.accessString=props.accessString,this.authenticationMode=props.authenticationMode,this.userName=props.userName,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::MemoryDB::User",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnUserPropsFromCloudFormation(resourceProperties),ret=new CfnUser(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnUser.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{accessString:this.accessString,authenticationMode:this.authenticationMode,userName:this.userName,tags:this.tags.renderTags()}}renderProperties(props){return cfnUserPropsToCloudFormation(props)}}exports.CfnUser=CfnUser,_e=JSII_RTTI_SYMBOL_1,CfnUser[_e]={fqn:"aws-cdk-lib.aws_memorydb.CfnUser",version:"2.70.0"},CfnUser.CFN_RESOURCE_TYPE_NAME="AWS::MemoryDB::User";function CfnUser_AuthenticationModePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("passwords",cdk.listValidator(cdk.validateString))(properties.passwords)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "AuthenticationModeProperty"')}function cfnUserAuthenticationModePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnUser_AuthenticationModePropertyValidator(properties).assertSuccess(),{Passwords:cdk.listMapper(cdk.stringToCloudFormation)(properties.passwords),Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnUserAuthenticationModePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("passwords","Passwords",properties.Passwords!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Passwords):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse.FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}