2 lines
251 KiB
JavaScript
2 lines
251 KiB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnVoiceChannel=exports.CfnSmsTemplate=exports.CfnSegment=exports.CfnSMSChannel=exports.CfnPushTemplate=exports.CfnInAppTemplate=exports.CfnGCMChannel=exports.CfnEventStream=exports.CfnEmailTemplate=exports.CfnEmailChannel=exports.CfnCampaign=exports.CfnBaiduChannel=exports.CfnApplicationSettings=exports.CfnApp=exports.CfnAPNSVoipSandboxChannel=exports.CfnAPNSVoipChannel=exports.CfnAPNSSandboxChannel=exports.CfnAPNSChannel=exports.CfnADMChannel=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 CfnADMChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnADMChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::ADMChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnADMChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnADMChannel(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 isCfnADMChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnADMChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_clientId;_clientSecret;_enabled;cfnPropertyNames={applicationId:"ApplicationId",clientId:"ClientId",clientSecret:"ClientSecret",enabled:"Enabled"};constructor(scope,id,props){super(scope,id,{type:CfnADMChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnADMChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnADMChannel),error}cdk().requireProperty(props,"applicationId",this),cdk().requireProperty(props,"clientId",this),cdk().requireProperty(props,"clientSecret",this),this._applicationId=props.applicationId,this._clientId=props.clientId,this._clientSecret=props.clientSecret,this._enabled=props.enabled}get admChannelRef(){return{admChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get clientId(){return this._clientId}set clientId(value){cdk().traceProperty(this.node,"ClientId"),this._clientId=value}get clientSecret(){return this._clientSecret}set clientSecret(value){cdk().traceProperty(this.node,"ClientSecret"),this._clientSecret=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,clientId:this._clientId,clientSecret:this._clientSecret,enabled:this._enabled}}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",CfnADMChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnADMChannelPropsToCloudFormation(props)}}exports.CfnADMChannel=CfnADMChannel;function CfnADMChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("clientId",cdk().requiredValidator)(properties.clientId)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().requiredValidator)(properties.clientSecret)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "CfnADMChannelProps"')}function convertCfnADMChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnADMChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnADMChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAPNSChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnAPNSChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::APNSChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAPNSChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAPNSChannel(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 isCfnAPNSChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAPNSChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_bundleId;_certificate;_defaultAuthenticationMethod;_enabled;_privateKey;_teamId;_tokenKey;_tokenKeyId;cfnPropertyNames={applicationId:"ApplicationId",bundleId:"BundleId",certificate:"Certificate",defaultAuthenticationMethod:"DefaultAuthenticationMethod",enabled:"Enabled",privateKey:"PrivateKey",teamId:"TeamId",tokenKey:"TokenKey",tokenKeyId:"TokenKeyId"};constructor(scope,id,props){super(scope,id,{type:CfnAPNSChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnAPNSChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAPNSChannel),error}cdk().requireProperty(props,"applicationId",this),this._applicationId=props.applicationId,this._bundleId=props.bundleId,this._certificate=props.certificate,this._defaultAuthenticationMethod=props.defaultAuthenticationMethod,this._enabled=props.enabled,this._privateKey=props.privateKey,this._teamId=props.teamId,this._tokenKey=props.tokenKey,this._tokenKeyId=props.tokenKeyId}get apnsChannelRef(){return{apnsChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get bundleId(){return this._bundleId}set bundleId(value){cdk().traceProperty(this.node,"BundleId"),this._bundleId=value}get certificate(){return this._certificate}set certificate(value){cdk().traceProperty(this.node,"Certificate"),this._certificate=value}get defaultAuthenticationMethod(){return this._defaultAuthenticationMethod}set defaultAuthenticationMethod(value){cdk().traceProperty(this.node,"DefaultAuthenticationMethod"),this._defaultAuthenticationMethod=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get privateKey(){return this._privateKey}set privateKey(value){cdk().traceProperty(this.node,"PrivateKey"),this._privateKey=value}get teamId(){return this._teamId}set teamId(value){cdk().traceProperty(this.node,"TeamId"),this._teamId=value}get tokenKey(){return this._tokenKey}set tokenKey(value){cdk().traceProperty(this.node,"TokenKey"),this._tokenKey=value}get tokenKeyId(){return this._tokenKeyId}set tokenKeyId(value){cdk().traceProperty(this.node,"TokenKeyId"),this._tokenKeyId=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,bundleId:this._bundleId,certificate:this._certificate,defaultAuthenticationMethod:this._defaultAuthenticationMethod,enabled:this._enabled,privateKey:this._privateKey,teamId:this._teamId,tokenKey:this._tokenKey,tokenKeyId:this._tokenKeyId}}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",CfnAPNSChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAPNSChannelPropsToCloudFormation(props)}}exports.CfnAPNSChannel=CfnAPNSChannel;function CfnAPNSChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("bundleId",cdk().validateString)(properties.bundleId)),errors.collect(cdk().propertyValidator("certificate",cdk().validateString)(properties.certificate)),errors.collect(cdk().propertyValidator("defaultAuthenticationMethod",cdk().validateString)(properties.defaultAuthenticationMethod)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("privateKey",cdk().validateString)(properties.privateKey)),errors.collect(cdk().propertyValidator("teamId",cdk().validateString)(properties.teamId)),errors.collect(cdk().propertyValidator("tokenKey",cdk().validateString)(properties.tokenKey)),errors.collect(cdk().propertyValidator("tokenKeyId",cdk().validateString)(properties.tokenKeyId)),errors.wrap('supplied properties not correct for "CfnAPNSChannelProps"')}function convertCfnAPNSChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAPNSChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),BundleId:cdk().stringToCloudFormation(properties.bundleId),Certificate:cdk().stringToCloudFormation(properties.certificate),DefaultAuthenticationMethod:cdk().stringToCloudFormation(properties.defaultAuthenticationMethod),Enabled:cdk().booleanToCloudFormation(properties.enabled),PrivateKey:cdk().stringToCloudFormation(properties.privateKey),TeamId:cdk().stringToCloudFormation(properties.teamId),TokenKey:cdk().stringToCloudFormation(properties.tokenKey),TokenKeyId:cdk().stringToCloudFormation(properties.tokenKeyId)}):properties}function CfnAPNSChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("bundleId","BundleId",properties.BundleId!=null?cfn_parse().FromCloudFormation.getString(properties.BundleId):void 0),ret.addPropertyResult("certificate","Certificate",properties.Certificate!=null?cfn_parse().FromCloudFormation.getString(properties.Certificate):void 0),ret.addPropertyResult("defaultAuthenticationMethod","DefaultAuthenticationMethod",properties.DefaultAuthenticationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultAuthenticationMethod):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("privateKey","PrivateKey",properties.PrivateKey!=null?cfn_parse().FromCloudFormation.getString(properties.PrivateKey):void 0),ret.addPropertyResult("teamId","TeamId",properties.TeamId!=null?cfn_parse().FromCloudFormation.getString(properties.TeamId):void 0),ret.addPropertyResult("tokenKey","TokenKey",properties.TokenKey!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKey):void 0),ret.addPropertyResult("tokenKeyId","TokenKeyId",properties.TokenKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAPNSSandboxChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnAPNSSandboxChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::APNSSandboxChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAPNSSandboxChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAPNSSandboxChannel(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 isCfnAPNSSandboxChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAPNSSandboxChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_bundleId;_certificate;_defaultAuthenticationMethod;_enabled;_privateKey;_teamId;_tokenKey;_tokenKeyId;cfnPropertyNames={applicationId:"ApplicationId",bundleId:"BundleId",certificate:"Certificate",defaultAuthenticationMethod:"DefaultAuthenticationMethod",enabled:"Enabled",privateKey:"PrivateKey",teamId:"TeamId",tokenKey:"TokenKey",tokenKeyId:"TokenKeyId"};constructor(scope,id,props){super(scope,id,{type:CfnAPNSSandboxChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnAPNSSandboxChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAPNSSandboxChannel),error}cdk().requireProperty(props,"applicationId",this),this._applicationId=props.applicationId,this._bundleId=props.bundleId,this._certificate=props.certificate,this._defaultAuthenticationMethod=props.defaultAuthenticationMethod,this._enabled=props.enabled,this._privateKey=props.privateKey,this._teamId=props.teamId,this._tokenKey=props.tokenKey,this._tokenKeyId=props.tokenKeyId}get apnsSandboxChannelRef(){return{apnsSandboxChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get bundleId(){return this._bundleId}set bundleId(value){cdk().traceProperty(this.node,"BundleId"),this._bundleId=value}get certificate(){return this._certificate}set certificate(value){cdk().traceProperty(this.node,"Certificate"),this._certificate=value}get defaultAuthenticationMethod(){return this._defaultAuthenticationMethod}set defaultAuthenticationMethod(value){cdk().traceProperty(this.node,"DefaultAuthenticationMethod"),this._defaultAuthenticationMethod=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get privateKey(){return this._privateKey}set privateKey(value){cdk().traceProperty(this.node,"PrivateKey"),this._privateKey=value}get teamId(){return this._teamId}set teamId(value){cdk().traceProperty(this.node,"TeamId"),this._teamId=value}get tokenKey(){return this._tokenKey}set tokenKey(value){cdk().traceProperty(this.node,"TokenKey"),this._tokenKey=value}get tokenKeyId(){return this._tokenKeyId}set tokenKeyId(value){cdk().traceProperty(this.node,"TokenKeyId"),this._tokenKeyId=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,bundleId:this._bundleId,certificate:this._certificate,defaultAuthenticationMethod:this._defaultAuthenticationMethod,enabled:this._enabled,privateKey:this._privateKey,teamId:this._teamId,tokenKey:this._tokenKey,tokenKeyId:this._tokenKeyId}}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",CfnAPNSSandboxChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAPNSSandboxChannelPropsToCloudFormation(props)}}exports.CfnAPNSSandboxChannel=CfnAPNSSandboxChannel;function CfnAPNSSandboxChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("bundleId",cdk().validateString)(properties.bundleId)),errors.collect(cdk().propertyValidator("certificate",cdk().validateString)(properties.certificate)),errors.collect(cdk().propertyValidator("defaultAuthenticationMethod",cdk().validateString)(properties.defaultAuthenticationMethod)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("privateKey",cdk().validateString)(properties.privateKey)),errors.collect(cdk().propertyValidator("teamId",cdk().validateString)(properties.teamId)),errors.collect(cdk().propertyValidator("tokenKey",cdk().validateString)(properties.tokenKey)),errors.collect(cdk().propertyValidator("tokenKeyId",cdk().validateString)(properties.tokenKeyId)),errors.wrap('supplied properties not correct for "CfnAPNSSandboxChannelProps"')}function convertCfnAPNSSandboxChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAPNSSandboxChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),BundleId:cdk().stringToCloudFormation(properties.bundleId),Certificate:cdk().stringToCloudFormation(properties.certificate),DefaultAuthenticationMethod:cdk().stringToCloudFormation(properties.defaultAuthenticationMethod),Enabled:cdk().booleanToCloudFormation(properties.enabled),PrivateKey:cdk().stringToCloudFormation(properties.privateKey),TeamId:cdk().stringToCloudFormation(properties.teamId),TokenKey:cdk().stringToCloudFormation(properties.tokenKey),TokenKeyId:cdk().stringToCloudFormation(properties.tokenKeyId)}):properties}function CfnAPNSSandboxChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("bundleId","BundleId",properties.BundleId!=null?cfn_parse().FromCloudFormation.getString(properties.BundleId):void 0),ret.addPropertyResult("certificate","Certificate",properties.Certificate!=null?cfn_parse().FromCloudFormation.getString(properties.Certificate):void 0),ret.addPropertyResult("defaultAuthenticationMethod","DefaultAuthenticationMethod",properties.DefaultAuthenticationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultAuthenticationMethod):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("privateKey","PrivateKey",properties.PrivateKey!=null?cfn_parse().FromCloudFormation.getString(properties.PrivateKey):void 0),ret.addPropertyResult("teamId","TeamId",properties.TeamId!=null?cfn_parse().FromCloudFormation.getString(properties.TeamId):void 0),ret.addPropertyResult("tokenKey","TokenKey",properties.TokenKey!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKey):void 0),ret.addPropertyResult("tokenKeyId","TokenKeyId",properties.TokenKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAPNSVoipChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnAPNSVoipChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::APNSVoipChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAPNSVoipChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAPNSVoipChannel(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 isCfnAPNSVoipChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAPNSVoipChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_bundleId;_certificate;_defaultAuthenticationMethod;_enabled;_privateKey;_teamId;_tokenKey;_tokenKeyId;cfnPropertyNames={applicationId:"ApplicationId",bundleId:"BundleId",certificate:"Certificate",defaultAuthenticationMethod:"DefaultAuthenticationMethod",enabled:"Enabled",privateKey:"PrivateKey",teamId:"TeamId",tokenKey:"TokenKey",tokenKeyId:"TokenKeyId"};constructor(scope,id,props){super(scope,id,{type:CfnAPNSVoipChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnAPNSVoipChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAPNSVoipChannel),error}cdk().requireProperty(props,"applicationId",this),this._applicationId=props.applicationId,this._bundleId=props.bundleId,this._certificate=props.certificate,this._defaultAuthenticationMethod=props.defaultAuthenticationMethod,this._enabled=props.enabled,this._privateKey=props.privateKey,this._teamId=props.teamId,this._tokenKey=props.tokenKey,this._tokenKeyId=props.tokenKeyId}get apnsVoipChannelRef(){return{apnsVoipChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get bundleId(){return this._bundleId}set bundleId(value){cdk().traceProperty(this.node,"BundleId"),this._bundleId=value}get certificate(){return this._certificate}set certificate(value){cdk().traceProperty(this.node,"Certificate"),this._certificate=value}get defaultAuthenticationMethod(){return this._defaultAuthenticationMethod}set defaultAuthenticationMethod(value){cdk().traceProperty(this.node,"DefaultAuthenticationMethod"),this._defaultAuthenticationMethod=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get privateKey(){return this._privateKey}set privateKey(value){cdk().traceProperty(this.node,"PrivateKey"),this._privateKey=value}get teamId(){return this._teamId}set teamId(value){cdk().traceProperty(this.node,"TeamId"),this._teamId=value}get tokenKey(){return this._tokenKey}set tokenKey(value){cdk().traceProperty(this.node,"TokenKey"),this._tokenKey=value}get tokenKeyId(){return this._tokenKeyId}set tokenKeyId(value){cdk().traceProperty(this.node,"TokenKeyId"),this._tokenKeyId=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,bundleId:this._bundleId,certificate:this._certificate,defaultAuthenticationMethod:this._defaultAuthenticationMethod,enabled:this._enabled,privateKey:this._privateKey,teamId:this._teamId,tokenKey:this._tokenKey,tokenKeyId:this._tokenKeyId}}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",CfnAPNSVoipChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAPNSVoipChannelPropsToCloudFormation(props)}}exports.CfnAPNSVoipChannel=CfnAPNSVoipChannel;function CfnAPNSVoipChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("bundleId",cdk().validateString)(properties.bundleId)),errors.collect(cdk().propertyValidator("certificate",cdk().validateString)(properties.certificate)),errors.collect(cdk().propertyValidator("defaultAuthenticationMethod",cdk().validateString)(properties.defaultAuthenticationMethod)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("privateKey",cdk().validateString)(properties.privateKey)),errors.collect(cdk().propertyValidator("teamId",cdk().validateString)(properties.teamId)),errors.collect(cdk().propertyValidator("tokenKey",cdk().validateString)(properties.tokenKey)),errors.collect(cdk().propertyValidator("tokenKeyId",cdk().validateString)(properties.tokenKeyId)),errors.wrap('supplied properties not correct for "CfnAPNSVoipChannelProps"')}function convertCfnAPNSVoipChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAPNSVoipChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),BundleId:cdk().stringToCloudFormation(properties.bundleId),Certificate:cdk().stringToCloudFormation(properties.certificate),DefaultAuthenticationMethod:cdk().stringToCloudFormation(properties.defaultAuthenticationMethod),Enabled:cdk().booleanToCloudFormation(properties.enabled),PrivateKey:cdk().stringToCloudFormation(properties.privateKey),TeamId:cdk().stringToCloudFormation(properties.teamId),TokenKey:cdk().stringToCloudFormation(properties.tokenKey),TokenKeyId:cdk().stringToCloudFormation(properties.tokenKeyId)}):properties}function CfnAPNSVoipChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("bundleId","BundleId",properties.BundleId!=null?cfn_parse().FromCloudFormation.getString(properties.BundleId):void 0),ret.addPropertyResult("certificate","Certificate",properties.Certificate!=null?cfn_parse().FromCloudFormation.getString(properties.Certificate):void 0),ret.addPropertyResult("defaultAuthenticationMethod","DefaultAuthenticationMethod",properties.DefaultAuthenticationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultAuthenticationMethod):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("privateKey","PrivateKey",properties.PrivateKey!=null?cfn_parse().FromCloudFormation.getString(properties.PrivateKey):void 0),ret.addPropertyResult("teamId","TeamId",properties.TeamId!=null?cfn_parse().FromCloudFormation.getString(properties.TeamId):void 0),ret.addPropertyResult("tokenKey","TokenKey",properties.TokenKey!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKey):void 0),ret.addPropertyResult("tokenKeyId","TokenKeyId",properties.TokenKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAPNSVoipSandboxChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnAPNSVoipSandboxChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::APNSVoipSandboxChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAPNSVoipSandboxChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAPNSVoipSandboxChannel(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 isCfnAPNSVoipSandboxChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAPNSVoipSandboxChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_bundleId;_certificate;_defaultAuthenticationMethod;_enabled;_privateKey;_teamId;_tokenKey;_tokenKeyId;cfnPropertyNames={applicationId:"ApplicationId",bundleId:"BundleId",certificate:"Certificate",defaultAuthenticationMethod:"DefaultAuthenticationMethod",enabled:"Enabled",privateKey:"PrivateKey",teamId:"TeamId",tokenKey:"TokenKey",tokenKeyId:"TokenKeyId"};constructor(scope,id,props){super(scope,id,{type:CfnAPNSVoipSandboxChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnAPNSVoipSandboxChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAPNSVoipSandboxChannel),error}cdk().requireProperty(props,"applicationId",this),this._applicationId=props.applicationId,this._bundleId=props.bundleId,this._certificate=props.certificate,this._defaultAuthenticationMethod=props.defaultAuthenticationMethod,this._enabled=props.enabled,this._privateKey=props.privateKey,this._teamId=props.teamId,this._tokenKey=props.tokenKey,this._tokenKeyId=props.tokenKeyId}get apnsVoipSandboxChannelRef(){return{apnsVoipSandboxChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get bundleId(){return this._bundleId}set bundleId(value){cdk().traceProperty(this.node,"BundleId"),this._bundleId=value}get certificate(){return this._certificate}set certificate(value){cdk().traceProperty(this.node,"Certificate"),this._certificate=value}get defaultAuthenticationMethod(){return this._defaultAuthenticationMethod}set defaultAuthenticationMethod(value){cdk().traceProperty(this.node,"DefaultAuthenticationMethod"),this._defaultAuthenticationMethod=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get privateKey(){return this._privateKey}set privateKey(value){cdk().traceProperty(this.node,"PrivateKey"),this._privateKey=value}get teamId(){return this._teamId}set teamId(value){cdk().traceProperty(this.node,"TeamId"),this._teamId=value}get tokenKey(){return this._tokenKey}set tokenKey(value){cdk().traceProperty(this.node,"TokenKey"),this._tokenKey=value}get tokenKeyId(){return this._tokenKeyId}set tokenKeyId(value){cdk().traceProperty(this.node,"TokenKeyId"),this._tokenKeyId=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,bundleId:this._bundleId,certificate:this._certificate,defaultAuthenticationMethod:this._defaultAuthenticationMethod,enabled:this._enabled,privateKey:this._privateKey,teamId:this._teamId,tokenKey:this._tokenKey,tokenKeyId:this._tokenKeyId}}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",CfnAPNSVoipSandboxChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAPNSVoipSandboxChannelPropsToCloudFormation(props)}}exports.CfnAPNSVoipSandboxChannel=CfnAPNSVoipSandboxChannel;function CfnAPNSVoipSandboxChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("bundleId",cdk().validateString)(properties.bundleId)),errors.collect(cdk().propertyValidator("certificate",cdk().validateString)(properties.certificate)),errors.collect(cdk().propertyValidator("defaultAuthenticationMethod",cdk().validateString)(properties.defaultAuthenticationMethod)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("privateKey",cdk().validateString)(properties.privateKey)),errors.collect(cdk().propertyValidator("teamId",cdk().validateString)(properties.teamId)),errors.collect(cdk().propertyValidator("tokenKey",cdk().validateString)(properties.tokenKey)),errors.collect(cdk().propertyValidator("tokenKeyId",cdk().validateString)(properties.tokenKeyId)),errors.wrap('supplied properties not correct for "CfnAPNSVoipSandboxChannelProps"')}function convertCfnAPNSVoipSandboxChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAPNSVoipSandboxChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),BundleId:cdk().stringToCloudFormation(properties.bundleId),Certificate:cdk().stringToCloudFormation(properties.certificate),DefaultAuthenticationMethod:cdk().stringToCloudFormation(properties.defaultAuthenticationMethod),Enabled:cdk().booleanToCloudFormation(properties.enabled),PrivateKey:cdk().stringToCloudFormation(properties.privateKey),TeamId:cdk().stringToCloudFormation(properties.teamId),TokenKey:cdk().stringToCloudFormation(properties.tokenKey),TokenKeyId:cdk().stringToCloudFormation(properties.tokenKeyId)}):properties}function CfnAPNSVoipSandboxChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("bundleId","BundleId",properties.BundleId!=null?cfn_parse().FromCloudFormation.getString(properties.BundleId):void 0),ret.addPropertyResult("certificate","Certificate",properties.Certificate!=null?cfn_parse().FromCloudFormation.getString(properties.Certificate):void 0),ret.addPropertyResult("defaultAuthenticationMethod","DefaultAuthenticationMethod",properties.DefaultAuthenticationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultAuthenticationMethod):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("privateKey","PrivateKey",properties.PrivateKey!=null?cfn_parse().FromCloudFormation.getString(properties.PrivateKey):void 0),ret.addPropertyResult("teamId","TeamId",properties.TeamId!=null?cfn_parse().FromCloudFormation.getString(properties.TeamId):void 0),ret.addPropertyResult("tokenKey","TokenKey",properties.TokenKey!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKey):void 0),ret.addPropertyResult("tokenKeyId","TokenKeyId",properties.TokenKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.TokenKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApp extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnApp",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::App";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAppPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnApp(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 isCfnApp(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnApp.CFN_RESOURCE_TYPE_NAME}static fromAppArn(scope,id,arn){class Import extends cdk().Resource{appRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:mobiletargeting:${Region}:${Account}:apps/${AppId}").parse(arn2);this.appRef={appId:variables.AppId,appArn:arn2}}}return new Import(scope,id,arn)}static fromAppId(scope,id,appId){class Import extends cdk().Resource{appRef;constructor(scope2,id2,appId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:mobiletargeting:${Region}:${Account}:apps/${AppId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AppId:appId2});super(scope2,id2,{environmentFromArn:arn}),this.appRef={appId:appId2,appArn:arn}}}return new Import(scope,id,appId)}static arnForApp(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_pinpoint_IAppRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForApp),error}return resource.appRef.appArn}_name;tags;_tagsRaw;cfnPropertyNames={name:"Name",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnApp.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnAppProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApp),error}cdk().requireProperty(props,"name",this),this._name=props.name,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Pinpoint::App",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get appRef(){return{appId:this.ref,appArn:this.attrArn}}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{name:this._name,tags:this.tags.renderTags()}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnApp.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAppPropsToCloudFormation(props)}}exports.CfnApp=CfnApp;function CfnAppPropsValidator(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("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.wrap('supplied properties not correct for "CfnAppProps"')}function convertCfnAppPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppPropsValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().objectToCloudFormation(properties.tags)}):properties}function CfnAppPropsFromCloudFormation(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("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApplicationSettings extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnApplicationSettings",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::ApplicationSettings";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnApplicationSettingsPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnApplicationSettings(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 isCfnApplicationSettings(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnApplicationSettings.CFN_RESOURCE_TYPE_NAME}_applicationId;_campaignHook;_cloudWatchMetricsEnabled;_limits;_quietTime;cfnPropertyNames={applicationId:"ApplicationId",campaignHook:"CampaignHook",cloudWatchMetricsEnabled:"CloudWatchMetricsEnabled",limits:"Limits",quietTime:"QuietTime"};constructor(scope,id,props){super(scope,id,{type:CfnApplicationSettings.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnApplicationSettingsProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApplicationSettings),error}cdk().requireProperty(props,"applicationId",this),this._applicationId=props.applicationId,this._campaignHook=props.campaignHook,this._cloudWatchMetricsEnabled=props.cloudWatchMetricsEnabled,this._limits=props.limits,this._quietTime=props.quietTime}get applicationSettingsRef(){return{applicationSettingsId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get campaignHook(){return this._campaignHook}set campaignHook(value){cdk().traceProperty(this.node,"CampaignHook"),this._campaignHook=value}get cloudWatchMetricsEnabled(){return this._cloudWatchMetricsEnabled}set cloudWatchMetricsEnabled(value){cdk().traceProperty(this.node,"CloudWatchMetricsEnabled"),this._cloudWatchMetricsEnabled=value}get limits(){return this._limits}set limits(value){cdk().traceProperty(this.node,"Limits"),this._limits=value}get quietTime(){return this._quietTime}set quietTime(value){cdk().traceProperty(this.node,"QuietTime"),this._quietTime=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,campaignHook:this._campaignHook,cloudWatchMetricsEnabled:this._cloudWatchMetricsEnabled,limits:this._limits,quietTime:this._quietTime}}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",CfnApplicationSettings.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnApplicationSettingsPropsToCloudFormation(props)}}exports.CfnApplicationSettings=CfnApplicationSettings;function CfnApplicationSettingsQuietTimePropertyValidator(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("end",cdk().requiredValidator)(properties.end)),errors.collect(cdk().propertyValidator("end",cdk().validateString)(properties.end)),errors.collect(cdk().propertyValidator("start",cdk().requiredValidator)(properties.start)),errors.collect(cdk().propertyValidator("start",cdk().validateString)(properties.start)),errors.wrap('supplied properties not correct for "QuietTimeProperty"')}function convertCfnApplicationSettingsQuietTimePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationSettingsQuietTimePropertyValidator(properties).assertSuccess(),{End:cdk().stringToCloudFormation(properties.end),Start:cdk().stringToCloudFormation(properties.start)}):properties}function CfnApplicationSettingsQuietTimePropertyFromCloudFormation(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("end","End",properties.End!=null?cfn_parse().FromCloudFormation.getString(properties.End):void 0),ret.addPropertyResult("start","Start",properties.Start!=null?cfn_parse().FromCloudFormation.getString(properties.Start):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApplicationSettingsLimitsPropertyValidator(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("daily",cdk().validateNumber)(properties.daily)),errors.collect(cdk().propertyValidator("maximumDuration",cdk().validateNumber)(properties.maximumDuration)),errors.collect(cdk().propertyValidator("messagesPerSecond",cdk().validateNumber)(properties.messagesPerSecond)),errors.collect(cdk().propertyValidator("total",cdk().validateNumber)(properties.total)),errors.wrap('supplied properties not correct for "LimitsProperty"')}function convertCfnApplicationSettingsLimitsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationSettingsLimitsPropertyValidator(properties).assertSuccess(),{Daily:cdk().numberToCloudFormation(properties.daily),MaximumDuration:cdk().numberToCloudFormation(properties.maximumDuration),MessagesPerSecond:cdk().numberToCloudFormation(properties.messagesPerSecond),Total:cdk().numberToCloudFormation(properties.total)}):properties}function CfnApplicationSettingsLimitsPropertyFromCloudFormation(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("daily","Daily",properties.Daily!=null?cfn_parse().FromCloudFormation.getNumber(properties.Daily):void 0),ret.addPropertyResult("maximumDuration","MaximumDuration",properties.MaximumDuration!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaximumDuration):void 0),ret.addPropertyResult("messagesPerSecond","MessagesPerSecond",properties.MessagesPerSecond!=null?cfn_parse().FromCloudFormation.getNumber(properties.MessagesPerSecond):void 0),ret.addPropertyResult("total","Total",properties.Total!=null?cfn_parse().FromCloudFormation.getNumber(properties.Total):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApplicationSettingsCampaignHookPropertyValidator(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("lambdaFunctionName",cdk().validateString)(properties.lambdaFunctionName)),errors.collect(cdk().propertyValidator("mode",cdk().validateString)(properties.mode)),errors.collect(cdk().propertyValidator("webUrl",cdk().validateString)(properties.webUrl)),errors.wrap('supplied properties not correct for "CampaignHookProperty"')}function convertCfnApplicationSettingsCampaignHookPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationSettingsCampaignHookPropertyValidator(properties).assertSuccess(),{LambdaFunctionName:cdk().stringToCloudFormation(properties.lambdaFunctionName),Mode:cdk().stringToCloudFormation(properties.mode),WebUrl:cdk().stringToCloudFormation(properties.webUrl)}):properties}function CfnApplicationSettingsCampaignHookPropertyFromCloudFormation(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("lambdaFunctionName","LambdaFunctionName",properties.LambdaFunctionName!=null?cfn_parse().FromCloudFormation.getString(properties.LambdaFunctionName):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addPropertyResult("webUrl","WebUrl",properties.WebUrl!=null?cfn_parse().FromCloudFormation.getString(properties.WebUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApplicationSettingsPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("campaignHook",CfnApplicationSettingsCampaignHookPropertyValidator)(properties.campaignHook)),errors.collect(cdk().propertyValidator("cloudWatchMetricsEnabled",cdk().validateBoolean)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk().propertyValidator("limits",CfnApplicationSettingsLimitsPropertyValidator)(properties.limits)),errors.collect(cdk().propertyValidator("quietTime",CfnApplicationSettingsQuietTimePropertyValidator)(properties.quietTime)),errors.wrap('supplied properties not correct for "CfnApplicationSettingsProps"')}function convertCfnApplicationSettingsPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationSettingsPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),CampaignHook:convertCfnApplicationSettingsCampaignHookPropertyToCloudFormation(properties.campaignHook),CloudWatchMetricsEnabled:cdk().booleanToCloudFormation(properties.cloudWatchMetricsEnabled),Limits:convertCfnApplicationSettingsLimitsPropertyToCloudFormation(properties.limits),QuietTime:convertCfnApplicationSettingsQuietTimePropertyToCloudFormation(properties.quietTime)}):properties}function CfnApplicationSettingsPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("campaignHook","CampaignHook",properties.CampaignHook!=null?CfnApplicationSettingsCampaignHookPropertyFromCloudFormation(properties.CampaignHook):void 0),ret.addPropertyResult("cloudWatchMetricsEnabled","CloudWatchMetricsEnabled",properties.CloudWatchMetricsEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.CloudWatchMetricsEnabled):void 0),ret.addPropertyResult("limits","Limits",properties.Limits!=null?CfnApplicationSettingsLimitsPropertyFromCloudFormation(properties.Limits):void 0),ret.addPropertyResult("quietTime","QuietTime",properties.QuietTime!=null?CfnApplicationSettingsQuietTimePropertyFromCloudFormation(properties.QuietTime):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBaiduChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnBaiduChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::BaiduChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBaiduChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnBaiduChannel(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 isCfnBaiduChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnBaiduChannel.CFN_RESOURCE_TYPE_NAME}_apiKey;_applicationId;_enabled;_secretKey;cfnPropertyNames={apiKey:"ApiKey",applicationId:"ApplicationId",enabled:"Enabled",secretKey:"SecretKey"};constructor(scope,id,props){super(scope,id,{type:CfnBaiduChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnBaiduChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBaiduChannel),error}cdk().requireProperty(props,"apiKey",this),cdk().requireProperty(props,"applicationId",this),cdk().requireProperty(props,"secretKey",this),this._apiKey=props.apiKey,this._applicationId=props.applicationId,this._enabled=props.enabled,this._secretKey=props.secretKey}get baiduChannelRef(){return{baiduChannelId:this.ref}}get apiKey(){return this._apiKey}set apiKey(value){cdk().traceProperty(this.node,"ApiKey"),this._apiKey=value}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get secretKey(){return this._secretKey}set secretKey(value){cdk().traceProperty(this.node,"SecretKey"),this._secretKey=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiKey:this._apiKey,applicationId:this._applicationId,enabled:this._enabled,secretKey:this._secretKey}}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",CfnBaiduChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnBaiduChannelPropsToCloudFormation(props)}}exports.CfnBaiduChannel=CfnBaiduChannel;function CfnBaiduChannelPropsValidator(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("apiKey",cdk().requiredValidator)(properties.apiKey)),errors.collect(cdk().propertyValidator("apiKey",cdk().validateString)(properties.apiKey)),errors.collect(cdk().propertyValidator("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("secretKey",cdk().requiredValidator)(properties.secretKey)),errors.collect(cdk().propertyValidator("secretKey",cdk().validateString)(properties.secretKey)),errors.wrap('supplied properties not correct for "CfnBaiduChannelProps"')}function convertCfnBaiduChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnBaiduChannelPropsValidator(properties).assertSuccess(),{ApiKey:cdk().stringToCloudFormation(properties.apiKey),ApplicationId:cdk().stringToCloudFormation(properties.applicationId),Enabled:cdk().booleanToCloudFormation(properties.enabled),SecretKey:cdk().stringToCloudFormation(properties.secretKey)}):properties}function CfnBaiduChannelPropsFromCloudFormation(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("apiKey","ApiKey",properties.ApiKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiKey):void 0),ret.addPropertyResult("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("secretKey","SecretKey",properties.SecretKey!=null?cfn_parse().FromCloudFormation.getString(properties.SecretKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCampaign extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnCampaign",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::Campaign";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCampaignPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnCampaign(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 isCfnCampaign(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnCampaign.CFN_RESOURCE_TYPE_NAME}static arnForCampaign(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_pinpoint_ICampaignRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForCampaign),error}return resource.campaignRef.campaignArn}_additionalTreatments;_applicationId;_campaignHook;_customDeliveryConfiguration;_description;_holdoutPercent;_isPaused;_limits;_messageConfiguration;_name;_priority;_schedule;_segmentId;_segmentVersion;tags;_tagsRaw;_templateConfiguration;_treatmentDescription;_treatmentName;cfnPropertyNames={additionalTreatments:"AdditionalTreatments",applicationId:"ApplicationId",campaignHook:"CampaignHook",customDeliveryConfiguration:"CustomDeliveryConfiguration",description:"Description",holdoutPercent:"HoldoutPercent",isPaused:"IsPaused",limits:"Limits",messageConfiguration:"MessageConfiguration",name:"Name",priority:"Priority",schedule:"Schedule",segmentId:"SegmentId",segmentVersion:"SegmentVersion",tags:"Tags",templateConfiguration:"TemplateConfiguration",treatmentDescription:"TreatmentDescription",treatmentName:"TreatmentName"};constructor(scope,id,props){super(scope,id,{type:CfnCampaign.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnCampaignProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCampaign),error}cdk().requireProperty(props,"applicationId",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"schedule",this),cdk().requireProperty(props,"segmentId",this),this._additionalTreatments=props.additionalTreatments,this._applicationId=props.applicationId,this._campaignHook=props.campaignHook,this._customDeliveryConfiguration=props.customDeliveryConfiguration,this._description=props.description,this._holdoutPercent=props.holdoutPercent,this._isPaused=props.isPaused,this._limits=props.limits,this._messageConfiguration=props.messageConfiguration,this._name=props.name,this._priority=props.priority,this._schedule=props.schedule,this._segmentId=props.segmentId,this._segmentVersion=props.segmentVersion,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Pinpoint::Campaign",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._templateConfiguration=props.templateConfiguration,this._treatmentDescription=props.treatmentDescription,this._treatmentName=props.treatmentName}get campaignRef(){return{campaignId:this.ref,campaignArn:this.attrArn}}get additionalTreatments(){return this._additionalTreatments}set additionalTreatments(value){cdk().traceProperty(this.node,"AdditionalTreatments"),this._additionalTreatments=value}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get campaignHook(){return this._campaignHook}set campaignHook(value){cdk().traceProperty(this.node,"CampaignHook"),this._campaignHook=value}get customDeliveryConfiguration(){return this._customDeliveryConfiguration}set customDeliveryConfiguration(value){cdk().traceProperty(this.node,"CustomDeliveryConfiguration"),this._customDeliveryConfiguration=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get holdoutPercent(){return this._holdoutPercent}set holdoutPercent(value){cdk().traceProperty(this.node,"HoldoutPercent"),this._holdoutPercent=value}get isPaused(){return this._isPaused}set isPaused(value){cdk().traceProperty(this.node,"IsPaused"),this._isPaused=value}get limits(){return this._limits}set limits(value){cdk().traceProperty(this.node,"Limits"),this._limits=value}get messageConfiguration(){return this._messageConfiguration}set messageConfiguration(value){cdk().traceProperty(this.node,"MessageConfiguration"),this._messageConfiguration=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get priority(){return this._priority}set priority(value){cdk().traceProperty(this.node,"Priority"),this._priority=value}get schedule(){return this._schedule}set schedule(value){cdk().traceProperty(this.node,"Schedule"),this._schedule=value}get segmentId(){return this._segmentId}set segmentId(value){cdk().traceProperty(this.node,"SegmentId"),this._segmentId=value}get segmentVersion(){return this._segmentVersion}set segmentVersion(value){cdk().traceProperty(this.node,"SegmentVersion"),this._segmentVersion=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get templateConfiguration(){return this._templateConfiguration}set templateConfiguration(value){cdk().traceProperty(this.node,"TemplateConfiguration"),this._templateConfiguration=value}get treatmentDescription(){return this._treatmentDescription}set treatmentDescription(value){cdk().traceProperty(this.node,"TreatmentDescription"),this._treatmentDescription=value}get treatmentName(){return this._treatmentName}set treatmentName(value){cdk().traceProperty(this.node,"TreatmentName"),this._treatmentName=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCampaignId(){return cdk().Token.asString(this.getAtt("CampaignId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{additionalTreatments:this._additionalTreatments,applicationId:this._applicationId,campaignHook:this._campaignHook,customDeliveryConfiguration:this._customDeliveryConfiguration,description:this._description,holdoutPercent:this._holdoutPercent,isPaused:this._isPaused,limits:this._limits,messageConfiguration:this._messageConfiguration,name:this._name,priority:this._priority,schedule:this._schedule,segmentId:this._segmentId,segmentVersion:this._segmentVersion,tags:this.tags.renderTags(),templateConfiguration:this._templateConfiguration,treatmentDescription:this._treatmentDescription,treatmentName:this._treatmentName}}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",CfnCampaign.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnCampaignPropsToCloudFormation(props)}}exports.CfnCampaign=CfnCampaign;function CfnCampaignTemplatePropertyValidator(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("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("version",cdk().validateString)(properties.version)),errors.wrap('supplied properties not correct for "TemplateProperty"')}function convertCfnCampaignTemplatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignTemplatePropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Version:cdk().stringToCloudFormation(properties.version)}):properties}function CfnCampaignTemplatePropertyFromCloudFormation(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("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse().FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignTemplateConfigurationPropertyValidator(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("emailTemplate",CfnCampaignTemplatePropertyValidator)(properties.emailTemplate)),errors.collect(cdk().propertyValidator("pushTemplate",CfnCampaignTemplatePropertyValidator)(properties.pushTemplate)),errors.collect(cdk().propertyValidator("smsTemplate",CfnCampaignTemplatePropertyValidator)(properties.smsTemplate)),errors.collect(cdk().propertyValidator("voiceTemplate",CfnCampaignTemplatePropertyValidator)(properties.voiceTemplate)),errors.wrap('supplied properties not correct for "TemplateConfigurationProperty"')}function convertCfnCampaignTemplateConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignTemplateConfigurationPropertyValidator(properties).assertSuccess(),{EmailTemplate:convertCfnCampaignTemplatePropertyToCloudFormation(properties.emailTemplate),PushTemplate:convertCfnCampaignTemplatePropertyToCloudFormation(properties.pushTemplate),SMSTemplate:convertCfnCampaignTemplatePropertyToCloudFormation(properties.smsTemplate),VoiceTemplate:convertCfnCampaignTemplatePropertyToCloudFormation(properties.voiceTemplate)}):properties}function CfnCampaignTemplateConfigurationPropertyFromCloudFormation(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("emailTemplate","EmailTemplate",properties.EmailTemplate!=null?CfnCampaignTemplatePropertyFromCloudFormation(properties.EmailTemplate):void 0),ret.addPropertyResult("pushTemplate","PushTemplate",properties.PushTemplate!=null?CfnCampaignTemplatePropertyFromCloudFormation(properties.PushTemplate):void 0),ret.addPropertyResult("smsTemplate","SMSTemplate",properties.SMSTemplate!=null?CfnCampaignTemplatePropertyFromCloudFormation(properties.SMSTemplate):void 0),ret.addPropertyResult("voiceTemplate","VoiceTemplate",properties.VoiceTemplate!=null?CfnCampaignTemplatePropertyFromCloudFormation(properties.VoiceTemplate):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignMessagePropertyValidator(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().validateString)(properties.action)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("imageIconUrl",cdk().validateString)(properties.imageIconUrl)),errors.collect(cdk().propertyValidator("imageSmallIconUrl",cdk().validateString)(properties.imageSmallIconUrl)),errors.collect(cdk().propertyValidator("imageUrl",cdk().validateString)(properties.imageUrl)),errors.collect(cdk().propertyValidator("jsonBody",cdk().validateString)(properties.jsonBody)),errors.collect(cdk().propertyValidator("mediaUrl",cdk().validateString)(properties.mediaUrl)),errors.collect(cdk().propertyValidator("rawContent",cdk().validateString)(properties.rawContent)),errors.collect(cdk().propertyValidator("silentPush",cdk().validateBoolean)(properties.silentPush)),errors.collect(cdk().propertyValidator("timeToLive",cdk().validateNumber)(properties.timeToLive)),errors.collect(cdk().propertyValidator("title",cdk().validateString)(properties.title)),errors.collect(cdk().propertyValidator("url",cdk().validateString)(properties.url)),errors.wrap('supplied properties not correct for "MessageProperty"')}function convertCfnCampaignMessagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignMessagePropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Body:cdk().stringToCloudFormation(properties.body),ImageIconUrl:cdk().stringToCloudFormation(properties.imageIconUrl),ImageSmallIconUrl:cdk().stringToCloudFormation(properties.imageSmallIconUrl),ImageUrl:cdk().stringToCloudFormation(properties.imageUrl),JsonBody:cdk().stringToCloudFormation(properties.jsonBody),MediaUrl:cdk().stringToCloudFormation(properties.mediaUrl),RawContent:cdk().stringToCloudFormation(properties.rawContent),SilentPush:cdk().booleanToCloudFormation(properties.silentPush),TimeToLive:cdk().numberToCloudFormation(properties.timeToLive),Title:cdk().stringToCloudFormation(properties.title),Url:cdk().stringToCloudFormation(properties.url)}):properties}function CfnCampaignMessagePropertyFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("imageIconUrl","ImageIconUrl",properties.ImageIconUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ImageIconUrl):void 0),ret.addPropertyResult("imageSmallIconUrl","ImageSmallIconUrl",properties.ImageSmallIconUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ImageSmallIconUrl):void 0),ret.addPropertyResult("imageUrl","ImageUrl",properties.ImageUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUrl):void 0),ret.addPropertyResult("jsonBody","JsonBody",properties.JsonBody!=null?cfn_parse().FromCloudFormation.getString(properties.JsonBody):void 0),ret.addPropertyResult("mediaUrl","MediaUrl",properties.MediaUrl!=null?cfn_parse().FromCloudFormation.getString(properties.MediaUrl):void 0),ret.addPropertyResult("rawContent","RawContent",properties.RawContent!=null?cfn_parse().FromCloudFormation.getString(properties.RawContent):void 0),ret.addPropertyResult("silentPush","SilentPush",properties.SilentPush!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SilentPush):void 0),ret.addPropertyResult("timeToLive","TimeToLive",properties.TimeToLive!=null?cfn_parse().FromCloudFormation.getNumber(properties.TimeToLive):void 0),ret.addPropertyResult("title","Title",properties.Title!=null?cfn_parse().FromCloudFormation.getString(properties.Title):void 0),ret.addPropertyResult("url","Url",properties.Url!=null?cfn_parse().FromCloudFormation.getString(properties.Url):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignInAppMessageBodyConfigPropertyValidator(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("alignment",cdk().validateString)(properties.alignment)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("textColor",cdk().validateString)(properties.textColor)),errors.wrap('supplied properties not correct for "InAppMessageBodyConfigProperty"')}function convertCfnCampaignInAppMessageBodyConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignInAppMessageBodyConfigPropertyValidator(properties).assertSuccess(),{Alignment:cdk().stringToCloudFormation(properties.alignment),Body:cdk().stringToCloudFormation(properties.body),TextColor:cdk().stringToCloudFormation(properties.textColor)}):properties}function CfnCampaignInAppMessageBodyConfigPropertyFromCloudFormation(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("alignment","Alignment",properties.Alignment!=null?cfn_parse().FromCloudFormation.getString(properties.Alignment):void 0),ret.addPropertyResult("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("textColor","TextColor",properties.TextColor!=null?cfn_parse().FromCloudFormation.getString(properties.TextColor):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignOverrideButtonConfigurationPropertyValidator(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("buttonAction",cdk().validateString)(properties.buttonAction)),errors.collect(cdk().propertyValidator("link",cdk().validateString)(properties.link)),errors.wrap('supplied properties not correct for "OverrideButtonConfigurationProperty"')}function convertCfnCampaignOverrideButtonConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignOverrideButtonConfigurationPropertyValidator(properties).assertSuccess(),{ButtonAction:cdk().stringToCloudFormation(properties.buttonAction),Link:cdk().stringToCloudFormation(properties.link)}):properties}function CfnCampaignOverrideButtonConfigurationPropertyFromCloudFormation(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("buttonAction","ButtonAction",properties.ButtonAction!=null?cfn_parse().FromCloudFormation.getString(properties.ButtonAction):void 0),ret.addPropertyResult("link","Link",properties.Link!=null?cfn_parse().FromCloudFormation.getString(properties.Link):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignDefaultButtonConfigurationPropertyValidator(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("backgroundColor",cdk().validateString)(properties.backgroundColor)),errors.collect(cdk().propertyValidator("borderRadius",cdk().validateNumber)(properties.borderRadius)),errors.collect(cdk().propertyValidator("buttonAction",cdk().validateString)(properties.buttonAction)),errors.collect(cdk().propertyValidator("link",cdk().validateString)(properties.link)),errors.collect(cdk().propertyValidator("text",cdk().validateString)(properties.text)),errors.collect(cdk().propertyValidator("textColor",cdk().validateString)(properties.textColor)),errors.wrap('supplied properties not correct for "DefaultButtonConfigurationProperty"')}function convertCfnCampaignDefaultButtonConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignDefaultButtonConfigurationPropertyValidator(properties).assertSuccess(),{BackgroundColor:cdk().stringToCloudFormation(properties.backgroundColor),BorderRadius:cdk().numberToCloudFormation(properties.borderRadius),ButtonAction:cdk().stringToCloudFormation(properties.buttonAction),Link:cdk().stringToCloudFormation(properties.link),Text:cdk().stringToCloudFormation(properties.text),TextColor:cdk().stringToCloudFormation(properties.textColor)}):properties}function CfnCampaignDefaultButtonConfigurationPropertyFromCloudFormation(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("backgroundColor","BackgroundColor",properties.BackgroundColor!=null?cfn_parse().FromCloudFormation.getString(properties.BackgroundColor):void 0),ret.addPropertyResult("borderRadius","BorderRadius",properties.BorderRadius!=null?cfn_parse().FromCloudFormation.getNumber(properties.BorderRadius):void 0),ret.addPropertyResult("buttonAction","ButtonAction",properties.ButtonAction!=null?cfn_parse().FromCloudFormation.getString(properties.ButtonAction):void 0),ret.addPropertyResult("link","Link",properties.Link!=null?cfn_parse().FromCloudFormation.getString(properties.Link):void 0),ret.addPropertyResult("text","Text",properties.Text!=null?cfn_parse().FromCloudFormation.getString(properties.Text):void 0),ret.addPropertyResult("textColor","TextColor",properties.TextColor!=null?cfn_parse().FromCloudFormation.getString(properties.TextColor):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignInAppMessageButtonPropertyValidator(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("android",CfnCampaignOverrideButtonConfigurationPropertyValidator)(properties.android)),errors.collect(cdk().propertyValidator("defaultConfig",CfnCampaignDefaultButtonConfigurationPropertyValidator)(properties.defaultConfig)),errors.collect(cdk().propertyValidator("ios",CfnCampaignOverrideButtonConfigurationPropertyValidator)(properties.ios)),errors.collect(cdk().propertyValidator("web",CfnCampaignOverrideButtonConfigurationPropertyValidator)(properties.web)),errors.wrap('supplied properties not correct for "InAppMessageButtonProperty"')}function convertCfnCampaignInAppMessageButtonPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignInAppMessageButtonPropertyValidator(properties).assertSuccess(),{Android:convertCfnCampaignOverrideButtonConfigurationPropertyToCloudFormation(properties.android),DefaultConfig:convertCfnCampaignDefaultButtonConfigurationPropertyToCloudFormation(properties.defaultConfig),IOS:convertCfnCampaignOverrideButtonConfigurationPropertyToCloudFormation(properties.ios),Web:convertCfnCampaignOverrideButtonConfigurationPropertyToCloudFormation(properties.web)}):properties}function CfnCampaignInAppMessageButtonPropertyFromCloudFormation(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("android","Android",properties.Android!=null?CfnCampaignOverrideButtonConfigurationPropertyFromCloudFormation(properties.Android):void 0),ret.addPropertyResult("defaultConfig","DefaultConfig",properties.DefaultConfig!=null?CfnCampaignDefaultButtonConfigurationPropertyFromCloudFormation(properties.DefaultConfig):void 0),ret.addPropertyResult("ios","IOS",properties.IOS!=null?CfnCampaignOverrideButtonConfigurationPropertyFromCloudFormation(properties.IOS):void 0),ret.addPropertyResult("web","Web",properties.Web!=null?CfnCampaignOverrideButtonConfigurationPropertyFromCloudFormation(properties.Web):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignInAppMessageHeaderConfigPropertyValidator(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("alignment",cdk().validateString)(properties.alignment)),errors.collect(cdk().propertyValidator("header",cdk().validateString)(properties.header)),errors.collect(cdk().propertyValidator("textColor",cdk().validateString)(properties.textColor)),errors.wrap('supplied properties not correct for "InAppMessageHeaderConfigProperty"')}function convertCfnCampaignInAppMessageHeaderConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignInAppMessageHeaderConfigPropertyValidator(properties).assertSuccess(),{Alignment:cdk().stringToCloudFormation(properties.alignment),Header:cdk().stringToCloudFormation(properties.header),TextColor:cdk().stringToCloudFormation(properties.textColor)}):properties}function CfnCampaignInAppMessageHeaderConfigPropertyFromCloudFormation(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("alignment","Alignment",properties.Alignment!=null?cfn_parse().FromCloudFormation.getString(properties.Alignment):void 0),ret.addPropertyResult("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getString(properties.Header):void 0),ret.addPropertyResult("textColor","TextColor",properties.TextColor!=null?cfn_parse().FromCloudFormation.getString(properties.TextColor):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignInAppMessageContentPropertyValidator(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("backgroundColor",cdk().validateString)(properties.backgroundColor)),errors.collect(cdk().propertyValidator("bodyConfig",CfnCampaignInAppMessageBodyConfigPropertyValidator)(properties.bodyConfig)),errors.collect(cdk().propertyValidator("headerConfig",CfnCampaignInAppMessageHeaderConfigPropertyValidator)(properties.headerConfig)),errors.collect(cdk().propertyValidator("imageUrl",cdk().validateString)(properties.imageUrl)),errors.collect(cdk().propertyValidator("primaryBtn",CfnCampaignInAppMessageButtonPropertyValidator)(properties.primaryBtn)),errors.collect(cdk().propertyValidator("secondaryBtn",CfnCampaignInAppMessageButtonPropertyValidator)(properties.secondaryBtn)),errors.wrap('supplied properties not correct for "InAppMessageContentProperty"')}function convertCfnCampaignInAppMessageContentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignInAppMessageContentPropertyValidator(properties).assertSuccess(),{BackgroundColor:cdk().stringToCloudFormation(properties.backgroundColor),BodyConfig:convertCfnCampaignInAppMessageBodyConfigPropertyToCloudFormation(properties.bodyConfig),HeaderConfig:convertCfnCampaignInAppMessageHeaderConfigPropertyToCloudFormation(properties.headerConfig),ImageUrl:cdk().stringToCloudFormation(properties.imageUrl),PrimaryBtn:convertCfnCampaignInAppMessageButtonPropertyToCloudFormation(properties.primaryBtn),SecondaryBtn:convertCfnCampaignInAppMessageButtonPropertyToCloudFormation(properties.secondaryBtn)}):properties}function CfnCampaignInAppMessageContentPropertyFromCloudFormation(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("backgroundColor","BackgroundColor",properties.BackgroundColor!=null?cfn_parse().FromCloudFormation.getString(properties.BackgroundColor):void 0),ret.addPropertyResult("bodyConfig","BodyConfig",properties.BodyConfig!=null?CfnCampaignInAppMessageBodyConfigPropertyFromCloudFormation(properties.BodyConfig):void 0),ret.addPropertyResult("headerConfig","HeaderConfig",properties.HeaderConfig!=null?CfnCampaignInAppMessageHeaderConfigPropertyFromCloudFormation(properties.HeaderConfig):void 0),ret.addPropertyResult("imageUrl","ImageUrl",properties.ImageUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUrl):void 0),ret.addPropertyResult("primaryBtn","PrimaryBtn",properties.PrimaryBtn!=null?CfnCampaignInAppMessageButtonPropertyFromCloudFormation(properties.PrimaryBtn):void 0),ret.addPropertyResult("secondaryBtn","SecondaryBtn",properties.SecondaryBtn!=null?CfnCampaignInAppMessageButtonPropertyFromCloudFormation(properties.SecondaryBtn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCampaignInAppMessagePropertyValidator(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("content",cdk().listValidator(CfnCampaignInAppMessageContentPropertyValidator))(properties.content)),errors.collect(cdk().propertyValidator("customConfig",cdk().validateObject)(properties.customConfig)),errors.collect(cdk().propertyValidator("layout",cdk().validateString)(properties.layout)),errors.wrap('supplied properties not correct for "CampaignInAppMessageProperty"')}function convertCfnCampaignCampaignInAppMessagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCampaignInAppMessagePropertyValidator(properties).assertSuccess(),{Content:cdk().listMapper(convertCfnCampaignInAppMessageContentPropertyToCloudFormation)(properties.content),CustomConfig:cdk().objectToCloudFormation(properties.customConfig),Layout:cdk().stringToCloudFormation(properties.layout)}):properties}function CfnCampaignCampaignInAppMessagePropertyFromCloudFormation(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("content","Content",properties.Content!=null?cfn_parse().FromCloudFormation.getArray(CfnCampaignInAppMessageContentPropertyFromCloudFormation)(properties.Content):void 0),ret.addPropertyResult("customConfig","CustomConfig",properties.CustomConfig!=null?cfn_parse().FromCloudFormation.getAny(properties.CustomConfig):void 0),ret.addPropertyResult("layout","Layout",properties.Layout!=null?cfn_parse().FromCloudFormation.getString(properties.Layout):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCampaignEmailMessagePropertyValidator(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("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("fromAddress",cdk().validateString)(properties.fromAddress)),errors.collect(cdk().propertyValidator("htmlBody",cdk().validateString)(properties.htmlBody)),errors.collect(cdk().propertyValidator("title",cdk().validateString)(properties.title)),errors.wrap('supplied properties not correct for "CampaignEmailMessageProperty"')}function convertCfnCampaignCampaignEmailMessagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCampaignEmailMessagePropertyValidator(properties).assertSuccess(),{Body:cdk().stringToCloudFormation(properties.body),FromAddress:cdk().stringToCloudFormation(properties.fromAddress),HtmlBody:cdk().stringToCloudFormation(properties.htmlBody),Title:cdk().stringToCloudFormation(properties.title)}):properties}function CfnCampaignCampaignEmailMessagePropertyFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("fromAddress","FromAddress",properties.FromAddress!=null?cfn_parse().FromCloudFormation.getString(properties.FromAddress):void 0),ret.addPropertyResult("htmlBody","HtmlBody",properties.HtmlBody!=null?cfn_parse().FromCloudFormation.getString(properties.HtmlBody):void 0),ret.addPropertyResult("title","Title",properties.Title!=null?cfn_parse().FromCloudFormation.getString(properties.Title):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCampaignSmsMessagePropertyValidator(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("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("entityId",cdk().validateString)(properties.entityId)),errors.collect(cdk().propertyValidator("messageType",cdk().validateString)(properties.messageType)),errors.collect(cdk().propertyValidator("originationNumber",cdk().validateString)(properties.originationNumber)),errors.collect(cdk().propertyValidator("senderId",cdk().validateString)(properties.senderId)),errors.collect(cdk().propertyValidator("templateId",cdk().validateString)(properties.templateId)),errors.wrap('supplied properties not correct for "CampaignSmsMessageProperty"')}function convertCfnCampaignCampaignSmsMessagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCampaignSmsMessagePropertyValidator(properties).assertSuccess(),{Body:cdk().stringToCloudFormation(properties.body),EntityId:cdk().stringToCloudFormation(properties.entityId),MessageType:cdk().stringToCloudFormation(properties.messageType),OriginationNumber:cdk().stringToCloudFormation(properties.originationNumber),SenderId:cdk().stringToCloudFormation(properties.senderId),TemplateId:cdk().stringToCloudFormation(properties.templateId)}):properties}function CfnCampaignCampaignSmsMessagePropertyFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("entityId","EntityId",properties.EntityId!=null?cfn_parse().FromCloudFormation.getString(properties.EntityId):void 0),ret.addPropertyResult("messageType","MessageType",properties.MessageType!=null?cfn_parse().FromCloudFormation.getString(properties.MessageType):void 0),ret.addPropertyResult("originationNumber","OriginationNumber",properties.OriginationNumber!=null?cfn_parse().FromCloudFormation.getString(properties.OriginationNumber):void 0),ret.addPropertyResult("senderId","SenderId",properties.SenderId!=null?cfn_parse().FromCloudFormation.getString(properties.SenderId):void 0),ret.addPropertyResult("templateId","TemplateId",properties.TemplateId!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCampaignCustomMessagePropertyValidator(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("data",cdk().validateString)(properties.data)),errors.wrap('supplied properties not correct for "CampaignCustomMessageProperty"')}function convertCfnCampaignCampaignCustomMessagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCampaignCustomMessagePropertyValidator(properties).assertSuccess(),{Data:cdk().stringToCloudFormation(properties.data)}):properties}function CfnCampaignCampaignCustomMessagePropertyFromCloudFormation(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("data","Data",properties.Data!=null?cfn_parse().FromCloudFormation.getString(properties.Data):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignMessageConfigurationPropertyValidator(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("admMessage",CfnCampaignMessagePropertyValidator)(properties.admMessage)),errors.collect(cdk().propertyValidator("apnsMessage",CfnCampaignMessagePropertyValidator)(properties.apnsMessage)),errors.collect(cdk().propertyValidator("baiduMessage",CfnCampaignMessagePropertyValidator)(properties.baiduMessage)),errors.collect(cdk().propertyValidator("customMessage",CfnCampaignCampaignCustomMessagePropertyValidator)(properties.customMessage)),errors.collect(cdk().propertyValidator("defaultMessage",CfnCampaignMessagePropertyValidator)(properties.defaultMessage)),errors.collect(cdk().propertyValidator("emailMessage",CfnCampaignCampaignEmailMessagePropertyValidator)(properties.emailMessage)),errors.collect(cdk().propertyValidator("gcmMessage",CfnCampaignMessagePropertyValidator)(properties.gcmMessage)),errors.collect(cdk().propertyValidator("inAppMessage",CfnCampaignCampaignInAppMessagePropertyValidator)(properties.inAppMessage)),errors.collect(cdk().propertyValidator("smsMessage",CfnCampaignCampaignSmsMessagePropertyValidator)(properties.smsMessage)),errors.wrap('supplied properties not correct for "MessageConfigurationProperty"')}function convertCfnCampaignMessageConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignMessageConfigurationPropertyValidator(properties).assertSuccess(),{ADMMessage:convertCfnCampaignMessagePropertyToCloudFormation(properties.admMessage),APNSMessage:convertCfnCampaignMessagePropertyToCloudFormation(properties.apnsMessage),BaiduMessage:convertCfnCampaignMessagePropertyToCloudFormation(properties.baiduMessage),CustomMessage:convertCfnCampaignCampaignCustomMessagePropertyToCloudFormation(properties.customMessage),DefaultMessage:convertCfnCampaignMessagePropertyToCloudFormation(properties.defaultMessage),EmailMessage:convertCfnCampaignCampaignEmailMessagePropertyToCloudFormation(properties.emailMessage),GCMMessage:convertCfnCampaignMessagePropertyToCloudFormation(properties.gcmMessage),InAppMessage:convertCfnCampaignCampaignInAppMessagePropertyToCloudFormation(properties.inAppMessage),SMSMessage:convertCfnCampaignCampaignSmsMessagePropertyToCloudFormation(properties.smsMessage)}):properties}function CfnCampaignMessageConfigurationPropertyFromCloudFormation(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("admMessage","ADMMessage",properties.ADMMessage!=null?CfnCampaignMessagePropertyFromCloudFormation(properties.ADMMessage):void 0),ret.addPropertyResult("apnsMessage","APNSMessage",properties.APNSMessage!=null?CfnCampaignMessagePropertyFromCloudFormation(properties.APNSMessage):void 0),ret.addPropertyResult("baiduMessage","BaiduMessage",properties.BaiduMessage!=null?CfnCampaignMessagePropertyFromCloudFormation(properties.BaiduMessage):void 0),ret.addPropertyResult("customMessage","CustomMessage",properties.CustomMessage!=null?CfnCampaignCampaignCustomMessagePropertyFromCloudFormation(properties.CustomMessage):void 0),ret.addPropertyResult("defaultMessage","DefaultMessage",properties.DefaultMessage!=null?CfnCampaignMessagePropertyFromCloudFormation(properties.DefaultMessage):void 0),ret.addPropertyResult("emailMessage","EmailMessage",properties.EmailMessage!=null?CfnCampaignCampaignEmailMessagePropertyFromCloudFormation(properties.EmailMessage):void 0),ret.addPropertyResult("gcmMessage","GCMMessage",properties.GCMMessage!=null?CfnCampaignMessagePropertyFromCloudFormation(properties.GCMMessage):void 0),ret.addPropertyResult("inAppMessage","InAppMessage",properties.InAppMessage!=null?CfnCampaignCampaignInAppMessagePropertyFromCloudFormation(properties.InAppMessage):void 0),ret.addPropertyResult("smsMessage","SMSMessage",properties.SMSMessage!=null?CfnCampaignCampaignSmsMessagePropertyFromCloudFormation(properties.SMSMessage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignQuietTimePropertyValidator(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("end",cdk().requiredValidator)(properties.end)),errors.collect(cdk().propertyValidator("end",cdk().validateString)(properties.end)),errors.collect(cdk().propertyValidator("start",cdk().requiredValidator)(properties.start)),errors.collect(cdk().propertyValidator("start",cdk().validateString)(properties.start)),errors.wrap('supplied properties not correct for "QuietTimeProperty"')}function convertCfnCampaignQuietTimePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignQuietTimePropertyValidator(properties).assertSuccess(),{End:cdk().stringToCloudFormation(properties.end),Start:cdk().stringToCloudFormation(properties.start)}):properties}function CfnCampaignQuietTimePropertyFromCloudFormation(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("end","End",properties.End!=null?cfn_parse().FromCloudFormation.getString(properties.End):void 0),ret.addPropertyResult("start","Start",properties.Start!=null?cfn_parse().FromCloudFormation.getString(properties.Start):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignSetDimensionPropertyValidator(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("dimensionType",cdk().validateString)(properties.dimensionType)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "SetDimensionProperty"')}function convertCfnCampaignSetDimensionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignSetDimensionPropertyValidator(properties).assertSuccess(),{DimensionType:cdk().stringToCloudFormation(properties.dimensionType),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnCampaignSetDimensionPropertyFromCloudFormation(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("dimensionType","DimensionType",properties.DimensionType!=null?cfn_parse().FromCloudFormation.getString(properties.DimensionType):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 CfnCampaignEventDimensionsPropertyValidator(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("attributes",cdk().validateObject)(properties.attributes)),errors.collect(cdk().propertyValidator("eventType",CfnCampaignSetDimensionPropertyValidator)(properties.eventType)),errors.collect(cdk().propertyValidator("metrics",cdk().validateObject)(properties.metrics)),errors.wrap('supplied properties not correct for "EventDimensionsProperty"')}function convertCfnCampaignEventDimensionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignEventDimensionsPropertyValidator(properties).assertSuccess(),{Attributes:cdk().objectToCloudFormation(properties.attributes),EventType:convertCfnCampaignSetDimensionPropertyToCloudFormation(properties.eventType),Metrics:cdk().objectToCloudFormation(properties.metrics)}):properties}function CfnCampaignEventDimensionsPropertyFromCloudFormation(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("attributes","Attributes",properties.Attributes!=null?cfn_parse().FromCloudFormation.getAny(properties.Attributes):void 0),ret.addPropertyResult("eventType","EventType",properties.EventType!=null?CfnCampaignSetDimensionPropertyFromCloudFormation(properties.EventType):void 0),ret.addPropertyResult("metrics","Metrics",properties.Metrics!=null?cfn_parse().FromCloudFormation.getAny(properties.Metrics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCampaignEventFilterPropertyValidator(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("dimensions",CfnCampaignEventDimensionsPropertyValidator)(properties.dimensions)),errors.collect(cdk().propertyValidator("filterType",cdk().validateString)(properties.filterType)),errors.wrap('supplied properties not correct for "CampaignEventFilterProperty"')}function convertCfnCampaignCampaignEventFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCampaignEventFilterPropertyValidator(properties).assertSuccess(),{Dimensions:convertCfnCampaignEventDimensionsPropertyToCloudFormation(properties.dimensions),FilterType:cdk().stringToCloudFormation(properties.filterType)}):properties}function CfnCampaignCampaignEventFilterPropertyFromCloudFormation(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("dimensions","Dimensions",properties.Dimensions!=null?CfnCampaignEventDimensionsPropertyFromCloudFormation(properties.Dimensions):void 0),ret.addPropertyResult("filterType","FilterType",properties.FilterType!=null?cfn_parse().FromCloudFormation.getString(properties.FilterType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignSchedulePropertyValidator(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("endTime",cdk().validateString)(properties.endTime)),errors.collect(cdk().propertyValidator("eventFilter",CfnCampaignCampaignEventFilterPropertyValidator)(properties.eventFilter)),errors.collect(cdk().propertyValidator("frequency",cdk().validateString)(properties.frequency)),errors.collect(cdk().propertyValidator("isLocalTime",cdk().validateBoolean)(properties.isLocalTime)),errors.collect(cdk().propertyValidator("quietTime",CfnCampaignQuietTimePropertyValidator)(properties.quietTime)),errors.collect(cdk().propertyValidator("startTime",cdk().validateString)(properties.startTime)),errors.collect(cdk().propertyValidator("timeZone",cdk().validateString)(properties.timeZone)),errors.wrap('supplied properties not correct for "ScheduleProperty"')}function convertCfnCampaignSchedulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignSchedulePropertyValidator(properties).assertSuccess(),{EndTime:cdk().stringToCloudFormation(properties.endTime),EventFilter:convertCfnCampaignCampaignEventFilterPropertyToCloudFormation(properties.eventFilter),Frequency:cdk().stringToCloudFormation(properties.frequency),IsLocalTime:cdk().booleanToCloudFormation(properties.isLocalTime),QuietTime:convertCfnCampaignQuietTimePropertyToCloudFormation(properties.quietTime),StartTime:cdk().stringToCloudFormation(properties.startTime),TimeZone:cdk().stringToCloudFormation(properties.timeZone)}):properties}function CfnCampaignSchedulePropertyFromCloudFormation(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("endTime","EndTime",properties.EndTime!=null?cfn_parse().FromCloudFormation.getString(properties.EndTime):void 0),ret.addPropertyResult("eventFilter","EventFilter",properties.EventFilter!=null?CfnCampaignCampaignEventFilterPropertyFromCloudFormation(properties.EventFilter):void 0),ret.addPropertyResult("frequency","Frequency",properties.Frequency!=null?cfn_parse().FromCloudFormation.getString(properties.Frequency):void 0),ret.addPropertyResult("isLocalTime","IsLocalTime",properties.IsLocalTime!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IsLocalTime):void 0),ret.addPropertyResult("quietTime","QuietTime",properties.QuietTime!=null?CfnCampaignQuietTimePropertyFromCloudFormation(properties.QuietTime):void 0),ret.addPropertyResult("startTime","StartTime",properties.StartTime!=null?cfn_parse().FromCloudFormation.getString(properties.StartTime):void 0),ret.addPropertyResult("timeZone","TimeZone",properties.TimeZone!=null?cfn_parse().FromCloudFormation.getString(properties.TimeZone):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCustomDeliveryConfigurationPropertyValidator(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("deliveryUri",cdk().validateString)(properties.deliveryUri)),errors.collect(cdk().propertyValidator("endpointTypes",cdk().listValidator(cdk().validateString))(properties.endpointTypes)),errors.wrap('supplied properties not correct for "CustomDeliveryConfigurationProperty"')}function convertCfnCampaignCustomDeliveryConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCustomDeliveryConfigurationPropertyValidator(properties).assertSuccess(),{DeliveryUri:cdk().stringToCloudFormation(properties.deliveryUri),EndpointTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.endpointTypes)}):properties}function CfnCampaignCustomDeliveryConfigurationPropertyFromCloudFormation(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("deliveryUri","DeliveryUri",properties.DeliveryUri!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryUri):void 0),ret.addPropertyResult("endpointTypes","EndpointTypes",properties.EndpointTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.EndpointTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignWriteTreatmentResourcePropertyValidator(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("customDeliveryConfiguration",CfnCampaignCustomDeliveryConfigurationPropertyValidator)(properties.customDeliveryConfiguration)),errors.collect(cdk().propertyValidator("messageConfiguration",CfnCampaignMessageConfigurationPropertyValidator)(properties.messageConfiguration)),errors.collect(cdk().propertyValidator("schedule",CfnCampaignSchedulePropertyValidator)(properties.schedule)),errors.collect(cdk().propertyValidator("sizePercent",cdk().validateNumber)(properties.sizePercent)),errors.collect(cdk().propertyValidator("templateConfiguration",CfnCampaignTemplateConfigurationPropertyValidator)(properties.templateConfiguration)),errors.collect(cdk().propertyValidator("treatmentDescription",cdk().validateString)(properties.treatmentDescription)),errors.collect(cdk().propertyValidator("treatmentName",cdk().validateString)(properties.treatmentName)),errors.wrap('supplied properties not correct for "WriteTreatmentResourceProperty"')}function convertCfnCampaignWriteTreatmentResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignWriteTreatmentResourcePropertyValidator(properties).assertSuccess(),{CustomDeliveryConfiguration:convertCfnCampaignCustomDeliveryConfigurationPropertyToCloudFormation(properties.customDeliveryConfiguration),MessageConfiguration:convertCfnCampaignMessageConfigurationPropertyToCloudFormation(properties.messageConfiguration),Schedule:convertCfnCampaignSchedulePropertyToCloudFormation(properties.schedule),SizePercent:cdk().numberToCloudFormation(properties.sizePercent),TemplateConfiguration:convertCfnCampaignTemplateConfigurationPropertyToCloudFormation(properties.templateConfiguration),TreatmentDescription:cdk().stringToCloudFormation(properties.treatmentDescription),TreatmentName:cdk().stringToCloudFormation(properties.treatmentName)}):properties}function CfnCampaignWriteTreatmentResourcePropertyFromCloudFormation(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("customDeliveryConfiguration","CustomDeliveryConfiguration",properties.CustomDeliveryConfiguration!=null?CfnCampaignCustomDeliveryConfigurationPropertyFromCloudFormation(properties.CustomDeliveryConfiguration):void 0),ret.addPropertyResult("messageConfiguration","MessageConfiguration",properties.MessageConfiguration!=null?CfnCampaignMessageConfigurationPropertyFromCloudFormation(properties.MessageConfiguration):void 0),ret.addPropertyResult("schedule","Schedule",properties.Schedule!=null?CfnCampaignSchedulePropertyFromCloudFormation(properties.Schedule):void 0),ret.addPropertyResult("sizePercent","SizePercent",properties.SizePercent!=null?cfn_parse().FromCloudFormation.getNumber(properties.SizePercent):void 0),ret.addPropertyResult("templateConfiguration","TemplateConfiguration",properties.TemplateConfiguration!=null?CfnCampaignTemplateConfigurationPropertyFromCloudFormation(properties.TemplateConfiguration):void 0),ret.addPropertyResult("treatmentDescription","TreatmentDescription",properties.TreatmentDescription!=null?cfn_parse().FromCloudFormation.getString(properties.TreatmentDescription):void 0),ret.addPropertyResult("treatmentName","TreatmentName",properties.TreatmentName!=null?cfn_parse().FromCloudFormation.getString(properties.TreatmentName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignLimitsPropertyValidator(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("daily",cdk().validateNumber)(properties.daily)),errors.collect(cdk().propertyValidator("maximumDuration",cdk().validateNumber)(properties.maximumDuration)),errors.collect(cdk().propertyValidator("messagesPerSecond",cdk().validateNumber)(properties.messagesPerSecond)),errors.collect(cdk().propertyValidator("session",cdk().validateNumber)(properties.session)),errors.collect(cdk().propertyValidator("total",cdk().validateNumber)(properties.total)),errors.wrap('supplied properties not correct for "LimitsProperty"')}function convertCfnCampaignLimitsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignLimitsPropertyValidator(properties).assertSuccess(),{Daily:cdk().numberToCloudFormation(properties.daily),MaximumDuration:cdk().numberToCloudFormation(properties.maximumDuration),MessagesPerSecond:cdk().numberToCloudFormation(properties.messagesPerSecond),Session:cdk().numberToCloudFormation(properties.session),Total:cdk().numberToCloudFormation(properties.total)}):properties}function CfnCampaignLimitsPropertyFromCloudFormation(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("daily","Daily",properties.Daily!=null?cfn_parse().FromCloudFormation.getNumber(properties.Daily):void 0),ret.addPropertyResult("maximumDuration","MaximumDuration",properties.MaximumDuration!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaximumDuration):void 0),ret.addPropertyResult("messagesPerSecond","MessagesPerSecond",properties.MessagesPerSecond!=null?cfn_parse().FromCloudFormation.getNumber(properties.MessagesPerSecond):void 0),ret.addPropertyResult("session","Session",properties.Session!=null?cfn_parse().FromCloudFormation.getNumber(properties.Session):void 0),ret.addPropertyResult("total","Total",properties.Total!=null?cfn_parse().FromCloudFormation.getNumber(properties.Total):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCampaignHookPropertyValidator(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("lambdaFunctionName",cdk().validateString)(properties.lambdaFunctionName)),errors.collect(cdk().propertyValidator("mode",cdk().validateString)(properties.mode)),errors.collect(cdk().propertyValidator("webUrl",cdk().validateString)(properties.webUrl)),errors.wrap('supplied properties not correct for "CampaignHookProperty"')}function convertCfnCampaignCampaignHookPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCampaignHookPropertyValidator(properties).assertSuccess(),{LambdaFunctionName:cdk().stringToCloudFormation(properties.lambdaFunctionName),Mode:cdk().stringToCloudFormation(properties.mode),WebUrl:cdk().stringToCloudFormation(properties.webUrl)}):properties}function CfnCampaignCampaignHookPropertyFromCloudFormation(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("lambdaFunctionName","LambdaFunctionName",properties.LambdaFunctionName!=null?cfn_parse().FromCloudFormation.getString(properties.LambdaFunctionName):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addPropertyResult("webUrl","WebUrl",properties.WebUrl!=null?cfn_parse().FromCloudFormation.getString(properties.WebUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignPropsValidator(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("additionalTreatments",cdk().listValidator(CfnCampaignWriteTreatmentResourcePropertyValidator))(properties.additionalTreatments)),errors.collect(cdk().propertyValidator("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("campaignHook",CfnCampaignCampaignHookPropertyValidator)(properties.campaignHook)),errors.collect(cdk().propertyValidator("customDeliveryConfiguration",CfnCampaignCustomDeliveryConfigurationPropertyValidator)(properties.customDeliveryConfiguration)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("holdoutPercent",cdk().validateNumber)(properties.holdoutPercent)),errors.collect(cdk().propertyValidator("isPaused",cdk().validateBoolean)(properties.isPaused)),errors.collect(cdk().propertyValidator("limits",CfnCampaignLimitsPropertyValidator)(properties.limits)),errors.collect(cdk().propertyValidator("messageConfiguration",CfnCampaignMessageConfigurationPropertyValidator)(properties.messageConfiguration)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("priority",cdk().validateNumber)(properties.priority)),errors.collect(cdk().propertyValidator("schedule",cdk().requiredValidator)(properties.schedule)),errors.collect(cdk().propertyValidator("schedule",CfnCampaignSchedulePropertyValidator)(properties.schedule)),errors.collect(cdk().propertyValidator("segmentId",cdk().requiredValidator)(properties.segmentId)),errors.collect(cdk().propertyValidator("segmentId",cdk().validateString)(properties.segmentId)),errors.collect(cdk().propertyValidator("segmentVersion",cdk().validateNumber)(properties.segmentVersion)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.collect(cdk().propertyValidator("templateConfiguration",CfnCampaignTemplateConfigurationPropertyValidator)(properties.templateConfiguration)),errors.collect(cdk().propertyValidator("treatmentDescription",cdk().validateString)(properties.treatmentDescription)),errors.collect(cdk().propertyValidator("treatmentName",cdk().validateString)(properties.treatmentName)),errors.wrap('supplied properties not correct for "CfnCampaignProps"')}function convertCfnCampaignPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignPropsValidator(properties).assertSuccess(),{AdditionalTreatments:cdk().listMapper(convertCfnCampaignWriteTreatmentResourcePropertyToCloudFormation)(properties.additionalTreatments),ApplicationId:cdk().stringToCloudFormation(properties.applicationId),CampaignHook:convertCfnCampaignCampaignHookPropertyToCloudFormation(properties.campaignHook),CustomDeliveryConfiguration:convertCfnCampaignCustomDeliveryConfigurationPropertyToCloudFormation(properties.customDeliveryConfiguration),Description:cdk().stringToCloudFormation(properties.description),HoldoutPercent:cdk().numberToCloudFormation(properties.holdoutPercent),IsPaused:cdk().booleanToCloudFormation(properties.isPaused),Limits:convertCfnCampaignLimitsPropertyToCloudFormation(properties.limits),MessageConfiguration:convertCfnCampaignMessageConfigurationPropertyToCloudFormation(properties.messageConfiguration),Name:cdk().stringToCloudFormation(properties.name),Priority:cdk().numberToCloudFormation(properties.priority),Schedule:convertCfnCampaignSchedulePropertyToCloudFormation(properties.schedule),SegmentId:cdk().stringToCloudFormation(properties.segmentId),SegmentVersion:cdk().numberToCloudFormation(properties.segmentVersion),Tags:cdk().objectToCloudFormation(properties.tags),TemplateConfiguration:convertCfnCampaignTemplateConfigurationPropertyToCloudFormation(properties.templateConfiguration),TreatmentDescription:cdk().stringToCloudFormation(properties.treatmentDescription),TreatmentName:cdk().stringToCloudFormation(properties.treatmentName)}):properties}function CfnCampaignPropsFromCloudFormation(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("additionalTreatments","AdditionalTreatments",properties.AdditionalTreatments!=null?cfn_parse().FromCloudFormation.getArray(CfnCampaignWriteTreatmentResourcePropertyFromCloudFormation)(properties.AdditionalTreatments):void 0),ret.addPropertyResult("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("campaignHook","CampaignHook",properties.CampaignHook!=null?CfnCampaignCampaignHookPropertyFromCloudFormation(properties.CampaignHook):void 0),ret.addPropertyResult("customDeliveryConfiguration","CustomDeliveryConfiguration",properties.CustomDeliveryConfiguration!=null?CfnCampaignCustomDeliveryConfigurationPropertyFromCloudFormation(properties.CustomDeliveryConfiguration):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("holdoutPercent","HoldoutPercent",properties.HoldoutPercent!=null?cfn_parse().FromCloudFormation.getNumber(properties.HoldoutPercent):void 0),ret.addPropertyResult("isPaused","IsPaused",properties.IsPaused!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IsPaused):void 0),ret.addPropertyResult("limits","Limits",properties.Limits!=null?CfnCampaignLimitsPropertyFromCloudFormation(properties.Limits):void 0),ret.addPropertyResult("messageConfiguration","MessageConfiguration",properties.MessageConfiguration!=null?CfnCampaignMessageConfigurationPropertyFromCloudFormation(properties.MessageConfiguration):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("priority","Priority",properties.Priority!=null?cfn_parse().FromCloudFormation.getNumber(properties.Priority):void 0),ret.addPropertyResult("schedule","Schedule",properties.Schedule!=null?CfnCampaignSchedulePropertyFromCloudFormation(properties.Schedule):void 0),ret.addPropertyResult("segmentId","SegmentId",properties.SegmentId!=null?cfn_parse().FromCloudFormation.getString(properties.SegmentId):void 0),ret.addPropertyResult("segmentVersion","SegmentVersion",properties.SegmentVersion!=null?cfn_parse().FromCloudFormation.getNumber(properties.SegmentVersion):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addPropertyResult("templateConfiguration","TemplateConfiguration",properties.TemplateConfiguration!=null?CfnCampaignTemplateConfigurationPropertyFromCloudFormation(properties.TemplateConfiguration):void 0),ret.addPropertyResult("treatmentDescription","TreatmentDescription",properties.TreatmentDescription!=null?cfn_parse().FromCloudFormation.getString(properties.TreatmentDescription):void 0),ret.addPropertyResult("treatmentName","TreatmentName",properties.TreatmentName!=null?cfn_parse().FromCloudFormation.getString(properties.TreatmentName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignAttributeDimensionPropertyValidator(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("attributeType",cdk().validateString)(properties.attributeType)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "AttributeDimensionProperty"')}function convertCfnCampaignAttributeDimensionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignAttributeDimensionPropertyValidator(properties).assertSuccess(),{AttributeType:cdk().stringToCloudFormation(properties.attributeType),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnCampaignAttributeDimensionPropertyFromCloudFormation(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("attributeType","AttributeType",properties.AttributeType!=null?cfn_parse().FromCloudFormation.getString(properties.AttributeType):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 CfnCampaignMetricDimensionPropertyValidator(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("comparisonOperator",cdk().validateString)(properties.comparisonOperator)),errors.collect(cdk().propertyValidator("value",cdk().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "MetricDimensionProperty"')}function convertCfnCampaignMetricDimensionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignMetricDimensionPropertyValidator(properties).assertSuccess(),{ComparisonOperator:cdk().stringToCloudFormation(properties.comparisonOperator),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnCampaignMetricDimensionPropertyFromCloudFormation(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("comparisonOperator","ComparisonOperator",properties.ComparisonOperator!=null?cfn_parse().FromCloudFormation.getString(properties.ComparisonOperator):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEmailChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnEmailChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::EmailChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEmailChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnEmailChannel(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 isCfnEmailChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnEmailChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_configurationSet;_enabled;_fromAddress;_identity;_orchestrationSendingRoleArn;_roleArn;cfnPropertyNames={applicationId:"ApplicationId",configurationSet:"ConfigurationSet",enabled:"Enabled",fromAddress:"FromAddress",identity:"Identity",orchestrationSendingRoleArn:"OrchestrationSendingRoleArn",roleArn:"RoleArn"};constructor(scope,id,props){super(scope,id,{type:CfnEmailChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnEmailChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEmailChannel),error}cdk().requireProperty(props,"applicationId",this),cdk().requireProperty(props,"fromAddress",this),cdk().requireProperty(props,"identity",this),this._applicationId=props.applicationId,this._configurationSet=props.configurationSet,this._enabled=props.enabled,this._fromAddress=props.fromAddress,this._identity=props.identity,this._orchestrationSendingRoleArn=props.orchestrationSendingRoleArn,this._roleArn=props.roleArn}get emailChannelRef(){return{emailChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get configurationSet(){return this._configurationSet}set configurationSet(value){cdk().traceProperty(this.node,"ConfigurationSet"),this._configurationSet=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get fromAddress(){return this._fromAddress}set fromAddress(value){cdk().traceProperty(this.node,"FromAddress"),this._fromAddress=value}get identity(){return this._identity}set identity(value){cdk().traceProperty(this.node,"Identity"),this._identity=value}get orchestrationSendingRoleArn(){return this._orchestrationSendingRoleArn}set orchestrationSendingRoleArn(value){cdk().traceProperty(this.node,"OrchestrationSendingRoleArn"),this._orchestrationSendingRoleArn=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,configurationSet:this._configurationSet,enabled:this._enabled,fromAddress:this._fromAddress,identity:this._identity,orchestrationSendingRoleArn:this._orchestrationSendingRoleArn,roleArn:this._roleArn}}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",CfnEmailChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnEmailChannelPropsToCloudFormation(props)}}exports.CfnEmailChannel=CfnEmailChannel;function CfnEmailChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("configurationSet",cdk().validateString)(properties.configurationSet)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("fromAddress",cdk().requiredValidator)(properties.fromAddress)),errors.collect(cdk().propertyValidator("fromAddress",cdk().validateString)(properties.fromAddress)),errors.collect(cdk().propertyValidator("identity",cdk().requiredValidator)(properties.identity)),errors.collect(cdk().propertyValidator("identity",cdk().validateString)(properties.identity)),errors.collect(cdk().propertyValidator("orchestrationSendingRoleArn",cdk().validateString)(properties.orchestrationSendingRoleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "CfnEmailChannelProps"')}function convertCfnEmailChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),ConfigurationSet:cdk().stringToCloudFormation(properties.configurationSet),Enabled:cdk().booleanToCloudFormation(properties.enabled),FromAddress:cdk().stringToCloudFormation(properties.fromAddress),Identity:cdk().stringToCloudFormation(properties.identity),OrchestrationSendingRoleArn:cdk().stringToCloudFormation(properties.orchestrationSendingRoleArn),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnEmailChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("configurationSet","ConfigurationSet",properties.ConfigurationSet!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigurationSet):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("fromAddress","FromAddress",properties.FromAddress!=null?cfn_parse().FromCloudFormation.getString(properties.FromAddress):void 0),ret.addPropertyResult("identity","Identity",properties.Identity!=null?cfn_parse().FromCloudFormation.getString(properties.Identity):void 0),ret.addPropertyResult("orchestrationSendingRoleArn","OrchestrationSendingRoleArn",properties.OrchestrationSendingRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.OrchestrationSendingRoleArn):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEmailTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnEmailTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::EmailTemplate";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEmailTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnEmailTemplate(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 isCfnEmailTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnEmailTemplate.CFN_RESOURCE_TYPE_NAME}static arnForEmailTemplate(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_pinpoint_IEmailTemplateRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForEmailTemplate),error}return resource.emailTemplateRef.emailTemplateArn}_defaultSubstitutions;_htmlPart;_subject;tags;_tagsRaw;_templateDescription;_templateName;_textPart;cfnPropertyNames={defaultSubstitutions:"DefaultSubstitutions",htmlPart:"HtmlPart",subject:"Subject",tags:"Tags",templateDescription:"TemplateDescription",templateName:"TemplateName",textPart:"TextPart"};constructor(scope,id,props){super(scope,id,{type:CfnEmailTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnEmailTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEmailTemplate),error}cdk().requireProperty(props,"subject",this),cdk().requireProperty(props,"templateName",this),this._defaultSubstitutions=props.defaultSubstitutions,this._htmlPart=props.htmlPart,this._subject=props.subject,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Pinpoint::EmailTemplate",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._templateDescription=props.templateDescription,this._templateName=props.templateName,this._textPart=props.textPart}get emailTemplateRef(){return{emailTemplateId:this.ref,emailTemplateArn:this.attrArn}}get defaultSubstitutions(){return this._defaultSubstitutions}set defaultSubstitutions(value){cdk().traceProperty(this.node,"DefaultSubstitutions"),this._defaultSubstitutions=value}get htmlPart(){return this._htmlPart}set htmlPart(value){cdk().traceProperty(this.node,"HtmlPart"),this._htmlPart=value}get subject(){return this._subject}set subject(value){cdk().traceProperty(this.node,"Subject"),this._subject=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get templateDescription(){return this._templateDescription}set templateDescription(value){cdk().traceProperty(this.node,"TemplateDescription"),this._templateDescription=value}get templateName(){return this._templateName}set templateName(value){cdk().traceProperty(this.node,"TemplateName"),this._templateName=value}get textPart(){return this._textPart}set textPart(value){cdk().traceProperty(this.node,"TextPart"),this._textPart=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{defaultSubstitutions:this._defaultSubstitutions,htmlPart:this._htmlPart,subject:this._subject,tags:this.tags.renderTags(),templateDescription:this._templateDescription,templateName:this._templateName,textPart:this._textPart}}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",CfnEmailTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnEmailTemplatePropsToCloudFormation(props)}}exports.CfnEmailTemplate=CfnEmailTemplate;function CfnEmailTemplatePropsValidator(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("defaultSubstitutions",cdk().validateString)(properties.defaultSubstitutions)),errors.collect(cdk().propertyValidator("htmlPart",cdk().validateString)(properties.htmlPart)),errors.collect(cdk().propertyValidator("subject",cdk().requiredValidator)(properties.subject)),errors.collect(cdk().propertyValidator("subject",cdk().validateString)(properties.subject)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.collect(cdk().propertyValidator("templateDescription",cdk().validateString)(properties.templateDescription)),errors.collect(cdk().propertyValidator("templateName",cdk().requiredValidator)(properties.templateName)),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 "CfnEmailTemplateProps"')}function convertCfnEmailTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEmailTemplatePropsValidator(properties).assertSuccess(),{DefaultSubstitutions:cdk().stringToCloudFormation(properties.defaultSubstitutions),HtmlPart:cdk().stringToCloudFormation(properties.htmlPart),Subject:cdk().stringToCloudFormation(properties.subject),Tags:cdk().objectToCloudFormation(properties.tags),TemplateDescription:cdk().stringToCloudFormation(properties.templateDescription),TemplateName:cdk().stringToCloudFormation(properties.templateName),TextPart:cdk().stringToCloudFormation(properties.textPart)}):properties}function CfnEmailTemplatePropsFromCloudFormation(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("defaultSubstitutions","DefaultSubstitutions",properties.DefaultSubstitutions!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultSubstitutions):void 0),ret.addPropertyResult("htmlPart","HtmlPart",properties.HtmlPart!=null?cfn_parse().FromCloudFormation.getString(properties.HtmlPart):void 0),ret.addPropertyResult("subject","Subject",properties.Subject!=null?cfn_parse().FromCloudFormation.getString(properties.Subject):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addPropertyResult("templateDescription","TemplateDescription",properties.TemplateDescription!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateDescription):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}class CfnEventStream extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnEventStream",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::EventStream";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEventStreamPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnEventStream(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 isCfnEventStream(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnEventStream.CFN_RESOURCE_TYPE_NAME}_applicationId;_destinationStreamArn;_roleArn;cfnPropertyNames={applicationId:"ApplicationId",destinationStreamArn:"DestinationStreamArn",roleArn:"RoleArn"};constructor(scope,id,props){super(scope,id,{type:CfnEventStream.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnEventStreamProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEventStream),error}cdk().requireProperty(props,"applicationId",this),cdk().requireProperty(props,"destinationStreamArn",this),cdk().requireProperty(props,"roleArn",this),this._applicationId=props.applicationId,this._destinationStreamArn=props.destinationStreamArn,this._roleArn=props.roleArn}get eventStreamRef(){return{eventStreamId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get destinationStreamArn(){return this._destinationStreamArn}set destinationStreamArn(value){cdk().traceProperty(this.node,"DestinationStreamArn"),this._destinationStreamArn=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,destinationStreamArn:this._destinationStreamArn,roleArn:this._roleArn}}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",CfnEventStream.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnEventStreamPropsToCloudFormation(props)}}exports.CfnEventStream=CfnEventStream;function CfnEventStreamPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("destinationStreamArn",cdk().requiredValidator)(properties.destinationStreamArn)),errors.collect(cdk().propertyValidator("destinationStreamArn",cdk().validateString)(properties.destinationStreamArn)),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 "CfnEventStreamProps"')}function convertCfnEventStreamPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEventStreamPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),DestinationStreamArn:cdk().stringToCloudFormation(properties.destinationStreamArn),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnEventStreamPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("destinationStreamArn","DestinationStreamArn",properties.DestinationStreamArn!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationStreamArn):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnGCMChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnGCMChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::GCMChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnGCMChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnGCMChannel(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 isCfnGCMChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnGCMChannel.CFN_RESOURCE_TYPE_NAME}_apiKey;_applicationId;_defaultAuthenticationMethod;_enabled;_serviceJson;cfnPropertyNames={apiKey:"ApiKey",applicationId:"ApplicationId",defaultAuthenticationMethod:"DefaultAuthenticationMethod",enabled:"Enabled",serviceJson:"ServiceJson"};constructor(scope,id,props){super(scope,id,{type:CfnGCMChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnGCMChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnGCMChannel),error}cdk().requireProperty(props,"applicationId",this),this._apiKey=props.apiKey,this._applicationId=props.applicationId,this._defaultAuthenticationMethod=props.defaultAuthenticationMethod,this._enabled=props.enabled,this._serviceJson=props.serviceJson}get gcmChannelRef(){return{gcmChannelId:this.ref}}get apiKey(){return this._apiKey}set apiKey(value){cdk().traceProperty(this.node,"ApiKey"),this._apiKey=value}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get defaultAuthenticationMethod(){return this._defaultAuthenticationMethod}set defaultAuthenticationMethod(value){cdk().traceProperty(this.node,"DefaultAuthenticationMethod"),this._defaultAuthenticationMethod=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get serviceJson(){return this._serviceJson}set serviceJson(value){cdk().traceProperty(this.node,"ServiceJson"),this._serviceJson=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiKey:this._apiKey,applicationId:this._applicationId,defaultAuthenticationMethod:this._defaultAuthenticationMethod,enabled:this._enabled,serviceJson:this._serviceJson}}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",CfnGCMChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnGCMChannelPropsToCloudFormation(props)}}exports.CfnGCMChannel=CfnGCMChannel;function CfnGCMChannelPropsValidator(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("apiKey",cdk().validateString)(properties.apiKey)),errors.collect(cdk().propertyValidator("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("defaultAuthenticationMethod",cdk().validateString)(properties.defaultAuthenticationMethod)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("serviceJson",cdk().validateString)(properties.serviceJson)),errors.wrap('supplied properties not correct for "CfnGCMChannelProps"')}function convertCfnGCMChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGCMChannelPropsValidator(properties).assertSuccess(),{ApiKey:cdk().stringToCloudFormation(properties.apiKey),ApplicationId:cdk().stringToCloudFormation(properties.applicationId),DefaultAuthenticationMethod:cdk().stringToCloudFormation(properties.defaultAuthenticationMethod),Enabled:cdk().booleanToCloudFormation(properties.enabled),ServiceJson:cdk().stringToCloudFormation(properties.serviceJson)}):properties}function CfnGCMChannelPropsFromCloudFormation(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("apiKey","ApiKey",properties.ApiKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiKey):void 0),ret.addPropertyResult("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("defaultAuthenticationMethod","DefaultAuthenticationMethod",properties.DefaultAuthenticationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultAuthenticationMethod):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("serviceJson","ServiceJson",properties.ServiceJson!=null?cfn_parse().FromCloudFormation.getString(properties.ServiceJson):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnInAppTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnInAppTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::InAppTemplate";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnInAppTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnInAppTemplate(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 isCfnInAppTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnInAppTemplate.CFN_RESOURCE_TYPE_NAME}static fromInAppTemplateArn(scope,id,arn){class Import extends cdk().Resource{inAppTemplateRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:mobiletargeting:${Region}:${Account}:templates/${TemplateName}/SMS").parse(arn2);this.inAppTemplateRef={templateName:variables.TemplateName,inAppTemplateArn:arn2}}}return new Import(scope,id,arn)}static fromTemplateName(scope,id,templateName){class Import extends cdk().Resource{inAppTemplateRef;constructor(scope2,id2,templateName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:mobiletargeting:${Region}:${Account}:templates/${TemplateName}/SMS").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,TemplateName:templateName2});super(scope2,id2,{environmentFromArn:arn}),this.inAppTemplateRef={templateName:templateName2,inAppTemplateArn:arn}}}return new Import(scope,id,templateName)}static arnForInAppTemplate(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_pinpoint_IInAppTemplateRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForInAppTemplate),error}return resource.inAppTemplateRef.inAppTemplateArn}_content;_customConfig;_layout;tags;_tagsRaw;_templateDescription;_templateName;cfnPropertyNames={content:"Content",customConfig:"CustomConfig",layout:"Layout",tags:"Tags",templateDescription:"TemplateDescription",templateName:"TemplateName"};constructor(scope,id,props){super(scope,id,{type:CfnInAppTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnInAppTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnInAppTemplate),error}cdk().requireProperty(props,"templateName",this),this._content=props.content,this._customConfig=props.customConfig,this._layout=props.layout,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Pinpoint::InAppTemplate",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._templateDescription=props.templateDescription,this._templateName=props.templateName}get inAppTemplateRef(){return{templateName:this.ref,inAppTemplateArn:this.attrArn}}get content(){return this._content}set content(value){cdk().traceProperty(this.node,"Content"),this._content=value}get customConfig(){return this._customConfig}set customConfig(value){cdk().traceProperty(this.node,"CustomConfig"),this._customConfig=value}get layout(){return this._layout}set layout(value){cdk().traceProperty(this.node,"Layout"),this._layout=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get templateDescription(){return this._templateDescription}set templateDescription(value){cdk().traceProperty(this.node,"TemplateDescription"),this._templateDescription=value}get templateName(){return this._templateName}set templateName(value){cdk().traceProperty(this.node,"TemplateName"),this._templateName=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{content:this._content,customConfig:this._customConfig,layout:this._layout,tags:this.tags.renderTags(),templateDescription:this._templateDescription,templateName:this._templateName}}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",CfnInAppTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnInAppTemplatePropsToCloudFormation(props)}}exports.CfnInAppTemplate=CfnInAppTemplate;function CfnInAppTemplateBodyConfigPropertyValidator(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("alignment",cdk().validateString)(properties.alignment)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("textColor",cdk().validateString)(properties.textColor)),errors.wrap('supplied properties not correct for "BodyConfigProperty"')}function convertCfnInAppTemplateBodyConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInAppTemplateBodyConfigPropertyValidator(properties).assertSuccess(),{Alignment:cdk().stringToCloudFormation(properties.alignment),Body:cdk().stringToCloudFormation(properties.body),TextColor:cdk().stringToCloudFormation(properties.textColor)}):properties}function CfnInAppTemplateBodyConfigPropertyFromCloudFormation(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("alignment","Alignment",properties.Alignment!=null?cfn_parse().FromCloudFormation.getString(properties.Alignment):void 0),ret.addPropertyResult("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("textColor","TextColor",properties.TextColor!=null?cfn_parse().FromCloudFormation.getString(properties.TextColor):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInAppTemplateOverrideButtonConfigurationPropertyValidator(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("buttonAction",cdk().validateString)(properties.buttonAction)),errors.collect(cdk().propertyValidator("link",cdk().validateString)(properties.link)),errors.wrap('supplied properties not correct for "OverrideButtonConfigurationProperty"')}function convertCfnInAppTemplateOverrideButtonConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInAppTemplateOverrideButtonConfigurationPropertyValidator(properties).assertSuccess(),{ButtonAction:cdk().stringToCloudFormation(properties.buttonAction),Link:cdk().stringToCloudFormation(properties.link)}):properties}function CfnInAppTemplateOverrideButtonConfigurationPropertyFromCloudFormation(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("buttonAction","ButtonAction",properties.ButtonAction!=null?cfn_parse().FromCloudFormation.getString(properties.ButtonAction):void 0),ret.addPropertyResult("link","Link",properties.Link!=null?cfn_parse().FromCloudFormation.getString(properties.Link):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInAppTemplateDefaultButtonConfigurationPropertyValidator(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("backgroundColor",cdk().validateString)(properties.backgroundColor)),errors.collect(cdk().propertyValidator("borderRadius",cdk().validateNumber)(properties.borderRadius)),errors.collect(cdk().propertyValidator("buttonAction",cdk().validateString)(properties.buttonAction)),errors.collect(cdk().propertyValidator("link",cdk().validateString)(properties.link)),errors.collect(cdk().propertyValidator("text",cdk().validateString)(properties.text)),errors.collect(cdk().propertyValidator("textColor",cdk().validateString)(properties.textColor)),errors.wrap('supplied properties not correct for "DefaultButtonConfigurationProperty"')}function convertCfnInAppTemplateDefaultButtonConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInAppTemplateDefaultButtonConfigurationPropertyValidator(properties).assertSuccess(),{BackgroundColor:cdk().stringToCloudFormation(properties.backgroundColor),BorderRadius:cdk().numberToCloudFormation(properties.borderRadius),ButtonAction:cdk().stringToCloudFormation(properties.buttonAction),Link:cdk().stringToCloudFormation(properties.link),Text:cdk().stringToCloudFormation(properties.text),TextColor:cdk().stringToCloudFormation(properties.textColor)}):properties}function CfnInAppTemplateDefaultButtonConfigurationPropertyFromCloudFormation(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("backgroundColor","BackgroundColor",properties.BackgroundColor!=null?cfn_parse().FromCloudFormation.getString(properties.BackgroundColor):void 0),ret.addPropertyResult("borderRadius","BorderRadius",properties.BorderRadius!=null?cfn_parse().FromCloudFormation.getNumber(properties.BorderRadius):void 0),ret.addPropertyResult("buttonAction","ButtonAction",properties.ButtonAction!=null?cfn_parse().FromCloudFormation.getString(properties.ButtonAction):void 0),ret.addPropertyResult("link","Link",properties.Link!=null?cfn_parse().FromCloudFormation.getString(properties.Link):void 0),ret.addPropertyResult("text","Text",properties.Text!=null?cfn_parse().FromCloudFormation.getString(properties.Text):void 0),ret.addPropertyResult("textColor","TextColor",properties.TextColor!=null?cfn_parse().FromCloudFormation.getString(properties.TextColor):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInAppTemplateButtonConfigPropertyValidator(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("android",CfnInAppTemplateOverrideButtonConfigurationPropertyValidator)(properties.android)),errors.collect(cdk().propertyValidator("defaultConfig",CfnInAppTemplateDefaultButtonConfigurationPropertyValidator)(properties.defaultConfig)),errors.collect(cdk().propertyValidator("ios",CfnInAppTemplateOverrideButtonConfigurationPropertyValidator)(properties.ios)),errors.collect(cdk().propertyValidator("web",CfnInAppTemplateOverrideButtonConfigurationPropertyValidator)(properties.web)),errors.wrap('supplied properties not correct for "ButtonConfigProperty"')}function convertCfnInAppTemplateButtonConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInAppTemplateButtonConfigPropertyValidator(properties).assertSuccess(),{Android:convertCfnInAppTemplateOverrideButtonConfigurationPropertyToCloudFormation(properties.android),DefaultConfig:convertCfnInAppTemplateDefaultButtonConfigurationPropertyToCloudFormation(properties.defaultConfig),IOS:convertCfnInAppTemplateOverrideButtonConfigurationPropertyToCloudFormation(properties.ios),Web:convertCfnInAppTemplateOverrideButtonConfigurationPropertyToCloudFormation(properties.web)}):properties}function CfnInAppTemplateButtonConfigPropertyFromCloudFormation(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("android","Android",properties.Android!=null?CfnInAppTemplateOverrideButtonConfigurationPropertyFromCloudFormation(properties.Android):void 0),ret.addPropertyResult("defaultConfig","DefaultConfig",properties.DefaultConfig!=null?CfnInAppTemplateDefaultButtonConfigurationPropertyFromCloudFormation(properties.DefaultConfig):void 0),ret.addPropertyResult("ios","IOS",properties.IOS!=null?CfnInAppTemplateOverrideButtonConfigurationPropertyFromCloudFormation(properties.IOS):void 0),ret.addPropertyResult("web","Web",properties.Web!=null?CfnInAppTemplateOverrideButtonConfigurationPropertyFromCloudFormation(properties.Web):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInAppTemplateHeaderConfigPropertyValidator(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("alignment",cdk().validateString)(properties.alignment)),errors.collect(cdk().propertyValidator("header",cdk().validateString)(properties.header)),errors.collect(cdk().propertyValidator("textColor",cdk().validateString)(properties.textColor)),errors.wrap('supplied properties not correct for "HeaderConfigProperty"')}function convertCfnInAppTemplateHeaderConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInAppTemplateHeaderConfigPropertyValidator(properties).assertSuccess(),{Alignment:cdk().stringToCloudFormation(properties.alignment),Header:cdk().stringToCloudFormation(properties.header),TextColor:cdk().stringToCloudFormation(properties.textColor)}):properties}function CfnInAppTemplateHeaderConfigPropertyFromCloudFormation(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("alignment","Alignment",properties.Alignment!=null?cfn_parse().FromCloudFormation.getString(properties.Alignment):void 0),ret.addPropertyResult("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getString(properties.Header):void 0),ret.addPropertyResult("textColor","TextColor",properties.TextColor!=null?cfn_parse().FromCloudFormation.getString(properties.TextColor):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInAppTemplateInAppMessageContentPropertyValidator(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("backgroundColor",cdk().validateString)(properties.backgroundColor)),errors.collect(cdk().propertyValidator("bodyConfig",CfnInAppTemplateBodyConfigPropertyValidator)(properties.bodyConfig)),errors.collect(cdk().propertyValidator("headerConfig",CfnInAppTemplateHeaderConfigPropertyValidator)(properties.headerConfig)),errors.collect(cdk().propertyValidator("imageUrl",cdk().validateString)(properties.imageUrl)),errors.collect(cdk().propertyValidator("primaryBtn",CfnInAppTemplateButtonConfigPropertyValidator)(properties.primaryBtn)),errors.collect(cdk().propertyValidator("secondaryBtn",CfnInAppTemplateButtonConfigPropertyValidator)(properties.secondaryBtn)),errors.wrap('supplied properties not correct for "InAppMessageContentProperty"')}function convertCfnInAppTemplateInAppMessageContentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInAppTemplateInAppMessageContentPropertyValidator(properties).assertSuccess(),{BackgroundColor:cdk().stringToCloudFormation(properties.backgroundColor),BodyConfig:convertCfnInAppTemplateBodyConfigPropertyToCloudFormation(properties.bodyConfig),HeaderConfig:convertCfnInAppTemplateHeaderConfigPropertyToCloudFormation(properties.headerConfig),ImageUrl:cdk().stringToCloudFormation(properties.imageUrl),PrimaryBtn:convertCfnInAppTemplateButtonConfigPropertyToCloudFormation(properties.primaryBtn),SecondaryBtn:convertCfnInAppTemplateButtonConfigPropertyToCloudFormation(properties.secondaryBtn)}):properties}function CfnInAppTemplateInAppMessageContentPropertyFromCloudFormation(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("backgroundColor","BackgroundColor",properties.BackgroundColor!=null?cfn_parse().FromCloudFormation.getString(properties.BackgroundColor):void 0),ret.addPropertyResult("bodyConfig","BodyConfig",properties.BodyConfig!=null?CfnInAppTemplateBodyConfigPropertyFromCloudFormation(properties.BodyConfig):void 0),ret.addPropertyResult("headerConfig","HeaderConfig",properties.HeaderConfig!=null?CfnInAppTemplateHeaderConfigPropertyFromCloudFormation(properties.HeaderConfig):void 0),ret.addPropertyResult("imageUrl","ImageUrl",properties.ImageUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUrl):void 0),ret.addPropertyResult("primaryBtn","PrimaryBtn",properties.PrimaryBtn!=null?CfnInAppTemplateButtonConfigPropertyFromCloudFormation(properties.PrimaryBtn):void 0),ret.addPropertyResult("secondaryBtn","SecondaryBtn",properties.SecondaryBtn!=null?CfnInAppTemplateButtonConfigPropertyFromCloudFormation(properties.SecondaryBtn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInAppTemplatePropsValidator(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("content",cdk().listValidator(CfnInAppTemplateInAppMessageContentPropertyValidator))(properties.content)),errors.collect(cdk().propertyValidator("customConfig",cdk().validateObject)(properties.customConfig)),errors.collect(cdk().propertyValidator("layout",cdk().validateString)(properties.layout)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.collect(cdk().propertyValidator("templateDescription",cdk().validateString)(properties.templateDescription)),errors.collect(cdk().propertyValidator("templateName",cdk().requiredValidator)(properties.templateName)),errors.collect(cdk().propertyValidator("templateName",cdk().validateString)(properties.templateName)),errors.wrap('supplied properties not correct for "CfnInAppTemplateProps"')}function convertCfnInAppTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInAppTemplatePropsValidator(properties).assertSuccess(),{Content:cdk().listMapper(convertCfnInAppTemplateInAppMessageContentPropertyToCloudFormation)(properties.content),CustomConfig:cdk().objectToCloudFormation(properties.customConfig),Layout:cdk().stringToCloudFormation(properties.layout),Tags:cdk().objectToCloudFormation(properties.tags),TemplateDescription:cdk().stringToCloudFormation(properties.templateDescription),TemplateName:cdk().stringToCloudFormation(properties.templateName)}):properties}function CfnInAppTemplatePropsFromCloudFormation(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("content","Content",properties.Content!=null?cfn_parse().FromCloudFormation.getArray(CfnInAppTemplateInAppMessageContentPropertyFromCloudFormation)(properties.Content):void 0),ret.addPropertyResult("customConfig","CustomConfig",properties.CustomConfig!=null?cfn_parse().FromCloudFormation.getAny(properties.CustomConfig):void 0),ret.addPropertyResult("layout","Layout",properties.Layout!=null?cfn_parse().FromCloudFormation.getString(properties.Layout):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addPropertyResult("templateDescription","TemplateDescription",properties.TemplateDescription!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateDescription):void 0),ret.addPropertyResult("templateName","TemplateName",properties.TemplateName!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnPushTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnPushTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::PushTemplate";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPushTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnPushTemplate(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 isCfnPushTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnPushTemplate.CFN_RESOURCE_TYPE_NAME}static arnForPushTemplate(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_pinpoint_IPushTemplateRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForPushTemplate),error}return resource.pushTemplateRef.pushTemplateArn}_adm;_apns;_baidu;_default;_defaultSubstitutions;_gcm;tags;_tagsRaw;_templateDescription;_templateName;cfnPropertyNames={adm:"ADM",apns:"APNS",baidu:"Baidu",default:"Default",defaultSubstitutions:"DefaultSubstitutions",gcm:"GCM",tags:"Tags",templateDescription:"TemplateDescription",templateName:"TemplateName"};constructor(scope,id,props){super(scope,id,{type:CfnPushTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnPushTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnPushTemplate),error}cdk().requireProperty(props,"templateName",this),this._adm=props.adm,this._apns=props.apns,this._baidu=props.baidu,this._default=props.default,this._defaultSubstitutions=props.defaultSubstitutions,this._gcm=props.gcm,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Pinpoint::PushTemplate",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._templateDescription=props.templateDescription,this._templateName=props.templateName}get pushTemplateRef(){return{pushTemplateId:this.ref,pushTemplateArn:this.attrArn}}get adm(){return this._adm}set adm(value){cdk().traceProperty(this.node,"ADM"),this._adm=value}get apns(){return this._apns}set apns(value){cdk().traceProperty(this.node,"APNS"),this._apns=value}get baidu(){return this._baidu}set baidu(value){cdk().traceProperty(this.node,"Baidu"),this._baidu=value}get default(){return this._default}set default(value){cdk().traceProperty(this.node,"Default"),this._default=value}get defaultSubstitutions(){return this._defaultSubstitutions}set defaultSubstitutions(value){cdk().traceProperty(this.node,"DefaultSubstitutions"),this._defaultSubstitutions=value}get gcm(){return this._gcm}set gcm(value){cdk().traceProperty(this.node,"GCM"),this._gcm=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get templateDescription(){return this._templateDescription}set templateDescription(value){cdk().traceProperty(this.node,"TemplateDescription"),this._templateDescription=value}get templateName(){return this._templateName}set templateName(value){cdk().traceProperty(this.node,"TemplateName"),this._templateName=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{adm:this._adm,apns:this._apns,baidu:this._baidu,default:this._default,defaultSubstitutions:this._defaultSubstitutions,gcm:this._gcm,tags:this.tags.renderTags(),templateDescription:this._templateDescription,templateName:this._templateName}}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",CfnPushTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnPushTemplatePropsToCloudFormation(props)}}exports.CfnPushTemplate=CfnPushTemplate;function CfnPushTemplateAndroidPushNotificationTemplatePropertyValidator(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().validateString)(properties.action)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("imageIconUrl",cdk().validateString)(properties.imageIconUrl)),errors.collect(cdk().propertyValidator("imageUrl",cdk().validateString)(properties.imageUrl)),errors.collect(cdk().propertyValidator("smallImageIconUrl",cdk().validateString)(properties.smallImageIconUrl)),errors.collect(cdk().propertyValidator("sound",cdk().validateString)(properties.sound)),errors.collect(cdk().propertyValidator("title",cdk().validateString)(properties.title)),errors.collect(cdk().propertyValidator("url",cdk().validateString)(properties.url)),errors.wrap('supplied properties not correct for "AndroidPushNotificationTemplateProperty"')}function convertCfnPushTemplateAndroidPushNotificationTemplatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPushTemplateAndroidPushNotificationTemplatePropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Body:cdk().stringToCloudFormation(properties.body),ImageIconUrl:cdk().stringToCloudFormation(properties.imageIconUrl),ImageUrl:cdk().stringToCloudFormation(properties.imageUrl),SmallImageIconUrl:cdk().stringToCloudFormation(properties.smallImageIconUrl),Sound:cdk().stringToCloudFormation(properties.sound),Title:cdk().stringToCloudFormation(properties.title),Url:cdk().stringToCloudFormation(properties.url)}):properties}function CfnPushTemplateAndroidPushNotificationTemplatePropertyFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("imageIconUrl","ImageIconUrl",properties.ImageIconUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ImageIconUrl):void 0),ret.addPropertyResult("imageUrl","ImageUrl",properties.ImageUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUrl):void 0),ret.addPropertyResult("smallImageIconUrl","SmallImageIconUrl",properties.SmallImageIconUrl!=null?cfn_parse().FromCloudFormation.getString(properties.SmallImageIconUrl):void 0),ret.addPropertyResult("sound","Sound",properties.Sound!=null?cfn_parse().FromCloudFormation.getString(properties.Sound):void 0),ret.addPropertyResult("title","Title",properties.Title!=null?cfn_parse().FromCloudFormation.getString(properties.Title):void 0),ret.addPropertyResult("url","Url",properties.Url!=null?cfn_parse().FromCloudFormation.getString(properties.Url):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPushTemplateAPNSPushNotificationTemplatePropertyValidator(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().validateString)(properties.action)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("mediaUrl",cdk().validateString)(properties.mediaUrl)),errors.collect(cdk().propertyValidator("sound",cdk().validateString)(properties.sound)),errors.collect(cdk().propertyValidator("title",cdk().validateString)(properties.title)),errors.collect(cdk().propertyValidator("url",cdk().validateString)(properties.url)),errors.wrap('supplied properties not correct for "APNSPushNotificationTemplateProperty"')}function convertCfnPushTemplateAPNSPushNotificationTemplatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPushTemplateAPNSPushNotificationTemplatePropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Body:cdk().stringToCloudFormation(properties.body),MediaUrl:cdk().stringToCloudFormation(properties.mediaUrl),Sound:cdk().stringToCloudFormation(properties.sound),Title:cdk().stringToCloudFormation(properties.title),Url:cdk().stringToCloudFormation(properties.url)}):properties}function CfnPushTemplateAPNSPushNotificationTemplatePropertyFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("mediaUrl","MediaUrl",properties.MediaUrl!=null?cfn_parse().FromCloudFormation.getString(properties.MediaUrl):void 0),ret.addPropertyResult("sound","Sound",properties.Sound!=null?cfn_parse().FromCloudFormation.getString(properties.Sound):void 0),ret.addPropertyResult("title","Title",properties.Title!=null?cfn_parse().FromCloudFormation.getString(properties.Title):void 0),ret.addPropertyResult("url","Url",properties.Url!=null?cfn_parse().FromCloudFormation.getString(properties.Url):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPushTemplateDefaultPushNotificationTemplatePropertyValidator(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().validateString)(properties.action)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("sound",cdk().validateString)(properties.sound)),errors.collect(cdk().propertyValidator("title",cdk().validateString)(properties.title)),errors.collect(cdk().propertyValidator("url",cdk().validateString)(properties.url)),errors.wrap('supplied properties not correct for "DefaultPushNotificationTemplateProperty"')}function convertCfnPushTemplateDefaultPushNotificationTemplatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPushTemplateDefaultPushNotificationTemplatePropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Body:cdk().stringToCloudFormation(properties.body),Sound:cdk().stringToCloudFormation(properties.sound),Title:cdk().stringToCloudFormation(properties.title),Url:cdk().stringToCloudFormation(properties.url)}):properties}function CfnPushTemplateDefaultPushNotificationTemplatePropertyFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("sound","Sound",properties.Sound!=null?cfn_parse().FromCloudFormation.getString(properties.Sound):void 0),ret.addPropertyResult("title","Title",properties.Title!=null?cfn_parse().FromCloudFormation.getString(properties.Title):void 0),ret.addPropertyResult("url","Url",properties.Url!=null?cfn_parse().FromCloudFormation.getString(properties.Url):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPushTemplatePropsValidator(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("adm",CfnPushTemplateAndroidPushNotificationTemplatePropertyValidator)(properties.adm)),errors.collect(cdk().propertyValidator("apns",CfnPushTemplateAPNSPushNotificationTemplatePropertyValidator)(properties.apns)),errors.collect(cdk().propertyValidator("baidu",CfnPushTemplateAndroidPushNotificationTemplatePropertyValidator)(properties.baidu)),errors.collect(cdk().propertyValidator("default",CfnPushTemplateDefaultPushNotificationTemplatePropertyValidator)(properties.default)),errors.collect(cdk().propertyValidator("defaultSubstitutions",cdk().validateString)(properties.defaultSubstitutions)),errors.collect(cdk().propertyValidator("gcm",CfnPushTemplateAndroidPushNotificationTemplatePropertyValidator)(properties.gcm)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.collect(cdk().propertyValidator("templateDescription",cdk().validateString)(properties.templateDescription)),errors.collect(cdk().propertyValidator("templateName",cdk().requiredValidator)(properties.templateName)),errors.collect(cdk().propertyValidator("templateName",cdk().validateString)(properties.templateName)),errors.wrap('supplied properties not correct for "CfnPushTemplateProps"')}function convertCfnPushTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPushTemplatePropsValidator(properties).assertSuccess(),{ADM:convertCfnPushTemplateAndroidPushNotificationTemplatePropertyToCloudFormation(properties.adm),APNS:convertCfnPushTemplateAPNSPushNotificationTemplatePropertyToCloudFormation(properties.apns),Baidu:convertCfnPushTemplateAndroidPushNotificationTemplatePropertyToCloudFormation(properties.baidu),Default:convertCfnPushTemplateDefaultPushNotificationTemplatePropertyToCloudFormation(properties.default),DefaultSubstitutions:cdk().stringToCloudFormation(properties.defaultSubstitutions),GCM:convertCfnPushTemplateAndroidPushNotificationTemplatePropertyToCloudFormation(properties.gcm),Tags:cdk().objectToCloudFormation(properties.tags),TemplateDescription:cdk().stringToCloudFormation(properties.templateDescription),TemplateName:cdk().stringToCloudFormation(properties.templateName)}):properties}function CfnPushTemplatePropsFromCloudFormation(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("adm","ADM",properties.ADM!=null?CfnPushTemplateAndroidPushNotificationTemplatePropertyFromCloudFormation(properties.ADM):void 0),ret.addPropertyResult("apns","APNS",properties.APNS!=null?CfnPushTemplateAPNSPushNotificationTemplatePropertyFromCloudFormation(properties.APNS):void 0),ret.addPropertyResult("baidu","Baidu",properties.Baidu!=null?CfnPushTemplateAndroidPushNotificationTemplatePropertyFromCloudFormation(properties.Baidu):void 0),ret.addPropertyResult("default","Default",properties.Default!=null?CfnPushTemplateDefaultPushNotificationTemplatePropertyFromCloudFormation(properties.Default):void 0),ret.addPropertyResult("defaultSubstitutions","DefaultSubstitutions",properties.DefaultSubstitutions!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultSubstitutions):void 0),ret.addPropertyResult("gcm","GCM",properties.GCM!=null?CfnPushTemplateAndroidPushNotificationTemplatePropertyFromCloudFormation(properties.GCM):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addPropertyResult("templateDescription","TemplateDescription",properties.TemplateDescription!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateDescription):void 0),ret.addPropertyResult("templateName","TemplateName",properties.TemplateName!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnSMSChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnSMSChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::SMSChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSMSChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnSMSChannel(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 isCfnSMSChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnSMSChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_enabled;_senderId;_shortCode;cfnPropertyNames={applicationId:"ApplicationId",enabled:"Enabled",senderId:"SenderId",shortCode:"ShortCode"};constructor(scope,id,props){super(scope,id,{type:CfnSMSChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnSMSChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSMSChannel),error}cdk().requireProperty(props,"applicationId",this),this._applicationId=props.applicationId,this._enabled=props.enabled,this._senderId=props.senderId,this._shortCode=props.shortCode}get smsChannelRef(){return{smsChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get senderId(){return this._senderId}set senderId(value){cdk().traceProperty(this.node,"SenderId"),this._senderId=value}get shortCode(){return this._shortCode}set shortCode(value){cdk().traceProperty(this.node,"ShortCode"),this._shortCode=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,enabled:this._enabled,senderId:this._senderId,shortCode:this._shortCode}}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",CfnSMSChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnSMSChannelPropsToCloudFormation(props)}}exports.CfnSMSChannel=CfnSMSChannel;function CfnSMSChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("senderId",cdk().validateString)(properties.senderId)),errors.collect(cdk().propertyValidator("shortCode",cdk().validateString)(properties.shortCode)),errors.wrap('supplied properties not correct for "CfnSMSChannelProps"')}function convertCfnSMSChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSMSChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),Enabled:cdk().booleanToCloudFormation(properties.enabled),SenderId:cdk().stringToCloudFormation(properties.senderId),ShortCode:cdk().stringToCloudFormation(properties.shortCode)}):properties}function CfnSMSChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("senderId","SenderId",properties.SenderId!=null?cfn_parse().FromCloudFormation.getString(properties.SenderId):void 0),ret.addPropertyResult("shortCode","ShortCode",properties.ShortCode!=null?cfn_parse().FromCloudFormation.getString(properties.ShortCode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnSegment extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnSegment",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::Segment";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSegmentPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnSegment(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 isCfnSegment(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnSegment.CFN_RESOURCE_TYPE_NAME}static arnForSegment(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_pinpoint_ISegmentRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForSegment),error}return resource.segmentRef.segmentArn}_applicationId;_dimensions;_name;_segmentGroups;tags;_tagsRaw;cfnPropertyNames={applicationId:"ApplicationId",dimensions:"Dimensions",name:"Name",segmentGroups:"SegmentGroups",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnSegment.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnSegmentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSegment),error}cdk().requireProperty(props,"applicationId",this),cdk().requireProperty(props,"name",this),this._applicationId=props.applicationId,this._dimensions=props.dimensions,this._name=props.name,this._segmentGroups=props.segmentGroups,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Pinpoint::Segment",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get segmentRef(){return{segmentId:this.ref,segmentArn:this.attrArn}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get dimensions(){return this._dimensions}set dimensions(value){cdk().traceProperty(this.node,"Dimensions"),this._dimensions=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get segmentGroups(){return this._segmentGroups}set segmentGroups(value){cdk().traceProperty(this.node,"SegmentGroups"),this._segmentGroups=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrSegmentId(){return cdk().Token.asString(this.getAtt("SegmentId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,dimensions:this._dimensions,name:this._name,segmentGroups:this._segmentGroups,tags:this.tags.renderTags()}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnSegment.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnSegmentPropsToCloudFormation(props)}}exports.CfnSegment=CfnSegment;function CfnSegmentSetDimensionPropertyValidator(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("dimensionType",cdk().validateString)(properties.dimensionType)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "SetDimensionProperty"')}function convertCfnSegmentSetDimensionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentSetDimensionPropertyValidator(properties).assertSuccess(),{DimensionType:cdk().stringToCloudFormation(properties.dimensionType),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnSegmentSetDimensionPropertyFromCloudFormation(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("dimensionType","DimensionType",properties.DimensionType!=null?cfn_parse().FromCloudFormation.getString(properties.DimensionType):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 CfnSegmentDemographicPropertyValidator(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("appVersion",CfnSegmentSetDimensionPropertyValidator)(properties.appVersion)),errors.collect(cdk().propertyValidator("channel",CfnSegmentSetDimensionPropertyValidator)(properties.channel)),errors.collect(cdk().propertyValidator("deviceType",CfnSegmentSetDimensionPropertyValidator)(properties.deviceType)),errors.collect(cdk().propertyValidator("make",CfnSegmentSetDimensionPropertyValidator)(properties.make)),errors.collect(cdk().propertyValidator("model",CfnSegmentSetDimensionPropertyValidator)(properties.model)),errors.collect(cdk().propertyValidator("platform",CfnSegmentSetDimensionPropertyValidator)(properties.platform)),errors.wrap('supplied properties not correct for "DemographicProperty"')}function convertCfnSegmentDemographicPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentDemographicPropertyValidator(properties).assertSuccess(),{AppVersion:convertCfnSegmentSetDimensionPropertyToCloudFormation(properties.appVersion),Channel:convertCfnSegmentSetDimensionPropertyToCloudFormation(properties.channel),DeviceType:convertCfnSegmentSetDimensionPropertyToCloudFormation(properties.deviceType),Make:convertCfnSegmentSetDimensionPropertyToCloudFormation(properties.make),Model:convertCfnSegmentSetDimensionPropertyToCloudFormation(properties.model),Platform:convertCfnSegmentSetDimensionPropertyToCloudFormation(properties.platform)}):properties}function CfnSegmentDemographicPropertyFromCloudFormation(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("appVersion","AppVersion",properties.AppVersion!=null?CfnSegmentSetDimensionPropertyFromCloudFormation(properties.AppVersion):void 0),ret.addPropertyResult("channel","Channel",properties.Channel!=null?CfnSegmentSetDimensionPropertyFromCloudFormation(properties.Channel):void 0),ret.addPropertyResult("deviceType","DeviceType",properties.DeviceType!=null?CfnSegmentSetDimensionPropertyFromCloudFormation(properties.DeviceType):void 0),ret.addPropertyResult("make","Make",properties.Make!=null?CfnSegmentSetDimensionPropertyFromCloudFormation(properties.Make):void 0),ret.addPropertyResult("model","Model",properties.Model!=null?CfnSegmentSetDimensionPropertyFromCloudFormation(properties.Model):void 0),ret.addPropertyResult("platform","Platform",properties.Platform!=null?CfnSegmentSetDimensionPropertyFromCloudFormation(properties.Platform):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentRecencyPropertyValidator(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("duration",cdk().requiredValidator)(properties.duration)),errors.collect(cdk().propertyValidator("duration",cdk().validateString)(properties.duration)),errors.collect(cdk().propertyValidator("recencyType",cdk().requiredValidator)(properties.recencyType)),errors.collect(cdk().propertyValidator("recencyType",cdk().validateString)(properties.recencyType)),errors.wrap('supplied properties not correct for "RecencyProperty"')}function convertCfnSegmentRecencyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentRecencyPropertyValidator(properties).assertSuccess(),{Duration:cdk().stringToCloudFormation(properties.duration),RecencyType:cdk().stringToCloudFormation(properties.recencyType)}):properties}function CfnSegmentRecencyPropertyFromCloudFormation(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("duration","Duration",properties.Duration!=null?cfn_parse().FromCloudFormation.getString(properties.Duration):void 0),ret.addPropertyResult("recencyType","RecencyType",properties.RecencyType!=null?cfn_parse().FromCloudFormation.getString(properties.RecencyType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentBehaviorPropertyValidator(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("recency",CfnSegmentRecencyPropertyValidator)(properties.recency)),errors.wrap('supplied properties not correct for "BehaviorProperty"')}function convertCfnSegmentBehaviorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentBehaviorPropertyValidator(properties).assertSuccess(),{Recency:convertCfnSegmentRecencyPropertyToCloudFormation(properties.recency)}):properties}function CfnSegmentBehaviorPropertyFromCloudFormation(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("recency","Recency",properties.Recency!=null?CfnSegmentRecencyPropertyFromCloudFormation(properties.Recency):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentCoordinatesPropertyValidator(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("latitude",cdk().requiredValidator)(properties.latitude)),errors.collect(cdk().propertyValidator("latitude",cdk().validateNumber)(properties.latitude)),errors.collect(cdk().propertyValidator("longitude",cdk().requiredValidator)(properties.longitude)),errors.collect(cdk().propertyValidator("longitude",cdk().validateNumber)(properties.longitude)),errors.wrap('supplied properties not correct for "CoordinatesProperty"')}function convertCfnSegmentCoordinatesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentCoordinatesPropertyValidator(properties).assertSuccess(),{Latitude:cdk().numberToCloudFormation(properties.latitude),Longitude:cdk().numberToCloudFormation(properties.longitude)}):properties}function CfnSegmentCoordinatesPropertyFromCloudFormation(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("latitude","Latitude",properties.Latitude!=null?cfn_parse().FromCloudFormation.getNumber(properties.Latitude):void 0),ret.addPropertyResult("longitude","Longitude",properties.Longitude!=null?cfn_parse().FromCloudFormation.getNumber(properties.Longitude):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentGPSPointPropertyValidator(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("coordinates",cdk().requiredValidator)(properties.coordinates)),errors.collect(cdk().propertyValidator("coordinates",CfnSegmentCoordinatesPropertyValidator)(properties.coordinates)),errors.collect(cdk().propertyValidator("rangeInKilometers",cdk().requiredValidator)(properties.rangeInKilometers)),errors.collect(cdk().propertyValidator("rangeInKilometers",cdk().validateNumber)(properties.rangeInKilometers)),errors.wrap('supplied properties not correct for "GPSPointProperty"')}function convertCfnSegmentGPSPointPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentGPSPointPropertyValidator(properties).assertSuccess(),{Coordinates:convertCfnSegmentCoordinatesPropertyToCloudFormation(properties.coordinates),RangeInKilometers:cdk().numberToCloudFormation(properties.rangeInKilometers)}):properties}function CfnSegmentGPSPointPropertyFromCloudFormation(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("coordinates","Coordinates",properties.Coordinates!=null?CfnSegmentCoordinatesPropertyFromCloudFormation(properties.Coordinates):void 0),ret.addPropertyResult("rangeInKilometers","RangeInKilometers",properties.RangeInKilometers!=null?cfn_parse().FromCloudFormation.getNumber(properties.RangeInKilometers):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentLocationPropertyValidator(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("country",CfnSegmentSetDimensionPropertyValidator)(properties.country)),errors.collect(cdk().propertyValidator("gpsPoint",CfnSegmentGPSPointPropertyValidator)(properties.gpsPoint)),errors.wrap('supplied properties not correct for "LocationProperty"')}function convertCfnSegmentLocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentLocationPropertyValidator(properties).assertSuccess(),{Country:convertCfnSegmentSetDimensionPropertyToCloudFormation(properties.country),GPSPoint:convertCfnSegmentGPSPointPropertyToCloudFormation(properties.gpsPoint)}):properties}function CfnSegmentLocationPropertyFromCloudFormation(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("country","Country",properties.Country!=null?CfnSegmentSetDimensionPropertyFromCloudFormation(properties.Country):void 0),ret.addPropertyResult("gpsPoint","GPSPoint",properties.GPSPoint!=null?CfnSegmentGPSPointPropertyFromCloudFormation(properties.GPSPoint):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentSegmentDimensionsPropertyValidator(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("attributes",cdk().validateObject)(properties.attributes)),errors.collect(cdk().propertyValidator("behavior",CfnSegmentBehaviorPropertyValidator)(properties.behavior)),errors.collect(cdk().propertyValidator("demographic",CfnSegmentDemographicPropertyValidator)(properties.demographic)),errors.collect(cdk().propertyValidator("location",CfnSegmentLocationPropertyValidator)(properties.location)),errors.collect(cdk().propertyValidator("metrics",cdk().validateObject)(properties.metrics)),errors.collect(cdk().propertyValidator("userAttributes",cdk().validateObject)(properties.userAttributes)),errors.wrap('supplied properties not correct for "SegmentDimensionsProperty"')}function convertCfnSegmentSegmentDimensionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentSegmentDimensionsPropertyValidator(properties).assertSuccess(),{Attributes:cdk().objectToCloudFormation(properties.attributes),Behavior:convertCfnSegmentBehaviorPropertyToCloudFormation(properties.behavior),Demographic:convertCfnSegmentDemographicPropertyToCloudFormation(properties.demographic),Location:convertCfnSegmentLocationPropertyToCloudFormation(properties.location),Metrics:cdk().objectToCloudFormation(properties.metrics),UserAttributes:cdk().objectToCloudFormation(properties.userAttributes)}):properties}function CfnSegmentSegmentDimensionsPropertyFromCloudFormation(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("attributes","Attributes",properties.Attributes!=null?cfn_parse().FromCloudFormation.getAny(properties.Attributes):void 0),ret.addPropertyResult("behavior","Behavior",properties.Behavior!=null?CfnSegmentBehaviorPropertyFromCloudFormation(properties.Behavior):void 0),ret.addPropertyResult("demographic","Demographic",properties.Demographic!=null?CfnSegmentDemographicPropertyFromCloudFormation(properties.Demographic):void 0),ret.addPropertyResult("location","Location",properties.Location!=null?CfnSegmentLocationPropertyFromCloudFormation(properties.Location):void 0),ret.addPropertyResult("metrics","Metrics",properties.Metrics!=null?cfn_parse().FromCloudFormation.getAny(properties.Metrics):void 0),ret.addPropertyResult("userAttributes","UserAttributes",properties.UserAttributes!=null?cfn_parse().FromCloudFormation.getAny(properties.UserAttributes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentSourceSegmentsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("version",cdk().validateNumber)(properties.version)),errors.wrap('supplied properties not correct for "SourceSegmentsProperty"')}function convertCfnSegmentSourceSegmentsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentSourceSegmentsPropertyValidator(properties).assertSuccess(),{Id:cdk().stringToCloudFormation(properties.id),Version:cdk().numberToCloudFormation(properties.version)}):properties}function CfnSegmentSourceSegmentsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse().FromCloudFormation.getNumber(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentGroupsPropertyValidator(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("dimensions",cdk().listValidator(CfnSegmentSegmentDimensionsPropertyValidator))(properties.dimensions)),errors.collect(cdk().propertyValidator("sourceSegments",cdk().listValidator(CfnSegmentSourceSegmentsPropertyValidator))(properties.sourceSegments)),errors.collect(cdk().propertyValidator("sourceType",cdk().validateString)(properties.sourceType)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "GroupsProperty"')}function convertCfnSegmentGroupsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentGroupsPropertyValidator(properties).assertSuccess(),{Dimensions:cdk().listMapper(convertCfnSegmentSegmentDimensionsPropertyToCloudFormation)(properties.dimensions),SourceSegments:cdk().listMapper(convertCfnSegmentSourceSegmentsPropertyToCloudFormation)(properties.sourceSegments),SourceType:cdk().stringToCloudFormation(properties.sourceType),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnSegmentGroupsPropertyFromCloudFormation(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("dimensions","Dimensions",properties.Dimensions!=null?cfn_parse().FromCloudFormation.getArray(CfnSegmentSegmentDimensionsPropertyFromCloudFormation)(properties.Dimensions):void 0),ret.addPropertyResult("sourceSegments","SourceSegments",properties.SourceSegments!=null?cfn_parse().FromCloudFormation.getArray(CfnSegmentSourceSegmentsPropertyFromCloudFormation)(properties.SourceSegments):void 0),ret.addPropertyResult("sourceType","SourceType",properties.SourceType!=null?cfn_parse().FromCloudFormation.getString(properties.SourceType):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentSegmentGroupsPropertyValidator(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("groups",cdk().listValidator(CfnSegmentGroupsPropertyValidator))(properties.groups)),errors.collect(cdk().propertyValidator("include",cdk().validateString)(properties.include)),errors.wrap('supplied properties not correct for "SegmentGroupsProperty"')}function convertCfnSegmentSegmentGroupsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentSegmentGroupsPropertyValidator(properties).assertSuccess(),{Groups:cdk().listMapper(convertCfnSegmentGroupsPropertyToCloudFormation)(properties.groups),Include:cdk().stringToCloudFormation(properties.include)}):properties}function CfnSegmentSegmentGroupsPropertyFromCloudFormation(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("groups","Groups",properties.Groups!=null?cfn_parse().FromCloudFormation.getArray(CfnSegmentGroupsPropertyFromCloudFormation)(properties.Groups):void 0),ret.addPropertyResult("include","Include",properties.Include!=null?cfn_parse().FromCloudFormation.getString(properties.Include):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("dimensions",CfnSegmentSegmentDimensionsPropertyValidator)(properties.dimensions)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("segmentGroups",CfnSegmentSegmentGroupsPropertyValidator)(properties.segmentGroups)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.wrap('supplied properties not correct for "CfnSegmentProps"')}function convertCfnSegmentPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),Dimensions:convertCfnSegmentSegmentDimensionsPropertyToCloudFormation(properties.dimensions),Name:cdk().stringToCloudFormation(properties.name),SegmentGroups:convertCfnSegmentSegmentGroupsPropertyToCloudFormation(properties.segmentGroups),Tags:cdk().objectToCloudFormation(properties.tags)}):properties}function CfnSegmentPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("dimensions","Dimensions",properties.Dimensions!=null?CfnSegmentSegmentDimensionsPropertyFromCloudFormation(properties.Dimensions):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("segmentGroups","SegmentGroups",properties.SegmentGroups!=null?CfnSegmentSegmentGroupsPropertyFromCloudFormation(properties.SegmentGroups):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSegmentAttributeDimensionPropertyValidator(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("attributeType",cdk().validateString)(properties.attributeType)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "AttributeDimensionProperty"')}function convertCfnSegmentAttributeDimensionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSegmentAttributeDimensionPropertyValidator(properties).assertSuccess(),{AttributeType:cdk().stringToCloudFormation(properties.attributeType),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnSegmentAttributeDimensionPropertyFromCloudFormation(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("attributeType","AttributeType",properties.AttributeType!=null?cfn_parse().FromCloudFormation.getString(properties.AttributeType):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}class CfnSmsTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnSmsTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::SmsTemplate";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSmsTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnSmsTemplate(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 isCfnSmsTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnSmsTemplate.CFN_RESOURCE_TYPE_NAME}static arnForSmsTemplate(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_pinpoint_ISmsTemplateRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForSmsTemplate),error}return resource.smsTemplateRef.smsTemplateArn}_body;_defaultSubstitutions;tags;_tagsRaw;_templateDescription;_templateName;cfnPropertyNames={body:"Body",defaultSubstitutions:"DefaultSubstitutions",tags:"Tags",templateDescription:"TemplateDescription",templateName:"TemplateName"};constructor(scope,id,props){super(scope,id,{type:CfnSmsTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnSmsTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSmsTemplate),error}cdk().requireProperty(props,"body",this),cdk().requireProperty(props,"templateName",this),this._body=props.body,this._defaultSubstitutions=props.defaultSubstitutions,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Pinpoint::SmsTemplate",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._templateDescription=props.templateDescription,this._templateName=props.templateName}get smsTemplateRef(){return{smsTemplateId:this.ref,smsTemplateArn:this.attrArn}}get body(){return this._body}set body(value){cdk().traceProperty(this.node,"Body"),this._body=value}get defaultSubstitutions(){return this._defaultSubstitutions}set defaultSubstitutions(value){cdk().traceProperty(this.node,"DefaultSubstitutions"),this._defaultSubstitutions=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get templateDescription(){return this._templateDescription}set templateDescription(value){cdk().traceProperty(this.node,"TemplateDescription"),this._templateDescription=value}get templateName(){return this._templateName}set templateName(value){cdk().traceProperty(this.node,"TemplateName"),this._templateName=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{body:this._body,defaultSubstitutions:this._defaultSubstitutions,tags:this.tags.renderTags(),templateDescription:this._templateDescription,templateName:this._templateName}}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",CfnSmsTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnSmsTemplatePropsToCloudFormation(props)}}exports.CfnSmsTemplate=CfnSmsTemplate;function CfnSmsTemplatePropsValidator(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("body",cdk().requiredValidator)(properties.body)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.collect(cdk().propertyValidator("defaultSubstitutions",cdk().validateString)(properties.defaultSubstitutions)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.collect(cdk().propertyValidator("templateDescription",cdk().validateString)(properties.templateDescription)),errors.collect(cdk().propertyValidator("templateName",cdk().requiredValidator)(properties.templateName)),errors.collect(cdk().propertyValidator("templateName",cdk().validateString)(properties.templateName)),errors.wrap('supplied properties not correct for "CfnSmsTemplateProps"')}function convertCfnSmsTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSmsTemplatePropsValidator(properties).assertSuccess(),{Body:cdk().stringToCloudFormation(properties.body),DefaultSubstitutions:cdk().stringToCloudFormation(properties.defaultSubstitutions),Tags:cdk().objectToCloudFormation(properties.tags),TemplateDescription:cdk().stringToCloudFormation(properties.templateDescription),TemplateName:cdk().stringToCloudFormation(properties.templateName)}):properties}function CfnSmsTemplatePropsFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addPropertyResult("defaultSubstitutions","DefaultSubstitutions",properties.DefaultSubstitutions!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultSubstitutions):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addPropertyResult("templateDescription","TemplateDescription",properties.TemplateDescription!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateDescription):void 0),ret.addPropertyResult("templateName","TemplateName",properties.TemplateName!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnVoiceChannel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_pinpoint.CfnVoiceChannel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Pinpoint::VoiceChannel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnVoiceChannelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnVoiceChannel(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 isCfnVoiceChannel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnVoiceChannel.CFN_RESOURCE_TYPE_NAME}_applicationId;_enabled;cfnPropertyNames={applicationId:"ApplicationId",enabled:"Enabled"};constructor(scope,id,props){super(scope,id,{type:CfnVoiceChannel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pinpoint_CfnVoiceChannelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnVoiceChannel),error}cdk().requireProperty(props,"applicationId",this),this._applicationId=props.applicationId,this._enabled=props.enabled}get voiceChannelRef(){return{voiceChannelId:this.ref}}get applicationId(){return this._applicationId}set applicationId(value){cdk().traceProperty(this.node,"ApplicationId"),this._applicationId=value}get enabled(){return this._enabled}set enabled(value){cdk().traceProperty(this.node,"Enabled"),this._enabled=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationId:this._applicationId,enabled:this._enabled}}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",CfnVoiceChannel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnVoiceChannelPropsToCloudFormation(props)}}exports.CfnVoiceChannel=CfnVoiceChannel;function CfnVoiceChannelPropsValidator(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("applicationId",cdk().requiredValidator)(properties.applicationId)),errors.collect(cdk().propertyValidator("applicationId",cdk().validateString)(properties.applicationId)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "CfnVoiceChannelProps"')}function convertCfnVoiceChannelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVoiceChannelPropsValidator(properties).assertSuccess(),{ApplicationId:cdk().stringToCloudFormation(properties.applicationId),Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnVoiceChannelPropsFromCloudFormation(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("applicationId","ApplicationId",properties.ApplicationId!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationId):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}
|