UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 53.8 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnConfigurationAssociation=exports.CfnConfiguration=exports.CfnBroker=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core/lib");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnBroker extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_amazonmq.CfnBroker",version:"2.251.0"};static CFN_RESOURCE_TYPE_NAME="AWS::AmazonMQ::Broker";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBrokerPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnBroker(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}static isCfnBroker(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnBroker.CFN_RESOURCE_TYPE_NAME}static arnForBroker(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_amazonmq_IBrokerRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForBroker),error}return resource.brokerRef.brokerArn}_authenticationStrategy;_autoMinorVersionUpgrade;_brokerName;_configuration;_dataReplicationMode;_dataReplicationPrimaryBrokerArn;_deploymentMode;_encryptionOptions;_engineType;_engineVersion;_hostInstanceType;_ldapServerMetadata;_logs;_maintenanceWindowStartTime;_publiclyAccessible;_securityGroups;_storageType;_subnetIds;tags;_tagsRaw;_users;constructor(scope,id,props){super(scope,id,{type:CfnBroker.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_amazonmq_CfnBrokerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBroker),error}cdk().requireProperty(props,"brokerName",this),cdk().requireProperty(props,"deploymentMode",this),cdk().requireProperty(props,"engineType",this),cdk().requireProperty(props,"hostInstanceType",this),cdk().requireProperty(props,"publiclyAccessible",this),this._authenticationStrategy=props.authenticationStrategy,this._autoMinorVersionUpgrade=props.autoMinorVersionUpgrade,this._brokerName=props.brokerName,this._configuration=props.configuration,this._dataReplicationMode=props.dataReplicationMode,this._dataReplicationPrimaryBrokerArn=props.dataReplicationPrimaryBrokerArn,this._deploymentMode=props.deploymentMode,this._encryptionOptions=props.encryptionOptions,this._engineType=props.engineType,this._engineVersion=props.engineVersion,this._hostInstanceType=props.hostInstanceType,this._ldapServerMetadata=props.ldapServerMetadata,this._logs=props.logs,this._maintenanceWindowStartTime=props.maintenanceWindowStartTime,this._publiclyAccessible=props.publiclyAccessible,this._securityGroups=props.securityGroups,this._storageType=props.storageType,this._subnetIds=props.subnetIds,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::AmazonMQ::Broker",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._users=props.users}get brokerRef(){return{brokerId:this.ref,brokerArn:this.attrArn}}get authenticationStrategy(){return this._authenticationStrategy}set authenticationStrategy(value){cdk().traceProperty(this.node,"AuthenticationStrategy"),this._authenticationStrategy=value}get autoMinorVersionUpgrade(){return this._autoMinorVersionUpgrade}set autoMinorVersionUpgrade(value){cdk().traceProperty(this.node,"AutoMinorVersionUpgrade"),this._autoMinorVersionUpgrade=value}get brokerName(){return this._brokerName}set brokerName(value){cdk().traceProperty(this.node,"BrokerName"),this._brokerName=value}get configuration(){return this._configuration}set configuration(value){cdk().traceProperty(this.node,"Configuration"),this._configuration=value}get dataReplicationMode(){return this._dataReplicationMode}set dataReplicationMode(value){cdk().traceProperty(this.node,"DataReplicationMode"),this._dataReplicationMode=value}get dataReplicationPrimaryBrokerArn(){return this._dataReplicationPrimaryBrokerArn}set dataReplicationPrimaryBrokerArn(value){cdk().traceProperty(this.node,"DataReplicationPrimaryBrokerArn"),this._dataReplicationPrimaryBrokerArn=value}get deploymentMode(){return this._deploymentMode}set deploymentMode(value){cdk().traceProperty(this.node,"DeploymentMode"),this._deploymentMode=value}get encryptionOptions(){return this._encryptionOptions}set encryptionOptions(value){cdk().traceProperty(this.node,"EncryptionOptions"),this._encryptionOptions=value}get engineType(){return this._engineType}set engineType(value){cdk().traceProperty(this.node,"EngineType"),this._engineType=value}get engineVersion(){return this._engineVersion}set engineVersion(value){cdk().traceProperty(this.node,"EngineVersion"),this._engineVersion=value}get hostInstanceType(){return this._hostInstanceType}set hostInstanceType(value){cdk().traceProperty(this.node,"HostInstanceType"),this._hostInstanceType=value}get ldapServerMetadata(){return this._ldapServerMetadata}set ldapServerMetadata(value){cdk().traceProperty(this.node,"LdapServerMetadata"),this._ldapServerMetadata=value}get logs(){return this._logs}set logs(value){cdk().traceProperty(this.node,"Logs"),this._logs=value}get maintenanceWindowStartTime(){return this._maintenanceWindowStartTime}set maintenanceWindowStartTime(value){cdk().traceProperty(this.node,"MaintenanceWindowStartTime"),this._maintenanceWindowStartTime=value}get publiclyAccessible(){return this._publiclyAccessible}set publiclyAccessible(value){cdk().traceProperty(this.node,"PubliclyAccessible"),this._publiclyAccessible=value}get securityGroups(){return this._securityGroups}set securityGroups(value){cdk().traceProperty(this.node,"SecurityGroups"),this._securityGroups=value}get storageType(){return this._storageType}set storageType(value){cdk().traceProperty(this.node,"StorageType"),this._storageType=value}get subnetIds(){return this._subnetIds}set subnetIds(value){cdk().traceProperty(this.node,"SubnetIds"),this._subnetIds=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get users(){return this._users}set users(value){cdk().traceProperty(this.node,"Users"),this._users=value}get attrAmqpEndpoints(){return cdk().Token.asList(this.getAtt("AmqpEndpoints",cdk().ResolutionTypeHint.STRING_LIST))}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrConfigurationId(){return cdk().Token.asString(this.getAtt("ConfigurationId",cdk().ResolutionTypeHint.STRING))}get attrConfigurationRevision(){return cdk().Token.asNumber(this.getAtt("ConfigurationRevision",cdk().ResolutionTypeHint.NUMBER))}get attrConsoleUrLs(){return cdk().Token.asList(this.getAtt("ConsoleURLs",cdk().ResolutionTypeHint.STRING_LIST))}get attrEngineVersionCurrent(){return cdk().Token.asString(this.getAtt("EngineVersionCurrent",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrIpAddresses(){return cdk().Token.asList(this.getAtt("IpAddresses",cdk().ResolutionTypeHint.STRING_LIST))}get attrMqttEndpoints(){return cdk().Token.asList(this.getAtt("MqttEndpoints",cdk().ResolutionTypeHint.STRING_LIST))}get attrOpenWireEndpoints(){return cdk().Token.asList(this.getAtt("OpenWireEndpoints",cdk().ResolutionTypeHint.STRING_LIST))}get attrStompEndpoints(){return cdk().Token.asList(this.getAtt("StompEndpoints",cdk().ResolutionTypeHint.STRING_LIST))}get attrWssEndpoints(){return cdk().Token.asList(this.getAtt("WssEndpoints",cdk().ResolutionTypeHint.STRING_LIST))}get cfnProperties(){return{authenticationStrategy:this._authenticationStrategy,autoMinorVersionUpgrade:this._autoMinorVersionUpgrade,brokerName:this._brokerName,configuration:this._configuration,dataReplicationMode:this._dataReplicationMode,dataReplicationPrimaryBrokerArn:this._dataReplicationPrimaryBrokerArn,deploymentMode:this._deploymentMode,encryptionOptions:this._encryptionOptions,engineType:this._engineType,engineVersion:this._engineVersion,hostInstanceType:this._hostInstanceType,ldapServerMetadata:this._ldapServerMetadata,logs:this._logs,maintenanceWindowStartTime:this._maintenanceWindowStartTime,publiclyAccessible:this._publiclyAccessible,securityGroups:this._securityGroups,storageType:this._storageType,subnetIds:this._subnetIds,tags:this.tags.renderTags(),users:this._users}}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",CfnBroker.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnBrokerPropsToCloudFormation(props)}}exports.CfnBroker=CfnBroker;function CfnBrokerConfigurationIdPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),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 "ConfigurationIdProperty"')}function convertCfnBrokerConfigurationIdPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerConfigurationIdPropertyValidator(properties).assertSuccess(),{Id:cdk().stringToCloudFormation(properties.id),Revision:cdk().numberToCloudFormation(properties.revision)}):properties}function CfnBrokerConfigurationIdPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("revision","Revision",properties.Revision!=null?cfn_parse().FromCloudFormation.getNumber(properties.Revision):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBrokerMaintenanceWindowPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("dayOfWeek",cdk().requiredValidator)(properties.dayOfWeek)),errors.collect(cdk().propertyValidator("dayOfWeek",cdk().validateString)(properties.dayOfWeek)),errors.collect(cdk().propertyValidator("timeOfDay",cdk().requiredValidator)(properties.timeOfDay)),errors.collect(cdk().propertyValidator("timeOfDay",cdk().validateString)(properties.timeOfDay)),errors.collect(cdk().propertyValidator("timeZone",cdk().requiredValidator)(properties.timeZone)),errors.collect(cdk().propertyValidator("timeZone",cdk().validateString)(properties.timeZone)),errors.wrap('supplied properties not correct for "MaintenanceWindowProperty"')}function convertCfnBrokerMaintenanceWindowPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerMaintenanceWindowPropertyValidator(properties).assertSuccess(),{DayOfWeek:cdk().stringToCloudFormation(properties.dayOfWeek),TimeOfDay:cdk().stringToCloudFormation(properties.timeOfDay),TimeZone:cdk().stringToCloudFormation(properties.timeZone)}):properties}function CfnBrokerMaintenanceWindowPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("dayOfWeek","DayOfWeek",properties.DayOfWeek!=null?cfn_parse().FromCloudFormation.getString(properties.DayOfWeek):void 0),ret.addPropertyResult("timeOfDay","TimeOfDay",properties.TimeOfDay!=null?cfn_parse().FromCloudFormation.getString(properties.TimeOfDay):void 0),ret.addPropertyResult("timeZone","TimeZone",properties.TimeZone!=null?cfn_parse().FromCloudFormation.getString(properties.TimeZone):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBrokerUserPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("consoleAccess",cdk().validateBoolean)(properties.consoleAccess)),errors.collect(cdk().propertyValidator("groups",cdk().listValidator(cdk().validateString))(properties.groups)),errors.collect(cdk().propertyValidator("password",cdk().requiredValidator)(properties.password)),errors.collect(cdk().propertyValidator("password",cdk().validateString)(properties.password)),errors.collect(cdk().propertyValidator("replicationUser",cdk().validateBoolean)(properties.replicationUser)),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 "UserProperty"')}function convertCfnBrokerUserPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerUserPropertyValidator(properties).assertSuccess(),{ConsoleAccess:cdk().booleanToCloudFormation(properties.consoleAccess),Groups:cdk().listMapper(cdk().stringToCloudFormation)(properties.groups),Password:cdk().stringToCloudFormation(properties.password),ReplicationUser:cdk().booleanToCloudFormation(properties.replicationUser),Username:cdk().stringToCloudFormation(properties.username)}):properties}function CfnBrokerUserPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("consoleAccess","ConsoleAccess",properties.ConsoleAccess!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ConsoleAccess):void 0),ret.addPropertyResult("groups","Groups",properties.Groups!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Groups):void 0),ret.addPropertyResult("password","Password",properties.Password!=null?cfn_parse().FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("replicationUser","ReplicationUser",properties.ReplicationUser!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ReplicationUser):void 0),ret.addPropertyResult("username","Username",properties.Username!=null?cfn_parse().FromCloudFormation.getString(properties.Username):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBrokerLogListPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("audit",cdk().validateBoolean)(properties.audit)),errors.collect(cdk().propertyValidator("general",cdk().validateBoolean)(properties.general)),errors.wrap('supplied properties not correct for "LogListProperty"')}function convertCfnBrokerLogListPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerLogListPropertyValidator(properties).assertSuccess(),{Audit:cdk().booleanToCloudFormation(properties.audit),General:cdk().booleanToCloudFormation(properties.general)}):properties}function CfnBrokerLogListPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("audit","Audit",properties.Audit!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Audit):void 0),ret.addPropertyResult("general","General",properties.General!=null?cfn_parse().FromCloudFormation.getBoolean(properties.General):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBrokerLdapServerMetadataPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("hosts",cdk().requiredValidator)(properties.hosts)),errors.collect(cdk().propertyValidator("hosts",cdk().listValidator(cdk().validateString))(properties.hosts)),errors.collect(cdk().propertyValidator("roleBase",cdk().requiredValidator)(properties.roleBase)),errors.collect(cdk().propertyValidator("roleBase",cdk().validateString)(properties.roleBase)),errors.collect(cdk().propertyValidator("roleName",cdk().validateString)(properties.roleName)),errors.collect(cdk().propertyValidator("roleSearchMatching",cdk().requiredValidator)(properties.roleSearchMatching)),errors.collect(cdk().propertyValidator("roleSearchMatching",cdk().validateString)(properties.roleSearchMatching)),errors.collect(cdk().propertyValidator("roleSearchSubtree",cdk().validateBoolean)(properties.roleSearchSubtree)),errors.collect(cdk().propertyValidator("serviceAccountPassword",cdk().validateString)(properties.serviceAccountPassword)),errors.collect(cdk().propertyValidator("serviceAccountUsername",cdk().requiredValidator)(properties.serviceAccountUsername)),errors.collect(cdk().propertyValidator("serviceAccountUsername",cdk().validateString)(properties.serviceAccountUsername)),errors.collect(cdk().propertyValidator("userBase",cdk().requiredValidator)(properties.userBase)),errors.collect(cdk().propertyValidator("userBase",cdk().validateString)(properties.userBase)),errors.collect(cdk().propertyValidator("userRoleName",cdk().validateString)(properties.userRoleName)),errors.collect(cdk().propertyValidator("userSearchMatching",cdk().requiredValidator)(properties.userSearchMatching)),errors.collect(cdk().propertyValidator("userSearchMatching",cdk().validateString)(properties.userSearchMatching)),errors.collect(cdk().propertyValidator("userSearchSubtree",cdk().validateBoolean)(properties.userSearchSubtree)),errors.wrap('supplied properties not correct for "LdapServerMetadataProperty"')}function convertCfnBrokerLdapServerMetadataPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerLdapServerMetadataPropertyValidator(properties).assertSuccess(),{Hosts:cdk().listMapper(cdk().stringToCloudFormation)(properties.hosts),RoleBase:cdk().stringToCloudFormation(properties.roleBase),RoleName:cdk().stringToCloudFormation(properties.roleName),RoleSearchMatching:cdk().stringToCloudFormation(properties.roleSearchMatching),RoleSearchSubtree:cdk().booleanToCloudFormation(properties.roleSearchSubtree),ServiceAccountPassword:cdk().stringToCloudFormation(properties.serviceAccountPassword),ServiceAccountUsername:cdk().stringToCloudFormation(properties.serviceAccountUsername),UserBase:cdk().stringToCloudFormation(properties.userBase),UserRoleName:cdk().stringToCloudFormation(properties.userRoleName),UserSearchMatching:cdk().stringToCloudFormation(properties.userSearchMatching),UserSearchSubtree:cdk().booleanToCloudFormation(properties.userSearchSubtree)}):properties}function CfnBrokerLdapServerMetadataPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("hosts","Hosts",properties.Hosts!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Hosts):void 0),ret.addPropertyResult("roleBase","RoleBase",properties.RoleBase!=null?cfn_parse().FromCloudFormation.getString(properties.RoleBase):void 0),ret.addPropertyResult("roleName","RoleName",properties.RoleName!=null?cfn_parse().FromCloudFormation.getString(properties.RoleName):void 0),ret.addPropertyResult("roleSearchMatching","RoleSearchMatching",properties.RoleSearchMatching!=null?cfn_parse().FromCloudFormation.getString(properties.RoleSearchMatching):void 0),ret.addPropertyResult("roleSearchSubtree","RoleSearchSubtree",properties.RoleSearchSubtree!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RoleSearchSubtree):void 0),ret.addPropertyResult("serviceAccountPassword","ServiceAccountPassword",properties.ServiceAccountPassword!=null?cfn_parse().FromCloudFormation.getString(properties.ServiceAccountPassword):void 0),ret.addPropertyResult("serviceAccountUsername","ServiceAccountUsername",properties.ServiceAccountUsername!=null?cfn_parse().FromCloudFormation.getString(properties.ServiceAccountUsername):void 0),ret.addPropertyResult("userBase","UserBase",properties.UserBase!=null?cfn_parse().FromCloudFormation.getString(properties.UserBase):void 0),ret.addPropertyResult("userRoleName","UserRoleName",properties.UserRoleName!=null?cfn_parse().FromCloudFormation.getString(properties.UserRoleName):void 0),ret.addPropertyResult("userSearchMatching","UserSearchMatching",properties.UserSearchMatching!=null?cfn_parse().FromCloudFormation.getString(properties.UserSearchMatching):void 0),ret.addPropertyResult("userSearchSubtree","UserSearchSubtree",properties.UserSearchSubtree!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UserSearchSubtree):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBrokerEncryptionOptionsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("useAwsOwnedKey",cdk().requiredValidator)(properties.useAwsOwnedKey)),errors.collect(cdk().propertyValidator("useAwsOwnedKey",cdk().validateBoolean)(properties.useAwsOwnedKey)),errors.wrap('supplied properties not correct for "EncryptionOptionsProperty"')}function convertCfnBrokerEncryptionOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerEncryptionOptionsPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),UseAwsOwnedKey:cdk().booleanToCloudFormation(properties.useAwsOwnedKey)}):properties}function CfnBrokerEncryptionOptionsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("useAwsOwnedKey","UseAwsOwnedKey",properties.UseAwsOwnedKey!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UseAwsOwnedKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBrokerTagsEntryPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "TagsEntryProperty"')}function convertCfnBrokerTagsEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerTagsEntryPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnBrokerTagsEntryPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBrokerPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("authenticationStrategy",cdk().validateString)(properties.authenticationStrategy)),errors.collect(cdk().propertyValidator("autoMinorVersionUpgrade",cdk().validateBoolean)(properties.autoMinorVersionUpgrade)),errors.collect(cdk().propertyValidator("brokerName",cdk().requiredValidator)(properties.brokerName)),errors.collect(cdk().propertyValidator("brokerName",cdk().validateString)(properties.brokerName)),errors.collect(cdk().propertyValidator("configuration",CfnBrokerConfigurationIdPropertyValidator)(properties.configuration)),errors.collect(cdk().propertyValidator("dataReplicationMode",cdk().validateString)(properties.dataReplicationMode)),errors.collect(cdk().propertyValidator("dataReplicationPrimaryBrokerArn",cdk().validateString)(properties.dataReplicationPrimaryBrokerArn)),errors.collect(cdk().propertyValidator("deploymentMode",cdk().requiredValidator)(properties.deploymentMode)),errors.collect(cdk().propertyValidator("deploymentMode",cdk().validateString)(properties.deploymentMode)),errors.collect(cdk().propertyValidator("encryptionOptions",CfnBrokerEncryptionOptionsPropertyValidator)(properties.encryptionOptions)),errors.collect(cdk().propertyValidator("engineType",cdk().requiredValidator)(properties.engineType)),errors.collect(cdk().propertyValidator("engineType",cdk().validateString)(properties.engineType)),errors.collect(cdk().propertyValidator("engineVersion",cdk().validateString)(properties.engineVersion)),errors.collect(cdk().propertyValidator("hostInstanceType",cdk().requiredValidator)(properties.hostInstanceType)),errors.collect(cdk().propertyValidator("hostInstanceType",cdk().validateString)(properties.hostInstanceType)),errors.collect(cdk().propertyValidator("ldapServerMetadata",CfnBrokerLdapServerMetadataPropertyValidator)(properties.ldapServerMetadata)),errors.collect(cdk().propertyValidator("logs",CfnBrokerLogListPropertyValidator)(properties.logs)),errors.collect(cdk().propertyValidator("maintenanceWindowStartTime",CfnBrokerMaintenanceWindowPropertyValidator)(properties.maintenanceWindowStartTime)),errors.collect(cdk().propertyValidator("publiclyAccessible",cdk().requiredValidator)(properties.publiclyAccessible)),errors.collect(cdk().propertyValidator("publiclyAccessible",cdk().validateBoolean)(properties.publiclyAccessible)),errors.collect(cdk().propertyValidator("securityGroups",cdk().listValidator(cdk().validateString))(properties.securityGroups)),errors.collect(cdk().propertyValidator("storageType",cdk().validateString)(properties.storageType)),errors.collect(cdk().propertyValidator("subnetIds",cdk().listValidator(cdk().validateString))(properties.subnetIds)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(CfnBrokerTagsEntryPropertyValidator))(properties.tags)),errors.collect(cdk().propertyValidator("users",cdk().listValidator(CfnBrokerUserPropertyValidator))(properties.users)),errors.wrap('supplied properties not correct for "CfnBrokerProps"')}function convertCfnBrokerPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBrokerPropsValidator(properties).assertSuccess(),{AuthenticationStrategy:cdk().stringToCloudFormation(properties.authenticationStrategy),AutoMinorVersionUpgrade:cdk().booleanToCloudFormation(properties.autoMinorVersionUpgrade),BrokerName:cdk().stringToCloudFormation(properties.brokerName),Configuration:convertCfnBrokerConfigurationIdPropertyToCloudFormation(properties.configuration),DataReplicationMode:cdk().stringToCloudFormation(properties.dataReplicationMode),DataReplicationPrimaryBrokerArn:cdk().stringToCloudFormation(properties.dataReplicationPrimaryBrokerArn),DeploymentMode:cdk().stringToCloudFormation(properties.deploymentMode),EncryptionOptions:convertCfnBrokerEncryptionOptionsPropertyToCloudFormation(properties.encryptionOptions),EngineType:cdk().stringToCloudFormation(properties.engineType),EngineVersion:cdk().stringToCloudFormation(properties.engineVersion),HostInstanceType:cdk().stringToCloudFormation(properties.hostInstanceType),LdapServerMetadata:convertCfnBrokerLdapServerMetadataPropertyToCloudFormation(properties.ldapServerMetadata),Logs:convertCfnBrokerLogListPropertyToCloudFormation(properties.logs),MaintenanceWindowStartTime:convertCfnBrokerMaintenanceWindowPropertyToCloudFormation(properties.maintenanceWindowStartTime),PubliclyAccessible:cdk().booleanToCloudFormation(properties.publiclyAccessible),SecurityGroups:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroups),StorageType:cdk().stringToCloudFormation(properties.storageType),SubnetIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnetIds),Tags:cdk().listMapper(convertCfnBrokerTagsEntryPropertyToCloudFormation)(properties.tags),Users:cdk().listMapper(convertCfnBrokerUserPropertyToCloudFormation)(properties.users)}):properties}function CfnBrokerPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("authenticationStrategy","AuthenticationStrategy",properties.AuthenticationStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.AuthenticationStrategy):void 0),ret.addPropertyResult("autoMinorVersionUpgrade","AutoMinorVersionUpgrade",properties.AutoMinorVersionUpgrade!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AutoMinorVersionUpgrade):void 0),ret.addPropertyResult("brokerName","BrokerName",properties.BrokerName!=null?cfn_parse().FromCloudFormation.getString(properties.BrokerName):void 0),ret.addPropertyResult("configuration","Configuration",properties.Configuration!=null?CfnBrokerConfigurationIdPropertyFromCloudFormation(properties.Configuration):void 0),ret.addPropertyResult("dataReplicationMode","DataReplicationMode",properties.DataReplicationMode!=null?cfn_parse().FromCloudFormation.getString(properties.DataReplicationMode):void 0),ret.addPropertyResult("dataReplicationPrimaryBrokerArn","DataReplicationPrimaryBrokerArn",properties.DataReplicationPrimaryBrokerArn!=null?cfn_parse().FromCloudFormation.getString(properties.DataReplicationPrimaryBrokerArn):void 0),ret.addPropertyResult("deploymentMode","DeploymentMode",properties.DeploymentMode!=null?cfn_parse().FromCloudFormation.getString(properties.DeploymentMode):void 0),ret.addPropertyResult("encryptionOptions","EncryptionOptions",properties.EncryptionOptions!=null?CfnBrokerEncryptionOptionsPropertyFromCloudFormation(properties.EncryptionOptions):void 0),ret.addPropertyResult("engineType","EngineType",properties.EngineType!=null?cfn_parse().FromCloudFormation.getString(properties.EngineType):void 0),ret.addPropertyResult("engineVersion","EngineVersion",properties.EngineVersion!=null?cfn_parse().FromCloudFormation.getString(properties.EngineVersion):void 0),ret.addPropertyResult("hostInstanceType","HostInstanceType",properties.HostInstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.HostInstanceType):void 0),ret.addPropertyResult("ldapServerMetadata","LdapServerMetadata",properties.LdapServerMetadata!=null?CfnBrokerLdapServerMetadataPropertyFromCloudFormation(properties.LdapServerMetadata):void 0),ret.addPropertyResult("logs","Logs",properties.Logs!=null?CfnBrokerLogListPropertyFromCloudFormation(properties.Logs):void 0),ret.addPropertyResult("maintenanceWindowStartTime","MaintenanceWindowStartTime",properties.MaintenanceWindowStartTime!=null?CfnBrokerMaintenanceWindowPropertyFromCloudFormation(properties.MaintenanceWindowStartTime):void 0),ret.addPropertyResult("publiclyAccessible","PubliclyAccessible",properties.PubliclyAccessible!=null?cfn_parse().FromCloudFormation.getBoolean(properties.PubliclyAccessible):void 0),ret.addPropertyResult("securityGroups","SecurityGroups",properties.SecurityGroups!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroups):void 0),ret.addPropertyResult("storageType","StorageType",properties.StorageType!=null?cfn_parse().FromCloudFormation.getString(properties.StorageType):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SubnetIds):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(CfnBrokerTagsEntryPropertyFromCloudFormation)(properties.Tags):void 0),ret.addPropertyResult("users","Users",properties.Users!=null?cfn_parse().FromCloudFormation.getArray(CfnBrokerUserPropertyFromCloudFormation)(properties.Users):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConfiguration extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_amazonmq.CfnConfiguration",version:"2.251.0"};static CFN_RESOURCE_TYPE_NAME="AWS::AmazonMQ::Configuration";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigurationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnConfiguration(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}static isCfnConfiguration(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConfiguration.CFN_RESOURCE_TYPE_NAME}static fromConfigurationArn(scope,id,arn){class Import extends cdk().Resource{configurationRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:mq:${Region}:${Account}:configuration:${ConfigurationId}").parse(arn2);this.configurationRef={configurationId:variables.ConfigurationId,configurationArn:arn2}}}return new Import(scope,id,arn)}static fromConfigurationId(scope,id,configurationId){class Import extends cdk().Resource{configurationRef;constructor(scope2,id2,configurationId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:mq:${Region}:${Account}:configuration:${ConfigurationId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ConfigurationId:configurationId2});super(scope2,id2,{environmentFromArn:arn}),this.configurationRef={configurationId:configurationId2,configurationArn:arn}}}return new Import(scope,id,configurationId)}static arnForConfiguration(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_amazonmq_IConfigurationRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForConfiguration),error}return resource.configurationRef.configurationArn}_authenticationStrategy;_data;_description;_engineType;_engineVersion;_name;tags;_tagsRaw;constructor(scope,id,props){super(scope,id,{type:CfnConfiguration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_amazonmq_CfnConfigurationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfiguration),error}cdk().requireProperty(props,"engineType",this),cdk().requireProperty(props,"name",this),this._authenticationStrategy=props.authenticationStrategy,this._data=props.data,this._description=props.description,this._engineType=props.engineType,this._engineVersion=props.engineVersion,this._name=props.name,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::AmazonMQ::Configuration",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get configurationRef(){return{configurationId:this.ref,configurationArn:this.attrArn}}get authenticationStrategy(){return this._authenticationStrategy}set authenticationStrategy(value){cdk().traceProperty(this.node,"AuthenticationStrategy"),this._authenticationStrategy=value}get data(){return this._data}set data(value){cdk().traceProperty(this.node,"Data"),this._data=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get engineType(){return this._engineType}set engineType(value){cdk().traceProperty(this.node,"EngineType"),this._engineType=value}get engineVersion(){return this._engineVersion}set engineVersion(value){cdk().traceProperty(this.node,"EngineVersion"),this._engineVersion=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrRevision(){return cdk().Token.asNumber(this.getAtt("Revision",cdk().ResolutionTypeHint.NUMBER))}get cfnProperties(){return{authenticationStrategy:this._authenticationStrategy,data:this._data,description:this._description,engineType:this._engineType,engineVersion:this._engineVersion,name:this._name,tags:this.tags.renderTags()}}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",CfnConfiguration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigurationPropsToCloudFormation(props)}}exports.CfnConfiguration=CfnConfiguration;function CfnConfigurationTagsEntryPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "TagsEntryProperty"')}function convertCfnConfigurationTagsEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationTagsEntryPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnConfigurationTagsEntryPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("authenticationStrategy",cdk().validateString)(properties.authenticationStrategy)),errors.collect(cdk().propertyValidator("data",cdk().validateString)(properties.data)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("engineType",cdk().requiredValidator)(properties.engineType)),errors.collect(cdk().propertyValidator("engineType",cdk().validateString)(properties.engineType)),errors.collect(cdk().propertyValidator("engineVersion",cdk().validateString)(properties.engineVersion)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(CfnConfigurationTagsEntryPropertyValidator))(properties.tags)),errors.wrap('supplied properties not correct for "CfnConfigurationProps"')}function convertCfnConfigurationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationPropsValidator(properties).assertSuccess(),{AuthenticationStrategy:cdk().stringToCloudFormation(properties.authenticationStrategy),Data:cdk().stringToCloudFormation(properties.data),Description:cdk().stringToCloudFormation(properties.description),EngineType:cdk().stringToCloudFormation(properties.engineType),EngineVersion:cdk().stringToCloudFormation(properties.engineVersion),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().listMapper(convertCfnConfigurationTagsEntryPropertyToCloudFormation)(properties.tags)}):properties}function CfnConfigurationPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("authenticationStrategy","AuthenticationStrategy",properties.AuthenticationStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.AuthenticationStrategy):void 0),ret.addPropertyResult("data","Data",properties.Data!=null?cfn_parse().FromCloudFormation.getString(properties.Data):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("engineType","EngineType",properties.EngineType!=null?cfn_parse().FromCloudFormation.getString(properties.EngineType):void 0),ret.addPropertyResult("engineVersion","EngineVersion",properties.EngineVersion!=null?cfn_parse().FromCloudFormation.getString(properties.EngineVersion):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(CfnConfigurationTagsEntryPropertyFromCloudFormation)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConfigurationAssociation extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_amazonmq.CfnConfigurationAssociation",version:"2.251.0"};static CFN_RESOURCE_TYPE_NAME="AWS::AmazonMQ::ConfigurationAssociation";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigurationAssociationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnConfigurationAssociation(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}static isCfnConfigurationAssociation(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConfigurationAssociation.CFN_RESOURCE_TYPE_NAME}_broker;_configuration;constructor(scope,id,props){super(scope,id,{type:CfnConfigurationAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_amazonmq_CfnConfigurationAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfigurationAssociation),error}cdk().requireProperty(props,"broker",this),cdk().requireProperty(props,"configuration",this),this._broker=props.broker,this._configuration=props.configuration}get configurationAssociationRef(){return{configurationAssociationId:this.ref}}get broker(){return this._broker}set broker(value){cdk().traceProperty(this.node,"Broker"),this._broker=value}get configuration(){return this._configuration}set configuration(value){cdk().traceProperty(this.node,"Configuration"),this._configuration=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{broker:this._broker,configuration:this._configuration}}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",CfnConfigurationAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigurationAssociationPropsToCloudFormation(props)}}exports.CfnConfigurationAssociation=CfnConfigurationAssociation;function CfnConfigurationAssociationConfigurationIdPropertyValidator(pro