Files
2026-05-06 18:55:16 -05:00

2 lines
333 KiB
JavaScript

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnTenant=exports.CfnMultiRegionEndpoint=exports.CfnMailManagerTrafficPolicy=exports.CfnMailManagerRuleSet=exports.CfnMailManagerRelay=exports.CfnMailManagerIngressPoint=exports.CfnMailManagerArchive=exports.CfnMailManagerAddressList=exports.CfnMailManagerAddonSubscription=exports.CfnMailManagerAddonInstance=exports.CfnCustomVerificationEmailTemplate=exports.CfnVdmAttributes=exports.CfnTemplate=exports.CfnReceiptRuleSet=exports.CfnReceiptRule=exports.CfnReceiptFilter=exports.CfnEmailIdentity=exports.CfnDedicatedIpPool=exports.CfnContactList=exports.CfnConfigurationSetEventDestination=exports.CfnConfigurationSet=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 CfnConfigurationSet extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnConfigurationSet",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::ConfigurationSet";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigurationSetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnConfigurationSet(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 isCfnConfigurationSet(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConfigurationSet.CFN_RESOURCE_TYPE_NAME}static fromConfigurationSetName(scope,id,configurationSetName){class Import extends cdk().Resource{configurationSetRef;constructor(scope2,id2,configurationSetName2){super(scope2,id2),this.configurationSetRef={configurationSetName:configurationSetName2}}}return new Import(scope,id,configurationSetName)}static arnForConfigurationSet(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IConfigurationSetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForConfigurationSet),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:configuration-set/${ConfigurationSetName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,ConfigurationSetName:resource.configurationSetRef.configurationSetName})}_archivingOptions;cdkTagManager;_deliveryOptions;_name;_reputationOptions;_sendingOptions;_suppressionOptions;_tags;_trackingOptions;_vdmOptions;cfnPropertyNames={archivingOptions:"ArchivingOptions",tags:"Tags",deliveryOptions:"DeliveryOptions",name:"Name",reputationOptions:"ReputationOptions",sendingOptions:"SendingOptions",suppressionOptions:"SuppressionOptions",trackingOptions:"TrackingOptions",vdmOptions:"VdmOptions"};constructor(scope,id,props={}){super(scope,id,{type:CfnConfigurationSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnConfigurationSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfigurationSet),error}this._archivingOptions=props.archivingOptions,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::ConfigurationSet",void 0,{tagPropertyName:"tags"}),this._deliveryOptions=props.deliveryOptions,this._name=props.name,this._reputationOptions=props.reputationOptions,this._sendingOptions=props.sendingOptions,this._suppressionOptions=props.suppressionOptions,this._tags=props.tags,this._trackingOptions=props.trackingOptions,this._vdmOptions=props.vdmOptions}get configurationSetRef(){return{configurationSetName:this.ref}}get archivingOptions(){return this._archivingOptions}set archivingOptions(value){cdk().traceProperty(this.node,"ArchivingOptions"),this._archivingOptions=value}get deliveryOptions(){return this._deliveryOptions}set deliveryOptions(value){cdk().traceProperty(this.node,"DeliveryOptions"),this._deliveryOptions=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get reputationOptions(){return this._reputationOptions}set reputationOptions(value){cdk().traceProperty(this.node,"ReputationOptions"),this._reputationOptions=value}get sendingOptions(){return this._sendingOptions}set sendingOptions(value){cdk().traceProperty(this.node,"SendingOptions"),this._sendingOptions=value}get suppressionOptions(){return this._suppressionOptions}set suppressionOptions(value){cdk().traceProperty(this.node,"SuppressionOptions"),this._suppressionOptions=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get trackingOptions(){return this._trackingOptions}set trackingOptions(value){cdk().traceProperty(this.node,"TrackingOptions"),this._trackingOptions=value}get vdmOptions(){return this._vdmOptions}set vdmOptions(value){cdk().traceProperty(this.node,"VdmOptions"),this._vdmOptions=value}get cfnProperties(){return{archivingOptions:this._archivingOptions,tags:this.cdkTagManager.renderTags(this._tags),deliveryOptions:this._deliveryOptions,name:this._name,reputationOptions:this._reputationOptions,sendingOptions:this._sendingOptions,suppressionOptions:this._suppressionOptions,trackingOptions:this._trackingOptions,vdmOptions:this._vdmOptions}}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",CfnConfigurationSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigurationSetPropsToCloudFormation(props)}}exports.CfnConfigurationSet=CfnConfigurationSet;function CfnConfigurationSetSendingOptionsPropertyValidator(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("sendingEnabled",cdk().validateBoolean)(properties.sendingEnabled)),errors.wrap('supplied properties not correct for "SendingOptionsProperty"')}function convertCfnConfigurationSetSendingOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetSendingOptionsPropertyValidator(properties).assertSuccess(),{SendingEnabled:cdk().booleanToCloudFormation(properties.sendingEnabled)}):properties}function CfnConfigurationSetSendingOptionsPropertyFromCloudFormation(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("sendingEnabled","SendingEnabled",properties.SendingEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SendingEnabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetOverallConfidenceThresholdPropertyValidator(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("confidenceVerdictThreshold",cdk().requiredValidator)(properties.confidenceVerdictThreshold)),errors.collect(cdk().propertyValidator("confidenceVerdictThreshold",cdk().validateString)(properties.confidenceVerdictThreshold)),errors.wrap('supplied properties not correct for "OverallConfidenceThresholdProperty"')}function convertCfnConfigurationSetOverallConfidenceThresholdPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetOverallConfidenceThresholdPropertyValidator(properties).assertSuccess(),{ConfidenceVerdictThreshold:cdk().stringToCloudFormation(properties.confidenceVerdictThreshold)}):properties}function CfnConfigurationSetOverallConfidenceThresholdPropertyFromCloudFormation(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("confidenceVerdictThreshold","ConfidenceVerdictThreshold",properties.ConfidenceVerdictThreshold!=null?cfn_parse().FromCloudFormation.getString(properties.ConfidenceVerdictThreshold):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetConditionThresholdPropertyValidator(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("conditionThresholdEnabled",cdk().requiredValidator)(properties.conditionThresholdEnabled)),errors.collect(cdk().propertyValidator("conditionThresholdEnabled",cdk().validateString)(properties.conditionThresholdEnabled)),errors.collect(cdk().propertyValidator("overallConfidenceThreshold",CfnConfigurationSetOverallConfidenceThresholdPropertyValidator)(properties.overallConfidenceThreshold)),errors.wrap('supplied properties not correct for "ConditionThresholdProperty"')}function convertCfnConfigurationSetConditionThresholdPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetConditionThresholdPropertyValidator(properties).assertSuccess(),{ConditionThresholdEnabled:cdk().stringToCloudFormation(properties.conditionThresholdEnabled),OverallConfidenceThreshold:convertCfnConfigurationSetOverallConfidenceThresholdPropertyToCloudFormation(properties.overallConfidenceThreshold)}):properties}function CfnConfigurationSetConditionThresholdPropertyFromCloudFormation(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("conditionThresholdEnabled","ConditionThresholdEnabled",properties.ConditionThresholdEnabled!=null?cfn_parse().FromCloudFormation.getString(properties.ConditionThresholdEnabled):void 0),ret.addPropertyResult("overallConfidenceThreshold","OverallConfidenceThreshold",properties.OverallConfidenceThreshold!=null?CfnConfigurationSetOverallConfidenceThresholdPropertyFromCloudFormation(properties.OverallConfidenceThreshold):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetValidationOptionsPropertyValidator(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("conditionThreshold",cdk().requiredValidator)(properties.conditionThreshold)),errors.collect(cdk().propertyValidator("conditionThreshold",CfnConfigurationSetConditionThresholdPropertyValidator)(properties.conditionThreshold)),errors.wrap('supplied properties not correct for "ValidationOptionsProperty"')}function convertCfnConfigurationSetValidationOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetValidationOptionsPropertyValidator(properties).assertSuccess(),{ConditionThreshold:convertCfnConfigurationSetConditionThresholdPropertyToCloudFormation(properties.conditionThreshold)}):properties}function CfnConfigurationSetValidationOptionsPropertyFromCloudFormation(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("conditionThreshold","ConditionThreshold",properties.ConditionThreshold!=null?CfnConfigurationSetConditionThresholdPropertyFromCloudFormation(properties.ConditionThreshold):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetSuppressionOptionsPropertyValidator(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("suppressedReasons",cdk().listValidator(cdk().validateString))(properties.suppressedReasons)),errors.collect(cdk().propertyValidator("validationOptions",CfnConfigurationSetValidationOptionsPropertyValidator)(properties.validationOptions)),errors.wrap('supplied properties not correct for "SuppressionOptionsProperty"')}function convertCfnConfigurationSetSuppressionOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetSuppressionOptionsPropertyValidator(properties).assertSuccess(),{SuppressedReasons:cdk().listMapper(cdk().stringToCloudFormation)(properties.suppressedReasons),ValidationOptions:convertCfnConfigurationSetValidationOptionsPropertyToCloudFormation(properties.validationOptions)}):properties}function CfnConfigurationSetSuppressionOptionsPropertyFromCloudFormation(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("suppressedReasons","SuppressedReasons",properties.SuppressedReasons!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SuppressedReasons):void 0),ret.addPropertyResult("validationOptions","ValidationOptions",properties.ValidationOptions!=null?CfnConfigurationSetValidationOptionsPropertyFromCloudFormation(properties.ValidationOptions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetTrackingOptionsPropertyValidator(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("customRedirectDomain",cdk().validateString)(properties.customRedirectDomain)),errors.collect(cdk().propertyValidator("httpsPolicy",cdk().validateString)(properties.httpsPolicy)),errors.wrap('supplied properties not correct for "TrackingOptionsProperty"')}function convertCfnConfigurationSetTrackingOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetTrackingOptionsPropertyValidator(properties).assertSuccess(),{CustomRedirectDomain:cdk().stringToCloudFormation(properties.customRedirectDomain),HttpsPolicy:cdk().stringToCloudFormation(properties.httpsPolicy)}):properties}function CfnConfigurationSetTrackingOptionsPropertyFromCloudFormation(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("customRedirectDomain","CustomRedirectDomain",properties.CustomRedirectDomain!=null?cfn_parse().FromCloudFormation.getString(properties.CustomRedirectDomain):void 0),ret.addPropertyResult("httpsPolicy","HttpsPolicy",properties.HttpsPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.HttpsPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetReputationOptionsPropertyValidator(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("reputationMetricsEnabled",cdk().validateBoolean)(properties.reputationMetricsEnabled)),errors.wrap('supplied properties not correct for "ReputationOptionsProperty"')}function convertCfnConfigurationSetReputationOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetReputationOptionsPropertyValidator(properties).assertSuccess(),{ReputationMetricsEnabled:cdk().booleanToCloudFormation(properties.reputationMetricsEnabled)}):properties}function CfnConfigurationSetReputationOptionsPropertyFromCloudFormation(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("reputationMetricsEnabled","ReputationMetricsEnabled",properties.ReputationMetricsEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ReputationMetricsEnabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetDashboardOptionsPropertyValidator(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("engagementMetrics",cdk().requiredValidator)(properties.engagementMetrics)),errors.collect(cdk().propertyValidator("engagementMetrics",cdk().validateString)(properties.engagementMetrics)),errors.wrap('supplied properties not correct for "DashboardOptionsProperty"')}function convertCfnConfigurationSetDashboardOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetDashboardOptionsPropertyValidator(properties).assertSuccess(),{EngagementMetrics:cdk().stringToCloudFormation(properties.engagementMetrics)}):properties}function CfnConfigurationSetDashboardOptionsPropertyFromCloudFormation(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("engagementMetrics","EngagementMetrics",properties.EngagementMetrics!=null?cfn_parse().FromCloudFormation.getString(properties.EngagementMetrics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetGuardianOptionsPropertyValidator(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("optimizedSharedDelivery",cdk().requiredValidator)(properties.optimizedSharedDelivery)),errors.collect(cdk().propertyValidator("optimizedSharedDelivery",cdk().validateString)(properties.optimizedSharedDelivery)),errors.wrap('supplied properties not correct for "GuardianOptionsProperty"')}function convertCfnConfigurationSetGuardianOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetGuardianOptionsPropertyValidator(properties).assertSuccess(),{OptimizedSharedDelivery:cdk().stringToCloudFormation(properties.optimizedSharedDelivery)}):properties}function CfnConfigurationSetGuardianOptionsPropertyFromCloudFormation(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("optimizedSharedDelivery","OptimizedSharedDelivery",properties.OptimizedSharedDelivery!=null?cfn_parse().FromCloudFormation.getString(properties.OptimizedSharedDelivery):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetVdmOptionsPropertyValidator(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("dashboardOptions",CfnConfigurationSetDashboardOptionsPropertyValidator)(properties.dashboardOptions)),errors.collect(cdk().propertyValidator("guardianOptions",CfnConfigurationSetGuardianOptionsPropertyValidator)(properties.guardianOptions)),errors.wrap('supplied properties not correct for "VdmOptionsProperty"')}function convertCfnConfigurationSetVdmOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetVdmOptionsPropertyValidator(properties).assertSuccess(),{DashboardOptions:convertCfnConfigurationSetDashboardOptionsPropertyToCloudFormation(properties.dashboardOptions),GuardianOptions:convertCfnConfigurationSetGuardianOptionsPropertyToCloudFormation(properties.guardianOptions)}):properties}function CfnConfigurationSetVdmOptionsPropertyFromCloudFormation(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("dashboardOptions","DashboardOptions",properties.DashboardOptions!=null?CfnConfigurationSetDashboardOptionsPropertyFromCloudFormation(properties.DashboardOptions):void 0),ret.addPropertyResult("guardianOptions","GuardianOptions",properties.GuardianOptions!=null?CfnConfigurationSetGuardianOptionsPropertyFromCloudFormation(properties.GuardianOptions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetDeliveryOptionsPropertyValidator(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("maxDeliverySeconds",cdk().validateNumber)(properties.maxDeliverySeconds)),errors.collect(cdk().propertyValidator("sendingPoolName",cdk().validateString)(properties.sendingPoolName)),errors.collect(cdk().propertyValidator("tlsPolicy",cdk().validateString)(properties.tlsPolicy)),errors.wrap('supplied properties not correct for "DeliveryOptionsProperty"')}function convertCfnConfigurationSetDeliveryOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetDeliveryOptionsPropertyValidator(properties).assertSuccess(),{MaxDeliverySeconds:cdk().numberToCloudFormation(properties.maxDeliverySeconds),SendingPoolName:cdk().stringToCloudFormation(properties.sendingPoolName),TlsPolicy:cdk().stringToCloudFormation(properties.tlsPolicy)}):properties}function CfnConfigurationSetDeliveryOptionsPropertyFromCloudFormation(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("maxDeliverySeconds","MaxDeliverySeconds",properties.MaxDeliverySeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxDeliverySeconds):void 0),ret.addPropertyResult("sendingPoolName","SendingPoolName",properties.SendingPoolName!=null?cfn_parse().FromCloudFormation.getString(properties.SendingPoolName):void 0),ret.addPropertyResult("tlsPolicy","TlsPolicy",properties.TlsPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.TlsPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetArchivingOptionsPropertyValidator(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("archiveArn",cdk().validateString)(properties.archiveArn)),errors.wrap('supplied properties not correct for "ArchivingOptionsProperty"')}function convertCfnConfigurationSetArchivingOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetArchivingOptionsPropertyValidator(properties).assertSuccess(),{ArchiveArn:cdk().stringToCloudFormation(properties.archiveArn)}):properties}function CfnConfigurationSetArchivingOptionsPropertyFromCloudFormation(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("archiveArn","ArchiveArn",properties.ArchiveArn!=null?cfn_parse().FromCloudFormation.getString(properties.ArchiveArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetPropsValidator(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("archivingOptions",CfnConfigurationSetArchivingOptionsPropertyValidator)(properties.archivingOptions)),errors.collect(cdk().propertyValidator("deliveryOptions",CfnConfigurationSetDeliveryOptionsPropertyValidator)(properties.deliveryOptions)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("reputationOptions",CfnConfigurationSetReputationOptionsPropertyValidator)(properties.reputationOptions)),errors.collect(cdk().propertyValidator("sendingOptions",CfnConfigurationSetSendingOptionsPropertyValidator)(properties.sendingOptions)),errors.collect(cdk().propertyValidator("suppressionOptions",CfnConfigurationSetSuppressionOptionsPropertyValidator)(properties.suppressionOptions)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("trackingOptions",CfnConfigurationSetTrackingOptionsPropertyValidator)(properties.trackingOptions)),errors.collect(cdk().propertyValidator("vdmOptions",CfnConfigurationSetVdmOptionsPropertyValidator)(properties.vdmOptions)),errors.wrap('supplied properties not correct for "CfnConfigurationSetProps"')}function convertCfnConfigurationSetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetPropsValidator(properties).assertSuccess(),{ArchivingOptions:convertCfnConfigurationSetArchivingOptionsPropertyToCloudFormation(properties.archivingOptions),DeliveryOptions:convertCfnConfigurationSetDeliveryOptionsPropertyToCloudFormation(properties.deliveryOptions),Name:cdk().stringToCloudFormation(properties.name),ReputationOptions:convertCfnConfigurationSetReputationOptionsPropertyToCloudFormation(properties.reputationOptions),SendingOptions:convertCfnConfigurationSetSendingOptionsPropertyToCloudFormation(properties.sendingOptions),SuppressionOptions:convertCfnConfigurationSetSuppressionOptionsPropertyToCloudFormation(properties.suppressionOptions),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TrackingOptions:convertCfnConfigurationSetTrackingOptionsPropertyToCloudFormation(properties.trackingOptions),VdmOptions:convertCfnConfigurationSetVdmOptionsPropertyToCloudFormation(properties.vdmOptions)}):properties}function CfnConfigurationSetPropsFromCloudFormation(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("archivingOptions","ArchivingOptions",properties.ArchivingOptions!=null?CfnConfigurationSetArchivingOptionsPropertyFromCloudFormation(properties.ArchivingOptions):void 0),ret.addPropertyResult("deliveryOptions","DeliveryOptions",properties.DeliveryOptions!=null?CfnConfigurationSetDeliveryOptionsPropertyFromCloudFormation(properties.DeliveryOptions):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("reputationOptions","ReputationOptions",properties.ReputationOptions!=null?CfnConfigurationSetReputationOptionsPropertyFromCloudFormation(properties.ReputationOptions):void 0),ret.addPropertyResult("sendingOptions","SendingOptions",properties.SendingOptions!=null?CfnConfigurationSetSendingOptionsPropertyFromCloudFormation(properties.SendingOptions):void 0),ret.addPropertyResult("suppressionOptions","SuppressionOptions",properties.SuppressionOptions!=null?CfnConfigurationSetSuppressionOptionsPropertyFromCloudFormation(properties.SuppressionOptions):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("trackingOptions","TrackingOptions",properties.TrackingOptions!=null?CfnConfigurationSetTrackingOptionsPropertyFromCloudFormation(properties.TrackingOptions):void 0),ret.addPropertyResult("vdmOptions","VdmOptions",properties.VdmOptions!=null?CfnConfigurationSetVdmOptionsPropertyFromCloudFormation(properties.VdmOptions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConfigurationSetEventDestination extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnConfigurationSetEventDestination",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::ConfigurationSetEventDestination";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigurationSetEventDestinationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnConfigurationSetEventDestination(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 isCfnConfigurationSetEventDestination(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConfigurationSetEventDestination.CFN_RESOURCE_TYPE_NAME}_configurationSetName;_eventDestination;cfnPropertyNames={configurationSetName:"ConfigurationSetName",eventDestination:"EventDestination"};constructor(scope,id,props){super(scope,id,{type:CfnConfigurationSetEventDestination.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnConfigurationSetEventDestinationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfigurationSetEventDestination),error}cdk().requireProperty(props,"configurationSetName",this),cdk().requireProperty(props,"eventDestination",this),this._configurationSetName=cdk().getRefProperty(props.configurationSetName?.configurationSetRef,"configurationSetName")??cdk().ensureStringOrUndefined(props.configurationSetName,"configurationSetName","ses.IConfigurationSetRef | string"),this._eventDestination=props.eventDestination}get configurationSetEventDestinationRef(){return{configurationSetEventDestinationId:this.ref}}get configurationSetName(){return this._configurationSetName}set configurationSetName(value){cdk().traceProperty(this.node,"ConfigurationSetName"),this._configurationSetName=value}get eventDestination(){return this._eventDestination}set eventDestination(value){cdk().traceProperty(this.node,"EventDestination"),this._eventDestination=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{configurationSetName:this._configurationSetName,eventDestination:this._eventDestination}}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",CfnConfigurationSetEventDestination.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigurationSetEventDestinationPropsToCloudFormation(props)}}exports.CfnConfigurationSetEventDestination=CfnConfigurationSetEventDestination;function CfnConfigurationSetEventDestinationSnsDestinationPropertyValidator(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("topicArn",cdk().requiredValidator)(properties.topicArn)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "SnsDestinationProperty"')}function convertCfnConfigurationSetEventDestinationSnsDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationSnsDestinationPropertyValidator(properties).assertSuccess(),{TopicARN:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnConfigurationSetEventDestinationSnsDestinationPropertyFromCloudFormation(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("topicArn","TopicARN",properties.TopicARN!=null?cfn_parse().FromCloudFormation.getString(properties.TopicARN):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetEventDestinationDimensionConfigurationPropertyValidator(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("defaultDimensionValue",cdk().requiredValidator)(properties.defaultDimensionValue)),errors.collect(cdk().propertyValidator("defaultDimensionValue",cdk().validateString)(properties.defaultDimensionValue)),errors.collect(cdk().propertyValidator("dimensionName",cdk().requiredValidator)(properties.dimensionName)),errors.collect(cdk().propertyValidator("dimensionName",cdk().validateString)(properties.dimensionName)),errors.collect(cdk().propertyValidator("dimensionValueSource",cdk().requiredValidator)(properties.dimensionValueSource)),errors.collect(cdk().propertyValidator("dimensionValueSource",cdk().validateString)(properties.dimensionValueSource)),errors.wrap('supplied properties not correct for "DimensionConfigurationProperty"')}function convertCfnConfigurationSetEventDestinationDimensionConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationDimensionConfigurationPropertyValidator(properties).assertSuccess(),{DefaultDimensionValue:cdk().stringToCloudFormation(properties.defaultDimensionValue),DimensionName:cdk().stringToCloudFormation(properties.dimensionName),DimensionValueSource:cdk().stringToCloudFormation(properties.dimensionValueSource)}):properties}function CfnConfigurationSetEventDestinationDimensionConfigurationPropertyFromCloudFormation(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("defaultDimensionValue","DefaultDimensionValue",properties.DefaultDimensionValue!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultDimensionValue):void 0),ret.addPropertyResult("dimensionName","DimensionName",properties.DimensionName!=null?cfn_parse().FromCloudFormation.getString(properties.DimensionName):void 0),ret.addPropertyResult("dimensionValueSource","DimensionValueSource",properties.DimensionValueSource!=null?cfn_parse().FromCloudFormation.getString(properties.DimensionValueSource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetEventDestinationCloudWatchDestinationPropertyValidator(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("dimensionConfigurations",cdk().listValidator(CfnConfigurationSetEventDestinationDimensionConfigurationPropertyValidator))(properties.dimensionConfigurations)),errors.wrap('supplied properties not correct for "CloudWatchDestinationProperty"')}function convertCfnConfigurationSetEventDestinationCloudWatchDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationCloudWatchDestinationPropertyValidator(properties).assertSuccess(),{DimensionConfigurations:cdk().listMapper(convertCfnConfigurationSetEventDestinationDimensionConfigurationPropertyToCloudFormation)(properties.dimensionConfigurations)}):properties}function CfnConfigurationSetEventDestinationCloudWatchDestinationPropertyFromCloudFormation(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("dimensionConfigurations","DimensionConfigurations",properties.DimensionConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnConfigurationSetEventDestinationDimensionConfigurationPropertyFromCloudFormation)(properties.DimensionConfigurations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetEventDestinationKinesisFirehoseDestinationPropertyValidator(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("deliveryStreamArn",cdk().requiredValidator)(properties.deliveryStreamArn)),errors.collect(cdk().propertyValidator("deliveryStreamArn",cdk().validateString)(properties.deliveryStreamArn)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().requiredValidator)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().validateString)(properties.iamRoleArn)),errors.wrap('supplied properties not correct for "KinesisFirehoseDestinationProperty"')}function convertCfnConfigurationSetEventDestinationKinesisFirehoseDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationKinesisFirehoseDestinationPropertyValidator(properties).assertSuccess(),{DeliveryStreamARN:cdk().stringToCloudFormation(properties.deliveryStreamArn),IAMRoleARN:cdk().stringToCloudFormation(properties.iamRoleArn)}):properties}function CfnConfigurationSetEventDestinationKinesisFirehoseDestinationPropertyFromCloudFormation(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("deliveryStreamArn","DeliveryStreamARN",properties.DeliveryStreamARN!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryStreamARN):void 0),ret.addPropertyResult("iamRoleArn","IAMRoleARN",properties.IAMRoleARN!=null?cfn_parse().FromCloudFormation.getString(properties.IAMRoleARN):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetEventDestinationEventBridgeDestinationPropertyValidator(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("eventBusArn",cdk().requiredValidator)(properties.eventBusArn)),errors.collect(cdk().propertyValidator("eventBusArn",cdk().validateString)(properties.eventBusArn)),errors.wrap('supplied properties not correct for "EventBridgeDestinationProperty"')}function convertCfnConfigurationSetEventDestinationEventBridgeDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationEventBridgeDestinationPropertyValidator(properties).assertSuccess(),{EventBusArn:cdk().stringToCloudFormation(properties.eventBusArn)}):properties}function CfnConfigurationSetEventDestinationEventBridgeDestinationPropertyFromCloudFormation(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("eventBusArn","EventBusArn",properties.EventBusArn!=null?cfn_parse().FromCloudFormation.getString(properties.EventBusArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetEventDestinationEventDestinationPropertyValidator(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("cloudWatchDestination",CfnConfigurationSetEventDestinationCloudWatchDestinationPropertyValidator)(properties.cloudWatchDestination)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("eventBridgeDestination",CfnConfigurationSetEventDestinationEventBridgeDestinationPropertyValidator)(properties.eventBridgeDestination)),errors.collect(cdk().propertyValidator("kinesisFirehoseDestination",CfnConfigurationSetEventDestinationKinesisFirehoseDestinationPropertyValidator)(properties.kinesisFirehoseDestination)),errors.collect(cdk().propertyValidator("matchingEventTypes",cdk().requiredValidator)(properties.matchingEventTypes)),errors.collect(cdk().propertyValidator("matchingEventTypes",cdk().listValidator(cdk().validateString))(properties.matchingEventTypes)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("snsDestination",CfnConfigurationSetEventDestinationSnsDestinationPropertyValidator)(properties.snsDestination)),errors.wrap('supplied properties not correct for "EventDestinationProperty"')}function convertCfnConfigurationSetEventDestinationEventDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationEventDestinationPropertyValidator(properties).assertSuccess(),{CloudWatchDestination:convertCfnConfigurationSetEventDestinationCloudWatchDestinationPropertyToCloudFormation(properties.cloudWatchDestination),Enabled:cdk().booleanToCloudFormation(properties.enabled),EventBridgeDestination:convertCfnConfigurationSetEventDestinationEventBridgeDestinationPropertyToCloudFormation(properties.eventBridgeDestination),KinesisFirehoseDestination:convertCfnConfigurationSetEventDestinationKinesisFirehoseDestinationPropertyToCloudFormation(properties.kinesisFirehoseDestination),MatchingEventTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.matchingEventTypes),Name:cdk().stringToCloudFormation(properties.name),SnsDestination:convertCfnConfigurationSetEventDestinationSnsDestinationPropertyToCloudFormation(properties.snsDestination)}):properties}function CfnConfigurationSetEventDestinationEventDestinationPropertyFromCloudFormation(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("cloudWatchDestination","CloudWatchDestination",properties.CloudWatchDestination!=null?CfnConfigurationSetEventDestinationCloudWatchDestinationPropertyFromCloudFormation(properties.CloudWatchDestination):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("eventBridgeDestination","EventBridgeDestination",properties.EventBridgeDestination!=null?CfnConfigurationSetEventDestinationEventBridgeDestinationPropertyFromCloudFormation(properties.EventBridgeDestination):void 0),ret.addPropertyResult("kinesisFirehoseDestination","KinesisFirehoseDestination",properties.KinesisFirehoseDestination!=null?CfnConfigurationSetEventDestinationKinesisFirehoseDestinationPropertyFromCloudFormation(properties.KinesisFirehoseDestination):void 0),ret.addPropertyResult("matchingEventTypes","MatchingEventTypes",properties.MatchingEventTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.MatchingEventTypes):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("snsDestination","SnsDestination",properties.SnsDestination!=null?CfnConfigurationSetEventDestinationSnsDestinationPropertyFromCloudFormation(properties.SnsDestination):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetEventDestinationPropsValidator(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("configurationSetName",cdk().requiredValidator)(properties.configurationSetName)),errors.collect(cdk().propertyValidator("configurationSetName",cdk().validateString)(properties.configurationSetName)),errors.collect(cdk().propertyValidator("eventDestination",cdk().requiredValidator)(properties.eventDestination)),errors.collect(cdk().propertyValidator("eventDestination",CfnConfigurationSetEventDestinationEventDestinationPropertyValidator)(properties.eventDestination)),errors.wrap('supplied properties not correct for "CfnConfigurationSetEventDestinationProps"')}function convertCfnConfigurationSetEventDestinationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationPropsValidator(properties).assertSuccess(),{ConfigurationSetName:cdk().stringToCloudFormation(properties.configurationSetName),EventDestination:convertCfnConfigurationSetEventDestinationEventDestinationPropertyToCloudFormation(properties.eventDestination)}):properties}function CfnConfigurationSetEventDestinationPropsFromCloudFormation(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("configurationSetName","ConfigurationSetName",properties.ConfigurationSetName!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigurationSetName):void 0),ret.addPropertyResult("eventDestination","EventDestination",properties.EventDestination!=null?CfnConfigurationSetEventDestinationEventDestinationPropertyFromCloudFormation(properties.EventDestination):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnContactList extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnContactList",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::ContactList";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnContactListPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnContactList(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 isCfnContactList(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnContactList.CFN_RESOURCE_TYPE_NAME}static fromContactListName(scope,id,contactListName){class Import extends cdk().Resource{contactListRef;constructor(scope2,id2,contactListName2){super(scope2,id2),this.contactListRef={contactListName:contactListName2}}}return new Import(scope,id,contactListName)}static arnForContactList(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IContactListRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForContactList),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:contact-list/${ContactListName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,ContactListName:resource.contactListRef.contactListName})}_contactListName;_description;tags;_tagsRaw;_topics;cfnPropertyNames={contactListName:"ContactListName",description:"Description",tags:"Tags",topics:"Topics"};constructor(scope,id,props={}){super(scope,id,{type:CfnContactList.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnContactListProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnContactList),error}this._contactListName=props.contactListName,this._description=props.description,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::ContactList",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._topics=props.topics}get contactListRef(){return{contactListName:this.ref}}get contactListName(){return this._contactListName}set contactListName(value){cdk().traceProperty(this.node,"ContactListName"),this._contactListName=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get topics(){return this._topics}set topics(value){cdk().traceProperty(this.node,"Topics"),this._topics=value}get cfnProperties(){return{contactListName:this._contactListName,description:this._description,tags:this.tags.renderTags(),topics:this._topics}}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",CfnContactList.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnContactListPropsToCloudFormation(props)}}exports.CfnContactList=CfnContactList;function CfnContactListTopicPropertyValidator(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("defaultSubscriptionStatus",cdk().requiredValidator)(properties.defaultSubscriptionStatus)),errors.collect(cdk().propertyValidator("defaultSubscriptionStatus",cdk().validateString)(properties.defaultSubscriptionStatus)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("displayName",cdk().requiredValidator)(properties.displayName)),errors.collect(cdk().propertyValidator("displayName",cdk().validateString)(properties.displayName)),errors.collect(cdk().propertyValidator("topicName",cdk().requiredValidator)(properties.topicName)),errors.collect(cdk().propertyValidator("topicName",cdk().validateString)(properties.topicName)),errors.wrap('supplied properties not correct for "TopicProperty"')}function convertCfnContactListTopicPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnContactListTopicPropertyValidator(properties).assertSuccess(),{DefaultSubscriptionStatus:cdk().stringToCloudFormation(properties.defaultSubscriptionStatus),Description:cdk().stringToCloudFormation(properties.description),DisplayName:cdk().stringToCloudFormation(properties.displayName),TopicName:cdk().stringToCloudFormation(properties.topicName)}):properties}function CfnContactListTopicPropertyFromCloudFormation(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("defaultSubscriptionStatus","DefaultSubscriptionStatus",properties.DefaultSubscriptionStatus!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultSubscriptionStatus):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("displayName","DisplayName",properties.DisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.DisplayName):void 0),ret.addPropertyResult("topicName","TopicName",properties.TopicName!=null?cfn_parse().FromCloudFormation.getString(properties.TopicName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnContactListPropsValidator(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("contactListName",cdk().validateString)(properties.contactListName)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("topics",cdk().listValidator(CfnContactListTopicPropertyValidator))(properties.topics)),errors.wrap('supplied properties not correct for "CfnContactListProps"')}function convertCfnContactListPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnContactListPropsValidator(properties).assertSuccess(),{ContactListName:cdk().stringToCloudFormation(properties.contactListName),Description:cdk().stringToCloudFormation(properties.description),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Topics:cdk().listMapper(convertCfnContactListTopicPropertyToCloudFormation)(properties.topics)}):properties}function CfnContactListPropsFromCloudFormation(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("contactListName","ContactListName",properties.ContactListName!=null?cfn_parse().FromCloudFormation.getString(properties.ContactListName):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("topics","Topics",properties.Topics!=null?cfn_parse().FromCloudFormation.getArray(CfnContactListTopicPropertyFromCloudFormation)(properties.Topics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDedicatedIpPool extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnDedicatedIpPool",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::DedicatedIpPool";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDedicatedIpPoolPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDedicatedIpPool(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 isCfnDedicatedIpPool(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDedicatedIpPool.CFN_RESOURCE_TYPE_NAME}cdkTagManager;_poolName;_scalingMode;_tags;cfnPropertyNames={tags:"Tags",poolName:"PoolName",scalingMode:"ScalingMode"};constructor(scope,id,props={}){super(scope,id,{type:CfnDedicatedIpPool.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnDedicatedIpPoolProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDedicatedIpPool),error}this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::DedicatedIpPool",void 0,{tagPropertyName:"tags"}),this._poolName=props.poolName,this._scalingMode=props.scalingMode,this._tags=props.tags}get dedicatedIpPoolRef(){return{poolName:this.ref}}get poolName(){return this._poolName}set poolName(value){cdk().traceProperty(this.node,"PoolName"),this._poolName=value}get scalingMode(){return this._scalingMode}set scalingMode(value){cdk().traceProperty(this.node,"ScalingMode"),this._scalingMode=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),poolName:this._poolName,scalingMode:this._scalingMode}}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",CfnDedicatedIpPool.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDedicatedIpPoolPropsToCloudFormation(props)}}exports.CfnDedicatedIpPool=CfnDedicatedIpPool;function CfnDedicatedIpPoolPropsValidator(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("poolName",cdk().validateString)(properties.poolName)),errors.collect(cdk().propertyValidator("scalingMode",cdk().validateString)(properties.scalingMode)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDedicatedIpPoolProps"')}function convertCfnDedicatedIpPoolPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDedicatedIpPoolPropsValidator(properties).assertSuccess(),{PoolName:cdk().stringToCloudFormation(properties.poolName),ScalingMode:cdk().stringToCloudFormation(properties.scalingMode),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDedicatedIpPoolPropsFromCloudFormation(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("poolName","PoolName",properties.PoolName!=null?cfn_parse().FromCloudFormation.getString(properties.PoolName):void 0),ret.addPropertyResult("scalingMode","ScalingMode",properties.ScalingMode!=null?cfn_parse().FromCloudFormation.getString(properties.ScalingMode):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEmailIdentity extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnEmailIdentity",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::EmailIdentity";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEmailIdentityPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnEmailIdentity(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 isCfnEmailIdentity(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnEmailIdentity.CFN_RESOURCE_TYPE_NAME}cdkTagManager;_configurationSetAttributes;_dkimAttributes;_dkimSigningAttributes;_emailIdentity;_feedbackAttributes;_mailFromAttributes;_tags;cfnPropertyNames={tags:"Tags",configurationSetAttributes:"ConfigurationSetAttributes",dkimAttributes:"DkimAttributes",dkimSigningAttributes:"DkimSigningAttributes",emailIdentity:"EmailIdentity",feedbackAttributes:"FeedbackAttributes",mailFromAttributes:"MailFromAttributes"};constructor(scope,id,props){super(scope,id,{type:CfnEmailIdentity.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnEmailIdentityProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEmailIdentity),error}cdk().requireProperty(props,"emailIdentity",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::EmailIdentity",void 0,{tagPropertyName:"tags"}),this._configurationSetAttributes=props.configurationSetAttributes,this._dkimAttributes=props.dkimAttributes,this._dkimSigningAttributes=props.dkimSigningAttributes,this._emailIdentity=props.emailIdentity,this._feedbackAttributes=props.feedbackAttributes,this._mailFromAttributes=props.mailFromAttributes,this._tags=props.tags}get emailIdentityRef(){return{emailIdentity:this.ref}}get configurationSetAttributes(){return this._configurationSetAttributes}set configurationSetAttributes(value){cdk().traceProperty(this.node,"ConfigurationSetAttributes"),this._configurationSetAttributes=value}get dkimAttributes(){return this._dkimAttributes}set dkimAttributes(value){cdk().traceProperty(this.node,"DkimAttributes"),this._dkimAttributes=value}get dkimSigningAttributes(){return this._dkimSigningAttributes}set dkimSigningAttributes(value){cdk().traceProperty(this.node,"DkimSigningAttributes"),this._dkimSigningAttributes=value}get emailIdentity(){return this._emailIdentity}set emailIdentity(value){cdk().traceProperty(this.node,"EmailIdentity"),this._emailIdentity=value}get feedbackAttributes(){return this._feedbackAttributes}set feedbackAttributes(value){cdk().traceProperty(this.node,"FeedbackAttributes"),this._feedbackAttributes=value}get mailFromAttributes(){return this._mailFromAttributes}set mailFromAttributes(value){cdk().traceProperty(this.node,"MailFromAttributes"),this._mailFromAttributes=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrDkimDnsTokenName1(){return cdk().Token.asString(this.getAtt("DkimDNSTokenName1",cdk().ResolutionTypeHint.STRING))}get attrDkimDnsTokenName2(){return cdk().Token.asString(this.getAtt("DkimDNSTokenName2",cdk().ResolutionTypeHint.STRING))}get attrDkimDnsTokenName3(){return cdk().Token.asString(this.getAtt("DkimDNSTokenName3",cdk().ResolutionTypeHint.STRING))}get attrDkimDnsTokenValue1(){return cdk().Token.asString(this.getAtt("DkimDNSTokenValue1",cdk().ResolutionTypeHint.STRING))}get attrDkimDnsTokenValue2(){return cdk().Token.asString(this.getAtt("DkimDNSTokenValue2",cdk().ResolutionTypeHint.STRING))}get attrDkimDnsTokenValue3(){return cdk().Token.asString(this.getAtt("DkimDNSTokenValue3",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),configurationSetAttributes:this._configurationSetAttributes,dkimAttributes:this._dkimAttributes,dkimSigningAttributes:this._dkimSigningAttributes,emailIdentity:this._emailIdentity,feedbackAttributes:this._feedbackAttributes,mailFromAttributes:this._mailFromAttributes}}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",CfnEmailIdentity.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnEmailIdentityPropsToCloudFormation(props)}}exports.CfnEmailIdentity=CfnEmailIdentity;function CfnEmailIdentityConfigurationSetAttributesPropertyValidator(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("configurationSetName",cdk().validateString)(properties.configurationSetName)),errors.wrap('supplied properties not correct for "ConfigurationSetAttributesProperty"')}function convertCfnEmailIdentityConfigurationSetAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailIdentityConfigurationSetAttributesPropertyValidator(properties).assertSuccess(),{ConfigurationSetName:cdk().stringToCloudFormation(properties.configurationSetName)}):properties}function CfnEmailIdentityConfigurationSetAttributesPropertyFromCloudFormation(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("configurationSetName","ConfigurationSetName",properties.ConfigurationSetName!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigurationSetName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEmailIdentityDkimSigningAttributesPropertyValidator(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("domainSigningPrivateKey",cdk().validateString)(properties.domainSigningPrivateKey)),errors.collect(cdk().propertyValidator("domainSigningSelector",cdk().validateString)(properties.domainSigningSelector)),errors.collect(cdk().propertyValidator("nextSigningKeyLength",cdk().validateString)(properties.nextSigningKeyLength)),errors.wrap('supplied properties not correct for "DkimSigningAttributesProperty"')}function convertCfnEmailIdentityDkimSigningAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailIdentityDkimSigningAttributesPropertyValidator(properties).assertSuccess(),{DomainSigningPrivateKey:cdk().stringToCloudFormation(properties.domainSigningPrivateKey),DomainSigningSelector:cdk().stringToCloudFormation(properties.domainSigningSelector),NextSigningKeyLength:cdk().stringToCloudFormation(properties.nextSigningKeyLength)}):properties}function CfnEmailIdentityDkimSigningAttributesPropertyFromCloudFormation(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("domainSigningPrivateKey","DomainSigningPrivateKey",properties.DomainSigningPrivateKey!=null?cfn_parse().FromCloudFormation.getString(properties.DomainSigningPrivateKey):void 0),ret.addPropertyResult("domainSigningSelector","DomainSigningSelector",properties.DomainSigningSelector!=null?cfn_parse().FromCloudFormation.getString(properties.DomainSigningSelector):void 0),ret.addPropertyResult("nextSigningKeyLength","NextSigningKeyLength",properties.NextSigningKeyLength!=null?cfn_parse().FromCloudFormation.getString(properties.NextSigningKeyLength):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEmailIdentityDkimAttributesPropertyValidator(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("signingEnabled",cdk().validateBoolean)(properties.signingEnabled)),errors.wrap('supplied properties not correct for "DkimAttributesProperty"')}function convertCfnEmailIdentityDkimAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailIdentityDkimAttributesPropertyValidator(properties).assertSuccess(),{SigningEnabled:cdk().booleanToCloudFormation(properties.signingEnabled)}):properties}function CfnEmailIdentityDkimAttributesPropertyFromCloudFormation(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("signingEnabled","SigningEnabled",properties.SigningEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SigningEnabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEmailIdentityFeedbackAttributesPropertyValidator(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("emailForwardingEnabled",cdk().validateBoolean)(properties.emailForwardingEnabled)),errors.wrap('supplied properties not correct for "FeedbackAttributesProperty"')}function convertCfnEmailIdentityFeedbackAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailIdentityFeedbackAttributesPropertyValidator(properties).assertSuccess(),{EmailForwardingEnabled:cdk().booleanToCloudFormation(properties.emailForwardingEnabled)}):properties}function CfnEmailIdentityFeedbackAttributesPropertyFromCloudFormation(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("emailForwardingEnabled","EmailForwardingEnabled",properties.EmailForwardingEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EmailForwardingEnabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEmailIdentityMailFromAttributesPropertyValidator(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("behaviorOnMxFailure",cdk().validateString)(properties.behaviorOnMxFailure)),errors.collect(cdk().propertyValidator("mailFromDomain",cdk().validateString)(properties.mailFromDomain)),errors.wrap('supplied properties not correct for "MailFromAttributesProperty"')}function convertCfnEmailIdentityMailFromAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailIdentityMailFromAttributesPropertyValidator(properties).assertSuccess(),{BehaviorOnMxFailure:cdk().stringToCloudFormation(properties.behaviorOnMxFailure),MailFromDomain:cdk().stringToCloudFormation(properties.mailFromDomain)}):properties}function CfnEmailIdentityMailFromAttributesPropertyFromCloudFormation(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("behaviorOnMxFailure","BehaviorOnMxFailure",properties.BehaviorOnMxFailure!=null?cfn_parse().FromCloudFormation.getString(properties.BehaviorOnMxFailure):void 0),ret.addPropertyResult("mailFromDomain","MailFromDomain",properties.MailFromDomain!=null?cfn_parse().FromCloudFormation.getString(properties.MailFromDomain):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEmailIdentityPropsValidator(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("configurationSetAttributes",CfnEmailIdentityConfigurationSetAttributesPropertyValidator)(properties.configurationSetAttributes)),errors.collect(cdk().propertyValidator("dkimAttributes",CfnEmailIdentityDkimAttributesPropertyValidator)(properties.dkimAttributes)),errors.collect(cdk().propertyValidator("dkimSigningAttributes",CfnEmailIdentityDkimSigningAttributesPropertyValidator)(properties.dkimSigningAttributes)),errors.collect(cdk().propertyValidator("emailIdentity",cdk().requiredValidator)(properties.emailIdentity)),errors.collect(cdk().propertyValidator("emailIdentity",cdk().validateString)(properties.emailIdentity)),errors.collect(cdk().propertyValidator("feedbackAttributes",CfnEmailIdentityFeedbackAttributesPropertyValidator)(properties.feedbackAttributes)),errors.collect(cdk().propertyValidator("mailFromAttributes",CfnEmailIdentityMailFromAttributesPropertyValidator)(properties.mailFromAttributes)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnEmailIdentityProps"')}function convertCfnEmailIdentityPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailIdentityPropsValidator(properties).assertSuccess(),{ConfigurationSetAttributes:convertCfnEmailIdentityConfigurationSetAttributesPropertyToCloudFormation(properties.configurationSetAttributes),DkimAttributes:convertCfnEmailIdentityDkimAttributesPropertyToCloudFormation(properties.dkimAttributes),DkimSigningAttributes:convertCfnEmailIdentityDkimSigningAttributesPropertyToCloudFormation(properties.dkimSigningAttributes),EmailIdentity:cdk().stringToCloudFormation(properties.emailIdentity),FeedbackAttributes:convertCfnEmailIdentityFeedbackAttributesPropertyToCloudFormation(properties.feedbackAttributes),MailFromAttributes:convertCfnEmailIdentityMailFromAttributesPropertyToCloudFormation(properties.mailFromAttributes),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnEmailIdentityPropsFromCloudFormation(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("configurationSetAttributes","ConfigurationSetAttributes",properties.ConfigurationSetAttributes!=null?CfnEmailIdentityConfigurationSetAttributesPropertyFromCloudFormation(properties.ConfigurationSetAttributes):void 0),ret.addPropertyResult("dkimAttributes","DkimAttributes",properties.DkimAttributes!=null?CfnEmailIdentityDkimAttributesPropertyFromCloudFormation(properties.DkimAttributes):void 0),ret.addPropertyResult("dkimSigningAttributes","DkimSigningAttributes",properties.DkimSigningAttributes!=null?CfnEmailIdentityDkimSigningAttributesPropertyFromCloudFormation(properties.DkimSigningAttributes):void 0),ret.addPropertyResult("emailIdentity","EmailIdentity",properties.EmailIdentity!=null?cfn_parse().FromCloudFormation.getString(properties.EmailIdentity):void 0),ret.addPropertyResult("feedbackAttributes","FeedbackAttributes",properties.FeedbackAttributes!=null?CfnEmailIdentityFeedbackAttributesPropertyFromCloudFormation(properties.FeedbackAttributes):void 0),ret.addPropertyResult("mailFromAttributes","MailFromAttributes",properties.MailFromAttributes!=null?CfnEmailIdentityMailFromAttributesPropertyFromCloudFormation(properties.MailFromAttributes):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnReceiptFilter extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnReceiptFilter",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::ReceiptFilter";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnReceiptFilterPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnReceiptFilter(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 isCfnReceiptFilter(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnReceiptFilter.CFN_RESOURCE_TYPE_NAME}_filter;cfnPropertyNames={filter:"Filter"};constructor(scope,id,props){super(scope,id,{type:CfnReceiptFilter.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnReceiptFilterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnReceiptFilter),error}cdk().requireProperty(props,"filter",this),this._filter=props.filter}get receiptFilterRef(){return{receiptFilterId:this.ref}}get filter(){return this._filter}set filter(value){cdk().traceProperty(this.node,"Filter"),this._filter=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{filter:this._filter}}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",CfnReceiptFilter.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnReceiptFilterPropsToCloudFormation(props)}}exports.CfnReceiptFilter=CfnReceiptFilter;function CfnReceiptFilterIpFilterPropertyValidator(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("cidr",cdk().requiredValidator)(properties.cidr)),errors.collect(cdk().propertyValidator("cidr",cdk().validateString)(properties.cidr)),errors.collect(cdk().propertyValidator("policy",cdk().requiredValidator)(properties.policy)),errors.collect(cdk().propertyValidator("policy",cdk().validateString)(properties.policy)),errors.wrap('supplied properties not correct for "IpFilterProperty"')}function convertCfnReceiptFilterIpFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptFilterIpFilterPropertyValidator(properties).assertSuccess(),{Cidr:cdk().stringToCloudFormation(properties.cidr),Policy:cdk().stringToCloudFormation(properties.policy)}):properties}function CfnReceiptFilterIpFilterPropertyFromCloudFormation(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("cidr","Cidr",properties.Cidr!=null?cfn_parse().FromCloudFormation.getString(properties.Cidr):void 0),ret.addPropertyResult("policy","Policy",properties.Policy!=null?cfn_parse().FromCloudFormation.getString(properties.Policy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptFilterFilterPropertyValidator(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("ipFilter",cdk().requiredValidator)(properties.ipFilter)),errors.collect(cdk().propertyValidator("ipFilter",CfnReceiptFilterIpFilterPropertyValidator)(properties.ipFilter)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "FilterProperty"')}function convertCfnReceiptFilterFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptFilterFilterPropertyValidator(properties).assertSuccess(),{IpFilter:convertCfnReceiptFilterIpFilterPropertyToCloudFormation(properties.ipFilter),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnReceiptFilterFilterPropertyFromCloudFormation(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("ipFilter","IpFilter",properties.IpFilter!=null?CfnReceiptFilterIpFilterPropertyFromCloudFormation(properties.IpFilter):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptFilterPropsValidator(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("filter",cdk().requiredValidator)(properties.filter)),errors.collect(cdk().propertyValidator("filter",CfnReceiptFilterFilterPropertyValidator)(properties.filter)),errors.wrap('supplied properties not correct for "CfnReceiptFilterProps"')}function convertCfnReceiptFilterPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptFilterPropsValidator(properties).assertSuccess(),{Filter:convertCfnReceiptFilterFilterPropertyToCloudFormation(properties.filter)}):properties}function CfnReceiptFilterPropsFromCloudFormation(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("filter","Filter",properties.Filter!=null?CfnReceiptFilterFilterPropertyFromCloudFormation(properties.Filter):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnReceiptRule extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnReceiptRule",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::ReceiptRule";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnReceiptRulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnReceiptRule(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 isCfnReceiptRule(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnReceiptRule.CFN_RESOURCE_TYPE_NAME}_after;_rule;_ruleSetName;cfnPropertyNames={after:"After",rule:"Rule",ruleSetName:"RuleSetName"};constructor(scope,id,props){super(scope,id,{type:CfnReceiptRule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnReceiptRuleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnReceiptRule),error}cdk().requireProperty(props,"rule",this),cdk().requireProperty(props,"ruleSetName",this),this._after=props.after,this._rule=props.rule,this._ruleSetName=props.ruleSetName}get receiptRuleRef(){return{receiptRuleId:this.ref}}get after(){return this._after}set after(value){cdk().traceProperty(this.node,"After"),this._after=value}get rule(){return this._rule}set rule(value){cdk().traceProperty(this.node,"Rule"),this._rule=value}get ruleSetName(){return this._ruleSetName}set ruleSetName(value){cdk().traceProperty(this.node,"RuleSetName"),this._ruleSetName=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{after:this._after,rule:this._rule,ruleSetName:this._ruleSetName}}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",CfnReceiptRule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnReceiptRulePropsToCloudFormation(props)}}exports.CfnReceiptRule=CfnReceiptRule;function CfnReceiptRuleBounceActionPropertyValidator(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("message",cdk().requiredValidator)(properties.message)),errors.collect(cdk().propertyValidator("message",cdk().validateString)(properties.message)),errors.collect(cdk().propertyValidator("sender",cdk().requiredValidator)(properties.sender)),errors.collect(cdk().propertyValidator("sender",cdk().validateString)(properties.sender)),errors.collect(cdk().propertyValidator("smtpReplyCode",cdk().requiredValidator)(properties.smtpReplyCode)),errors.collect(cdk().propertyValidator("smtpReplyCode",cdk().validateString)(properties.smtpReplyCode)),errors.collect(cdk().propertyValidator("statusCode",cdk().validateString)(properties.statusCode)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "BounceActionProperty"')}function convertCfnReceiptRuleBounceActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleBounceActionPropertyValidator(properties).assertSuccess(),{Message:cdk().stringToCloudFormation(properties.message),Sender:cdk().stringToCloudFormation(properties.sender),SmtpReplyCode:cdk().stringToCloudFormation(properties.smtpReplyCode),StatusCode:cdk().stringToCloudFormation(properties.statusCode),TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnReceiptRuleBounceActionPropertyFromCloudFormation(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("message","Message",properties.Message!=null?cfn_parse().FromCloudFormation.getString(properties.Message):void 0),ret.addPropertyResult("sender","Sender",properties.Sender!=null?cfn_parse().FromCloudFormation.getString(properties.Sender):void 0),ret.addPropertyResult("smtpReplyCode","SmtpReplyCode",properties.SmtpReplyCode!=null?cfn_parse().FromCloudFormation.getString(properties.SmtpReplyCode):void 0),ret.addPropertyResult("statusCode","StatusCode",properties.StatusCode!=null?cfn_parse().FromCloudFormation.getString(properties.StatusCode):void 0),ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleS3ActionPropertyValidator(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("bucketName",cdk().requiredValidator)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().validateString)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.collect(cdk().propertyValidator("objectKeyPrefix",cdk().validateString)(properties.objectKeyPrefix)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "S3ActionProperty"')}function convertCfnReceiptRuleS3ActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleS3ActionPropertyValidator(properties).assertSuccess(),{BucketName:cdk().stringToCloudFormation(properties.bucketName),IamRoleArn:cdk().stringToCloudFormation(properties.iamRoleArn),KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn),ObjectKeyPrefix:cdk().stringToCloudFormation(properties.objectKeyPrefix),TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnReceiptRuleS3ActionPropertyFromCloudFormation(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("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("iamRoleArn","IamRoleArn",properties.IamRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.IamRoleArn):void 0),ret.addPropertyResult("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addPropertyResult("objectKeyPrefix","ObjectKeyPrefix",properties.ObjectKeyPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.ObjectKeyPrefix):void 0),ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleStopActionPropertyValidator(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("scope",cdk().requiredValidator)(properties.scope)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "StopActionProperty"')}function convertCfnReceiptRuleStopActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleStopActionPropertyValidator(properties).assertSuccess(),{Scope:cdk().stringToCloudFormation(properties.scope),TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnReceiptRuleStopActionPropertyFromCloudFormation(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("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleSNSActionPropertyValidator(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("encoding",cdk().validateString)(properties.encoding)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "SNSActionProperty"')}function convertCfnReceiptRuleSNSActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleSNSActionPropertyValidator(properties).assertSuccess(),{Encoding:cdk().stringToCloudFormation(properties.encoding),TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnReceiptRuleSNSActionPropertyFromCloudFormation(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("encoding","Encoding",properties.Encoding!=null?cfn_parse().FromCloudFormation.getString(properties.Encoding):void 0),ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleWorkmailActionPropertyValidator(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("organizationArn",cdk().requiredValidator)(properties.organizationArn)),errors.collect(cdk().propertyValidator("organizationArn",cdk().validateString)(properties.organizationArn)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "WorkmailActionProperty"')}function convertCfnReceiptRuleWorkmailActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleWorkmailActionPropertyValidator(properties).assertSuccess(),{OrganizationArn:cdk().stringToCloudFormation(properties.organizationArn),TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnReceiptRuleWorkmailActionPropertyFromCloudFormation(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("organizationArn","OrganizationArn",properties.OrganizationArn!=null?cfn_parse().FromCloudFormation.getString(properties.OrganizationArn):void 0),ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleAddHeaderActionPropertyValidator(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("headerName",cdk().requiredValidator)(properties.headerName)),errors.collect(cdk().propertyValidator("headerName",cdk().validateString)(properties.headerName)),errors.collect(cdk().propertyValidator("headerValue",cdk().requiredValidator)(properties.headerValue)),errors.collect(cdk().propertyValidator("headerValue",cdk().validateString)(properties.headerValue)),errors.wrap('supplied properties not correct for "AddHeaderActionProperty"')}function convertCfnReceiptRuleAddHeaderActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleAddHeaderActionPropertyValidator(properties).assertSuccess(),{HeaderName:cdk().stringToCloudFormation(properties.headerName),HeaderValue:cdk().stringToCloudFormation(properties.headerValue)}):properties}function CfnReceiptRuleAddHeaderActionPropertyFromCloudFormation(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("headerName","HeaderName",properties.HeaderName!=null?cfn_parse().FromCloudFormation.getString(properties.HeaderName):void 0),ret.addPropertyResult("headerValue","HeaderValue",properties.HeaderValue!=null?cfn_parse().FromCloudFormation.getString(properties.HeaderValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleLambdaActionPropertyValidator(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("functionArn",cdk().requiredValidator)(properties.functionArn)),errors.collect(cdk().propertyValidator("functionArn",cdk().validateString)(properties.functionArn)),errors.collect(cdk().propertyValidator("invocationType",cdk().validateString)(properties.invocationType)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "LambdaActionProperty"')}function convertCfnReceiptRuleLambdaActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleLambdaActionPropertyValidator(properties).assertSuccess(),{FunctionArn:cdk().stringToCloudFormation(properties.functionArn),InvocationType:cdk().stringToCloudFormation(properties.invocationType),TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnReceiptRuleLambdaActionPropertyFromCloudFormation(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("functionArn","FunctionArn",properties.FunctionArn!=null?cfn_parse().FromCloudFormation.getString(properties.FunctionArn):void 0),ret.addPropertyResult("invocationType","InvocationType",properties.InvocationType!=null?cfn_parse().FromCloudFormation.getString(properties.InvocationType):void 0),ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleConnectActionPropertyValidator(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("iamRoleArn",cdk().requiredValidator)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().validateString)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("instanceArn",cdk().requiredValidator)(properties.instanceArn)),errors.collect(cdk().propertyValidator("instanceArn",cdk().validateString)(properties.instanceArn)),errors.wrap('supplied properties not correct for "ConnectActionProperty"')}function convertCfnReceiptRuleConnectActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleConnectActionPropertyValidator(properties).assertSuccess(),{IAMRoleARN:cdk().stringToCloudFormation(properties.iamRoleArn),InstanceARN:cdk().stringToCloudFormation(properties.instanceArn)}):properties}function CfnReceiptRuleConnectActionPropertyFromCloudFormation(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("iamRoleArn","IAMRoleARN",properties.IAMRoleARN!=null?cfn_parse().FromCloudFormation.getString(properties.IAMRoleARN):void 0),ret.addPropertyResult("instanceArn","InstanceARN",properties.InstanceARN!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceARN):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleActionPropertyValidator(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("addHeaderAction",CfnReceiptRuleAddHeaderActionPropertyValidator)(properties.addHeaderAction)),errors.collect(cdk().propertyValidator("bounceAction",CfnReceiptRuleBounceActionPropertyValidator)(properties.bounceAction)),errors.collect(cdk().propertyValidator("connectAction",CfnReceiptRuleConnectActionPropertyValidator)(properties.connectAction)),errors.collect(cdk().propertyValidator("lambdaAction",CfnReceiptRuleLambdaActionPropertyValidator)(properties.lambdaAction)),errors.collect(cdk().propertyValidator("s3Action",CfnReceiptRuleS3ActionPropertyValidator)(properties.s3Action)),errors.collect(cdk().propertyValidator("snsAction",CfnReceiptRuleSNSActionPropertyValidator)(properties.snsAction)),errors.collect(cdk().propertyValidator("stopAction",CfnReceiptRuleStopActionPropertyValidator)(properties.stopAction)),errors.collect(cdk().propertyValidator("workmailAction",CfnReceiptRuleWorkmailActionPropertyValidator)(properties.workmailAction)),errors.wrap('supplied properties not correct for "ActionProperty"')}function convertCfnReceiptRuleActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleActionPropertyValidator(properties).assertSuccess(),{AddHeaderAction:convertCfnReceiptRuleAddHeaderActionPropertyToCloudFormation(properties.addHeaderAction),BounceAction:convertCfnReceiptRuleBounceActionPropertyToCloudFormation(properties.bounceAction),ConnectAction:convertCfnReceiptRuleConnectActionPropertyToCloudFormation(properties.connectAction),LambdaAction:convertCfnReceiptRuleLambdaActionPropertyToCloudFormation(properties.lambdaAction),S3Action:convertCfnReceiptRuleS3ActionPropertyToCloudFormation(properties.s3Action),SNSAction:convertCfnReceiptRuleSNSActionPropertyToCloudFormation(properties.snsAction),StopAction:convertCfnReceiptRuleStopActionPropertyToCloudFormation(properties.stopAction),WorkmailAction:convertCfnReceiptRuleWorkmailActionPropertyToCloudFormation(properties.workmailAction)}):properties}function CfnReceiptRuleActionPropertyFromCloudFormation(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("addHeaderAction","AddHeaderAction",properties.AddHeaderAction!=null?CfnReceiptRuleAddHeaderActionPropertyFromCloudFormation(properties.AddHeaderAction):void 0),ret.addPropertyResult("bounceAction","BounceAction",properties.BounceAction!=null?CfnReceiptRuleBounceActionPropertyFromCloudFormation(properties.BounceAction):void 0),ret.addPropertyResult("connectAction","ConnectAction",properties.ConnectAction!=null?CfnReceiptRuleConnectActionPropertyFromCloudFormation(properties.ConnectAction):void 0),ret.addPropertyResult("lambdaAction","LambdaAction",properties.LambdaAction!=null?CfnReceiptRuleLambdaActionPropertyFromCloudFormation(properties.LambdaAction):void 0),ret.addPropertyResult("s3Action","S3Action",properties.S3Action!=null?CfnReceiptRuleS3ActionPropertyFromCloudFormation(properties.S3Action):void 0),ret.addPropertyResult("snsAction","SNSAction",properties.SNSAction!=null?CfnReceiptRuleSNSActionPropertyFromCloudFormation(properties.SNSAction):void 0),ret.addPropertyResult("stopAction","StopAction",properties.StopAction!=null?CfnReceiptRuleStopActionPropertyFromCloudFormation(properties.StopAction):void 0),ret.addPropertyResult("workmailAction","WorkmailAction",properties.WorkmailAction!=null?CfnReceiptRuleWorkmailActionPropertyFromCloudFormation(properties.WorkmailAction):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRuleRulePropertyValidator(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("actions",cdk().listValidator(CfnReceiptRuleActionPropertyValidator))(properties.actions)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("recipients",cdk().listValidator(cdk().validateString))(properties.recipients)),errors.collect(cdk().propertyValidator("scanEnabled",cdk().validateBoolean)(properties.scanEnabled)),errors.collect(cdk().propertyValidator("tlsPolicy",cdk().validateString)(properties.tlsPolicy)),errors.wrap('supplied properties not correct for "RuleProperty"')}function convertCfnReceiptRuleRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleRulePropertyValidator(properties).assertSuccess(),{Actions:cdk().listMapper(convertCfnReceiptRuleActionPropertyToCloudFormation)(properties.actions),Enabled:cdk().booleanToCloudFormation(properties.enabled),Name:cdk().stringToCloudFormation(properties.name),Recipients:cdk().listMapper(cdk().stringToCloudFormation)(properties.recipients),ScanEnabled:cdk().booleanToCloudFormation(properties.scanEnabled),TlsPolicy:cdk().stringToCloudFormation(properties.tlsPolicy)}):properties}function CfnReceiptRuleRulePropertyFromCloudFormation(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("actions","Actions",properties.Actions!=null?cfn_parse().FromCloudFormation.getArray(CfnReceiptRuleActionPropertyFromCloudFormation)(properties.Actions):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("recipients","Recipients",properties.Recipients!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Recipients):void 0),ret.addPropertyResult("scanEnabled","ScanEnabled",properties.ScanEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ScanEnabled):void 0),ret.addPropertyResult("tlsPolicy","TlsPolicy",properties.TlsPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.TlsPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnReceiptRulePropsValidator(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("after",cdk().validateString)(properties.after)),errors.collect(cdk().propertyValidator("rule",cdk().requiredValidator)(properties.rule)),errors.collect(cdk().propertyValidator("rule",CfnReceiptRuleRulePropertyValidator)(properties.rule)),errors.collect(cdk().propertyValidator("ruleSetName",cdk().requiredValidator)(properties.ruleSetName)),errors.collect(cdk().propertyValidator("ruleSetName",cdk().validateString)(properties.ruleSetName)),errors.wrap('supplied properties not correct for "CfnReceiptRuleProps"')}function convertCfnReceiptRulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRulePropsValidator(properties).assertSuccess(),{After:cdk().stringToCloudFormation(properties.after),Rule:convertCfnReceiptRuleRulePropertyToCloudFormation(properties.rule),RuleSetName:cdk().stringToCloudFormation(properties.ruleSetName)}):properties}function CfnReceiptRulePropsFromCloudFormation(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("after","After",properties.After!=null?cfn_parse().FromCloudFormation.getString(properties.After):void 0),ret.addPropertyResult("rule","Rule",properties.Rule!=null?CfnReceiptRuleRulePropertyFromCloudFormation(properties.Rule):void 0),ret.addPropertyResult("ruleSetName","RuleSetName",properties.RuleSetName!=null?cfn_parse().FromCloudFormation.getString(properties.RuleSetName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnReceiptRuleSet extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnReceiptRuleSet",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::ReceiptRuleSet";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnReceiptRuleSetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnReceiptRuleSet(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 isCfnReceiptRuleSet(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnReceiptRuleSet.CFN_RESOURCE_TYPE_NAME}_ruleSetName;cfnPropertyNames={ruleSetName:"RuleSetName"};constructor(scope,id,props={}){super(scope,id,{type:CfnReceiptRuleSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnReceiptRuleSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnReceiptRuleSet),error}this._ruleSetName=props.ruleSetName}get receiptRuleSetRef(){return{ruleSetName:this.ref}}get ruleSetName(){return this._ruleSetName}set ruleSetName(value){cdk().traceProperty(this.node,"RuleSetName"),this._ruleSetName=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{ruleSetName:this._ruleSetName}}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",CfnReceiptRuleSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnReceiptRuleSetPropsToCloudFormation(props)}}exports.CfnReceiptRuleSet=CfnReceiptRuleSet;function CfnReceiptRuleSetPropsValidator(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("ruleSetName",cdk().validateString)(properties.ruleSetName)),errors.wrap('supplied properties not correct for "CfnReceiptRuleSetProps"')}function convertCfnReceiptRuleSetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnReceiptRuleSetPropsValidator(properties).assertSuccess(),{RuleSetName:cdk().stringToCloudFormation(properties.ruleSetName)}):properties}function CfnReceiptRuleSetPropsFromCloudFormation(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("ruleSetName","RuleSetName",properties.RuleSetName!=null?cfn_parse().FromCloudFormation.getString(properties.RuleSetName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::Template";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnTemplate(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 isCfnTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnTemplate.CFN_RESOURCE_TYPE_NAME}cdkTagManager;_tags;_template;cfnPropertyNames={tags:"Tags",template:"Template"};constructor(scope,id,props={}){super(scope,id,{type:CfnTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTemplate),error}this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::Template",void 0,{tagPropertyName:"tags"}),this._tags=props.tags,this._template=props.template}get templateRef(){return{templateId:this.ref}}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get template(){return this._template}set template(value){cdk().traceProperty(this.node,"Template"),this._template=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),template:this._template}}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",CfnTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTemplatePropsToCloudFormation(props)}}exports.CfnTemplate=CfnTemplate;function CfnTemplateTemplatePropertyValidator(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("htmlPart",cdk().validateString)(properties.htmlPart)),errors.collect(cdk().propertyValidator("subjectPart",cdk().requiredValidator)(properties.subjectPart)),errors.collect(cdk().propertyValidator("subjectPart",cdk().validateString)(properties.subjectPart)),errors.collect(cdk().propertyValidator("templateName",cdk().validateString)(properties.templateName)),errors.collect(cdk().propertyValidator("textPart",cdk().validateString)(properties.textPart)),errors.wrap('supplied properties not correct for "TemplateProperty"')}function convertCfnTemplateTemplatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateTemplatePropertyValidator(properties).assertSuccess(),{HtmlPart:cdk().stringToCloudFormation(properties.htmlPart),SubjectPart:cdk().stringToCloudFormation(properties.subjectPart),TemplateName:cdk().stringToCloudFormation(properties.templateName),TextPart:cdk().stringToCloudFormation(properties.textPart)}):properties}function CfnTemplateTemplatePropertyFromCloudFormation(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("htmlPart","HtmlPart",properties.HtmlPart!=null?cfn_parse().FromCloudFormation.getString(properties.HtmlPart):void 0),ret.addPropertyResult("subjectPart","SubjectPart",properties.SubjectPart!=null?cfn_parse().FromCloudFormation.getString(properties.SubjectPart):void 0),ret.addPropertyResult("templateName","TemplateName",properties.TemplateName!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateName):void 0),ret.addPropertyResult("textPart","TextPart",properties.TextPart!=null?cfn_parse().FromCloudFormation.getString(properties.TextPart):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplatePropsValidator(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("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("template",CfnTemplateTemplatePropertyValidator)(properties.template)),errors.wrap('supplied properties not correct for "CfnTemplateProps"')}function convertCfnTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplatePropsValidator(properties).assertSuccess(),{Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Template:convertCfnTemplateTemplatePropertyToCloudFormation(properties.template)}):properties}function CfnTemplatePropsFromCloudFormation(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("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("template","Template",properties.Template!=null?CfnTemplateTemplatePropertyFromCloudFormation(properties.Template):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnVdmAttributes extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnVdmAttributes",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::VdmAttributes";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnVdmAttributesPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnVdmAttributes(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 isCfnVdmAttributes(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnVdmAttributes.CFN_RESOURCE_TYPE_NAME}_dashboardAttributes;_guardianAttributes;cfnPropertyNames={dashboardAttributes:"DashboardAttributes",guardianAttributes:"GuardianAttributes"};constructor(scope,id,props={}){super(scope,id,{type:CfnVdmAttributes.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnVdmAttributesProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnVdmAttributes),error}this._dashboardAttributes=props.dashboardAttributes,this._guardianAttributes=props.guardianAttributes}get vdmAttributesRef(){return{vdmAttributesResourceId:this.ref}}get dashboardAttributes(){return this._dashboardAttributes}set dashboardAttributes(value){cdk().traceProperty(this.node,"DashboardAttributes"),this._dashboardAttributes=value}get guardianAttributes(){return this._guardianAttributes}set guardianAttributes(value){cdk().traceProperty(this.node,"GuardianAttributes"),this._guardianAttributes=value}get attrVdmAttributesResourceId(){return cdk().Token.asString(this.getAtt("VdmAttributesResourceId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{dashboardAttributes:this._dashboardAttributes,guardianAttributes:this._guardianAttributes}}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",CfnVdmAttributes.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnVdmAttributesPropsToCloudFormation(props)}}exports.CfnVdmAttributes=CfnVdmAttributes;function CfnVdmAttributesDashboardAttributesPropertyValidator(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("engagementMetrics",cdk().validateString)(properties.engagementMetrics)),errors.wrap('supplied properties not correct for "DashboardAttributesProperty"')}function convertCfnVdmAttributesDashboardAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVdmAttributesDashboardAttributesPropertyValidator(properties).assertSuccess(),{EngagementMetrics:cdk().stringToCloudFormation(properties.engagementMetrics)}):properties}function CfnVdmAttributesDashboardAttributesPropertyFromCloudFormation(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("engagementMetrics","EngagementMetrics",properties.EngagementMetrics!=null?cfn_parse().FromCloudFormation.getString(properties.EngagementMetrics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnVdmAttributesGuardianAttributesPropertyValidator(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("optimizedSharedDelivery",cdk().validateString)(properties.optimizedSharedDelivery)),errors.wrap('supplied properties not correct for "GuardianAttributesProperty"')}function convertCfnVdmAttributesGuardianAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVdmAttributesGuardianAttributesPropertyValidator(properties).assertSuccess(),{OptimizedSharedDelivery:cdk().stringToCloudFormation(properties.optimizedSharedDelivery)}):properties}function CfnVdmAttributesGuardianAttributesPropertyFromCloudFormation(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("optimizedSharedDelivery","OptimizedSharedDelivery",properties.OptimizedSharedDelivery!=null?cfn_parse().FromCloudFormation.getString(properties.OptimizedSharedDelivery):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnVdmAttributesPropsValidator(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("dashboardAttributes",CfnVdmAttributesDashboardAttributesPropertyValidator)(properties.dashboardAttributes)),errors.collect(cdk().propertyValidator("guardianAttributes",CfnVdmAttributesGuardianAttributesPropertyValidator)(properties.guardianAttributes)),errors.wrap('supplied properties not correct for "CfnVdmAttributesProps"')}function convertCfnVdmAttributesPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVdmAttributesPropsValidator(properties).assertSuccess(),{DashboardAttributes:convertCfnVdmAttributesDashboardAttributesPropertyToCloudFormation(properties.dashboardAttributes),GuardianAttributes:convertCfnVdmAttributesGuardianAttributesPropertyToCloudFormation(properties.guardianAttributes)}):properties}function CfnVdmAttributesPropsFromCloudFormation(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("dashboardAttributes","DashboardAttributes",properties.DashboardAttributes!=null?CfnVdmAttributesDashboardAttributesPropertyFromCloudFormation(properties.DashboardAttributes):void 0),ret.addPropertyResult("guardianAttributes","GuardianAttributes",properties.GuardianAttributes!=null?CfnVdmAttributesGuardianAttributesPropertyFromCloudFormation(properties.GuardianAttributes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCustomVerificationEmailTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnCustomVerificationEmailTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::CustomVerificationEmailTemplate";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCustomVerificationEmailTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnCustomVerificationEmailTemplate(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 isCfnCustomVerificationEmailTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnCustomVerificationEmailTemplate.CFN_RESOURCE_TYPE_NAME}static fromTemplateName(scope,id,templateName){class Import extends cdk().Resource{customVerificationEmailTemplateRef;constructor(scope2,id2,templateName2){super(scope2,id2),this.customVerificationEmailTemplateRef={templateName:templateName2}}}return new Import(scope,id,templateName)}static arnForCustomVerificationEmailTemplate(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_ICustomVerificationEmailTemplateRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForCustomVerificationEmailTemplate),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:custom-verification-email-template/${TemplateName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,TemplateName:resource.customVerificationEmailTemplateRef.templateName})}cdkTagManager;_failureRedirectionUrl;_fromEmailAddress;_successRedirectionUrl;_tags;_templateContent;_templateName;_templateSubject;cfnPropertyNames={tags:"Tags",failureRedirectionUrl:"FailureRedirectionURL",fromEmailAddress:"FromEmailAddress",successRedirectionUrl:"SuccessRedirectionURL",templateContent:"TemplateContent",templateName:"TemplateName",templateSubject:"TemplateSubject"};constructor(scope,id,props){super(scope,id,{type:CfnCustomVerificationEmailTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnCustomVerificationEmailTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCustomVerificationEmailTemplate),error}cdk().requireProperty(props,"failureRedirectionUrl",this),cdk().requireProperty(props,"fromEmailAddress",this),cdk().requireProperty(props,"successRedirectionUrl",this),cdk().requireProperty(props,"templateContent",this),cdk().requireProperty(props,"templateName",this),cdk().requireProperty(props,"templateSubject",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::CustomVerificationEmailTemplate",void 0,{tagPropertyName:"tags"}),this._failureRedirectionUrl=props.failureRedirectionUrl,this._fromEmailAddress=props.fromEmailAddress,this._successRedirectionUrl=props.successRedirectionUrl,this._tags=props.tags,this._templateContent=props.templateContent,this._templateName=props.templateName,this._templateSubject=props.templateSubject}get customVerificationEmailTemplateRef(){return{templateName:this.ref}}get failureRedirectionUrl(){return this._failureRedirectionUrl}set failureRedirectionUrl(value){cdk().traceProperty(this.node,"FailureRedirectionURL"),this._failureRedirectionUrl=value}get fromEmailAddress(){return this._fromEmailAddress}set fromEmailAddress(value){cdk().traceProperty(this.node,"FromEmailAddress"),this._fromEmailAddress=value}get successRedirectionUrl(){return this._successRedirectionUrl}set successRedirectionUrl(value){cdk().traceProperty(this.node,"SuccessRedirectionURL"),this._successRedirectionUrl=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get templateContent(){return this._templateContent}set templateContent(value){cdk().traceProperty(this.node,"TemplateContent"),this._templateContent=value}get templateName(){return this._templateName}set templateName(value){cdk().traceProperty(this.node,"TemplateName"),this._templateName=value}get templateSubject(){return this._templateSubject}set templateSubject(value){cdk().traceProperty(this.node,"TemplateSubject"),this._templateSubject=value}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),failureRedirectionUrl:this._failureRedirectionUrl,fromEmailAddress:this._fromEmailAddress,successRedirectionUrl:this._successRedirectionUrl,templateContent:this._templateContent,templateName:this._templateName,templateSubject:this._templateSubject}}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",CfnCustomVerificationEmailTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnCustomVerificationEmailTemplatePropsToCloudFormation(props)}}exports.CfnCustomVerificationEmailTemplate=CfnCustomVerificationEmailTemplate;function CfnCustomVerificationEmailTemplatePropsValidator(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("failureRedirectionUrl",cdk().requiredValidator)(properties.failureRedirectionUrl)),errors.collect(cdk().propertyValidator("failureRedirectionUrl",cdk().validateString)(properties.failureRedirectionUrl)),errors.collect(cdk().propertyValidator("fromEmailAddress",cdk().requiredValidator)(properties.fromEmailAddress)),errors.collect(cdk().propertyValidator("fromEmailAddress",cdk().validateString)(properties.fromEmailAddress)),errors.collect(cdk().propertyValidator("successRedirectionUrl",cdk().requiredValidator)(properties.successRedirectionUrl)),errors.collect(cdk().propertyValidator("successRedirectionUrl",cdk().validateString)(properties.successRedirectionUrl)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("templateContent",cdk().requiredValidator)(properties.templateContent)),errors.collect(cdk().propertyValidator("templateContent",cdk().validateString)(properties.templateContent)),errors.collect(cdk().propertyValidator("templateName",cdk().requiredValidator)(properties.templateName)),errors.collect(cdk().propertyValidator("templateName",cdk().validateString)(properties.templateName)),errors.collect(cdk().propertyValidator("templateSubject",cdk().requiredValidator)(properties.templateSubject)),errors.collect(cdk().propertyValidator("templateSubject",cdk().validateString)(properties.templateSubject)),errors.wrap('supplied properties not correct for "CfnCustomVerificationEmailTemplateProps"')}function convertCfnCustomVerificationEmailTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCustomVerificationEmailTemplatePropsValidator(properties).assertSuccess(),{FailureRedirectionURL:cdk().stringToCloudFormation(properties.failureRedirectionUrl),FromEmailAddress:cdk().stringToCloudFormation(properties.fromEmailAddress),SuccessRedirectionURL:cdk().stringToCloudFormation(properties.successRedirectionUrl),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TemplateContent:cdk().stringToCloudFormation(properties.templateContent),TemplateName:cdk().stringToCloudFormation(properties.templateName),TemplateSubject:cdk().stringToCloudFormation(properties.templateSubject)}):properties}function CfnCustomVerificationEmailTemplatePropsFromCloudFormation(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("failureRedirectionUrl","FailureRedirectionURL",properties.FailureRedirectionURL!=null?cfn_parse().FromCloudFormation.getString(properties.FailureRedirectionURL):void 0),ret.addPropertyResult("fromEmailAddress","FromEmailAddress",properties.FromEmailAddress!=null?cfn_parse().FromCloudFormation.getString(properties.FromEmailAddress):void 0),ret.addPropertyResult("successRedirectionUrl","SuccessRedirectionURL",properties.SuccessRedirectionURL!=null?cfn_parse().FromCloudFormation.getString(properties.SuccessRedirectionURL):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("templateContent","TemplateContent",properties.TemplateContent!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateContent):void 0),ret.addPropertyResult("templateName","TemplateName",properties.TemplateName!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateName):void 0),ret.addPropertyResult("templateSubject","TemplateSubject",properties.TemplateSubject!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateSubject):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerAddonInstance extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerAddonInstance",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerAddonInstance";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerAddonInstancePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerAddonInstance(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 isCfnMailManagerAddonInstance(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerAddonInstance.CFN_RESOURCE_TYPE_NAME}static fromMailManagerAddonInstanceArn(scope,id,arn){class Import extends cdk().Resource{mailManagerAddonInstanceRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:addon-instance/${AddonInstanceId}").parse(arn2);this.mailManagerAddonInstanceRef={addonInstanceId:variables.AddonInstanceId,addonInstanceArn:arn2}}}return new Import(scope,id,arn)}static fromAddonInstanceId(scope,id,addonInstanceId){class Import extends cdk().Resource{mailManagerAddonInstanceRef;constructor(scope2,id2,addonInstanceId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:addon-instance/${AddonInstanceId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AddonInstanceId:addonInstanceId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerAddonInstanceRef={addonInstanceId:addonInstanceId2,addonInstanceArn:arn}}}return new Import(scope,id,addonInstanceId)}static arnForMailManagerAddonInstance(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerAddonInstanceRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerAddonInstance),error}return resource.mailManagerAddonInstanceRef.addonInstanceArn}_addonSubscriptionId;cdkTagManager;_tags;cfnPropertyNames={addonSubscriptionId:"AddonSubscriptionId",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnMailManagerAddonInstance.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerAddonInstanceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerAddonInstance),error}cdk().requireProperty(props,"addonSubscriptionId",this),this._addonSubscriptionId=props.addonSubscriptionId,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerAddonInstance",void 0,{tagPropertyName:"tags"}),this._tags=props.tags}get mailManagerAddonInstanceRef(){return{addonInstanceId:this.ref,addonInstanceArn:this.attrAddonInstanceArn}}get addonSubscriptionId(){return this._addonSubscriptionId}set addonSubscriptionId(value){cdk().traceProperty(this.node,"AddonSubscriptionId"),this._addonSubscriptionId=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrAddonInstanceArn(){return cdk().Token.asString(this.getAtt("AddonInstanceArn",cdk().ResolutionTypeHint.STRING))}get attrAddonInstanceId(){return cdk().Token.asString(this.getAtt("AddonInstanceId",cdk().ResolutionTypeHint.STRING))}get attrAddonName(){return cdk().Token.asString(this.getAtt("AddonName",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{addonSubscriptionId:this._addonSubscriptionId,tags:this.cdkTagManager.renderTags(this._tags)}}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",CfnMailManagerAddonInstance.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerAddonInstancePropsToCloudFormation(props)}}exports.CfnMailManagerAddonInstance=CfnMailManagerAddonInstance;function CfnMailManagerAddonInstancePropsValidator(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("addonSubscriptionId",cdk().requiredValidator)(properties.addonSubscriptionId)),errors.collect(cdk().propertyValidator("addonSubscriptionId",cdk().validateString)(properties.addonSubscriptionId)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMailManagerAddonInstanceProps"')}function convertCfnMailManagerAddonInstancePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerAddonInstancePropsValidator(properties).assertSuccess(),{AddonSubscriptionId:cdk().stringToCloudFormation(properties.addonSubscriptionId),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMailManagerAddonInstancePropsFromCloudFormation(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("addonSubscriptionId","AddonSubscriptionId",properties.AddonSubscriptionId!=null?cfn_parse().FromCloudFormation.getString(properties.AddonSubscriptionId):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerAddonSubscription extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerAddonSubscription",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerAddonSubscription";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerAddonSubscriptionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerAddonSubscription(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 isCfnMailManagerAddonSubscription(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerAddonSubscription.CFN_RESOURCE_TYPE_NAME}static fromMailManagerAddonSubscriptionArn(scope,id,arn){class Import extends cdk().Resource{mailManagerAddonSubscriptionRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:addon-subscription/${AddonSubscriptionId}").parse(arn2);this.mailManagerAddonSubscriptionRef={addonSubscriptionId:variables.AddonSubscriptionId,addonSubscriptionArn:arn2}}}return new Import(scope,id,arn)}static fromAddonSubscriptionId(scope,id,addonSubscriptionId){class Import extends cdk().Resource{mailManagerAddonSubscriptionRef;constructor(scope2,id2,addonSubscriptionId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:addon-subscription/${AddonSubscriptionId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AddonSubscriptionId:addonSubscriptionId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerAddonSubscriptionRef={addonSubscriptionId:addonSubscriptionId2,addonSubscriptionArn:arn}}}return new Import(scope,id,addonSubscriptionId)}static arnForMailManagerAddonSubscription(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerAddonSubscriptionRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerAddonSubscription),error}return resource.mailManagerAddonSubscriptionRef.addonSubscriptionArn}_addonName;cdkTagManager;_tags;cfnPropertyNames={addonName:"AddonName",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnMailManagerAddonSubscription.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerAddonSubscriptionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerAddonSubscription),error}cdk().requireProperty(props,"addonName",this),this._addonName=props.addonName,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerAddonSubscription",void 0,{tagPropertyName:"tags"}),this._tags=props.tags}get mailManagerAddonSubscriptionRef(){return{addonSubscriptionId:this.ref,addonSubscriptionArn:this.attrAddonSubscriptionArn}}get addonName(){return this._addonName}set addonName(value){cdk().traceProperty(this.node,"AddonName"),this._addonName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrAddonSubscriptionArn(){return cdk().Token.asString(this.getAtt("AddonSubscriptionArn",cdk().ResolutionTypeHint.STRING))}get attrAddonSubscriptionId(){return cdk().Token.asString(this.getAtt("AddonSubscriptionId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{addonName:this._addonName,tags:this.cdkTagManager.renderTags(this._tags)}}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",CfnMailManagerAddonSubscription.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerAddonSubscriptionPropsToCloudFormation(props)}}exports.CfnMailManagerAddonSubscription=CfnMailManagerAddonSubscription;function CfnMailManagerAddonSubscriptionPropsValidator(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("addonName",cdk().requiredValidator)(properties.addonName)),errors.collect(cdk().propertyValidator("addonName",cdk().validateString)(properties.addonName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMailManagerAddonSubscriptionProps"')}function convertCfnMailManagerAddonSubscriptionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerAddonSubscriptionPropsValidator(properties).assertSuccess(),{AddonName:cdk().stringToCloudFormation(properties.addonName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMailManagerAddonSubscriptionPropsFromCloudFormation(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("addonName","AddonName",properties.AddonName!=null?cfn_parse().FromCloudFormation.getString(properties.AddonName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerAddressList extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerAddressList",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerAddressList";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerAddressListPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerAddressList(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 isCfnMailManagerAddressList(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerAddressList.CFN_RESOURCE_TYPE_NAME}static fromMailManagerAddressListArn(scope,id,arn){class Import extends cdk().Resource{mailManagerAddressListRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-address-list/${AddressListId}").parse(arn2);this.mailManagerAddressListRef={addressListId:variables.AddressListId,addressListArn:arn2}}}return new Import(scope,id,arn)}static fromAddressListId(scope,id,addressListId){class Import extends cdk().Resource{mailManagerAddressListRef;constructor(scope2,id2,addressListId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-address-list/${AddressListId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AddressListId:addressListId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerAddressListRef={addressListId:addressListId2,addressListArn:arn}}}return new Import(scope,id,addressListId)}static arnForMailManagerAddressList(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerAddressListRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerAddressList),error}return resource.mailManagerAddressListRef.addressListArn}_addressListName;cdkTagManager;_tags;cfnPropertyNames={addressListName:"AddressListName",tags:"Tags"};constructor(scope,id,props={}){super(scope,id,{type:CfnMailManagerAddressList.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerAddressListProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerAddressList),error}this._addressListName=props.addressListName,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerAddressList",void 0,{tagPropertyName:"tags"}),this._tags=props.tags}get mailManagerAddressListRef(){return{addressListId:this.ref,addressListArn:this.attrAddressListArn}}get addressListName(){return this._addressListName}set addressListName(value){cdk().traceProperty(this.node,"AddressListName"),this._addressListName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrAddressListArn(){return cdk().Token.asString(this.getAtt("AddressListArn",cdk().ResolutionTypeHint.STRING))}get attrAddressListId(){return cdk().Token.asString(this.getAtt("AddressListId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{addressListName:this._addressListName,tags:this.cdkTagManager.renderTags(this._tags)}}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",CfnMailManagerAddressList.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerAddressListPropsToCloudFormation(props)}}exports.CfnMailManagerAddressList=CfnMailManagerAddressList;function CfnMailManagerAddressListPropsValidator(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("addressListName",cdk().validateString)(properties.addressListName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMailManagerAddressListProps"')}function convertCfnMailManagerAddressListPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerAddressListPropsValidator(properties).assertSuccess(),{AddressListName:cdk().stringToCloudFormation(properties.addressListName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMailManagerAddressListPropsFromCloudFormation(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("addressListName","AddressListName",properties.AddressListName!=null?cfn_parse().FromCloudFormation.getString(properties.AddressListName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerArchive extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerArchive",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerArchive";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerArchivePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerArchive(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 isCfnMailManagerArchive(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerArchive.CFN_RESOURCE_TYPE_NAME}static fromMailManagerArchiveArn(scope,id,arn){class Import extends cdk().Resource{mailManagerArchiveRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-archive/${ArchiveId}").parse(arn2);this.mailManagerArchiveRef={archiveId:variables.ArchiveId,archiveArn:arn2}}}return new Import(scope,id,arn)}static fromArchiveId(scope,id,archiveId){class Import extends cdk().Resource{mailManagerArchiveRef;constructor(scope2,id2,archiveId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-archive/${ArchiveId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ArchiveId:archiveId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerArchiveRef={archiveId:archiveId2,archiveArn:arn}}}return new Import(scope,id,archiveId)}static arnForMailManagerArchive(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerArchiveRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerArchive),error}return resource.mailManagerArchiveRef.archiveArn}_archiveName;cdkTagManager;_kmsKeyArn;_retention;_tags;cfnPropertyNames={archiveName:"ArchiveName",tags:"Tags",kmsKeyArn:"KmsKeyArn",retention:"Retention"};constructor(scope,id,props={}){super(scope,id,{type:CfnMailManagerArchive.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerArchiveProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerArchive),error}this._archiveName=props.archiveName,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerArchive",void 0,{tagPropertyName:"tags"}),this._kmsKeyArn=props.kmsKeyArn,this._retention=props.retention,this._tags=props.tags}get mailManagerArchiveRef(){return{archiveId:this.ref,archiveArn:this.attrArchiveArn}}get archiveName(){return this._archiveName}set archiveName(value){cdk().traceProperty(this.node,"ArchiveName"),this._archiveName=value}get kmsKeyArn(){return this._kmsKeyArn}set kmsKeyArn(value){cdk().traceProperty(this.node,"KmsKeyArn"),this._kmsKeyArn=value}get retention(){return this._retention}set retention(value){cdk().traceProperty(this.node,"Retention"),this._retention=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArchiveArn(){return cdk().Token.asString(this.getAtt("ArchiveArn",cdk().ResolutionTypeHint.STRING))}get attrArchiveId(){return cdk().Token.asString(this.getAtt("ArchiveId",cdk().ResolutionTypeHint.STRING))}get attrArchiveState(){return cdk().Token.asString(this.getAtt("ArchiveState",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{archiveName:this._archiveName,tags:this.cdkTagManager.renderTags(this._tags),kmsKeyArn:this._kmsKeyArn,retention:this._retention}}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",CfnMailManagerArchive.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerArchivePropsToCloudFormation(props)}}exports.CfnMailManagerArchive=CfnMailManagerArchive;function CfnMailManagerArchiveArchiveRetentionPropertyValidator(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("retentionPeriod",cdk().requiredValidator)(properties.retentionPeriod)),errors.collect(cdk().propertyValidator("retentionPeriod",cdk().validateString)(properties.retentionPeriod)),errors.wrap('supplied properties not correct for "ArchiveRetentionProperty"')}function convertCfnMailManagerArchiveArchiveRetentionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerArchiveArchiveRetentionPropertyValidator(properties).assertSuccess(),{RetentionPeriod:cdk().stringToCloudFormation(properties.retentionPeriod)}):properties}function CfnMailManagerArchiveArchiveRetentionPropertyFromCloudFormation(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("retentionPeriod","RetentionPeriod",properties.RetentionPeriod!=null?cfn_parse().FromCloudFormation.getString(properties.RetentionPeriod):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerArchivePropsValidator(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("archiveName",cdk().validateString)(properties.archiveName)),errors.collect(cdk().propertyValidator("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.collect(cdk().propertyValidator("retention",CfnMailManagerArchiveArchiveRetentionPropertyValidator)(properties.retention)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMailManagerArchiveProps"')}function convertCfnMailManagerArchivePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerArchivePropsValidator(properties).assertSuccess(),{ArchiveName:cdk().stringToCloudFormation(properties.archiveName),KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn),Retention:convertCfnMailManagerArchiveArchiveRetentionPropertyToCloudFormation(properties.retention),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMailManagerArchivePropsFromCloudFormation(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("archiveName","ArchiveName",properties.ArchiveName!=null?cfn_parse().FromCloudFormation.getString(properties.ArchiveName):void 0),ret.addPropertyResult("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addPropertyResult("retention","Retention",properties.Retention!=null?CfnMailManagerArchiveArchiveRetentionPropertyFromCloudFormation(properties.Retention):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerIngressPoint extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerIngressPoint",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerIngressPoint";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerIngressPointPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerIngressPoint(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 isCfnMailManagerIngressPoint(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerIngressPoint.CFN_RESOURCE_TYPE_NAME}static fromMailManagerIngressPointArn(scope,id,arn){class Import extends cdk().Resource{mailManagerIngressPointRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-ingress-point/${IngressPointId}").parse(arn2);this.mailManagerIngressPointRef={ingressPointId:variables.IngressPointId,ingressPointArn:arn2}}}return new Import(scope,id,arn)}static fromIngressPointId(scope,id,ingressPointId){class Import extends cdk().Resource{mailManagerIngressPointRef;constructor(scope2,id2,ingressPointId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-ingress-point/${IngressPointId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,IngressPointId:ingressPointId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerIngressPointRef={ingressPointId:ingressPointId2,ingressPointArn:arn}}}return new Import(scope,id,ingressPointId)}static arnForMailManagerIngressPoint(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerIngressPointRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerIngressPoint),error}return resource.mailManagerIngressPointRef.ingressPointArn}cdkTagManager;_ingressPointConfiguration;_ingressPointName;_networkConfiguration;_ruleSetId;_statusToUpdate;_tags;_tlsPolicy;_trafficPolicyId;_type;cfnPropertyNames={tags:"Tags",ingressPointConfiguration:"IngressPointConfiguration",ingressPointName:"IngressPointName",networkConfiguration:"NetworkConfiguration",ruleSetId:"RuleSetId",statusToUpdate:"StatusToUpdate",tlsPolicy:"TlsPolicy",trafficPolicyId:"TrafficPolicyId",type:"Type"};constructor(scope,id,props){super(scope,id,{type:CfnMailManagerIngressPoint.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerIngressPointProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerIngressPoint),error}cdk().requireProperty(props,"ruleSetId",this),cdk().requireProperty(props,"trafficPolicyId",this),cdk().requireProperty(props,"type",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerIngressPoint",void 0,{tagPropertyName:"tags"}),this._ingressPointConfiguration=props.ingressPointConfiguration,this._ingressPointName=props.ingressPointName,this._networkConfiguration=props.networkConfiguration,this._ruleSetId=props.ruleSetId,this._statusToUpdate=props.statusToUpdate,this._tags=props.tags,this._tlsPolicy=props.tlsPolicy,this._trafficPolicyId=props.trafficPolicyId,this._type=props.type}get mailManagerIngressPointRef(){return{ingressPointId:this.ref,ingressPointArn:this.attrIngressPointArn}}get ingressPointConfiguration(){return this._ingressPointConfiguration}set ingressPointConfiguration(value){cdk().traceProperty(this.node,"IngressPointConfiguration"),this._ingressPointConfiguration=value}get ingressPointName(){return this._ingressPointName}set ingressPointName(value){cdk().traceProperty(this.node,"IngressPointName"),this._ingressPointName=value}get networkConfiguration(){return this._networkConfiguration}set networkConfiguration(value){cdk().traceProperty(this.node,"NetworkConfiguration"),this._networkConfiguration=value}get ruleSetId(){return this._ruleSetId}set ruleSetId(value){cdk().traceProperty(this.node,"RuleSetId"),this._ruleSetId=value}get statusToUpdate(){return this._statusToUpdate}set statusToUpdate(value){cdk().traceProperty(this.node,"StatusToUpdate"),this._statusToUpdate=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get tlsPolicy(){return this._tlsPolicy}set tlsPolicy(value){cdk().traceProperty(this.node,"TlsPolicy"),this._tlsPolicy=value}get trafficPolicyId(){return this._trafficPolicyId}set trafficPolicyId(value){cdk().traceProperty(this.node,"TrafficPolicyId"),this._trafficPolicyId=value}get type(){return this._type}set type(value){cdk().traceProperty(this.node,"Type"),this._type=value}get attrARecord(){return cdk().Token.asString(this.getAtt("ARecord",cdk().ResolutionTypeHint.STRING))}get attrIngressPointArn(){return cdk().Token.asString(this.getAtt("IngressPointArn",cdk().ResolutionTypeHint.STRING))}get attrIngressPointId(){return cdk().Token.asString(this.getAtt("IngressPointId",cdk().ResolutionTypeHint.STRING))}get attrStatus(){return cdk().Token.asString(this.getAtt("Status",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),ingressPointConfiguration:this._ingressPointConfiguration,ingressPointName:this._ingressPointName,networkConfiguration:this._networkConfiguration,ruleSetId:this._ruleSetId,statusToUpdate:this._statusToUpdate,tlsPolicy:this._tlsPolicy,trafficPolicyId:this._trafficPolicyId,type:this._type}}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",CfnMailManagerIngressPoint.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerIngressPointPropsToCloudFormation(props)}}exports.CfnMailManagerIngressPoint=CfnMailManagerIngressPoint;function CfnMailManagerIngressPointTrustStorePropertyValidator(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("caContent",cdk().requiredValidator)(properties.caContent)),errors.collect(cdk().propertyValidator("caContent",cdk().validateString)(properties.caContent)),errors.collect(cdk().propertyValidator("crlContent",cdk().validateString)(properties.crlContent)),errors.collect(cdk().propertyValidator("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.wrap('supplied properties not correct for "TrustStoreProperty"')}function convertCfnMailManagerIngressPointTrustStorePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerIngressPointTrustStorePropertyValidator(properties).assertSuccess(),{CAContent:cdk().stringToCloudFormation(properties.caContent),CrlContent:cdk().stringToCloudFormation(properties.crlContent),KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn)}):properties}function CfnMailManagerIngressPointTrustStorePropertyFromCloudFormation(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("caContent","CAContent",properties.CAContent!=null?cfn_parse().FromCloudFormation.getString(properties.CAContent):void 0),ret.addPropertyResult("crlContent","CrlContent",properties.CrlContent!=null?cfn_parse().FromCloudFormation.getString(properties.CrlContent):void 0),ret.addPropertyResult("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerIngressPointTlsAuthConfigurationPropertyValidator(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("trustStore",cdk().requiredValidator)(properties.trustStore)),errors.collect(cdk().propertyValidator("trustStore",CfnMailManagerIngressPointTrustStorePropertyValidator)(properties.trustStore)),errors.wrap('supplied properties not correct for "TlsAuthConfigurationProperty"')}function convertCfnMailManagerIngressPointTlsAuthConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerIngressPointTlsAuthConfigurationPropertyValidator(properties).assertSuccess(),{TrustStore:convertCfnMailManagerIngressPointTrustStorePropertyToCloudFormation(properties.trustStore)}):properties}function CfnMailManagerIngressPointTlsAuthConfigurationPropertyFromCloudFormation(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("trustStore","TrustStore",properties.TrustStore!=null?CfnMailManagerIngressPointTrustStorePropertyFromCloudFormation(properties.TrustStore):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerIngressPointIngressPointConfigurationPropertyValidator(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("secretArn",cdk().validateString)(properties.secretArn)),errors.collect(cdk().propertyValidator("smtpPassword",cdk().validateString)(properties.smtpPassword)),errors.collect(cdk().propertyValidator("tlsAuthConfiguration",CfnMailManagerIngressPointTlsAuthConfigurationPropertyValidator)(properties.tlsAuthConfiguration)),errors.wrap('supplied properties not correct for "IngressPointConfigurationProperty"')}function convertCfnMailManagerIngressPointIngressPointConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerIngressPointIngressPointConfigurationPropertyValidator(properties).assertSuccess(),{SecretArn:cdk().stringToCloudFormation(properties.secretArn),SmtpPassword:cdk().stringToCloudFormation(properties.smtpPassword),TlsAuthConfiguration:convertCfnMailManagerIngressPointTlsAuthConfigurationPropertyToCloudFormation(properties.tlsAuthConfiguration)}):properties}function CfnMailManagerIngressPointIngressPointConfigurationPropertyFromCloudFormation(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("secretArn","SecretArn",properties.SecretArn!=null?cfn_parse().FromCloudFormation.getString(properties.SecretArn):void 0),ret.addPropertyResult("smtpPassword","SmtpPassword",properties.SmtpPassword!=null?cfn_parse().FromCloudFormation.getString(properties.SmtpPassword):void 0),ret.addPropertyResult("tlsAuthConfiguration","TlsAuthConfiguration",properties.TlsAuthConfiguration!=null?CfnMailManagerIngressPointTlsAuthConfigurationPropertyFromCloudFormation(properties.TlsAuthConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerIngressPointPublicNetworkConfigurationPropertyValidator(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("ipType",cdk().requiredValidator)(properties.ipType)),errors.collect(cdk().propertyValidator("ipType",cdk().validateString)(properties.ipType)),errors.wrap('supplied properties not correct for "PublicNetworkConfigurationProperty"')}function convertCfnMailManagerIngressPointPublicNetworkConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerIngressPointPublicNetworkConfigurationPropertyValidator(properties).assertSuccess(),{IpType:cdk().stringToCloudFormation(properties.ipType)}):properties}function CfnMailManagerIngressPointPublicNetworkConfigurationPropertyFromCloudFormation(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("ipType","IpType",properties.IpType!=null?cfn_parse().FromCloudFormation.getString(properties.IpType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerIngressPointPrivateNetworkConfigurationPropertyValidator(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("vpcEndpointId",cdk().requiredValidator)(properties.vpcEndpointId)),errors.collect(cdk().propertyValidator("vpcEndpointId",cdk().validateString)(properties.vpcEndpointId)),errors.wrap('supplied properties not correct for "PrivateNetworkConfigurationProperty"')}function convertCfnMailManagerIngressPointPrivateNetworkConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerIngressPointPrivateNetworkConfigurationPropertyValidator(properties).assertSuccess(),{VpcEndpointId:cdk().stringToCloudFormation(properties.vpcEndpointId)}):properties}function CfnMailManagerIngressPointPrivateNetworkConfigurationPropertyFromCloudFormation(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("vpcEndpointId","VpcEndpointId",properties.VpcEndpointId!=null?cfn_parse().FromCloudFormation.getString(properties.VpcEndpointId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerIngressPointNetworkConfigurationPropertyValidator(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("privateNetworkConfiguration",CfnMailManagerIngressPointPrivateNetworkConfigurationPropertyValidator)(properties.privateNetworkConfiguration)),errors.collect(cdk().propertyValidator("publicNetworkConfiguration",CfnMailManagerIngressPointPublicNetworkConfigurationPropertyValidator)(properties.publicNetworkConfiguration)),errors.wrap('supplied properties not correct for "NetworkConfigurationProperty"')}function convertCfnMailManagerIngressPointNetworkConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerIngressPointNetworkConfigurationPropertyValidator(properties).assertSuccess(),{PrivateNetworkConfiguration:convertCfnMailManagerIngressPointPrivateNetworkConfigurationPropertyToCloudFormation(properties.privateNetworkConfiguration),PublicNetworkConfiguration:convertCfnMailManagerIngressPointPublicNetworkConfigurationPropertyToCloudFormation(properties.publicNetworkConfiguration)}):properties}function CfnMailManagerIngressPointNetworkConfigurationPropertyFromCloudFormation(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("privateNetworkConfiguration","PrivateNetworkConfiguration",properties.PrivateNetworkConfiguration!=null?CfnMailManagerIngressPointPrivateNetworkConfigurationPropertyFromCloudFormation(properties.PrivateNetworkConfiguration):void 0),ret.addPropertyResult("publicNetworkConfiguration","PublicNetworkConfiguration",properties.PublicNetworkConfiguration!=null?CfnMailManagerIngressPointPublicNetworkConfigurationPropertyFromCloudFormation(properties.PublicNetworkConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerIngressPointPropsValidator(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("ingressPointConfiguration",CfnMailManagerIngressPointIngressPointConfigurationPropertyValidator)(properties.ingressPointConfiguration)),errors.collect(cdk().propertyValidator("ingressPointName",cdk().validateString)(properties.ingressPointName)),errors.collect(cdk().propertyValidator("networkConfiguration",CfnMailManagerIngressPointNetworkConfigurationPropertyValidator)(properties.networkConfiguration)),errors.collect(cdk().propertyValidator("ruleSetId",cdk().requiredValidator)(properties.ruleSetId)),errors.collect(cdk().propertyValidator("ruleSetId",cdk().validateString)(properties.ruleSetId)),errors.collect(cdk().propertyValidator("statusToUpdate",cdk().validateString)(properties.statusToUpdate)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("tlsPolicy",cdk().validateString)(properties.tlsPolicy)),errors.collect(cdk().propertyValidator("trafficPolicyId",cdk().requiredValidator)(properties.trafficPolicyId)),errors.collect(cdk().propertyValidator("trafficPolicyId",cdk().validateString)(properties.trafficPolicyId)),errors.collect(cdk().propertyValidator("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "CfnMailManagerIngressPointProps"')}function convertCfnMailManagerIngressPointPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerIngressPointPropsValidator(properties).assertSuccess(),{IngressPointConfiguration:convertCfnMailManagerIngressPointIngressPointConfigurationPropertyToCloudFormation(properties.ingressPointConfiguration),IngressPointName:cdk().stringToCloudFormation(properties.ingressPointName),NetworkConfiguration:convertCfnMailManagerIngressPointNetworkConfigurationPropertyToCloudFormation(properties.networkConfiguration),RuleSetId:cdk().stringToCloudFormation(properties.ruleSetId),StatusToUpdate:cdk().stringToCloudFormation(properties.statusToUpdate),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TlsPolicy:cdk().stringToCloudFormation(properties.tlsPolicy),TrafficPolicyId:cdk().stringToCloudFormation(properties.trafficPolicyId),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnMailManagerIngressPointPropsFromCloudFormation(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("ingressPointConfiguration","IngressPointConfiguration",properties.IngressPointConfiguration!=null?CfnMailManagerIngressPointIngressPointConfigurationPropertyFromCloudFormation(properties.IngressPointConfiguration):void 0),ret.addPropertyResult("ingressPointName","IngressPointName",properties.IngressPointName!=null?cfn_parse().FromCloudFormation.getString(properties.IngressPointName):void 0),ret.addPropertyResult("networkConfiguration","NetworkConfiguration",properties.NetworkConfiguration!=null?CfnMailManagerIngressPointNetworkConfigurationPropertyFromCloudFormation(properties.NetworkConfiguration):void 0),ret.addPropertyResult("ruleSetId","RuleSetId",properties.RuleSetId!=null?cfn_parse().FromCloudFormation.getString(properties.RuleSetId):void 0),ret.addPropertyResult("statusToUpdate","StatusToUpdate",properties.StatusToUpdate!=null?cfn_parse().FromCloudFormation.getString(properties.StatusToUpdate):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("tlsPolicy","TlsPolicy",properties.TlsPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.TlsPolicy):void 0),ret.addPropertyResult("trafficPolicyId","TrafficPolicyId",properties.TrafficPolicyId!=null?cfn_parse().FromCloudFormation.getString(properties.TrafficPolicyId):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerRelay extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerRelay",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerRelay";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerRelayPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerRelay(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 isCfnMailManagerRelay(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerRelay.CFN_RESOURCE_TYPE_NAME}static fromMailManagerRelayArn(scope,id,arn){class Import extends cdk().Resource{mailManagerRelayRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-smtp-relay/${RelayId}").parse(arn2);this.mailManagerRelayRef={relayId:variables.RelayId,relayArn:arn2}}}return new Import(scope,id,arn)}static fromRelayId(scope,id,relayId){class Import extends cdk().Resource{mailManagerRelayRef;constructor(scope2,id2,relayId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-smtp-relay/${RelayId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,RelayId:relayId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerRelayRef={relayId:relayId2,relayArn:arn}}}return new Import(scope,id,relayId)}static arnForMailManagerRelay(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerRelayRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerRelay),error}return resource.mailManagerRelayRef.relayArn}_authentication;cdkTagManager;_relayName;_serverName;_serverPort;_tags;cfnPropertyNames={authentication:"Authentication",tags:"Tags",relayName:"RelayName",serverName:"ServerName",serverPort:"ServerPort"};constructor(scope,id,props){super(scope,id,{type:CfnMailManagerRelay.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerRelayProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerRelay),error}cdk().requireProperty(props,"authentication",this),cdk().requireProperty(props,"serverName",this),cdk().requireProperty(props,"serverPort",this),this._authentication=props.authentication,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerRelay",void 0,{tagPropertyName:"tags"}),this._relayName=props.relayName,this._serverName=props.serverName,this._serverPort=props.serverPort,this._tags=props.tags}get mailManagerRelayRef(){return{relayId:this.ref,relayArn:this.attrRelayArn}}get authentication(){return this._authentication}set authentication(value){cdk().traceProperty(this.node,"Authentication"),this._authentication=value}get relayName(){return this._relayName}set relayName(value){cdk().traceProperty(this.node,"RelayName"),this._relayName=value}get serverName(){return this._serverName}set serverName(value){cdk().traceProperty(this.node,"ServerName"),this._serverName=value}get serverPort(){return this._serverPort}set serverPort(value){cdk().traceProperty(this.node,"ServerPort"),this._serverPort=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrRelayArn(){return cdk().Token.asString(this.getAtt("RelayArn",cdk().ResolutionTypeHint.STRING))}get attrRelayId(){return cdk().Token.asString(this.getAtt("RelayId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{authentication:this._authentication,tags:this.cdkTagManager.renderTags(this._tags),relayName:this._relayName,serverName:this._serverName,serverPort:this._serverPort}}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",CfnMailManagerRelay.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerRelayPropsToCloudFormation(props)}}exports.CfnMailManagerRelay=CfnMailManagerRelay;function CfnMailManagerRelayRelayAuthenticationPropertyValidator(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("noAuthentication",cdk().validateObject)(properties.noAuthentication)),errors.collect(cdk().propertyValidator("secretArn",cdk().validateString)(properties.secretArn)),errors.wrap('supplied properties not correct for "RelayAuthenticationProperty"')}function convertCfnMailManagerRelayRelayAuthenticationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRelayRelayAuthenticationPropertyValidator(properties).assertSuccess(),{NoAuthentication:cdk().objectToCloudFormation(properties.noAuthentication),SecretArn:cdk().stringToCloudFormation(properties.secretArn)}):properties}function CfnMailManagerRelayRelayAuthenticationPropertyFromCloudFormation(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("noAuthentication","NoAuthentication",properties.NoAuthentication!=null?cfn_parse().FromCloudFormation.getAny(properties.NoAuthentication):void 0),ret.addPropertyResult("secretArn","SecretArn",properties.SecretArn!=null?cfn_parse().FromCloudFormation.getString(properties.SecretArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRelayPropsValidator(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("authentication",cdk().requiredValidator)(properties.authentication)),errors.collect(cdk().propertyValidator("authentication",CfnMailManagerRelayRelayAuthenticationPropertyValidator)(properties.authentication)),errors.collect(cdk().propertyValidator("relayName",cdk().validateString)(properties.relayName)),errors.collect(cdk().propertyValidator("serverName",cdk().requiredValidator)(properties.serverName)),errors.collect(cdk().propertyValidator("serverName",cdk().validateString)(properties.serverName)),errors.collect(cdk().propertyValidator("serverPort",cdk().requiredValidator)(properties.serverPort)),errors.collect(cdk().propertyValidator("serverPort",cdk().validateNumber)(properties.serverPort)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMailManagerRelayProps"')}function convertCfnMailManagerRelayPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRelayPropsValidator(properties).assertSuccess(),{Authentication:convertCfnMailManagerRelayRelayAuthenticationPropertyToCloudFormation(properties.authentication),RelayName:cdk().stringToCloudFormation(properties.relayName),ServerName:cdk().stringToCloudFormation(properties.serverName),ServerPort:cdk().numberToCloudFormation(properties.serverPort),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMailManagerRelayPropsFromCloudFormation(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("authentication","Authentication",properties.Authentication!=null?CfnMailManagerRelayRelayAuthenticationPropertyFromCloudFormation(properties.Authentication):void 0),ret.addPropertyResult("relayName","RelayName",properties.RelayName!=null?cfn_parse().FromCloudFormation.getString(properties.RelayName):void 0),ret.addPropertyResult("serverName","ServerName",properties.ServerName!=null?cfn_parse().FromCloudFormation.getString(properties.ServerName):void 0),ret.addPropertyResult("serverPort","ServerPort",properties.ServerPort!=null?cfn_parse().FromCloudFormation.getNumber(properties.ServerPort):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerRuleSet extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerRuleSet",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerRuleSet";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerRuleSetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerRuleSet(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 isCfnMailManagerRuleSet(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerRuleSet.CFN_RESOURCE_TYPE_NAME}static fromMailManagerRuleSetArn(scope,id,arn){class Import extends cdk().Resource{mailManagerRuleSetRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-rule-set/${RuleSetId}").parse(arn2);this.mailManagerRuleSetRef={ruleSetId:variables.RuleSetId,ruleSetArn:arn2}}}return new Import(scope,id,arn)}static fromRuleSetId(scope,id,ruleSetId){class Import extends cdk().Resource{mailManagerRuleSetRef;constructor(scope2,id2,ruleSetId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-rule-set/${RuleSetId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,RuleSetId:ruleSetId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerRuleSetRef={ruleSetId:ruleSetId2,ruleSetArn:arn}}}return new Import(scope,id,ruleSetId)}static arnForMailManagerRuleSet(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerRuleSetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerRuleSet),error}return resource.mailManagerRuleSetRef.ruleSetArn}cdkTagManager;_rules;_ruleSetName;_tags;cfnPropertyNames={tags:"Tags",rules:"Rules",ruleSetName:"RuleSetName"};constructor(scope,id,props){super(scope,id,{type:CfnMailManagerRuleSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerRuleSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerRuleSet),error}cdk().requireProperty(props,"rules",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerRuleSet",void 0,{tagPropertyName:"tags"}),this._rules=props.rules,this._ruleSetName=props.ruleSetName,this._tags=props.tags}get mailManagerRuleSetRef(){return{ruleSetId:this.ref,ruleSetArn:this.attrRuleSetArn}}get rules(){return this._rules}set rules(value){cdk().traceProperty(this.node,"Rules"),this._rules=value}get ruleSetName(){return this._ruleSetName}set ruleSetName(value){cdk().traceProperty(this.node,"RuleSetName"),this._ruleSetName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrRuleSetArn(){return cdk().Token.asString(this.getAtt("RuleSetArn",cdk().ResolutionTypeHint.STRING))}get attrRuleSetId(){return cdk().Token.asString(this.getAtt("RuleSetId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),rules:this._rules,ruleSetName:this._ruleSetName}}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",CfnMailManagerRuleSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerRuleSetPropsToCloudFormation(props)}}exports.CfnMailManagerRuleSet=CfnMailManagerRuleSet;function CfnMailManagerRuleSetAnalysisPropertyValidator(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("analyzer",cdk().requiredValidator)(properties.analyzer)),errors.collect(cdk().propertyValidator("analyzer",cdk().validateString)(properties.analyzer)),errors.collect(cdk().propertyValidator("resultField",cdk().requiredValidator)(properties.resultField)),errors.collect(cdk().propertyValidator("resultField",cdk().validateString)(properties.resultField)),errors.wrap('supplied properties not correct for "AnalysisProperty"')}function convertCfnMailManagerRuleSetAnalysisPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetAnalysisPropertyValidator(properties).assertSuccess(),{Analyzer:cdk().stringToCloudFormation(properties.analyzer),ResultField:cdk().stringToCloudFormation(properties.resultField)}):properties}function CfnMailManagerRuleSetAnalysisPropertyFromCloudFormation(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("analyzer","Analyzer",properties.Analyzer!=null?cfn_parse().FromCloudFormation.getString(properties.Analyzer):void 0),ret.addPropertyResult("resultField","ResultField",properties.ResultField!=null?cfn_parse().FromCloudFormation.getString(properties.ResultField):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleIsInAddressListPropertyValidator(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("addressLists",cdk().requiredValidator)(properties.addressLists)),errors.collect(cdk().propertyValidator("addressLists",cdk().listValidator(cdk().validateString))(properties.addressLists)),errors.collect(cdk().propertyValidator("attribute",cdk().requiredValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "RuleIsInAddressListProperty"')}function convertCfnMailManagerRuleSetRuleIsInAddressListPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleIsInAddressListPropertyValidator(properties).assertSuccess(),{AddressLists:cdk().listMapper(cdk().stringToCloudFormation)(properties.addressLists),Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerRuleSetRuleIsInAddressListPropertyFromCloudFormation(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("addressLists","AddressLists",properties.AddressLists!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AddressLists):void 0),ret.addPropertyResult("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleBooleanToEvaluatePropertyValidator(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("analysis",CfnMailManagerRuleSetAnalysisPropertyValidator)(properties.analysis)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.collect(cdk().propertyValidator("isInAddressList",CfnMailManagerRuleSetRuleIsInAddressListPropertyValidator)(properties.isInAddressList)),errors.wrap('supplied properties not correct for "RuleBooleanToEvaluateProperty"')}function convertCfnMailManagerRuleSetRuleBooleanToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleBooleanToEvaluatePropertyValidator(properties).assertSuccess(),{Analysis:convertCfnMailManagerRuleSetAnalysisPropertyToCloudFormation(properties.analysis),Attribute:cdk().stringToCloudFormation(properties.attribute),IsInAddressList:convertCfnMailManagerRuleSetRuleIsInAddressListPropertyToCloudFormation(properties.isInAddressList)}):properties}function CfnMailManagerRuleSetRuleBooleanToEvaluatePropertyFromCloudFormation(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("analysis","Analysis",properties.Analysis!=null?CfnMailManagerRuleSetAnalysisPropertyFromCloudFormation(properties.Analysis):void 0),ret.addPropertyResult("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addPropertyResult("isInAddressList","IsInAddressList",properties.IsInAddressList!=null?CfnMailManagerRuleSetRuleIsInAddressListPropertyFromCloudFormation(properties.IsInAddressList):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleBooleanExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerRuleSetRuleBooleanToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.wrap('supplied properties not correct for "RuleBooleanExpressionProperty"')}function convertCfnMailManagerRuleSetRuleBooleanExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleBooleanExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerRuleSetRuleBooleanToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator)}):properties}function CfnMailManagerRuleSetRuleBooleanExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerRuleSetRuleBooleanToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleStringToEvaluatePropertyValidator(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("analysis",CfnMailManagerRuleSetAnalysisPropertyValidator)(properties.analysis)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.collect(cdk().propertyValidator("clientCertificateAttribute",cdk().validateString)(properties.clientCertificateAttribute)),errors.collect(cdk().propertyValidator("mimeHeaderAttribute",cdk().validateString)(properties.mimeHeaderAttribute)),errors.wrap('supplied properties not correct for "RuleStringToEvaluateProperty"')}function convertCfnMailManagerRuleSetRuleStringToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleStringToEvaluatePropertyValidator(properties).assertSuccess(),{Analysis:convertCfnMailManagerRuleSetAnalysisPropertyToCloudFormation(properties.analysis),Attribute:cdk().stringToCloudFormation(properties.attribute),ClientCertificateAttribute:cdk().stringToCloudFormation(properties.clientCertificateAttribute),MimeHeaderAttribute:cdk().stringToCloudFormation(properties.mimeHeaderAttribute)}):properties}function CfnMailManagerRuleSetRuleStringToEvaluatePropertyFromCloudFormation(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("analysis","Analysis",properties.Analysis!=null?CfnMailManagerRuleSetAnalysisPropertyFromCloudFormation(properties.Analysis):void 0),ret.addPropertyResult("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addPropertyResult("clientCertificateAttribute","ClientCertificateAttribute",properties.ClientCertificateAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ClientCertificateAttribute):void 0),ret.addPropertyResult("mimeHeaderAttribute","MimeHeaderAttribute",properties.MimeHeaderAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.MimeHeaderAttribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleStringExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerRuleSetRuleStringToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "RuleStringExpressionProperty"')}function convertCfnMailManagerRuleSetRuleStringExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleStringExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerRuleSetRuleStringToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMailManagerRuleSetRuleStringExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerRuleSetRuleStringToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleNumberToEvaluatePropertyValidator(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("attribute",cdk().requiredValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "RuleNumberToEvaluateProperty"')}function convertCfnMailManagerRuleSetRuleNumberToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleNumberToEvaluatePropertyValidator(properties).assertSuccess(),{Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerRuleSetRuleNumberToEvaluatePropertyFromCloudFormation(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("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleNumberExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerRuleSetRuleNumberToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "RuleNumberExpressionProperty"')}function convertCfnMailManagerRuleSetRuleNumberExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleNumberExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerRuleSetRuleNumberToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnMailManagerRuleSetRuleNumberExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerRuleSetRuleNumberToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleIpToEvaluatePropertyValidator(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("attribute",cdk().requiredValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "RuleIpToEvaluateProperty"')}function convertCfnMailManagerRuleSetRuleIpToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleIpToEvaluatePropertyValidator(properties).assertSuccess(),{Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerRuleSetRuleIpToEvaluatePropertyFromCloudFormation(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("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleIpExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerRuleSetRuleIpToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "RuleIpExpressionProperty"')}function convertCfnMailManagerRuleSetRuleIpExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleIpExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerRuleSetRuleIpToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMailManagerRuleSetRuleIpExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerRuleSetRuleIpToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleVerdictToEvaluatePropertyValidator(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("analysis",CfnMailManagerRuleSetAnalysisPropertyValidator)(properties.analysis)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "RuleVerdictToEvaluateProperty"')}function convertCfnMailManagerRuleSetRuleVerdictToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleVerdictToEvaluatePropertyValidator(properties).assertSuccess(),{Analysis:convertCfnMailManagerRuleSetAnalysisPropertyToCloudFormation(properties.analysis),Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerRuleSetRuleVerdictToEvaluatePropertyFromCloudFormation(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("analysis","Analysis",properties.Analysis!=null?CfnMailManagerRuleSetAnalysisPropertyFromCloudFormation(properties.Analysis):void 0),ret.addPropertyResult("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleVerdictExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerRuleSetRuleVerdictToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "RuleVerdictExpressionProperty"')}function convertCfnMailManagerRuleSetRuleVerdictExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleVerdictExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerRuleSetRuleVerdictToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMailManagerRuleSetRuleVerdictExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerRuleSetRuleVerdictToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleDmarcExpressionPropertyValidator(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("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "RuleDmarcExpressionProperty"')}function convertCfnMailManagerRuleSetRuleDmarcExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleDmarcExpressionPropertyValidator(properties).assertSuccess(),{Operator:cdk().stringToCloudFormation(properties.operator),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMailManagerRuleSetRuleDmarcExpressionPropertyFromCloudFormation(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("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleConditionPropertyValidator(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("booleanExpression",CfnMailManagerRuleSetRuleBooleanExpressionPropertyValidator)(properties.booleanExpression)),errors.collect(cdk().propertyValidator("dmarcExpression",CfnMailManagerRuleSetRuleDmarcExpressionPropertyValidator)(properties.dmarcExpression)),errors.collect(cdk().propertyValidator("ipExpression",CfnMailManagerRuleSetRuleIpExpressionPropertyValidator)(properties.ipExpression)),errors.collect(cdk().propertyValidator("numberExpression",CfnMailManagerRuleSetRuleNumberExpressionPropertyValidator)(properties.numberExpression)),errors.collect(cdk().propertyValidator("stringExpression",CfnMailManagerRuleSetRuleStringExpressionPropertyValidator)(properties.stringExpression)),errors.collect(cdk().propertyValidator("verdictExpression",CfnMailManagerRuleSetRuleVerdictExpressionPropertyValidator)(properties.verdictExpression)),errors.wrap('supplied properties not correct for "RuleConditionProperty"')}function convertCfnMailManagerRuleSetRuleConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleConditionPropertyValidator(properties).assertSuccess(),{BooleanExpression:convertCfnMailManagerRuleSetRuleBooleanExpressionPropertyToCloudFormation(properties.booleanExpression),DmarcExpression:convertCfnMailManagerRuleSetRuleDmarcExpressionPropertyToCloudFormation(properties.dmarcExpression),IpExpression:convertCfnMailManagerRuleSetRuleIpExpressionPropertyToCloudFormation(properties.ipExpression),NumberExpression:convertCfnMailManagerRuleSetRuleNumberExpressionPropertyToCloudFormation(properties.numberExpression),StringExpression:convertCfnMailManagerRuleSetRuleStringExpressionPropertyToCloudFormation(properties.stringExpression),VerdictExpression:convertCfnMailManagerRuleSetRuleVerdictExpressionPropertyToCloudFormation(properties.verdictExpression)}):properties}function CfnMailManagerRuleSetRuleConditionPropertyFromCloudFormation(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("booleanExpression","BooleanExpression",properties.BooleanExpression!=null?CfnMailManagerRuleSetRuleBooleanExpressionPropertyFromCloudFormation(properties.BooleanExpression):void 0),ret.addPropertyResult("dmarcExpression","DmarcExpression",properties.DmarcExpression!=null?CfnMailManagerRuleSetRuleDmarcExpressionPropertyFromCloudFormation(properties.DmarcExpression):void 0),ret.addPropertyResult("ipExpression","IpExpression",properties.IpExpression!=null?CfnMailManagerRuleSetRuleIpExpressionPropertyFromCloudFormation(properties.IpExpression):void 0),ret.addPropertyResult("numberExpression","NumberExpression",properties.NumberExpression!=null?CfnMailManagerRuleSetRuleNumberExpressionPropertyFromCloudFormation(properties.NumberExpression):void 0),ret.addPropertyResult("stringExpression","StringExpression",properties.StringExpression!=null?CfnMailManagerRuleSetRuleStringExpressionPropertyFromCloudFormation(properties.StringExpression):void 0),ret.addPropertyResult("verdictExpression","VerdictExpression",properties.VerdictExpression!=null?CfnMailManagerRuleSetRuleVerdictExpressionPropertyFromCloudFormation(properties.VerdictExpression):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRelayActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("mailFrom",cdk().validateString)(properties.mailFrom)),errors.collect(cdk().propertyValidator("relay",cdk().requiredValidator)(properties.relay)),errors.collect(cdk().propertyValidator("relay",cdk().validateString)(properties.relay)),errors.wrap('supplied properties not correct for "RelayActionProperty"')}function convertCfnMailManagerRuleSetRelayActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRelayActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),MailFrom:cdk().stringToCloudFormation(properties.mailFrom),Relay:cdk().stringToCloudFormation(properties.relay)}):properties}function CfnMailManagerRuleSetRelayActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("mailFrom","MailFrom",properties.MailFrom!=null?cfn_parse().FromCloudFormation.getString(properties.MailFrom):void 0),ret.addPropertyResult("relay","Relay",properties.Relay!=null?cfn_parse().FromCloudFormation.getString(properties.Relay):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetArchiveActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("targetArchive",cdk().requiredValidator)(properties.targetArchive)),errors.collect(cdk().propertyValidator("targetArchive",cdk().validateString)(properties.targetArchive)),errors.wrap('supplied properties not correct for "ArchiveActionProperty"')}function convertCfnMailManagerRuleSetArchiveActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetArchiveActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),TargetArchive:cdk().stringToCloudFormation(properties.targetArchive)}):properties}function CfnMailManagerRuleSetArchiveActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("targetArchive","TargetArchive",properties.TargetArchive!=null?cfn_parse().FromCloudFormation.getString(properties.TargetArchive):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetS3ActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("s3Bucket",cdk().requiredValidator)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Bucket",cdk().validateString)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Prefix",cdk().validateString)(properties.s3Prefix)),errors.collect(cdk().propertyValidator("s3SseKmsKeyId",cdk().validateString)(properties.s3SseKmsKeyId)),errors.wrap('supplied properties not correct for "S3ActionProperty"')}function convertCfnMailManagerRuleSetS3ActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetS3ActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),RoleArn:cdk().stringToCloudFormation(properties.roleArn),S3Bucket:cdk().stringToCloudFormation(properties.s3Bucket),S3Prefix:cdk().stringToCloudFormation(properties.s3Prefix),S3SseKmsKeyId:cdk().stringToCloudFormation(properties.s3SseKmsKeyId)}):properties}function CfnMailManagerRuleSetS3ActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("s3Bucket","S3Bucket",properties.S3Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.S3Bucket):void 0),ret.addPropertyResult("s3Prefix","S3Prefix",properties.S3Prefix!=null?cfn_parse().FromCloudFormation.getString(properties.S3Prefix):void 0),ret.addPropertyResult("s3SseKmsKeyId","S3SseKmsKeyId",properties.S3SseKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.S3SseKmsKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetSendActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "SendActionProperty"')}function convertCfnMailManagerRuleSetSendActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetSendActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnMailManagerRuleSetSendActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetAddHeaderActionPropertyValidator(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("headerName",cdk().requiredValidator)(properties.headerName)),errors.collect(cdk().propertyValidator("headerName",cdk().validateString)(properties.headerName)),errors.collect(cdk().propertyValidator("headerValue",cdk().requiredValidator)(properties.headerValue)),errors.collect(cdk().propertyValidator("headerValue",cdk().validateString)(properties.headerValue)),errors.wrap('supplied properties not correct for "AddHeaderActionProperty"')}function convertCfnMailManagerRuleSetAddHeaderActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetAddHeaderActionPropertyValidator(properties).assertSuccess(),{HeaderName:cdk().stringToCloudFormation(properties.headerName),HeaderValue:cdk().stringToCloudFormation(properties.headerValue)}):properties}function CfnMailManagerRuleSetAddHeaderActionPropertyFromCloudFormation(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("headerName","HeaderName",properties.HeaderName!=null?cfn_parse().FromCloudFormation.getString(properties.HeaderName):void 0),ret.addPropertyResult("headerValue","HeaderValue",properties.HeaderValue!=null?cfn_parse().FromCloudFormation.getString(properties.HeaderValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetReplaceRecipientActionPropertyValidator(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("replaceWith",cdk().listValidator(cdk().validateString))(properties.replaceWith)),errors.wrap('supplied properties not correct for "ReplaceRecipientActionProperty"')}function convertCfnMailManagerRuleSetReplaceRecipientActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetReplaceRecipientActionPropertyValidator(properties).assertSuccess(),{ReplaceWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.replaceWith)}):properties}function CfnMailManagerRuleSetReplaceRecipientActionPropertyFromCloudFormation(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("replaceWith","ReplaceWith",properties.ReplaceWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ReplaceWith):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetDeliverToMailboxActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("mailboxArn",cdk().requiredValidator)(properties.mailboxArn)),errors.collect(cdk().propertyValidator("mailboxArn",cdk().validateString)(properties.mailboxArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "DeliverToMailboxActionProperty"')}function convertCfnMailManagerRuleSetDeliverToMailboxActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetDeliverToMailboxActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),MailboxArn:cdk().stringToCloudFormation(properties.mailboxArn),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnMailManagerRuleSetDeliverToMailboxActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("mailboxArn","MailboxArn",properties.MailboxArn!=null?cfn_parse().FromCloudFormation.getString(properties.MailboxArn):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetDeliverToQBusinessActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("indexId",cdk().requiredValidator)(properties.indexId)),errors.collect(cdk().propertyValidator("indexId",cdk().validateString)(properties.indexId)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "DeliverToQBusinessActionProperty"')}function convertCfnMailManagerRuleSetDeliverToQBusinessActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetDeliverToQBusinessActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),ApplicationId:cdk().stringToCloudFormation(properties.applicationId),IndexId:cdk().stringToCloudFormation(properties.indexId),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnMailManagerRuleSetDeliverToQBusinessActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("indexId","IndexId",properties.IndexId!=null?cfn_parse().FromCloudFormation.getString(properties.IndexId):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetSnsActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("encoding",cdk().validateString)(properties.encoding)),errors.collect(cdk().propertyValidator("payloadType",cdk().validateString)(properties.payloadType)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("topicArn",cdk().requiredValidator)(properties.topicArn)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "SnsActionProperty"')}function convertCfnMailManagerRuleSetSnsActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetSnsActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),Encoding:cdk().stringToCloudFormation(properties.encoding),PayloadType:cdk().stringToCloudFormation(properties.payloadType),RoleArn:cdk().stringToCloudFormation(properties.roleArn),TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnMailManagerRuleSetSnsActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("encoding","Encoding",properties.Encoding!=null?cfn_parse().FromCloudFormation.getString(properties.Encoding):void 0),ret.addPropertyResult("payloadType","PayloadType",properties.PayloadType!=null?cfn_parse().FromCloudFormation.getString(properties.PayloadType):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetBounceActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("diagnosticMessage",cdk().requiredValidator)(properties.diagnosticMessage)),errors.collect(cdk().propertyValidator("diagnosticMessage",cdk().validateString)(properties.diagnosticMessage)),errors.collect(cdk().propertyValidator("message",cdk().validateString)(properties.message)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("sender",cdk().requiredValidator)(properties.sender)),errors.collect(cdk().propertyValidator("sender",cdk().validateString)(properties.sender)),errors.collect(cdk().propertyValidator("smtpReplyCode",cdk().requiredValidator)(properties.smtpReplyCode)),errors.collect(cdk().propertyValidator("smtpReplyCode",cdk().validateString)(properties.smtpReplyCode)),errors.collect(cdk().propertyValidator("statusCode",cdk().requiredValidator)(properties.statusCode)),errors.collect(cdk().propertyValidator("statusCode",cdk().validateString)(properties.statusCode)),errors.wrap('supplied properties not correct for "BounceActionProperty"')}function convertCfnMailManagerRuleSetBounceActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetBounceActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),DiagnosticMessage:cdk().stringToCloudFormation(properties.diagnosticMessage),Message:cdk().stringToCloudFormation(properties.message),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Sender:cdk().stringToCloudFormation(properties.sender),SmtpReplyCode:cdk().stringToCloudFormation(properties.smtpReplyCode),StatusCode:cdk().stringToCloudFormation(properties.statusCode)}):properties}function CfnMailManagerRuleSetBounceActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("diagnosticMessage","DiagnosticMessage",properties.DiagnosticMessage!=null?cfn_parse().FromCloudFormation.getString(properties.DiagnosticMessage):void 0),ret.addPropertyResult("message","Message",properties.Message!=null?cfn_parse().FromCloudFormation.getString(properties.Message):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("sender","Sender",properties.Sender!=null?cfn_parse().FromCloudFormation.getString(properties.Sender):void 0),ret.addPropertyResult("smtpReplyCode","SmtpReplyCode",properties.SmtpReplyCode!=null?cfn_parse().FromCloudFormation.getString(properties.SmtpReplyCode):void 0),ret.addPropertyResult("statusCode","StatusCode",properties.StatusCode!=null?cfn_parse().FromCloudFormation.getString(properties.StatusCode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetInvokeLambdaActionPropertyValidator(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("actionFailurePolicy",cdk().validateString)(properties.actionFailurePolicy)),errors.collect(cdk().propertyValidator("functionArn",cdk().requiredValidator)(properties.functionArn)),errors.collect(cdk().propertyValidator("functionArn",cdk().validateString)(properties.functionArn)),errors.collect(cdk().propertyValidator("invocationType",cdk().requiredValidator)(properties.invocationType)),errors.collect(cdk().propertyValidator("invocationType",cdk().validateString)(properties.invocationType)),errors.collect(cdk().propertyValidator("retryTimeMinutes",cdk().validateNumber)(properties.retryTimeMinutes)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "InvokeLambdaActionProperty"')}function convertCfnMailManagerRuleSetInvokeLambdaActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetInvokeLambdaActionPropertyValidator(properties).assertSuccess(),{ActionFailurePolicy:cdk().stringToCloudFormation(properties.actionFailurePolicy),FunctionArn:cdk().stringToCloudFormation(properties.functionArn),InvocationType:cdk().stringToCloudFormation(properties.invocationType),RetryTimeMinutes:cdk().numberToCloudFormation(properties.retryTimeMinutes),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnMailManagerRuleSetInvokeLambdaActionPropertyFromCloudFormation(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("actionFailurePolicy","ActionFailurePolicy",properties.ActionFailurePolicy!=null?cfn_parse().FromCloudFormation.getString(properties.ActionFailurePolicy):void 0),ret.addPropertyResult("functionArn","FunctionArn",properties.FunctionArn!=null?cfn_parse().FromCloudFormation.getString(properties.FunctionArn):void 0),ret.addPropertyResult("invocationType","InvocationType",properties.InvocationType!=null?cfn_parse().FromCloudFormation.getString(properties.InvocationType):void 0),ret.addPropertyResult("retryTimeMinutes","RetryTimeMinutes",properties.RetryTimeMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.RetryTimeMinutes):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRuleActionPropertyValidator(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("addHeader",CfnMailManagerRuleSetAddHeaderActionPropertyValidator)(properties.addHeader)),errors.collect(cdk().propertyValidator("archive",CfnMailManagerRuleSetArchiveActionPropertyValidator)(properties.archive)),errors.collect(cdk().propertyValidator("bounce",CfnMailManagerRuleSetBounceActionPropertyValidator)(properties.bounce)),errors.collect(cdk().propertyValidator("deliverToMailbox",CfnMailManagerRuleSetDeliverToMailboxActionPropertyValidator)(properties.deliverToMailbox)),errors.collect(cdk().propertyValidator("deliverToQBusiness",CfnMailManagerRuleSetDeliverToQBusinessActionPropertyValidator)(properties.deliverToQBusiness)),errors.collect(cdk().propertyValidator("drop",cdk().validateObject)(properties.drop)),errors.collect(cdk().propertyValidator("invokeLambda",CfnMailManagerRuleSetInvokeLambdaActionPropertyValidator)(properties.invokeLambda)),errors.collect(cdk().propertyValidator("publishToSns",CfnMailManagerRuleSetSnsActionPropertyValidator)(properties.publishToSns)),errors.collect(cdk().propertyValidator("relay",CfnMailManagerRuleSetRelayActionPropertyValidator)(properties.relay)),errors.collect(cdk().propertyValidator("replaceRecipient",CfnMailManagerRuleSetReplaceRecipientActionPropertyValidator)(properties.replaceRecipient)),errors.collect(cdk().propertyValidator("send",CfnMailManagerRuleSetSendActionPropertyValidator)(properties.send)),errors.collect(cdk().propertyValidator("writeToS3",CfnMailManagerRuleSetS3ActionPropertyValidator)(properties.writeToS3)),errors.wrap('supplied properties not correct for "RuleActionProperty"')}function convertCfnMailManagerRuleSetRuleActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRuleActionPropertyValidator(properties).assertSuccess(),{AddHeader:convertCfnMailManagerRuleSetAddHeaderActionPropertyToCloudFormation(properties.addHeader),Archive:convertCfnMailManagerRuleSetArchiveActionPropertyToCloudFormation(properties.archive),Bounce:convertCfnMailManagerRuleSetBounceActionPropertyToCloudFormation(properties.bounce),DeliverToMailbox:convertCfnMailManagerRuleSetDeliverToMailboxActionPropertyToCloudFormation(properties.deliverToMailbox),DeliverToQBusiness:convertCfnMailManagerRuleSetDeliverToQBusinessActionPropertyToCloudFormation(properties.deliverToQBusiness),Drop:cdk().objectToCloudFormation(properties.drop),InvokeLambda:convertCfnMailManagerRuleSetInvokeLambdaActionPropertyToCloudFormation(properties.invokeLambda),PublishToSns:convertCfnMailManagerRuleSetSnsActionPropertyToCloudFormation(properties.publishToSns),Relay:convertCfnMailManagerRuleSetRelayActionPropertyToCloudFormation(properties.relay),ReplaceRecipient:convertCfnMailManagerRuleSetReplaceRecipientActionPropertyToCloudFormation(properties.replaceRecipient),Send:convertCfnMailManagerRuleSetSendActionPropertyToCloudFormation(properties.send),WriteToS3:convertCfnMailManagerRuleSetS3ActionPropertyToCloudFormation(properties.writeToS3)}):properties}function CfnMailManagerRuleSetRuleActionPropertyFromCloudFormation(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("addHeader","AddHeader",properties.AddHeader!=null?CfnMailManagerRuleSetAddHeaderActionPropertyFromCloudFormation(properties.AddHeader):void 0),ret.addPropertyResult("archive","Archive",properties.Archive!=null?CfnMailManagerRuleSetArchiveActionPropertyFromCloudFormation(properties.Archive):void 0),ret.addPropertyResult("bounce","Bounce",properties.Bounce!=null?CfnMailManagerRuleSetBounceActionPropertyFromCloudFormation(properties.Bounce):void 0),ret.addPropertyResult("deliverToMailbox","DeliverToMailbox",properties.DeliverToMailbox!=null?CfnMailManagerRuleSetDeliverToMailboxActionPropertyFromCloudFormation(properties.DeliverToMailbox):void 0),ret.addPropertyResult("deliverToQBusiness","DeliverToQBusiness",properties.DeliverToQBusiness!=null?CfnMailManagerRuleSetDeliverToQBusinessActionPropertyFromCloudFormation(properties.DeliverToQBusiness):void 0),ret.addPropertyResult("drop","Drop",properties.Drop!=null?cfn_parse().FromCloudFormation.getAny(properties.Drop):void 0),ret.addPropertyResult("invokeLambda","InvokeLambda",properties.InvokeLambda!=null?CfnMailManagerRuleSetInvokeLambdaActionPropertyFromCloudFormation(properties.InvokeLambda):void 0),ret.addPropertyResult("publishToSns","PublishToSns",properties.PublishToSns!=null?CfnMailManagerRuleSetSnsActionPropertyFromCloudFormation(properties.PublishToSns):void 0),ret.addPropertyResult("relay","Relay",properties.Relay!=null?CfnMailManagerRuleSetRelayActionPropertyFromCloudFormation(properties.Relay):void 0),ret.addPropertyResult("replaceRecipient","ReplaceRecipient",properties.ReplaceRecipient!=null?CfnMailManagerRuleSetReplaceRecipientActionPropertyFromCloudFormation(properties.ReplaceRecipient):void 0),ret.addPropertyResult("send","Send",properties.Send!=null?CfnMailManagerRuleSetSendActionPropertyFromCloudFormation(properties.Send):void 0),ret.addPropertyResult("writeToS3","WriteToS3",properties.WriteToS3!=null?CfnMailManagerRuleSetS3ActionPropertyFromCloudFormation(properties.WriteToS3):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetRulePropertyValidator(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("actions",cdk().requiredValidator)(properties.actions)),errors.collect(cdk().propertyValidator("actions",cdk().listValidator(CfnMailManagerRuleSetRuleActionPropertyValidator))(properties.actions)),errors.collect(cdk().propertyValidator("conditions",cdk().listValidator(CfnMailManagerRuleSetRuleConditionPropertyValidator))(properties.conditions)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("unless",cdk().listValidator(CfnMailManagerRuleSetRuleConditionPropertyValidator))(properties.unless)),errors.wrap('supplied properties not correct for "RuleProperty"')}function convertCfnMailManagerRuleSetRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetRulePropertyValidator(properties).assertSuccess(),{Actions:cdk().listMapper(convertCfnMailManagerRuleSetRuleActionPropertyToCloudFormation)(properties.actions),Conditions:cdk().listMapper(convertCfnMailManagerRuleSetRuleConditionPropertyToCloudFormation)(properties.conditions),Name:cdk().stringToCloudFormation(properties.name),Unless:cdk().listMapper(convertCfnMailManagerRuleSetRuleConditionPropertyToCloudFormation)(properties.unless)}):properties}function CfnMailManagerRuleSetRulePropertyFromCloudFormation(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("actions","Actions",properties.Actions!=null?cfn_parse().FromCloudFormation.getArray(CfnMailManagerRuleSetRuleActionPropertyFromCloudFormation)(properties.Actions):void 0),ret.addPropertyResult("conditions","Conditions",properties.Conditions!=null?cfn_parse().FromCloudFormation.getArray(CfnMailManagerRuleSetRuleConditionPropertyFromCloudFormation)(properties.Conditions):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("unless","Unless",properties.Unless!=null?cfn_parse().FromCloudFormation.getArray(CfnMailManagerRuleSetRuleConditionPropertyFromCloudFormation)(properties.Unless):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerRuleSetPropsValidator(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("ruleSetName",cdk().validateString)(properties.ruleSetName)),errors.collect(cdk().propertyValidator("rules",cdk().requiredValidator)(properties.rules)),errors.collect(cdk().propertyValidator("rules",cdk().listValidator(CfnMailManagerRuleSetRulePropertyValidator))(properties.rules)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMailManagerRuleSetProps"')}function convertCfnMailManagerRuleSetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerRuleSetPropsValidator(properties).assertSuccess(),{RuleSetName:cdk().stringToCloudFormation(properties.ruleSetName),Rules:cdk().listMapper(convertCfnMailManagerRuleSetRulePropertyToCloudFormation)(properties.rules),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMailManagerRuleSetPropsFromCloudFormation(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("rules","Rules",properties.Rules!=null?cfn_parse().FromCloudFormation.getArray(CfnMailManagerRuleSetRulePropertyFromCloudFormation)(properties.Rules):void 0),ret.addPropertyResult("ruleSetName","RuleSetName",properties.RuleSetName!=null?cfn_parse().FromCloudFormation.getString(properties.RuleSetName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMailManagerTrafficPolicy extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMailManagerTrafficPolicy",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MailManagerTrafficPolicy";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMailManagerTrafficPolicyPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMailManagerTrafficPolicy(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 isCfnMailManagerTrafficPolicy(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMailManagerTrafficPolicy.CFN_RESOURCE_TYPE_NAME}static fromMailManagerTrafficPolicyArn(scope,id,arn){class Import extends cdk().Resource{mailManagerTrafficPolicyRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-traffic-policy/${TrafficPolicyId}").parse(arn2);this.mailManagerTrafficPolicyRef={trafficPolicyId:variables.TrafficPolicyId,trafficPolicyArn:arn2}}}return new Import(scope,id,arn)}static fromTrafficPolicyId(scope,id,trafficPolicyId){class Import extends cdk().Resource{mailManagerTrafficPolicyRef;constructor(scope2,id2,trafficPolicyId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:mailmanager-traffic-policy/${TrafficPolicyId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,TrafficPolicyId:trafficPolicyId2});super(scope2,id2,{environmentFromArn:arn}),this.mailManagerTrafficPolicyRef={trafficPolicyId:trafficPolicyId2,trafficPolicyArn:arn}}}return new Import(scope,id,trafficPolicyId)}static arnForMailManagerTrafficPolicy(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMailManagerTrafficPolicyRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMailManagerTrafficPolicy),error}return resource.mailManagerTrafficPolicyRef.trafficPolicyArn}cdkTagManager;_defaultAction;_maxMessageSizeBytes;_policyStatements;_tags;_trafficPolicyName;cfnPropertyNames={tags:"Tags",defaultAction:"DefaultAction",maxMessageSizeBytes:"MaxMessageSizeBytes",policyStatements:"PolicyStatements",trafficPolicyName:"TrafficPolicyName"};constructor(scope,id,props){super(scope,id,{type:CfnMailManagerTrafficPolicy.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMailManagerTrafficPolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMailManagerTrafficPolicy),error}cdk().requireProperty(props,"defaultAction",this),cdk().requireProperty(props,"policyStatements",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MailManagerTrafficPolicy",void 0,{tagPropertyName:"tags"}),this._defaultAction=props.defaultAction,this._maxMessageSizeBytes=props.maxMessageSizeBytes,this._policyStatements=props.policyStatements,this._tags=props.tags,this._trafficPolicyName=props.trafficPolicyName}get mailManagerTrafficPolicyRef(){return{trafficPolicyId:this.ref,trafficPolicyArn:this.attrTrafficPolicyArn}}get defaultAction(){return this._defaultAction}set defaultAction(value){cdk().traceProperty(this.node,"DefaultAction"),this._defaultAction=value}get maxMessageSizeBytes(){return this._maxMessageSizeBytes}set maxMessageSizeBytes(value){cdk().traceProperty(this.node,"MaxMessageSizeBytes"),this._maxMessageSizeBytes=value}get policyStatements(){return this._policyStatements}set policyStatements(value){cdk().traceProperty(this.node,"PolicyStatements"),this._policyStatements=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get trafficPolicyName(){return this._trafficPolicyName}set trafficPolicyName(value){cdk().traceProperty(this.node,"TrafficPolicyName"),this._trafficPolicyName=value}get attrTrafficPolicyArn(){return cdk().Token.asString(this.getAtt("TrafficPolicyArn",cdk().ResolutionTypeHint.STRING))}get attrTrafficPolicyId(){return cdk().Token.asString(this.getAtt("TrafficPolicyId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),defaultAction:this._defaultAction,maxMessageSizeBytes:this._maxMessageSizeBytes,policyStatements:this._policyStatements,trafficPolicyName:this._trafficPolicyName}}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",CfnMailManagerTrafficPolicy.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMailManagerTrafficPolicyPropsToCloudFormation(props)}}exports.CfnMailManagerTrafficPolicy=CfnMailManagerTrafficPolicy;function CfnMailManagerTrafficPolicyIngressAnalysisPropertyValidator(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("analyzer",cdk().requiredValidator)(properties.analyzer)),errors.collect(cdk().propertyValidator("analyzer",cdk().validateString)(properties.analyzer)),errors.collect(cdk().propertyValidator("resultField",cdk().requiredValidator)(properties.resultField)),errors.collect(cdk().propertyValidator("resultField",cdk().validateString)(properties.resultField)),errors.wrap('supplied properties not correct for "IngressAnalysisProperty"')}function convertCfnMailManagerTrafficPolicyIngressAnalysisPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressAnalysisPropertyValidator(properties).assertSuccess(),{Analyzer:cdk().stringToCloudFormation(properties.analyzer),ResultField:cdk().stringToCloudFormation(properties.resultField)}):properties}function CfnMailManagerTrafficPolicyIngressAnalysisPropertyFromCloudFormation(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("analyzer","Analyzer",properties.Analyzer!=null?cfn_parse().FromCloudFormation.getString(properties.Analyzer):void 0),ret.addPropertyResult("resultField","ResultField",properties.ResultField!=null?cfn_parse().FromCloudFormation.getString(properties.ResultField):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressStringToEvaluatePropertyValidator(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("analysis",CfnMailManagerTrafficPolicyIngressAnalysisPropertyValidator)(properties.analysis)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "IngressStringToEvaluateProperty"')}function convertCfnMailManagerTrafficPolicyIngressStringToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressStringToEvaluatePropertyValidator(properties).assertSuccess(),{Analysis:convertCfnMailManagerTrafficPolicyIngressAnalysisPropertyToCloudFormation(properties.analysis),Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerTrafficPolicyIngressStringToEvaluatePropertyFromCloudFormation(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("analysis","Analysis",properties.Analysis!=null?CfnMailManagerTrafficPolicyIngressAnalysisPropertyFromCloudFormation(properties.Analysis):void 0),ret.addPropertyResult("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressStringExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerTrafficPolicyIngressStringToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "IngressStringExpressionProperty"')}function convertCfnMailManagerTrafficPolicyIngressStringExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressStringExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerTrafficPolicyIngressStringToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMailManagerTrafficPolicyIngressStringExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerTrafficPolicyIngressStringToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressIpToEvaluatePropertyValidator(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("attribute",cdk().requiredValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "IngressIpToEvaluateProperty"')}function convertCfnMailManagerTrafficPolicyIngressIpToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressIpToEvaluatePropertyValidator(properties).assertSuccess(),{Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerTrafficPolicyIngressIpToEvaluatePropertyFromCloudFormation(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("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressIpv4ExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerTrafficPolicyIngressIpToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "IngressIpv4ExpressionProperty"')}function convertCfnMailManagerTrafficPolicyIngressIpv4ExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressIpv4ExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerTrafficPolicyIngressIpToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMailManagerTrafficPolicyIngressIpv4ExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerTrafficPolicyIngressIpToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressIpv6ToEvaluatePropertyValidator(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("attribute",cdk().requiredValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "IngressIpv6ToEvaluateProperty"')}function convertCfnMailManagerTrafficPolicyIngressIpv6ToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressIpv6ToEvaluatePropertyValidator(properties).assertSuccess(),{Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerTrafficPolicyIngressIpv6ToEvaluatePropertyFromCloudFormation(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("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressIpv6ExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerTrafficPolicyIngressIpv6ToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "IngressIpv6ExpressionProperty"')}function convertCfnMailManagerTrafficPolicyIngressIpv6ExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressIpv6ExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerTrafficPolicyIngressIpv6ToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMailManagerTrafficPolicyIngressIpv6ExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerTrafficPolicyIngressIpv6ToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressTlsProtocolToEvaluatePropertyValidator(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("attribute",cdk().requiredValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "IngressTlsProtocolToEvaluateProperty"')}function convertCfnMailManagerTrafficPolicyIngressTlsProtocolToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressTlsProtocolToEvaluatePropertyValidator(properties).assertSuccess(),{Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerTrafficPolicyIngressTlsProtocolToEvaluatePropertyFromCloudFormation(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("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressTlsProtocolExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerTrafficPolicyIngressTlsProtocolToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),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 "IngressTlsProtocolExpressionProperty"')}function convertCfnMailManagerTrafficPolicyIngressTlsProtocolExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressTlsProtocolExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerTrafficPolicyIngressTlsProtocolToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnMailManagerTrafficPolicyIngressTlsProtocolExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerTrafficPolicyIngressTlsProtocolToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressIsInAddressListPropertyValidator(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("addressLists",cdk().requiredValidator)(properties.addressLists)),errors.collect(cdk().propertyValidator("addressLists",cdk().listValidator(cdk().validateString))(properties.addressLists)),errors.collect(cdk().propertyValidator("attribute",cdk().requiredValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("attribute",cdk().validateString)(properties.attribute)),errors.wrap('supplied properties not correct for "IngressIsInAddressListProperty"')}function convertCfnMailManagerTrafficPolicyIngressIsInAddressListPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressIsInAddressListPropertyValidator(properties).assertSuccess(),{AddressLists:cdk().listMapper(cdk().stringToCloudFormation)(properties.addressLists),Attribute:cdk().stringToCloudFormation(properties.attribute)}):properties}function CfnMailManagerTrafficPolicyIngressIsInAddressListPropertyFromCloudFormation(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("addressLists","AddressLists",properties.AddressLists!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AddressLists):void 0),ret.addPropertyResult("attribute","Attribute",properties.Attribute!=null?cfn_parse().FromCloudFormation.getString(properties.Attribute):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressBooleanToEvaluatePropertyValidator(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("analysis",CfnMailManagerTrafficPolicyIngressAnalysisPropertyValidator)(properties.analysis)),errors.collect(cdk().propertyValidator("isInAddressList",CfnMailManagerTrafficPolicyIngressIsInAddressListPropertyValidator)(properties.isInAddressList)),errors.wrap('supplied properties not correct for "IngressBooleanToEvaluateProperty"')}function convertCfnMailManagerTrafficPolicyIngressBooleanToEvaluatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressBooleanToEvaluatePropertyValidator(properties).assertSuccess(),{Analysis:convertCfnMailManagerTrafficPolicyIngressAnalysisPropertyToCloudFormation(properties.analysis),IsInAddressList:convertCfnMailManagerTrafficPolicyIngressIsInAddressListPropertyToCloudFormation(properties.isInAddressList)}):properties}function CfnMailManagerTrafficPolicyIngressBooleanToEvaluatePropertyFromCloudFormation(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("analysis","Analysis",properties.Analysis!=null?CfnMailManagerTrafficPolicyIngressAnalysisPropertyFromCloudFormation(properties.Analysis):void 0),ret.addPropertyResult("isInAddressList","IsInAddressList",properties.IsInAddressList!=null?CfnMailManagerTrafficPolicyIngressIsInAddressListPropertyFromCloudFormation(properties.IsInAddressList):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyIngressBooleanExpressionPropertyValidator(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("evaluate",cdk().requiredValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("evaluate",CfnMailManagerTrafficPolicyIngressBooleanToEvaluatePropertyValidator)(properties.evaluate)),errors.collect(cdk().propertyValidator("operator",cdk().requiredValidator)(properties.operator)),errors.collect(cdk().propertyValidator("operator",cdk().validateString)(properties.operator)),errors.wrap('supplied properties not correct for "IngressBooleanExpressionProperty"')}function convertCfnMailManagerTrafficPolicyIngressBooleanExpressionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyIngressBooleanExpressionPropertyValidator(properties).assertSuccess(),{Evaluate:convertCfnMailManagerTrafficPolicyIngressBooleanToEvaluatePropertyToCloudFormation(properties.evaluate),Operator:cdk().stringToCloudFormation(properties.operator)}):properties}function CfnMailManagerTrafficPolicyIngressBooleanExpressionPropertyFromCloudFormation(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("evaluate","Evaluate",properties.Evaluate!=null?CfnMailManagerTrafficPolicyIngressBooleanToEvaluatePropertyFromCloudFormation(properties.Evaluate):void 0),ret.addPropertyResult("operator","Operator",properties.Operator!=null?cfn_parse().FromCloudFormation.getString(properties.Operator):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyPolicyConditionPropertyValidator(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("booleanExpression",CfnMailManagerTrafficPolicyIngressBooleanExpressionPropertyValidator)(properties.booleanExpression)),errors.collect(cdk().propertyValidator("ipExpression",CfnMailManagerTrafficPolicyIngressIpv4ExpressionPropertyValidator)(properties.ipExpression)),errors.collect(cdk().propertyValidator("ipv6Expression",CfnMailManagerTrafficPolicyIngressIpv6ExpressionPropertyValidator)(properties.ipv6Expression)),errors.collect(cdk().propertyValidator("stringExpression",CfnMailManagerTrafficPolicyIngressStringExpressionPropertyValidator)(properties.stringExpression)),errors.collect(cdk().propertyValidator("tlsExpression",CfnMailManagerTrafficPolicyIngressTlsProtocolExpressionPropertyValidator)(properties.tlsExpression)),errors.wrap('supplied properties not correct for "PolicyConditionProperty"')}function convertCfnMailManagerTrafficPolicyPolicyConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyPolicyConditionPropertyValidator(properties).assertSuccess(),{BooleanExpression:convertCfnMailManagerTrafficPolicyIngressBooleanExpressionPropertyToCloudFormation(properties.booleanExpression),IpExpression:convertCfnMailManagerTrafficPolicyIngressIpv4ExpressionPropertyToCloudFormation(properties.ipExpression),Ipv6Expression:convertCfnMailManagerTrafficPolicyIngressIpv6ExpressionPropertyToCloudFormation(properties.ipv6Expression),StringExpression:convertCfnMailManagerTrafficPolicyIngressStringExpressionPropertyToCloudFormation(properties.stringExpression),TlsExpression:convertCfnMailManagerTrafficPolicyIngressTlsProtocolExpressionPropertyToCloudFormation(properties.tlsExpression)}):properties}function CfnMailManagerTrafficPolicyPolicyConditionPropertyFromCloudFormation(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("booleanExpression","BooleanExpression",properties.BooleanExpression!=null?CfnMailManagerTrafficPolicyIngressBooleanExpressionPropertyFromCloudFormation(properties.BooleanExpression):void 0),ret.addPropertyResult("ipExpression","IpExpression",properties.IpExpression!=null?CfnMailManagerTrafficPolicyIngressIpv4ExpressionPropertyFromCloudFormation(properties.IpExpression):void 0),ret.addPropertyResult("ipv6Expression","Ipv6Expression",properties.Ipv6Expression!=null?CfnMailManagerTrafficPolicyIngressIpv6ExpressionPropertyFromCloudFormation(properties.Ipv6Expression):void 0),ret.addPropertyResult("stringExpression","StringExpression",properties.StringExpression!=null?CfnMailManagerTrafficPolicyIngressStringExpressionPropertyFromCloudFormation(properties.StringExpression):void 0),ret.addPropertyResult("tlsExpression","TlsExpression",properties.TlsExpression!=null?CfnMailManagerTrafficPolicyIngressTlsProtocolExpressionPropertyFromCloudFormation(properties.TlsExpression):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyPolicyStatementPropertyValidator(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("action",cdk().requiredValidator)(properties.action)),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),errors.collect(cdk().propertyValidator("conditions",cdk().requiredValidator)(properties.conditions)),errors.collect(cdk().propertyValidator("conditions",cdk().listValidator(CfnMailManagerTrafficPolicyPolicyConditionPropertyValidator))(properties.conditions)),errors.wrap('supplied properties not correct for "PolicyStatementProperty"')}function convertCfnMailManagerTrafficPolicyPolicyStatementPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyPolicyStatementPropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Conditions:cdk().listMapper(convertCfnMailManagerTrafficPolicyPolicyConditionPropertyToCloudFormation)(properties.conditions)}):properties}function CfnMailManagerTrafficPolicyPolicyStatementPropertyFromCloudFormation(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("action","Action",properties.Action!=null?cfn_parse().FromCloudFormation.getString(properties.Action):void 0),ret.addPropertyResult("conditions","Conditions",properties.Conditions!=null?cfn_parse().FromCloudFormation.getArray(CfnMailManagerTrafficPolicyPolicyConditionPropertyFromCloudFormation)(properties.Conditions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMailManagerTrafficPolicyPropsValidator(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("defaultAction",cdk().requiredValidator)(properties.defaultAction)),errors.collect(cdk().propertyValidator("defaultAction",cdk().validateString)(properties.defaultAction)),errors.collect(cdk().propertyValidator("maxMessageSizeBytes",cdk().validateNumber)(properties.maxMessageSizeBytes)),errors.collect(cdk().propertyValidator("policyStatements",cdk().requiredValidator)(properties.policyStatements)),errors.collect(cdk().propertyValidator("policyStatements",cdk().listValidator(CfnMailManagerTrafficPolicyPolicyStatementPropertyValidator))(properties.policyStatements)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("trafficPolicyName",cdk().validateString)(properties.trafficPolicyName)),errors.wrap('supplied properties not correct for "CfnMailManagerTrafficPolicyProps"')}function convertCfnMailManagerTrafficPolicyPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMailManagerTrafficPolicyPropsValidator(properties).assertSuccess(),{DefaultAction:cdk().stringToCloudFormation(properties.defaultAction),MaxMessageSizeBytes:cdk().numberToCloudFormation(properties.maxMessageSizeBytes),PolicyStatements:cdk().listMapper(convertCfnMailManagerTrafficPolicyPolicyStatementPropertyToCloudFormation)(properties.policyStatements),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TrafficPolicyName:cdk().stringToCloudFormation(properties.trafficPolicyName)}):properties}function CfnMailManagerTrafficPolicyPropsFromCloudFormation(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("defaultAction","DefaultAction",properties.DefaultAction!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultAction):void 0),ret.addPropertyResult("maxMessageSizeBytes","MaxMessageSizeBytes",properties.MaxMessageSizeBytes!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxMessageSizeBytes):void 0),ret.addPropertyResult("policyStatements","PolicyStatements",properties.PolicyStatements!=null?cfn_parse().FromCloudFormation.getArray(CfnMailManagerTrafficPolicyPolicyStatementPropertyFromCloudFormation)(properties.PolicyStatements):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("trafficPolicyName","TrafficPolicyName",properties.TrafficPolicyName!=null?cfn_parse().FromCloudFormation.getString(properties.TrafficPolicyName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMultiRegionEndpoint extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnMultiRegionEndpoint",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::MultiRegionEndpoint";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMultiRegionEndpointPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMultiRegionEndpoint(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 isCfnMultiRegionEndpoint(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMultiRegionEndpoint.CFN_RESOURCE_TYPE_NAME}static fromEndpointName(scope,id,endpointName){class Import extends cdk().Resource{multiRegionEndpointRef;constructor(scope2,id2,endpointName2){super(scope2,id2),this.multiRegionEndpointRef={endpointName:endpointName2}}}return new Import(scope,id,endpointName)}static arnForMultiRegionEndpoint(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_IMultiRegionEndpointRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMultiRegionEndpoint),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ses:${Region}:${Account}:multi-region-endpoint/${EndpointName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,EndpointName:resource.multiRegionEndpointRef.endpointName})}cdkTagManager;_details;_endpointName;_tags;cfnPropertyNames={tags:"Tags",details:"Details",endpointName:"EndpointName"};constructor(scope,id,props){super(scope,id,{type:CfnMultiRegionEndpoint.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnMultiRegionEndpointProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMultiRegionEndpoint),error}cdk().requireProperty(props,"details",this),cdk().requireProperty(props,"endpointName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::MultiRegionEndpoint",void 0,{tagPropertyName:"tags"}),this._details=props.details,this._endpointName=props.endpointName,this._tags=props.tags}get multiRegionEndpointRef(){return{endpointName:this.ref}}get details(){return this._details}set details(value){cdk().traceProperty(this.node,"Details"),this._details=value}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),details:this._details,endpointName:this._endpointName}}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",CfnMultiRegionEndpoint.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMultiRegionEndpointPropsToCloudFormation(props)}}exports.CfnMultiRegionEndpoint=CfnMultiRegionEndpoint;function CfnMultiRegionEndpointRouteDetailsItemsPropertyValidator(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("region",cdk().requiredValidator)(properties.region)),errors.collect(cdk().propertyValidator("region",cdk().validateString)(properties.region)),errors.wrap('supplied properties not correct for "RouteDetailsItemsProperty"')}function convertCfnMultiRegionEndpointRouteDetailsItemsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMultiRegionEndpointRouteDetailsItemsPropertyValidator(properties).assertSuccess(),{Region:cdk().stringToCloudFormation(properties.region)}):properties}function CfnMultiRegionEndpointRouteDetailsItemsPropertyFromCloudFormation(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("region","Region",properties.Region!=null?cfn_parse().FromCloudFormation.getString(properties.Region):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMultiRegionEndpointDetailsPropertyValidator(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("routeDetails",cdk().requiredValidator)(properties.routeDetails)),errors.collect(cdk().propertyValidator("routeDetails",cdk().listValidator(CfnMultiRegionEndpointRouteDetailsItemsPropertyValidator))(properties.routeDetails)),errors.wrap('supplied properties not correct for "DetailsProperty"')}function convertCfnMultiRegionEndpointDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMultiRegionEndpointDetailsPropertyValidator(properties).assertSuccess(),{RouteDetails:cdk().listMapper(convertCfnMultiRegionEndpointRouteDetailsItemsPropertyToCloudFormation)(properties.routeDetails)}):properties}function CfnMultiRegionEndpointDetailsPropertyFromCloudFormation(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("routeDetails","RouteDetails",properties.RouteDetails!=null?cfn_parse().FromCloudFormation.getArray(CfnMultiRegionEndpointRouteDetailsItemsPropertyFromCloudFormation)(properties.RouteDetails):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMultiRegionEndpointPropsValidator(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("details",cdk().requiredValidator)(properties.details)),errors.collect(cdk().propertyValidator("details",CfnMultiRegionEndpointDetailsPropertyValidator)(properties.details)),errors.collect(cdk().propertyValidator("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMultiRegionEndpointProps"')}function convertCfnMultiRegionEndpointPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMultiRegionEndpointPropsValidator(properties).assertSuccess(),{Details:convertCfnMultiRegionEndpointDetailsPropertyToCloudFormation(properties.details),EndpointName:cdk().stringToCloudFormation(properties.endpointName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMultiRegionEndpointPropsFromCloudFormation(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("details","Details",properties.Details!=null?CfnMultiRegionEndpointDetailsPropertyFromCloudFormation(properties.Details):void 0),ret.addPropertyResult("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTenant extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ses.CfnTenant",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SES::Tenant";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTenantPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnTenant(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 isCfnTenant(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnTenant.CFN_RESOURCE_TYPE_NAME}static arnForTenant(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ses_ITenantRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForTenant),error}return resource.tenantRef.tenantArn}cdkTagManager;_resourceAssociations;_tags;_tenantName;cfnPropertyNames={tags:"Tags",resourceAssociations:"ResourceAssociations",tenantName:"TenantName"};constructor(scope,id,props){super(scope,id,{type:CfnTenant.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ses_CfnTenantProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTenant),error}cdk().requireProperty(props,"tenantName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SES::Tenant",void 0,{tagPropertyName:"tags"}),this._resourceAssociations=props.resourceAssociations,this._tags=props.tags,this._tenantName=props.tenantName}get tenantRef(){return{tenantName:this.ref,tenantArn:this.attrArn}}get resourceAssociations(){return this._resourceAssociations}set resourceAssociations(value){cdk().traceProperty(this.node,"ResourceAssociations"),this._resourceAssociations=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get tenantName(){return this._tenantName}set tenantName(value){cdk().traceProperty(this.node,"TenantName"),this._tenantName=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),resourceAssociations:this._resourceAssociations,tenantName:this._tenantName}}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",CfnTenant.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTenantPropsToCloudFormation(props)}}exports.CfnTenant=CfnTenant;function CfnTenantResourceAssociationPropertyValidator(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("resourceArn",cdk().requiredValidator)(properties.resourceArn)),errors.collect(cdk().propertyValidator("resourceArn",cdk().validateString)(properties.resourceArn)),errors.wrap('supplied properties not correct for "ResourceAssociationProperty"')}function convertCfnTenantResourceAssociationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTenantResourceAssociationPropertyValidator(properties).assertSuccess(),{ResourceArn:cdk().stringToCloudFormation(properties.resourceArn)}):properties}function CfnTenantResourceAssociationPropertyFromCloudFormation(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("resourceArn","ResourceArn",properties.ResourceArn!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTenantPropsValidator(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("resourceAssociations",cdk().listValidator(CfnTenantResourceAssociationPropertyValidator))(properties.resourceAssociations)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("tenantName",cdk().requiredValidator)(properties.tenantName)),errors.collect(cdk().propertyValidator("tenantName",cdk().validateString)(properties.tenantName)),errors.wrap('supplied properties not correct for "CfnTenantProps"')}function convertCfnTenantPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTenantPropsValidator(properties).assertSuccess(),{ResourceAssociations:cdk().listMapper(convertCfnTenantResourceAssociationPropertyToCloudFormation)(properties.resourceAssociations),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TenantName:cdk().stringToCloudFormation(properties.tenantName)}):properties}function CfnTenantPropsFromCloudFormation(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("resourceAssociations","ResourceAssociations",properties.ResourceAssociations!=null?cfn_parse().FromCloudFormation.getArray(CfnTenantResourceAssociationPropertyFromCloudFormation)(properties.ResourceAssociations):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("tenantName","TenantName",properties.TenantName!=null?cfn_parse().FromCloudFormation.getString(properties.TenantName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}