aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1 lines • 76.7 kB
JavaScript
"use strict";var _a,_b,_c,_d;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnServerlessCluster=exports.CfnConfiguration=exports.CfnCluster=exports.CfnBatchScramSecret=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 CfnBatchScramSecretPropsValidator(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("clusterArn",cdk.requiredValidator)(properties.clusterArn)),errors.collect(cdk.propertyValidator("clusterArn",cdk.validateString)(properties.clusterArn)),errors.collect(cdk.propertyValidator("secretArnList",cdk.listValidator(cdk.validateString))(properties.secretArnList)),errors.wrap('supplied properties not correct for "CfnBatchScramSecretProps"')}function cfnBatchScramSecretPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBatchScramSecretPropsValidator(properties).assertSuccess(),{ClusterArn:cdk.stringToCloudFormation(properties.clusterArn),SecretArnList:cdk.listMapper(cdk.stringToCloudFormation)(properties.secretArnList)}):properties}function CfnBatchScramSecretPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("clusterArn","ClusterArn",cfn_parse.FromCloudFormation.getString(properties.ClusterArn)),ret.addPropertyResult("secretArnList","SecretArnList",properties.SecretArnList!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SecretArnList):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBatchScramSecret extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnBatchScramSecret.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_msk_CfnBatchScramSecretProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBatchScramSecret),error}cdk.requireProperty(props,"clusterArn",this),this.clusterArn=props.clusterArn,this.secretArnList=props.secretArnList}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBatchScramSecretPropsFromCloudFormation(resourceProperties),ret=new CfnBatchScramSecret(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",CfnBatchScramSecret.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{clusterArn:this.clusterArn,secretArnList:this.secretArnList}}renderProperties(props){return cfnBatchScramSecretPropsToCloudFormation(props)}}exports.CfnBatchScramSecret=CfnBatchScramSecret,_a=JSII_RTTI_SYMBOL_1,CfnBatchScramSecret[_a]={fqn:"aws-cdk-lib.aws_msk.CfnBatchScramSecret",version:"2.70.0"},CfnBatchScramSecret.CFN_RESOURCE_TYPE_NAME="AWS::MSK::BatchScramSecret";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("brokerNodeGroupInfo",cdk.requiredValidator)(properties.brokerNodeGroupInfo)),errors.collect(cdk.propertyValidator("brokerNodeGroupInfo",CfnCluster_BrokerNodeGroupInfoPropertyValidator)(properties.brokerNodeGroupInfo)),errors.collect(cdk.propertyValidator("clientAuthentication",CfnCluster_ClientAuthenticationPropertyValidator)(properties.clientAuthentication)),errors.collect(cdk.propertyValidator("clusterName",cdk.requiredValidator)(properties.clusterName)),errors.collect(cdk.propertyValidator("clusterName",cdk.validateString)(properties.clusterName)),errors.collect(cdk.propertyValidator("configurationInfo",CfnCluster_ConfigurationInfoPropertyValidator)(properties.configurationInfo)),errors.collect(cdk.propertyValidator("currentVersion",cdk.validateString)(properties.currentVersion)),errors.collect(cdk.propertyValidator("encryptionInfo",CfnCluster_EncryptionInfoPropertyValidator)(properties.encryptionInfo)),errors.collect(cdk.propertyValidator("enhancedMonitoring",cdk.validateString)(properties.enhancedMonitoring)),errors.collect(cdk.propertyValidator("kafkaVersion",cdk.requiredValidator)(properties.kafkaVersion)),errors.collect(cdk.propertyValidator("kafkaVersion",cdk.validateString)(properties.kafkaVersion)),errors.collect(cdk.propertyValidator("loggingInfo",CfnCluster_LoggingInfoPropertyValidator)(properties.loggingInfo)),errors.collect(cdk.propertyValidator("numberOfBrokerNodes",cdk.requiredValidator)(properties.numberOfBrokerNodes)),errors.collect(cdk.propertyValidator("numberOfBrokerNodes",cdk.validateNumber)(properties.numberOfBrokerNodes)),errors.collect(cdk.propertyValidator("openMonitoring",CfnCluster_OpenMonitoringPropertyValidator)(properties.openMonitoring)),errors.collect(cdk.propertyValidator("storageMode",cdk.validateString)(properties.storageMode)),errors.collect(cdk.propertyValidator("tags",cdk.hashValidator(cdk.validateString))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterProps"')}function cfnClusterPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterPropsValidator(properties).assertSuccess(),{BrokerNodeGroupInfo:cfnClusterBrokerNodeGroupInfoPropertyToCloudFormation(properties.brokerNodeGroupInfo),ClusterName:cdk.stringToCloudFormation(properties.clusterName),KafkaVersion:cdk.stringToCloudFormation(properties.kafkaVersion),NumberOfBrokerNodes:cdk.numberToCloudFormation(properties.numberOfBrokerNodes),ClientAuthentication:cfnClusterClientAuthenticationPropertyToCloudFormation(properties.clientAuthentication),ConfigurationInfo:cfnClusterConfigurationInfoPropertyToCloudFormation(properties.configurationInfo),CurrentVersion:cdk.stringToCloudFormation(properties.currentVersion),EncryptionInfo:cfnClusterEncryptionInfoPropertyToCloudFormation(properties.encryptionInfo),EnhancedMonitoring:cdk.stringToCloudFormation(properties.enhancedMonitoring),LoggingInfo:cfnClusterLoggingInfoPropertyToCloudFormation(properties.loggingInfo),OpenMonitoring:cfnClusterOpenMonitoringPropertyToCloudFormation(properties.openMonitoring),StorageMode:cdk.stringToCloudFormation(properties.storageMode),Tags:cdk.hashMapper(cdk.stringToCloudFormation)(properties.tags)}):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("brokerNodeGroupInfo","BrokerNodeGroupInfo",CfnClusterBrokerNodeGroupInfoPropertyFromCloudFormation(properties.BrokerNodeGroupInfo)),ret.addPropertyResult("clusterName","ClusterName",cfn_parse.FromCloudFormation.getString(properties.ClusterName)),ret.addPropertyResult("kafkaVersion","KafkaVersion",cfn_parse.FromCloudFormation.getString(properties.KafkaVersion)),ret.addPropertyResult("numberOfBrokerNodes","NumberOfBrokerNodes",cfn_parse.FromCloudFormation.getNumber(properties.NumberOfBrokerNodes)),ret.addPropertyResult("clientAuthentication","ClientAuthentication",properties.ClientAuthentication!=null?CfnClusterClientAuthenticationPropertyFromCloudFormation(properties.ClientAuthentication):void 0),ret.addPropertyResult("configurationInfo","ConfigurationInfo",properties.ConfigurationInfo!=null?CfnClusterConfigurationInfoPropertyFromCloudFormation(properties.ConfigurationInfo):void 0),ret.addPropertyResult("currentVersion","CurrentVersion",properties.CurrentVersion!=null?cfn_parse.FromCloudFormation.getString(properties.CurrentVersion):void 0),ret.addPropertyResult("encryptionInfo","EncryptionInfo",properties.EncryptionInfo!=null?CfnClusterEncryptionInfoPropertyFromCloudFormation(properties.EncryptionInfo):void 0),ret.addPropertyResult("enhancedMonitoring","EnhancedMonitoring",properties.EnhancedMonitoring!=null?cfn_parse.FromCloudFormation.getString(properties.EnhancedMonitoring):void 0),ret.addPropertyResult("loggingInfo","LoggingInfo",properties.LoggingInfo!=null?CfnClusterLoggingInfoPropertyFromCloudFormation(properties.LoggingInfo):void 0),ret.addPropertyResult("openMonitoring","OpenMonitoring",properties.OpenMonitoring!=null?CfnClusterOpenMonitoringPropertyFromCloudFormation(properties.OpenMonitoring):void 0),ret.addPropertyResult("storageMode","StorageMode",properties.StorageMode!=null?cfn_parse.FromCloudFormation.getString(properties.StorageMode):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Tags):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_msk_CfnClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCluster),error}cdk.requireProperty(props,"brokerNodeGroupInfo",this),cdk.requireProperty(props,"clusterName",this),cdk.requireProperty(props,"kafkaVersion",this),cdk.requireProperty(props,"numberOfBrokerNodes",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.brokerNodeGroupInfo=props.brokerNodeGroupInfo,this.clusterName=props.clusterName,this.kafkaVersion=props.kafkaVersion,this.numberOfBrokerNodes=props.numberOfBrokerNodes,this.clientAuthentication=props.clientAuthentication,this.configurationInfo=props.configurationInfo,this.currentVersion=props.currentVersion,this.encryptionInfo=props.encryptionInfo,this.enhancedMonitoring=props.enhancedMonitoring,this.loggingInfo=props.loggingInfo,this.openMonitoring=props.openMonitoring,this.storageMode=props.storageMode,this.tags=new cdk.TagManager(cdk.TagType.MAP,"AWS::MSK::Cluster",props.tags,{tagPropertyName:"tags"})}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{brokerNodeGroupInfo:this.brokerNodeGroupInfo,clusterName:this.clusterName,kafkaVersion:this.kafkaVersion,numberOfBrokerNodes:this.numberOfBrokerNodes,clientAuthentication:this.clientAuthentication,configurationInfo:this.configurationInfo,currentVersion:this.currentVersion,encryptionInfo:this.encryptionInfo,enhancedMonitoring:this.enhancedMonitoring,loggingInfo:this.loggingInfo,openMonitoring:this.openMonitoring,storageMode:this.storageMode,tags:this.tags.renderTags()}}renderProperties(props){return cfnClusterPropsToCloudFormation(props)}}exports.CfnCluster=CfnCluster,_b=JSII_RTTI_SYMBOL_1,CfnCluster[_b]={fqn:"aws-cdk-lib.aws_msk.CfnCluster",version:"2.70.0"},CfnCluster.CFN_RESOURCE_TYPE_NAME="AWS::MSK::Cluster";function CfnCluster_BrokerLogsPropertyValidator(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("cloudWatchLogs",CfnCluster_CloudWatchLogsPropertyValidator)(properties.cloudWatchLogs)),errors.collect(cdk.propertyValidator("firehose",CfnCluster_FirehosePropertyValidator)(properties.firehose)),errors.collect(cdk.propertyValidator("s3",CfnCluster_S3PropertyValidator)(properties.s3)),errors.wrap('supplied properties not correct for "BrokerLogsProperty"')}function cfnClusterBrokerLogsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_BrokerLogsPropertyValidator(properties).assertSuccess(),{CloudWatchLogs:cfnClusterCloudWatchLogsPropertyToCloudFormation(properties.cloudWatchLogs),Firehose:cfnClusterFirehosePropertyToCloudFormation(properties.firehose),S3:cfnClusterS3PropertyToCloudFormation(properties.s3)}):properties}function CfnClusterBrokerLogsPropertyFromCloudFormation(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("cloudWatchLogs","CloudWatchLogs",properties.CloudWatchLogs!=null?CfnClusterCloudWatchLogsPropertyFromCloudFormation(properties.CloudWatchLogs):void 0),ret.addPropertyResult("firehose","Firehose",properties.Firehose!=null?CfnClusterFirehosePropertyFromCloudFormation(properties.Firehose):void 0),ret.addPropertyResult("s3","S3",properties.S3!=null?CfnClusterS3PropertyFromCloudFormation(properties.S3):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_BrokerNodeGroupInfoPropertyValidator(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("brokerAzDistribution",cdk.validateString)(properties.brokerAzDistribution)),errors.collect(cdk.propertyValidator("clientSubnets",cdk.requiredValidator)(properties.clientSubnets)),errors.collect(cdk.propertyValidator("clientSubnets",cdk.listValidator(cdk.validateString))(properties.clientSubnets)),errors.collect(cdk.propertyValidator("connectivityInfo",CfnCluster_ConnectivityInfoPropertyValidator)(properties.connectivityInfo)),errors.collect(cdk.propertyValidator("instanceType",cdk.requiredValidator)(properties.instanceType)),errors.collect(cdk.propertyValidator("instanceType",cdk.validateString)(properties.instanceType)),errors.collect(cdk.propertyValidator("securityGroups",cdk.listValidator(cdk.validateString))(properties.securityGroups)),errors.collect(cdk.propertyValidator("storageInfo",CfnCluster_StorageInfoPropertyValidator)(properties.storageInfo)),errors.wrap('supplied properties not correct for "BrokerNodeGroupInfoProperty"')}function cfnClusterBrokerNodeGroupInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_BrokerNodeGroupInfoPropertyValidator(properties).assertSuccess(),{BrokerAZDistribution:cdk.stringToCloudFormation(properties.brokerAzDistribution),ClientSubnets:cdk.listMapper(cdk.stringToCloudFormation)(properties.clientSubnets),ConnectivityInfo:cfnClusterConnectivityInfoPropertyToCloudFormation(properties.connectivityInfo),InstanceType:cdk.stringToCloudFormation(properties.instanceType),SecurityGroups:cdk.listMapper(cdk.stringToCloudFormation)(properties.securityGroups),StorageInfo:cfnClusterStorageInfoPropertyToCloudFormation(properties.storageInfo)}):properties}function CfnClusterBrokerNodeGroupInfoPropertyFromCloudFormation(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("brokerAzDistribution","BrokerAZDistribution",properties.BrokerAZDistribution!=null?cfn_parse.FromCloudFormation.getString(properties.BrokerAZDistribution):void 0),ret.addPropertyResult("clientSubnets","ClientSubnets",cfn_parse.FromCloudFormation.getStringArray(properties.ClientSubnets)),ret.addPropertyResult("connectivityInfo","ConnectivityInfo",properties.ConnectivityInfo!=null?CfnClusterConnectivityInfoPropertyFromCloudFormation(properties.ConnectivityInfo):void 0),ret.addPropertyResult("instanceType","InstanceType",cfn_parse.FromCloudFormation.getString(properties.InstanceType)),ret.addPropertyResult("securityGroups","SecurityGroups",properties.SecurityGroups!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SecurityGroups):void 0),ret.addPropertyResult("storageInfo","StorageInfo",properties.StorageInfo!=null?CfnClusterStorageInfoPropertyFromCloudFormation(properties.StorageInfo):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_ClientAuthenticationPropertyValidator(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("sasl",CfnCluster_SaslPropertyValidator)(properties.sasl)),errors.collect(cdk.propertyValidator("tls",CfnCluster_TlsPropertyValidator)(properties.tls)),errors.collect(cdk.propertyValidator("unauthenticated",CfnCluster_UnauthenticatedPropertyValidator)(properties.unauthenticated)),errors.wrap('supplied properties not correct for "ClientAuthenticationProperty"')}function cfnClusterClientAuthenticationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_ClientAuthenticationPropertyValidator(properties).assertSuccess(),{Sasl:cfnClusterSaslPropertyToCloudFormation(properties.sasl),Tls:cfnClusterTlsPropertyToCloudFormation(properties.tls),Unauthenticated:cfnClusterUnauthenticatedPropertyToCloudFormation(properties.unauthenticated)}):properties}function CfnClusterClientAuthenticationPropertyFromCloudFormation(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("sasl","Sasl",properties.Sasl!=null?CfnClusterSaslPropertyFromCloudFormation(properties.Sasl):void 0),ret.addPropertyResult("tls","Tls",properties.Tls!=null?CfnClusterTlsPropertyFromCloudFormation(properties.Tls):void 0),ret.addPropertyResult("unauthenticated","Unauthenticated",properties.Unauthenticated!=null?CfnClusterUnauthenticatedPropertyFromCloudFormation(properties.Unauthenticated):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_CloudWatchLogsPropertyValidator(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("enabled",cdk.requiredValidator)(properties.enabled)),errors.collect(cdk.propertyValidator("enabled",cdk.validateBoolean)(properties.enabled)),errors.collect(cdk.propertyValidator("logGroup",cdk.validateString)(properties.logGroup)),errors.wrap('supplied properties not correct for "CloudWatchLogsProperty"')}function cfnClusterCloudWatchLogsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_CloudWatchLogsPropertyValidator(properties).assertSuccess(),{Enabled:cdk.booleanToCloudFormation(properties.enabled),LogGroup:cdk.stringToCloudFormation(properties.logGroup)}):properties}function CfnClusterCloudWatchLogsPropertyFromCloudFormation(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("enabled","Enabled",cfn_parse.FromCloudFormation.getBoolean(properties.Enabled)),ret.addPropertyResult("logGroup","LogGroup",properties.LogGroup!=null?cfn_parse.FromCloudFormation.getString(properties.LogGroup):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_ConfigurationInfoPropertyValidator(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("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("revision",cdk.requiredValidator)(properties.revision)),errors.collect(cdk.propertyValidator("revision",cdk.validateNumber)(properties.revision)),errors.wrap('supplied properties not correct for "ConfigurationInfoProperty"')}function cfnClusterConfigurationInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_ConfigurationInfoPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),Revision:cdk.numberToCloudFormation(properties.revision)}):properties}function CfnClusterConfigurationInfoPropertyFromCloudFormation(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("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("revision","Revision",cfn_parse.FromCloudFormation.getNumber(properties.Revision)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_ConnectivityInfoPropertyValidator(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("publicAccess",CfnCluster_PublicAccessPropertyValidator)(properties.publicAccess)),errors.collect(cdk.propertyValidator("vpcConnectivity",CfnCluster_VpcConnectivityPropertyValidator)(properties.vpcConnectivity)),errors.wrap('supplied properties not correct for "ConnectivityInfoProperty"')}function cfnClusterConnectivityInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_ConnectivityInfoPropertyValidator(properties).assertSuccess(),{PublicAccess:cfnClusterPublicAccessPropertyToCloudFormation(properties.publicAccess),VpcConnectivity:cfnClusterVpcConnectivityPropertyToCloudFormation(properties.vpcConnectivity)}):properties}function CfnClusterConnectivityInfoPropertyFromCloudFormation(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("publicAccess","PublicAccess",properties.PublicAccess!=null?CfnClusterPublicAccessPropertyFromCloudFormation(properties.PublicAccess):void 0),ret.addPropertyResult("vpcConnectivity","VpcConnectivity",properties.VpcConnectivity!=null?CfnClusterVpcConnectivityPropertyFromCloudFormation(properties.VpcConnectivity):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_EBSStorageInfoPropertyValidator(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("provisionedThroughput",CfnCluster_ProvisionedThroughputPropertyValidator)(properties.provisionedThroughput)),errors.collect(cdk.propertyValidator("volumeSize",cdk.validateNumber)(properties.volumeSize)),errors.wrap('supplied properties not correct for "EBSStorageInfoProperty"')}function cfnClusterEBSStorageInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_EBSStorageInfoPropertyValidator(properties).assertSuccess(),{ProvisionedThroughput:cfnClusterProvisionedThroughputPropertyToCloudFormation(properties.provisionedThroughput),VolumeSize:cdk.numberToCloudFormation(properties.volumeSize)}):properties}function CfnClusterEBSStorageInfoPropertyFromCloudFormation(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("provisionedThroughput","ProvisionedThroughput",properties.ProvisionedThroughput!=null?CfnClusterProvisionedThroughputPropertyFromCloudFormation(properties.ProvisionedThroughput):void 0),ret.addPropertyResult("volumeSize","VolumeSize",properties.VolumeSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.VolumeSize):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_EncryptionAtRestPropertyValidator(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("dataVolumeKmsKeyId",cdk.requiredValidator)(properties.dataVolumeKmsKeyId)),errors.collect(cdk.propertyValidator("dataVolumeKmsKeyId",cdk.validateString)(properties.dataVolumeKmsKeyId)),errors.wrap('supplied properties not correct for "EncryptionAtRestProperty"')}function cfnClusterEncryptionAtRestPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_EncryptionAtRestPropertyValidator(properties).assertSuccess(),{DataVolumeKMSKeyId:cdk.stringToCloudFormation(properties.dataVolumeKmsKeyId)}):properties}function CfnClusterEncryptionAtRestPropertyFromCloudFormation(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("dataVolumeKmsKeyId","DataVolumeKMSKeyId",cfn_parse.FromCloudFormation.getString(properties.DataVolumeKMSKeyId)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_EncryptionInTransitPropertyValidator(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("clientBroker",cdk.validateString)(properties.clientBroker)),errors.collect(cdk.propertyValidator("inCluster",cdk.validateBoolean)(properties.inCluster)),errors.wrap('supplied properties not correct for "EncryptionInTransitProperty"')}function cfnClusterEncryptionInTransitPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_EncryptionInTransitPropertyValidator(properties).assertSuccess(),{ClientBroker:cdk.stringToCloudFormation(properties.clientBroker),InCluster:cdk.booleanToCloudFormation(properties.inCluster)}):properties}function CfnClusterEncryptionInTransitPropertyFromCloudFormation(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("clientBroker","ClientBroker",properties.ClientBroker!=null?cfn_parse.FromCloudFormation.getString(properties.ClientBroker):void 0),ret.addPropertyResult("inCluster","InCluster",properties.InCluster!=null?cfn_parse.FromCloudFormation.getBoolean(properties.InCluster):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_EncryptionInfoPropertyValidator(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("encryptionAtRest",CfnCluster_EncryptionAtRestPropertyValidator)(properties.encryptionAtRest)),errors.collect(cdk.propertyValidator("encryptionInTransit",CfnCluster_EncryptionInTransitPropertyValidator)(properties.encryptionInTransit)),errors.wrap('supplied properties not correct for "EncryptionInfoProperty"')}function cfnClusterEncryptionInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_EncryptionInfoPropertyValidator(properties).assertSuccess(),{EncryptionAtRest:cfnClusterEncryptionAtRestPropertyToCloudFormation(properties.encryptionAtRest),EncryptionInTransit:cfnClusterEncryptionInTransitPropertyToCloudFormation(properties.encryptionInTransit)}):properties}function CfnClusterEncryptionInfoPropertyFromCloudFormation(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("encryptionAtRest","EncryptionAtRest",properties.EncryptionAtRest!=null?CfnClusterEncryptionAtRestPropertyFromCloudFormation(properties.EncryptionAtRest):void 0),ret.addPropertyResult("encryptionInTransit","EncryptionInTransit",properties.EncryptionInTransit!=null?CfnClusterEncryptionInTransitPropertyFromCloudFormation(properties.EncryptionInTransit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_FirehosePropertyValidator(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("deliveryStream",cdk.validateString)(properties.deliveryStream)),errors.collect(cdk.propertyValidator("enabled",cdk.requiredValidator)(properties.enabled)),errors.collect(cdk.propertyValidator("enabled",cdk.validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "FirehoseProperty"')}function cfnClusterFirehosePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_FirehosePropertyValidator(properties).assertSuccess(),{DeliveryStream:cdk.stringToCloudFormation(properties.deliveryStream),Enabled:cdk.booleanToCloudFormation(properties.enabled)}):properties}function CfnClusterFirehosePropertyFromCloudFormation(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("deliveryStream","DeliveryStream",properties.DeliveryStream!=null?cfn_parse.FromCloudFormation.getString(properties.DeliveryStream):void 0),ret.addPropertyResult("enabled","Enabled",cfn_parse.FromCloudFormation.getBoolean(properties.Enabled)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_IamPropertyValidator(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("enabled",cdk.requiredValidator)(properties.enabled)),errors.collect(cdk.propertyValidator("enabled",cdk.validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "IamProperty"')}function cfnClusterIamPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_IamPropertyValidator(properties).assertSuccess(),{Enabled:cdk.booleanToCloudFormation(properties.enabled)}):properties}function CfnClusterIamPropertyFromCloudFormation(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("enabled","Enabled",cfn_parse.FromCloudFormation.getBoolean(properties.Enabled)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_JmxExporterPropertyValidator(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("enabledInBroker",cdk.requiredValidator)(properties.enabledInBroker)),errors.collect(cdk.propertyValidator("enabledInBroker",cdk.validateBoolean)(properties.enabledInBroker)),errors.wrap('supplied properties not correct for "JmxExporterProperty"')}function cfnClusterJmxExporterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_JmxExporterPropertyValidator(properties).assertSuccess(),{EnabledInBroker:cdk.booleanToCloudFormation(properties.enabledInBroker)}):properties}function CfnClusterJmxExporterPropertyFromCloudFormation(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("enabledInBroker","EnabledInBroker",cfn_parse.FromCloudFormation.getBoolean(properties.EnabledInBroker)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_LoggingInfoPropertyValidator(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("brokerLogs",cdk.requiredValidator)(properties.brokerLogs)),errors.collect(cdk.propertyValidator("brokerLogs",CfnCluster_BrokerLogsPropertyValidator)(properties.brokerLogs)),errors.wrap('supplied properties not correct for "LoggingInfoProperty"')}function cfnClusterLoggingInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_LoggingInfoPropertyValidator(properties).assertSuccess(),{BrokerLogs:cfnClusterBrokerLogsPropertyToCloudFormation(properties.brokerLogs)}):properties}function CfnClusterLoggingInfoPropertyFromCloudFormation(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("brokerLogs","BrokerLogs",CfnClusterBrokerLogsPropertyFromCloudFormation(properties.BrokerLogs)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_NodeExporterPropertyValidator(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("enabledInBroker",cdk.requiredValidator)(properties.enabledInBroker)),errors.collect(cdk.propertyValidator("enabledInBroker",cdk.validateBoolean)(properties.enabledInBroker)),errors.wrap('supplied properties not correct for "NodeExporterProperty"')}function cfnClusterNodeExporterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_NodeExporterPropertyValidator(properties).assertSuccess(),{EnabledInBroker:cdk.booleanToCloudFormation(properties.enabledInBroker)}):properties}function CfnClusterNodeExporterPropertyFromCloudFormation(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("enabledInBroker","EnabledInBroker",cfn_parse.FromCloudFormation.getBoolean(properties.EnabledInBroker)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_OpenMonitoringPropertyValidator(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("prometheus",cdk.requiredValidator)(properties.prometheus)),errors.collect(cdk.propertyValidator("prometheus",CfnCluster_PrometheusPropertyValidator)(properties.prometheus)),errors.wrap('supplied properties not correct for "OpenMonitoringProperty"')}function cfnClusterOpenMonitoringPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_OpenMonitoringPropertyValidator(properties).assertSuccess(),{Prometheus:cfnClusterPrometheusPropertyToCloudFormation(properties.prometheus)}):properties}function CfnClusterOpenMonitoringPropertyFromCloudFormation(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("prometheus","Prometheus",CfnClusterPrometheusPropertyFromCloudFormation(properties.Prometheus)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_PrometheusPropertyValidator(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("jmxExporter",CfnCluster_JmxExporterPropertyValidator)(properties.jmxExporter)),errors.collect(cdk.propertyValidator("nodeExporter",CfnCluster_NodeExporterPropertyValidator)(properties.nodeExporter)),errors.wrap('supplied properties not correct for "PrometheusProperty"')}function cfnClusterPrometheusPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_PrometheusPropertyValidator(properties).assertSuccess(),{JmxExporter:cfnClusterJmxExporterPropertyToCloudFormation(properties.jmxExporter),NodeExporter:cfnClusterNodeExporterPropertyToCloudFormation(properties.nodeExporter)}):properties}function CfnClusterPrometheusPropertyFromCloudFormation(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("jmxExporter","JmxExporter",properties.JmxExporter!=null?CfnClusterJmxExporterPropertyFromCloudFormation(properties.JmxExporter):void 0),ret.addPropertyResult("nodeExporter","NodeExporter",properties.NodeExporter!=null?CfnClusterNodeExporterPropertyFromCloudFormation(properties.NodeExporter):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_ProvisionedThroughputPropertyValidator(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("enabled",cdk.validateBoolean)(properties.enabled)),errors.collect(cdk.propertyValidator("volumeThroughput",cdk.validateNumber)(properties.volumeThroughput)),errors.wrap('supplied properties not correct for "ProvisionedThroughputProperty"')}function cfnClusterProvisionedThroughputPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_ProvisionedThroughputPropertyValidator(properties).assertSuccess(),{Enabled:cdk.booleanToCloudFormation(properties.enabled),VolumeThroughput:cdk.numberToCloudFormation(properties.volumeThroughput)}):properties}function CfnClusterProvisionedThroughputPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("volumeThroughput","VolumeThroughput",properties.VolumeThroughput!=null?cfn_parse.FromCloudFormation.getNumber(properties.VolumeThroughput):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_PublicAccessPropertyValidator(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("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "PublicAccessProperty"')}function cfnClusterPublicAccessPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_PublicAccessPropertyValidator(properties).assertSuccess(),{Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnClusterPublicAccessPropertyFromCloudFormation(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("type","Type",properties.Type!=null?cfn_parse.FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_S3PropertyValidator(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("bucket",cdk.validateString)(properties.bucket)),errors.collect(cdk.propertyValidator("enabled",cdk.requiredValidator)(properties.enabled)),errors.collect(cdk.propertyValidator("enabled",cdk.validateBoolean)(properties.enabled)),errors.collect(cdk.propertyValidator("prefix",cdk.validateString)(properties.prefix)),errors.wrap('supplied properties not correct for "S3Property"')}function cfnClusterS3PropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_S3PropertyValidator(properties).assertSuccess(),{Bucket:cdk.stringToCloudFormation(properties.bucket),Enabled:cdk.booleanToCloudFormation(properties.enabled),Prefix:cdk.stringToCloudFormation(properties.prefix)}):properties}function CfnClusterS3PropertyFromCloudFormation(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("bucket","Bucket",properties.Bucket!=null?cfn_parse.FromCloudFormation.getString(properties.Bucket):void 0),ret.addPropertyResult("enabled","Enabled",cfn_parse.FromCloudFormation.getBoolean(properties.Enabled)),ret.addPropertyResult("prefix","Prefix",properties.Prefix!=null?cfn_parse.FromCloudFormation.getString(properties.Prefix):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_SaslPropertyValidator(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("iam",CfnCluster_IamPropertyValidator)(properties.iam)),errors.collect(cdk.propertyValidator("scram",CfnCluster_ScramPropertyValidator)(properties.scram)),errors.wrap('supplied properties not correct for "SaslProperty"')}function cfnClusterSaslPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_SaslPropertyValidator(properties).assertSuccess(),{Iam:cfnClusterIamPropertyToCloudFormation(properties.iam),Scram:cfnClusterScramPropertyToCloudFormation(properties.scram)}):properties}function CfnClusterSaslPropertyFromCloudFormation(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("iam","Iam",properties.Iam!=null?CfnClusterIamPropertyFromCloudFormation(properties.Iam):void 0),ret.addPropertyResult("scram","Scram",properties.Scram!=null?CfnClusterScramPropertyFromCloudFormation(properties.Scram):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_ScramPropertyValidator(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("enabled",cdk.requiredValidator)(properties.enabled)),errors.collect(cdk.propertyValidator("enabled",cdk.validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "ScramProperty"')}function cfnClusterScramPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_ScramPropertyValidator(properties).assertSuccess(),{Enabled:cdk.booleanToCloudFormation(properties.enabled)}):properties}function CfnClusterScramPropertyFromCloudFormation(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("enabled","Enabled",cfn_parse.FromCloudFormation.getBoolean(properties.Enabled)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_StorageInfoPropertyValidator(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("ebsStorageInfo",CfnCluster_EBSStorageInfoPropertyValidator)(properties.ebsStorageInfo)),errors.wrap('supplied properties not correct for "StorageInfoProperty"')}function cfnClusterStorageInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_StorageInfoPropertyValidator(properties).assertSuccess(),{EBSStorageInfo:cfnClusterEBSStorageInfoPropertyToCloudFormation(properties.ebsStorageInfo)}):properties}function CfnClusterStorageInfoPropertyFromCloudFormation(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("ebsStorageInfo","EBSStorageInfo",properties.EBSStorageInfo!=null?CfnClusterEBSStorageInfoPropertyFromCloudFormation(properties.EBSStorageInfo):void 0),ret.addUnrecognizedPrope