Files
agent-claw/cdk/node_modules/aws-cdk-lib/aws-smsvoice/lib/smsvoice.generated.js
2026-05-06 18:55:16 -05:00

2 lines
85 KiB
JavaScript

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnSenderId=exports.CfnResourcePolicy=exports.CfnProtectConfiguration=exports.CfnPool=exports.CfnPhoneNumber=exports.CfnOptOutList=exports.CfnConfigurationSet=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core/lib");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnConfigurationSet extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_smsvoice.CfnConfigurationSet",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SMSVOICE::ConfigurationSet";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigurationSetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnConfigurationSet(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnConfigurationSet(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConfigurationSet.CFN_RESOURCE_TYPE_NAME}static fromConfigurationSetArn(scope,id,arn){class Import extends cdk().Resource{configurationSetRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:configuration-set/${ConfigurationSetName}").parse(arn2);this.configurationSetRef={configurationSetName:variables.ConfigurationSetName,configurationSetArn:arn2}}}return new Import(scope,id,arn)}static fromConfigurationSetName(scope,id,configurationSetName){class Import extends cdk().Resource{configurationSetRef;constructor(scope2,id2,configurationSetName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:configuration-set/${ConfigurationSetName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ConfigurationSetName:configurationSetName2});super(scope2,id2,{environmentFromArn:arn}),this.configurationSetRef={configurationSetName:configurationSetName2,configurationSetArn:arn}}}return new Import(scope,id,configurationSetName)}static arnForConfigurationSet(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_smsvoice_IConfigurationSetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForConfigurationSet),error}return resource.configurationSetRef.configurationSetArn}cdkTagManager;_configurationSetName;_defaultSenderId;_eventDestinations;_messageFeedbackEnabled;_protectConfigurationId;_tags;cfnPropertyNames={tags:"Tags",configurationSetName:"ConfigurationSetName",defaultSenderId:"DefaultSenderId",eventDestinations:"EventDestinations",messageFeedbackEnabled:"MessageFeedbackEnabled",protectConfigurationId:"ProtectConfigurationId"};constructor(scope,id,props={}){super(scope,id,{type:CfnConfigurationSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_smsvoice_CfnConfigurationSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfigurationSet),error}this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SMSVOICE::ConfigurationSet",void 0,{tagPropertyName:"tags"}),this._configurationSetName=props.configurationSetName,this._defaultSenderId=props.defaultSenderId,this._eventDestinations=props.eventDestinations,this._messageFeedbackEnabled=props.messageFeedbackEnabled,this._protectConfigurationId=props.protectConfigurationId,this._tags=props.tags}get configurationSetRef(){return{configurationSetName:this.ref,configurationSetArn:this.attrArn}}get configurationSetName(){return this._configurationSetName}set configurationSetName(value){cdk().traceProperty(this.node,"ConfigurationSetName"),this._configurationSetName=value}get defaultSenderId(){return this._defaultSenderId}set defaultSenderId(value){cdk().traceProperty(this.node,"DefaultSenderId"),this._defaultSenderId=value}get eventDestinations(){return this._eventDestinations}set eventDestinations(value){cdk().traceProperty(this.node,"EventDestinations"),this._eventDestinations=value}get messageFeedbackEnabled(){return this._messageFeedbackEnabled}set messageFeedbackEnabled(value){cdk().traceProperty(this.node,"MessageFeedbackEnabled"),this._messageFeedbackEnabled=value}get protectConfigurationId(){return this._protectConfigurationId}set protectConfigurationId(value){cdk().traceProperty(this.node,"ProtectConfigurationId"),this._protectConfigurationId=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),configurationSetName:this._configurationSetName,defaultSenderId:this._defaultSenderId,eventDestinations:this._eventDestinations,messageFeedbackEnabled:this._messageFeedbackEnabled,protectConfigurationId:this._protectConfigurationId}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnConfigurationSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigurationSetPropsToCloudFormation(props)}}exports.CfnConfigurationSet=CfnConfigurationSet;function CfnConfigurationSetCloudWatchLogsDestinationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().requiredValidator)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().validateString)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("logGroupArn",cdk().requiredValidator)(properties.logGroupArn)),errors.collect(cdk().propertyValidator("logGroupArn",cdk().validateString)(properties.logGroupArn)),errors.wrap('supplied properties not correct for "CloudWatchLogsDestinationProperty"')}function convertCfnConfigurationSetCloudWatchLogsDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetCloudWatchLogsDestinationPropertyValidator(properties).assertSuccess(),{IamRoleArn:cdk().stringToCloudFormation(properties.iamRoleArn),LogGroupArn:cdk().stringToCloudFormation(properties.logGroupArn)}):properties}function CfnConfigurationSetCloudWatchLogsDestinationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("iamRoleArn","IamRoleArn",properties.IamRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.IamRoleArn):void 0),ret.addPropertyResult("logGroupArn","LogGroupArn",properties.LogGroupArn!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetKinesisFirehoseDestinationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("deliveryStreamArn",cdk().requiredValidator)(properties.deliveryStreamArn)),errors.collect(cdk().propertyValidator("deliveryStreamArn",cdk().validateString)(properties.deliveryStreamArn)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().requiredValidator)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().validateString)(properties.iamRoleArn)),errors.wrap('supplied properties not correct for "KinesisFirehoseDestinationProperty"')}function convertCfnConfigurationSetKinesisFirehoseDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetKinesisFirehoseDestinationPropertyValidator(properties).assertSuccess(),{DeliveryStreamArn:cdk().stringToCloudFormation(properties.deliveryStreamArn),IamRoleArn:cdk().stringToCloudFormation(properties.iamRoleArn)}):properties}function CfnConfigurationSetKinesisFirehoseDestinationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("deliveryStreamArn","DeliveryStreamArn",properties.DeliveryStreamArn!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryStreamArn):void 0),ret.addPropertyResult("iamRoleArn","IamRoleArn",properties.IamRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.IamRoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetSnsDestinationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("topicArn",cdk().requiredValidator)(properties.topicArn)),errors.collect(cdk().propertyValidator("topicArn",cdk().validateString)(properties.topicArn)),errors.wrap('supplied properties not correct for "SnsDestinationProperty"')}function convertCfnConfigurationSetSnsDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetSnsDestinationPropertyValidator(properties).assertSuccess(),{TopicArn:cdk().stringToCloudFormation(properties.topicArn)}):properties}function CfnConfigurationSetSnsDestinationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("topicArn","TopicArn",properties.TopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.TopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetEventDestinationPropertyValidator(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("cloudWatchLogsDestination",CfnConfigurationSetCloudWatchLogsDestinationPropertyValidator)(properties.cloudWatchLogsDestination)),errors.collect(cdk().propertyValidator("enabled",cdk().requiredValidator)(properties.enabled)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("eventDestinationName",cdk().requiredValidator)(properties.eventDestinationName)),errors.collect(cdk().propertyValidator("eventDestinationName",cdk().validateString)(properties.eventDestinationName)),errors.collect(cdk().propertyValidator("kinesisFirehoseDestination",CfnConfigurationSetKinesisFirehoseDestinationPropertyValidator)(properties.kinesisFirehoseDestination)),errors.collect(cdk().propertyValidator("matchingEventTypes",cdk().requiredValidator)(properties.matchingEventTypes)),errors.collect(cdk().propertyValidator("matchingEventTypes",cdk().listValidator(cdk().validateString))(properties.matchingEventTypes)),errors.collect(cdk().propertyValidator("snsDestination",CfnConfigurationSetSnsDestinationPropertyValidator)(properties.snsDestination)),errors.wrap('supplied properties not correct for "EventDestinationProperty"')}function convertCfnConfigurationSetEventDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetEventDestinationPropertyValidator(properties).assertSuccess(),{CloudWatchLogsDestination:convertCfnConfigurationSetCloudWatchLogsDestinationPropertyToCloudFormation(properties.cloudWatchLogsDestination),Enabled:cdk().booleanToCloudFormation(properties.enabled),EventDestinationName:cdk().stringToCloudFormation(properties.eventDestinationName),KinesisFirehoseDestination:convertCfnConfigurationSetKinesisFirehoseDestinationPropertyToCloudFormation(properties.kinesisFirehoseDestination),MatchingEventTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.matchingEventTypes),SnsDestination:convertCfnConfigurationSetSnsDestinationPropertyToCloudFormation(properties.snsDestination)}):properties}function CfnConfigurationSetEventDestinationPropertyFromCloudFormation(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("cloudWatchLogsDestination","CloudWatchLogsDestination",properties.CloudWatchLogsDestination!=null?CfnConfigurationSetCloudWatchLogsDestinationPropertyFromCloudFormation(properties.CloudWatchLogsDestination):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("eventDestinationName","EventDestinationName",properties.EventDestinationName!=null?cfn_parse().FromCloudFormation.getString(properties.EventDestinationName):void 0),ret.addPropertyResult("kinesisFirehoseDestination","KinesisFirehoseDestination",properties.KinesisFirehoseDestination!=null?CfnConfigurationSetKinesisFirehoseDestinationPropertyFromCloudFormation(properties.KinesisFirehoseDestination):void 0),ret.addPropertyResult("matchingEventTypes","MatchingEventTypes",properties.MatchingEventTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.MatchingEventTypes):void 0),ret.addPropertyResult("snsDestination","SnsDestination",properties.SnsDestination!=null?CfnConfigurationSetSnsDestinationPropertyFromCloudFormation(properties.SnsDestination):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationSetPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("configurationSetName",cdk().validateString)(properties.configurationSetName)),errors.collect(cdk().propertyValidator("defaultSenderId",cdk().validateString)(properties.defaultSenderId)),errors.collect(cdk().propertyValidator("eventDestinations",cdk().listValidator(CfnConfigurationSetEventDestinationPropertyValidator))(properties.eventDestinations)),errors.collect(cdk().propertyValidator("messageFeedbackEnabled",cdk().validateBoolean)(properties.messageFeedbackEnabled)),errors.collect(cdk().propertyValidator("protectConfigurationId",cdk().validateString)(properties.protectConfigurationId)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnConfigurationSetProps"')}function convertCfnConfigurationSetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationSetPropsValidator(properties).assertSuccess(),{ConfigurationSetName:cdk().stringToCloudFormation(properties.configurationSetName),DefaultSenderId:cdk().stringToCloudFormation(properties.defaultSenderId),EventDestinations:cdk().listMapper(convertCfnConfigurationSetEventDestinationPropertyToCloudFormation)(properties.eventDestinations),MessageFeedbackEnabled:cdk().booleanToCloudFormation(properties.messageFeedbackEnabled),ProtectConfigurationId:cdk().stringToCloudFormation(properties.protectConfigurationId),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnConfigurationSetPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("configurationSetName","ConfigurationSetName",properties.ConfigurationSetName!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigurationSetName):void 0),ret.addPropertyResult("defaultSenderId","DefaultSenderId",properties.DefaultSenderId!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultSenderId):void 0),ret.addPropertyResult("eventDestinations","EventDestinations",properties.EventDestinations!=null?cfn_parse().FromCloudFormation.getArray(CfnConfigurationSetEventDestinationPropertyFromCloudFormation)(properties.EventDestinations):void 0),ret.addPropertyResult("messageFeedbackEnabled","MessageFeedbackEnabled",properties.MessageFeedbackEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.MessageFeedbackEnabled):void 0),ret.addPropertyResult("protectConfigurationId","ProtectConfigurationId",properties.ProtectConfigurationId!=null?cfn_parse().FromCloudFormation.getString(properties.ProtectConfigurationId):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnOptOutList extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_smsvoice.CfnOptOutList",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SMSVOICE::OptOutList";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnOptOutListPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnOptOutList(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 isCfnOptOutList(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnOptOutList.CFN_RESOURCE_TYPE_NAME}static fromOptOutListArn(scope,id,arn){class Import extends cdk().Resource{optOutListRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:opt-out-list/${OptOutListName}").parse(arn2);this.optOutListRef={optOutListName:variables.OptOutListName,optOutListArn:arn2}}}return new Import(scope,id,arn)}static fromOptOutListName(scope,id,optOutListName){class Import extends cdk().Resource{optOutListRef;constructor(scope2,id2,optOutListName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:opt-out-list/${OptOutListName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,OptOutListName:optOutListName2});super(scope2,id2,{environmentFromArn:arn}),this.optOutListRef={optOutListName:optOutListName2,optOutListArn:arn}}}return new Import(scope,id,optOutListName)}static arnForOptOutList(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_smsvoice_IOptOutListRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForOptOutList),error}return resource.optOutListRef.optOutListArn}cdkTagManager;_optOutListName;_tags;cfnPropertyNames={tags:"Tags",optOutListName:"OptOutListName"};constructor(scope,id,props={}){super(scope,id,{type:CfnOptOutList.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_smsvoice_CfnOptOutListProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnOptOutList),error}this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SMSVOICE::OptOutList",void 0,{tagPropertyName:"tags"}),this._optOutListName=props.optOutListName,this._tags=props.tags}get optOutListRef(){return{optOutListName:this.ref,optOutListArn:this.attrArn}}get optOutListName(){return this._optOutListName}set optOutListName(value){cdk().traceProperty(this.node,"OptOutListName"),this._optOutListName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),optOutListName:this._optOutListName}}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",CfnOptOutList.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnOptOutListPropsToCloudFormation(props)}}exports.CfnOptOutList=CfnOptOutList;function CfnOptOutListPropsValidator(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("optOutListName",cdk().validateString)(properties.optOutListName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnOptOutListProps"')}function convertCfnOptOutListPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOptOutListPropsValidator(properties).assertSuccess(),{OptOutListName:cdk().stringToCloudFormation(properties.optOutListName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnOptOutListPropsFromCloudFormation(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("optOutListName","OptOutListName",properties.OptOutListName!=null?cfn_parse().FromCloudFormation.getString(properties.OptOutListName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnPhoneNumber extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_smsvoice.CfnPhoneNumber",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SMSVOICE::PhoneNumber";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPhoneNumberPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnPhoneNumber(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 isCfnPhoneNumber(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnPhoneNumber.CFN_RESOURCE_TYPE_NAME}static fromPhoneNumberArn(scope,id,arn){class Import extends cdk().Resource{phoneNumberRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:phone-number/${PhoneNumberId}").parse(arn2);this.phoneNumberRef={phoneNumberId:variables.PhoneNumberId,phoneNumberArn:arn2}}}return new Import(scope,id,arn)}static fromPhoneNumberId(scope,id,phoneNumberId){class Import extends cdk().Resource{phoneNumberRef;constructor(scope2,id2,phoneNumberId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:phone-number/${PhoneNumberId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,PhoneNumberId:phoneNumberId2});super(scope2,id2,{environmentFromArn:arn}),this.phoneNumberRef={phoneNumberId:phoneNumberId2,phoneNumberArn:arn}}}return new Import(scope,id,phoneNumberId)}static arnForPhoneNumber(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_smsvoice_IPhoneNumberRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForPhoneNumber),error}return resource.phoneNumberRef.phoneNumberArn}cdkTagManager;_deletionProtectionEnabled;_isoCountryCode;_mandatoryKeywords;_numberCapabilities;_numberType;_optionalKeywords;_optOutListName;_selfManagedOptOutsEnabled;_tags;_twoWay;cfnPropertyNames={tags:"Tags",deletionProtectionEnabled:"DeletionProtectionEnabled",isoCountryCode:"IsoCountryCode",mandatoryKeywords:"MandatoryKeywords",numberCapabilities:"NumberCapabilities",numberType:"NumberType",optionalKeywords:"OptionalKeywords",optOutListName:"OptOutListName",selfManagedOptOutsEnabled:"SelfManagedOptOutsEnabled",twoWay:"TwoWay"};constructor(scope,id,props){super(scope,id,{type:CfnPhoneNumber.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_smsvoice_CfnPhoneNumberProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnPhoneNumber),error}cdk().requireProperty(props,"isoCountryCode",this),cdk().requireProperty(props,"mandatoryKeywords",this),cdk().requireProperty(props,"numberCapabilities",this),cdk().requireProperty(props,"numberType",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SMSVOICE::PhoneNumber",void 0,{tagPropertyName:"tags"}),this._deletionProtectionEnabled=props.deletionProtectionEnabled,this._isoCountryCode=props.isoCountryCode,this._mandatoryKeywords=props.mandatoryKeywords,this._numberCapabilities=props.numberCapabilities,this._numberType=props.numberType,this._optionalKeywords=props.optionalKeywords,this._optOutListName=props.optOutListName,this._selfManagedOptOutsEnabled=props.selfManagedOptOutsEnabled,this._tags=props.tags,this._twoWay=props.twoWay}get phoneNumberRef(){return{phoneNumberId:this.ref,phoneNumberArn:this.attrArn}}get deletionProtectionEnabled(){return this._deletionProtectionEnabled}set deletionProtectionEnabled(value){cdk().traceProperty(this.node,"DeletionProtectionEnabled"),this._deletionProtectionEnabled=value}get isoCountryCode(){return this._isoCountryCode}set isoCountryCode(value){cdk().traceProperty(this.node,"IsoCountryCode"),this._isoCountryCode=value}get mandatoryKeywords(){return this._mandatoryKeywords}set mandatoryKeywords(value){cdk().traceProperty(this.node,"MandatoryKeywords"),this._mandatoryKeywords=value}get numberCapabilities(){return this._numberCapabilities}set numberCapabilities(value){cdk().traceProperty(this.node,"NumberCapabilities"),this._numberCapabilities=value}get numberType(){return this._numberType}set numberType(value){cdk().traceProperty(this.node,"NumberType"),this._numberType=value}get optionalKeywords(){return this._optionalKeywords}set optionalKeywords(value){cdk().traceProperty(this.node,"OptionalKeywords"),this._optionalKeywords=value}get optOutListName(){return this._optOutListName}set optOutListName(value){cdk().traceProperty(this.node,"OptOutListName"),this._optOutListName=value}get selfManagedOptOutsEnabled(){return this._selfManagedOptOutsEnabled}set selfManagedOptOutsEnabled(value){cdk().traceProperty(this.node,"SelfManagedOptOutsEnabled"),this._selfManagedOptOutsEnabled=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get twoWay(){return this._twoWay}set twoWay(value){cdk().traceProperty(this.node,"TwoWay"),this._twoWay=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrPhoneNumber(){return cdk().Token.asString(this.getAtt("PhoneNumber",cdk().ResolutionTypeHint.STRING))}get attrPhoneNumberId(){return cdk().Token.asString(this.getAtt("PhoneNumberId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),deletionProtectionEnabled:this._deletionProtectionEnabled,isoCountryCode:this._isoCountryCode,mandatoryKeywords:this._mandatoryKeywords,numberCapabilities:this._numberCapabilities,numberType:this._numberType,optionalKeywords:this._optionalKeywords,optOutListName:this._optOutListName,selfManagedOptOutsEnabled:this._selfManagedOptOutsEnabled,twoWay:this._twoWay}}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",CfnPhoneNumber.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnPhoneNumberPropsToCloudFormation(props)}}exports.CfnPhoneNumber=CfnPhoneNumber;function CfnPhoneNumberMandatoryKeywordPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("message",cdk().requiredValidator)(properties.message)),errors.collect(cdk().propertyValidator("message",cdk().validateString)(properties.message)),errors.wrap('supplied properties not correct for "MandatoryKeywordProperty"')}function convertCfnPhoneNumberMandatoryKeywordPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPhoneNumberMandatoryKeywordPropertyValidator(properties).assertSuccess(),{Message:cdk().stringToCloudFormation(properties.message)}):properties}function CfnPhoneNumberMandatoryKeywordPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("message","Message",properties.Message!=null?cfn_parse().FromCloudFormation.getString(properties.Message):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPhoneNumberMandatoryKeywordsPropertyValidator(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("help",cdk().requiredValidator)(properties.help)),errors.collect(cdk().propertyValidator("help",CfnPhoneNumberMandatoryKeywordPropertyValidator)(properties.help)),errors.collect(cdk().propertyValidator("stop",cdk().requiredValidator)(properties.stop)),errors.collect(cdk().propertyValidator("stop",CfnPhoneNumberMandatoryKeywordPropertyValidator)(properties.stop)),errors.wrap('supplied properties not correct for "MandatoryKeywordsProperty"')}function convertCfnPhoneNumberMandatoryKeywordsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPhoneNumberMandatoryKeywordsPropertyValidator(properties).assertSuccess(),{HELP:convertCfnPhoneNumberMandatoryKeywordPropertyToCloudFormation(properties.help),STOP:convertCfnPhoneNumberMandatoryKeywordPropertyToCloudFormation(properties.stop)}):properties}function CfnPhoneNumberMandatoryKeywordsPropertyFromCloudFormation(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("help","HELP",properties.HELP!=null?CfnPhoneNumberMandatoryKeywordPropertyFromCloudFormation(properties.HELP):void 0),ret.addPropertyResult("stop","STOP",properties.STOP!=null?CfnPhoneNumberMandatoryKeywordPropertyFromCloudFormation(properties.STOP):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPhoneNumberOptionalKeywordPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("action",cdk().requiredValidator)(properties.action)),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),errors.collect(cdk().propertyValidator("keyword",cdk().requiredValidator)(properties.keyword)),errors.collect(cdk().propertyValidator("keyword",cdk().validateString)(properties.keyword)),errors.collect(cdk().propertyValidator("message",cdk().requiredValidator)(properties.message)),errors.collect(cdk().propertyValidator("message",cdk().validateString)(properties.message)),errors.wrap('supplied properties not correct for "OptionalKeywordProperty"')}function convertCfnPhoneNumberOptionalKeywordPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPhoneNumberOptionalKeywordPropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Keyword:cdk().stringToCloudFormation(properties.keyword),Message:cdk().stringToCloudFormation(properties.message)}):properties}function CfnPhoneNumberOptionalKeywordPropertyFromCloudFormation(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("keyword","Keyword",properties.Keyword!=null?cfn_parse().FromCloudFormation.getString(properties.Keyword):void 0),ret.addPropertyResult("message","Message",properties.Message!=null?cfn_parse().FromCloudFormation.getString(properties.Message):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPhoneNumberTwoWayPropertyValidator(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("channelArn",cdk().validateString)(properties.channelArn)),errors.collect(cdk().propertyValidator("channelRole",cdk().validateString)(properties.channelRole)),errors.collect(cdk().propertyValidator("enabled",cdk().requiredValidator)(properties.enabled)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "TwoWayProperty"')}function convertCfnPhoneNumberTwoWayPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPhoneNumberTwoWayPropertyValidator(properties).assertSuccess(),{ChannelArn:cdk().stringToCloudFormation(properties.channelArn),ChannelRole:cdk().stringToCloudFormation(properties.channelRole),Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnPhoneNumberTwoWayPropertyFromCloudFormation(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("channelArn","ChannelArn",properties.ChannelArn!=null?cfn_parse().FromCloudFormation.getString(properties.ChannelArn):void 0),ret.addPropertyResult("channelRole","ChannelRole",properties.ChannelRole!=null?cfn_parse().FromCloudFormation.getString(properties.ChannelRole):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPhoneNumberPropsValidator(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("deletionProtectionEnabled",cdk().validateBoolean)(properties.deletionProtectionEnabled)),errors.collect(cdk().propertyValidator("isoCountryCode",cdk().requiredValidator)(properties.isoCountryCode)),errors.collect(cdk().propertyValidator("isoCountryCode",cdk().validateString)(properties.isoCountryCode)),errors.collect(cdk().propertyValidator("mandatoryKeywords",cdk().requiredValidator)(properties.mandatoryKeywords)),errors.collect(cdk().propertyValidator("mandatoryKeywords",CfnPhoneNumberMandatoryKeywordsPropertyValidator)(properties.mandatoryKeywords)),errors.collect(cdk().propertyValidator("numberCapabilities",cdk().requiredValidator)(properties.numberCapabilities)),errors.collect(cdk().propertyValidator("numberCapabilities",cdk().listValidator(cdk().validateString))(properties.numberCapabilities)),errors.collect(cdk().propertyValidator("numberType",cdk().requiredValidator)(properties.numberType)),errors.collect(cdk().propertyValidator("numberType",cdk().validateString)(properties.numberType)),errors.collect(cdk().propertyValidator("optOutListName",cdk().validateString)(properties.optOutListName)),errors.collect(cdk().propertyValidator("optionalKeywords",cdk().listValidator(CfnPhoneNumberOptionalKeywordPropertyValidator))(properties.optionalKeywords)),errors.collect(cdk().propertyValidator("selfManagedOptOutsEnabled",cdk().validateBoolean)(properties.selfManagedOptOutsEnabled)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("twoWay",CfnPhoneNumberTwoWayPropertyValidator)(properties.twoWay)),errors.wrap('supplied properties not correct for "CfnPhoneNumberProps"')}function convertCfnPhoneNumberPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPhoneNumberPropsValidator(properties).assertSuccess(),{DeletionProtectionEnabled:cdk().booleanToCloudFormation(properties.deletionProtectionEnabled),IsoCountryCode:cdk().stringToCloudFormation(properties.isoCountryCode),MandatoryKeywords:convertCfnPhoneNumberMandatoryKeywordsPropertyToCloudFormation(properties.mandatoryKeywords),NumberCapabilities:cdk().listMapper(cdk().stringToCloudFormation)(properties.numberCapabilities),NumberType:cdk().stringToCloudFormation(properties.numberType),OptOutListName:cdk().stringToCloudFormation(properties.optOutListName),OptionalKeywords:cdk().listMapper(convertCfnPhoneNumberOptionalKeywordPropertyToCloudFormation)(properties.optionalKeywords),SelfManagedOptOutsEnabled:cdk().booleanToCloudFormation(properties.selfManagedOptOutsEnabled),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TwoWay:convertCfnPhoneNumberTwoWayPropertyToCloudFormation(properties.twoWay)}):properties}function CfnPhoneNumberPropsFromCloudFormation(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("deletionProtectionEnabled","DeletionProtectionEnabled",properties.DeletionProtectionEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DeletionProtectionEnabled):void 0),ret.addPropertyResult("isoCountryCode","IsoCountryCode",properties.IsoCountryCode!=null?cfn_parse().FromCloudFormation.getString(properties.IsoCountryCode):void 0),ret.addPropertyResult("mandatoryKeywords","MandatoryKeywords",properties.MandatoryKeywords!=null?CfnPhoneNumberMandatoryKeywordsPropertyFromCloudFormation(properties.MandatoryKeywords):void 0),ret.addPropertyResult("numberCapabilities","NumberCapabilities",properties.NumberCapabilities!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.NumberCapabilities):void 0),ret.addPropertyResult("numberType","NumberType",properties.NumberType!=null?cfn_parse().FromCloudFormation.getString(properties.NumberType):void 0),ret.addPropertyResult("optionalKeywords","OptionalKeywords",properties.OptionalKeywords!=null?cfn_parse().FromCloudFormation.getArray(CfnPhoneNumberOptionalKeywordPropertyFromCloudFormation)(properties.OptionalKeywords):void 0),ret.addPropertyResult("optOutListName","OptOutListName",properties.OptOutListName!=null?cfn_parse().FromCloudFormation.getString(properties.OptOutListName):void 0),ret.addPropertyResult("selfManagedOptOutsEnabled","SelfManagedOptOutsEnabled",properties.SelfManagedOptOutsEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SelfManagedOptOutsEnabled):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("twoWay","TwoWay",properties.TwoWay!=null?CfnPhoneNumberTwoWayPropertyFromCloudFormation(properties.TwoWay):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnPool extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_smsvoice.CfnPool",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SMSVOICE::Pool";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPoolPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnPool(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 isCfnPool(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnPool.CFN_RESOURCE_TYPE_NAME}static fromPoolArn(scope,id,arn){class Import extends cdk().Resource{poolRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:pool/${PoolId}").parse(arn2);this.poolRef={poolId:variables.PoolId,poolArn:arn2}}}return new Import(scope,id,arn)}static fromPoolId(scope,id,poolId){class Import extends cdk().Resource{poolRef;constructor(scope2,id2,poolId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:pool/${PoolId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,PoolId:poolId2});super(scope2,id2,{environmentFromArn:arn}),this.poolRef={poolId:poolId2,poolArn:arn}}}return new Import(scope,id,poolId)}static arnForPool(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_smsvoice_IPoolRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForPool),error}return resource.poolRef.poolArn}cdkTagManager;_deletionProtectionEnabled;_mandatoryKeywords;_optionalKeywords;_optOutListName;_originationIdentities;_selfManagedOptOutsEnabled;_sharedRoutesEnabled;_tags;_twoWay;cfnPropertyNames={tags:"Tags",deletionProtectionEnabled:"DeletionProtectionEnabled",mandatoryKeywords:"MandatoryKeywords",optionalKeywords:"OptionalKeywords",optOutListName:"OptOutListName",originationIdentities:"OriginationIdentities",selfManagedOptOutsEnabled:"SelfManagedOptOutsEnabled",sharedRoutesEnabled:"SharedRoutesEnabled",twoWay:"TwoWay"};constructor(scope,id,props){super(scope,id,{type:CfnPool.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_smsvoice_CfnPoolProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnPool),error}cdk().requireProperty(props,"mandatoryKeywords",this),cdk().requireProperty(props,"originationIdentities",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SMSVOICE::Pool",void 0,{tagPropertyName:"tags"}),this._deletionProtectionEnabled=props.deletionProtectionEnabled,this._mandatoryKeywords=props.mandatoryKeywords,this._optionalKeywords=props.optionalKeywords,this._optOutListName=props.optOutListName,this._originationIdentities=props.originationIdentities,this._selfManagedOptOutsEnabled=props.selfManagedOptOutsEnabled,this._sharedRoutesEnabled=props.sharedRoutesEnabled,this._tags=props.tags,this._twoWay=props.twoWay}get poolRef(){return{poolId:this.ref,poolArn:this.attrArn}}get deletionProtectionEnabled(){return this._deletionProtectionEnabled}set deletionProtectionEnabled(value){cdk().traceProperty(this.node,"DeletionProtectionEnabled"),this._deletionProtectionEnabled=value}get mandatoryKeywords(){return this._mandatoryKeywords}set mandatoryKeywords(value){cdk().traceProperty(this.node,"MandatoryKeywords"),this._mandatoryKeywords=value}get optionalKeywords(){return this._optionalKeywords}set optionalKeywords(value){cdk().traceProperty(this.node,"OptionalKeywords"),this._optionalKeywords=value}get optOutListName(){return this._optOutListName}set optOutListName(value){cdk().traceProperty(this.node,"OptOutListName"),this._optOutListName=value}get originationIdentities(){return this._originationIdentities}set originationIdentities(value){cdk().traceProperty(this.node,"OriginationIdentities"),this._originationIdentities=value}get selfManagedOptOutsEnabled(){return this._selfManagedOptOutsEnabled}set selfManagedOptOutsEnabled(value){cdk().traceProperty(this.node,"SelfManagedOptOutsEnabled"),this._selfManagedOptOutsEnabled=value}get sharedRoutesEnabled(){return this._sharedRoutesEnabled}set sharedRoutesEnabled(value){cdk().traceProperty(this.node,"SharedRoutesEnabled"),this._sharedRoutesEnabled=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get twoWay(){return this._twoWay}set twoWay(value){cdk().traceProperty(this.node,"TwoWay"),this._twoWay=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrPoolId(){return cdk().Token.asString(this.getAtt("PoolId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),deletionProtectionEnabled:this._deletionProtectionEnabled,mandatoryKeywords:this._mandatoryKeywords,optionalKeywords:this._optionalKeywords,optOutListName:this._optOutListName,originationIdentities:this._originationIdentities,selfManagedOptOutsEnabled:this._selfManagedOptOutsEnabled,sharedRoutesEnabled:this._sharedRoutesEnabled,twoWay:this._twoWay}}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",CfnPool.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnPoolPropsToCloudFormation(props)}}exports.CfnPool=CfnPool;function CfnPoolMandatoryKeywordPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("message",cdk().requiredValidator)(properties.message)),errors.collect(cdk().propertyValidator("message",cdk().validateString)(properties.message)),errors.wrap('supplied properties not correct for "MandatoryKeywordProperty"')}function convertCfnPoolMandatoryKeywordPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPoolMandatoryKeywordPropertyValidator(properties).assertSuccess(),{Message:cdk().stringToCloudFormation(properties.message)}):properties}function CfnPoolMandatoryKeywordPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("message","Message",properties.Message!=null?cfn_parse().FromCloudFormation.getString(properties.Message):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPoolMandatoryKeywordsPropertyValidator(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("help",cdk().requiredValidator)(properties.help)),errors.collect(cdk().propertyValidator("help",CfnPoolMandatoryKeywordPropertyValidator)(properties.help)),errors.collect(cdk().propertyValidator("stop",cdk().requiredValidator)(properties.stop)),errors.collect(cdk().propertyValidator("stop",CfnPoolMandatoryKeywordPropertyValidator)(properties.stop)),errors.wrap('supplied properties not correct for "MandatoryKeywordsProperty"')}function convertCfnPoolMandatoryKeywordsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPoolMandatoryKeywordsPropertyValidator(properties).assertSuccess(),{HELP:convertCfnPoolMandatoryKeywordPropertyToCloudFormation(properties.help),STOP:convertCfnPoolMandatoryKeywordPropertyToCloudFormation(properties.stop)}):properties}function CfnPoolMandatoryKeywordsPropertyFromCloudFormation(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("help","HELP",properties.HELP!=null?CfnPoolMandatoryKeywordPropertyFromCloudFormation(properties.HELP):void 0),ret.addPropertyResult("stop","STOP",properties.STOP!=null?CfnPoolMandatoryKeywordPropertyFromCloudFormation(properties.STOP):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPoolOptionalKeywordPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("action",cdk().requiredValidator)(properties.action)),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),errors.collect(cdk().propertyValidator("keyword",cdk().requiredValidator)(properties.keyword)),errors.collect(cdk().propertyValidator("keyword",cdk().validateString)(properties.keyword)),errors.collect(cdk().propertyValidator("message",cdk().requiredValidator)(properties.message)),errors.collect(cdk().propertyValidator("message",cdk().validateString)(properties.message)),errors.wrap('supplied properties not correct for "OptionalKeywordProperty"')}function convertCfnPoolOptionalKeywordPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPoolOptionalKeywordPropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Keyword:cdk().stringToCloudFormation(properties.keyword),Message:cdk().stringToCloudFormation(properties.message)}):properties}function CfnPoolOptionalKeywordPropertyFromCloudFormation(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("keyword","Keyword",properties.Keyword!=null?cfn_parse().FromCloudFormation.getString(properties.Keyword):void 0),ret.addPropertyResult("message","Message",properties.Message!=null?cfn_parse().FromCloudFormation.getString(properties.Message):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPoolTwoWayPropertyValidator(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("channelArn",cdk().validateString)(properties.channelArn)),errors.collect(cdk().propertyValidator("channelRole",cdk().validateString)(properties.channelRole)),errors.collect(cdk().propertyValidator("enabled",cdk().requiredValidator)(properties.enabled)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "TwoWayProperty"')}function convertCfnPoolTwoWayPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPoolTwoWayPropertyValidator(properties).assertSuccess(),{ChannelArn:cdk().stringToCloudFormation(properties.channelArn),ChannelRole:cdk().stringToCloudFormation(properties.channelRole),Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnPoolTwoWayPropertyFromCloudFormation(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("channelArn","ChannelArn",properties.ChannelArn!=null?cfn_parse().FromCloudFormation.getString(properties.ChannelArn):void 0),ret.addPropertyResult("channelRole","ChannelRole",properties.ChannelRole!=null?cfn_parse().FromCloudFormation.getString(properties.ChannelRole):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPoolPropsValidator(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("deletionProtectionEnabled",cdk().validateBoolean)(properties.deletionProtectionEnabled)),errors.collect(cdk().propertyValidator("mandatoryKeywords",cdk().requiredValidator)(properties.mandatoryKeywords)),errors.collect(cdk().propertyValidator("mandatoryKeywords",CfnPoolMandatoryKeywordsPropertyValidator)(properties.mandatoryKeywords)),errors.collect(cdk().propertyValidator("optOutListName",cdk().validateString)(properties.optOutListName)),errors.collect(cdk().propertyValidator("optionalKeywords",cdk().listValidator(CfnPoolOptionalKeywordPropertyValidator))(properties.optionalKeywords)),errors.collect(cdk().propertyValidator("originationIdentities",cdk().requiredValidator)(properties.originationIdentities)),errors.collect(cdk().propertyValidator("originationIdentities",cdk().listValidator(cdk().validateString))(properties.originationIdentities)),errors.collect(cdk().propertyValidator("selfManagedOptOutsEnabled",cdk().validateBoolean)(properties.selfManagedOptOutsEnabled)),errors.collect(cdk().propertyValidator("sharedRoutesEnabled",cdk().validateBoolean)(properties.sharedRoutesEnabled)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("twoWay",CfnPoolTwoWayPropertyValidator)(properties.twoWay)),errors.wrap('supplied properties not correct for "CfnPoolProps"')}function convertCfnPoolPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPoolPropsValidator(properties).assertSuccess(),{DeletionProtectionEnabled:cdk().booleanToCloudFormation(properties.deletionProtectionEnabled),MandatoryKeywords:convertCfnPoolMandatoryKeywordsPropertyToCloudFormation(properties.mandatoryKeywords),OptOutListName:cdk().stringToCloudFormation(properties.optOutListName),OptionalKeywords:cdk().listMapper(convertCfnPoolOptionalKeywordPropertyToCloudFormation)(properties.optionalKeywords),OriginationIdentities:cdk().listMapper(cdk().stringToCloudFormation)(properties.originationIdentities),SelfManagedOptOutsEnabled:cdk().booleanToCloudFormation(properties.selfManagedOptOutsEnabled),SharedRoutesEnabled:cdk().booleanToCloudFormation(properties.sharedRoutesEnabled),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TwoWay:convertCfnPoolTwoWayPropertyToCloudFormation(properties.twoWay)}):properties}function CfnPoolPropsFromCloudFormation(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("deletionProtectionEnabled","DeletionProtectionEnabled",properties.DeletionProtectionEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DeletionProtectionEnabled):void 0),ret.addPropertyResult("mandatoryKeywords","MandatoryKeywords",properties.MandatoryKeywords!=null?CfnPoolMandatoryKeywordsPropertyFromCloudFormation(properties.MandatoryKeywords):void 0),ret.addPropertyResult("optionalKeywords","OptionalKeywords",properties.OptionalKeywords!=null?cfn_parse().FromCloudFormation.getArray(CfnPoolOptionalKeywordPropertyFromCloudFormation)(properties.OptionalKeywords):void 0),ret.addPropertyResult("optOutListName","OptOutListName",properties.OptOutListName!=null?cfn_parse().FromCloudFormation.getString(properties.OptOutListName):void 0),ret.addPropertyResult("originationIdentities","OriginationIdentities",properties.OriginationIdentities!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.OriginationIdentities):void 0),ret.addPropertyResult("selfManagedOptOutsEnabled","SelfManagedOptOutsEnabled",properties.SelfManagedOptOutsEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SelfManagedOptOutsEnabled):void 0),ret.addPropertyResult("sharedRoutesEnabled","SharedRoutesEnabled",properties.SharedRoutesEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SharedRoutesEnabled):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("twoWay","TwoWay",properties.TwoWay!=null?CfnPoolTwoWayPropertyFromCloudFormation(properties.TwoWay):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnProtectConfiguration extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_smsvoice.CfnProtectConfiguration",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SMSVOICE::ProtectConfiguration";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnProtectConfigurationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnProtectConfiguration(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 isCfnProtectConfiguration(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnProtectConfiguration.CFN_RESOURCE_TYPE_NAME}static fromProtectConfigurationArn(scope,id,arn){class Import extends cdk().Resource{protectConfigurationRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:protect-configuration/${ProtectConfigurationId}").parse(arn2);this.protectConfigurationRef={protectConfigurationId:variables.ProtectConfigurationId,protectConfigurationArn:arn2}}}return new Import(scope,id,arn)}static fromProtectConfigurationId(scope,id,protectConfigurationId){class Import extends cdk().Resource{protectConfigurationRef;constructor(scope2,id2,protectConfigurationId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sms-voice:${Region}:${Account}:protect-configuration/${ProtectConfigurationId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ProtectConfigurationId:protectConfigurationId2});super(scope2,id2,{environmentFromArn:arn}),this.protectConfigurationRef={protectConfigurationId:protectConfigurationId2,protectConfigurationArn:arn}}}return new Import(scope,id,protectConfigurationId)}static arnForProtectConfiguration(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_smsvoice_IProtectConfigurationRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForProtectConfiguration),error}return resource.protectConfigurationRef.protectConfigurationArn}cdkTagManager;_countryRuleSet;_deletionProtectionEnabled;_tags;cfnPropertyNames={tags:"Tags",countryRuleSet:"CountryRuleSet",deletionProtectionEnabled:"DeletionProtectionEnabled"};constructor(scope,id,props={}){super(scope,id,{type:CfnProtectConfiguration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_smsvoice_CfnProtectConfigurationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnProtectConfiguration),error}this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SMSVOICE::ProtectConfiguration",void 0,{tagPropertyName:"tags"}),this._countryRuleSet=props.countryRuleSet,this._deletionProtectionEnabled=props.deletionProtectionEnabled,this._tags=props.tags}get protectConfigurationRef(){return{protectConfigurationId:this.ref,protectConfigurationArn:this.attrArn}}get countryRuleSet(){return this._countryRuleSet}set countryRuleSet(value){cdk().traceProperty(this.node,"CountryRuleSet"),this._countryRuleSet=value}get deletionProtectionEnabled(){return this._deletionProtectionEnabled}set deletionProtectionEnabled(value){cdk().traceProperty(this.node,"DeletionProtectionEnabled"),this._deletionProtectionEnabled=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrProtectConfigurationId(){return cdk().Token.asString(this.getAtt("ProtectConfigurationId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),countryRuleSet:this._countryRuleSet,deletionProtectionEnabled:this._deletionProtectionEnabled}}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",CfnProtectConfiguration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnProtectConfigurationPropsToCloudFormation(props)}}exports.CfnProtectConfiguration=CfnProtectConfiguration;function CfnProtectConfigurationCountryRulePropertyValidator(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("countryCode",cdk().requiredValidator)(properties.countryCode)),errors.collect(cdk().propertyValidator("countryCode",cdk().validateString)(properties.countryCode)),errors.collect(cdk().propertyValidator("protectStatus",cdk().requiredValidator)(properties.protectStatus)),errors.collect(cdk().propertyValidator("protectStatus",cdk().validateString)(properties.protectStatus)),errors.wrap('supplied properties not correct for "CountryRuleProperty"')}function convertCfnProtectConfigurationCountryRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProtectConfigurationCountryRulePropertyValidator(properties).assertSuccess(),{CountryCode:cdk().stringToCloudFormation(properties.countryCode),ProtectStatus:cdk().stringToCloudFormation(properties.protectStatus)}):properties}function CfnProtectConfigurationCountryRulePropertyFromCloudFormation(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("countryCode","CountryCode",properties.CountryCode!=null?cfn_parse().FromCloudFormation.getString(properties.CountryCode):void 0),ret.addPropertyResult("protectStatus","ProtectStatus",properties.ProtectStatus!=null?cfn_parse().FromCloudFormation.getString(properties.ProtectStatus):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProtectConfigurationCountryRuleSetPropertyValidator(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("mms",cdk().listValidator(CfnProtectConfigurationCountryRulePropertyValidator))(properties.mms)),errors.collect(cdk().propertyValidator("sms",cdk().listValidator(CfnProtectConfigurationCountryRulePropertyValidator))(properties.sms)),errors.collect(cdk().propertyValidator("voice",cdk().listValidator(CfnProtectConfigurationCountryRulePropertyValidator))(properties.voice)),errors.wrap('supplied properties not correct for "CountryRuleSetProperty"')}function convertCfnProtectConfigurationCountryRuleSetPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProtectConfigurationCountryRuleSetPropertyValidator(properties).assertSuccess(),{MMS:cdk().listMapper(convertCfnProtectConfigurationCountryRulePropertyToCloudFormation)(properties.mms),SMS:cdk().listMapper(convertCfnProtectConfigurationCountryRulePropertyToCloudFormation)(properties.sms),VOICE:cdk().listMapper(convertCfnProtectConfigurationCountryRulePropertyToCloudFormation)(properties.voice)}):properties}function CfnProtectConfigurationCountryRuleSetPropertyFromCloudFormation(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("mms","MMS",properties.MMS!=null?cfn_parse().FromCloudFormation.getArray(CfnProtectConfigurationCountryRulePropertyFromCloudFormation)(properties.MMS):void 0),ret.addPropertyResult("sms","SMS",properties.SMS!=null?cfn_parse().FromCloudFormation.getArray(CfnProtectConfigurationCountryRulePropertyFromCloudFormation)(properties.SMS):void 0),ret.addPropertyResult("voice","VOICE",properties.VOICE!=null?cfn_parse().FromCloudFormation.getArray(CfnProtectConfigurationCountryRulePropertyFromCloudFormation)(properties.VOICE):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProtectConfigurationPropsValidator(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("countryRuleSet",CfnProtectConfigurationCountryRuleSetPropertyValidator)(properties.countryRuleSet)),errors.collect(cdk().propertyValidator("deletionProtectionEnabled",cdk().validateBoolean)(properties.deletionProtectionEnabled)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnProtectConfigurationProps"')}function convertCfnProtectConfigurationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProtectConfigurationPropsValidator(properties).assertSuccess(),{CountryRuleSet:convertCfnProtectConfigurationCountryRuleSetPropertyToCloudFormation(properties.countryRuleSet),DeletionProtectionEnabled:cdk().booleanToCloudFormation(properties.deletionProtectionEnabled),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnProtectConfigurationPropsFromCloudFormation(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("countryRuleSet","CountryRuleSet",properties.CountryRuleSet!=null?CfnProtectConfigurationCountryRuleSetPropertyFromCloudFormation(properties.CountryRuleSet):void 0),ret.addPropertyResult("deletionProtectionEnabled","DeletionProtectionEnabled",properties.DeletionProtectionEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DeletionProtectionEnabled):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnResourcePolicy extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_smsvoice.CfnResourcePolicy",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SMSVOICE::ResourcePolicy";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnResourcePolicyPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnResourcePolicy(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 isCfnResourcePolicy(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnResourcePolicy.CFN_RESOURCE_TYPE_NAME}_policyDocument;_resourceArn;cfnPropertyNames={policyDocument:"PolicyDocument",resourceArn:"ResourceArn"};constructor(scope,id,props){super(scope,id,{type:CfnResourcePolicy.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_smsvoice_CfnResourcePolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnResourcePolicy),error}cdk().requireProperty(props,"policyDocument",this),cdk().requireProperty(props,"resourceArn",this),this._policyDocument=props.policyDocument,this._resourceArn=props.resourceArn}get resourcePolicyRef(){return{resourceArn:this.ref}}get policyDocument(){return this._policyDocument}set policyDocument(value){cdk().traceProperty(this.node,"PolicyDocument"),this._policyDocument=value}get resourceArn(){return this._resourceArn}set resourceArn(value){cdk().traceProperty(this.node,"ResourceArn"),this._resourceArn=value}get cfnProperties(){return{policyDocument:this._policyDocument,resourceArn:this._resourceArn}}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",CfnResourcePolicy.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnResourcePolicyPropsToCloudFormation(props)}}exports.CfnResourcePolicy=CfnResourcePolicy;function CfnResourcePolicyPropsValidator(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("policyDocument",cdk().requiredValidator)(properties.policyDocument)),errors.collect(cdk().propertyValidator("policyDocument",cdk().validateObject)(properties.policyDocument)),errors.collect(cdk().propertyValidator("resourceArn",cdk().requiredValidator)(properties.resourceArn)),errors.collect(cdk().propertyValidator("resourceArn",cdk().validateString)(properties.resourceArn)),errors.wrap('supplied properties not correct for "CfnResourcePolicyProps"')}function convertCfnResourcePolicyPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnResourcePolicyPropsValidator(properties).assertSuccess(),{PolicyDocument:cdk().objectToCloudFormation(properties.policyDocument),ResourceArn:cdk().stringToCloudFormation(properties.resourceArn)}):properties}function CfnResourcePolicyPropsFromCloudFormation(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("policyDocument","PolicyDocument",properties.PolicyDocument!=null?cfn_parse().FromCloudFormation.getAny(properties.PolicyDocument):void 0),ret.addPropertyResult("resourceArn","ResourceArn",properties.ResourceArn!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnSenderId extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_smsvoice.CfnSenderId",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SMSVOICE::SenderId";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSenderIdPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnSenderId(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 isCfnSenderId(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnSenderId.CFN_RESOURCE_TYPE_NAME}static arnForSenderId(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_smsvoice_ISenderIdRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForSenderId),error}return resource.senderIdRef.senderIdArn}cdkTagManager;_deletionProtectionEnabled;_isoCountryCode;_senderId;_tags;cfnPropertyNames={tags:"Tags",deletionProtectionEnabled:"DeletionProtectionEnabled",isoCountryCode:"IsoCountryCode",senderId:"SenderId"};constructor(scope,id,props){super(scope,id,{type:CfnSenderId.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_smsvoice_CfnSenderIdProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSenderId),error}cdk().requireProperty(props,"isoCountryCode",this),cdk().requireProperty(props,"senderId",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SMSVOICE::SenderId",void 0,{tagPropertyName:"tags"}),this._deletionProtectionEnabled=props.deletionProtectionEnabled,this._isoCountryCode=props.isoCountryCode,this._senderId=props.senderId,this._tags=props.tags}get senderIdRef(){return{isoCountryCode:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),senderId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),senderIdArn:this.attrArn}}get deletionProtectionEnabled(){return this._deletionProtectionEnabled}set deletionProtectionEnabled(value){cdk().traceProperty(this.node,"DeletionProtectionEnabled"),this._deletionProtectionEnabled=value}get isoCountryCode(){return this._isoCountryCode}set isoCountryCode(value){cdk().traceProperty(this.node,"IsoCountryCode"),this._isoCountryCode=value}get senderId(){return this._senderId}set senderId(value){cdk().traceProperty(this.node,"SenderId"),this._senderId=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),deletionProtectionEnabled:this._deletionProtectionEnabled,isoCountryCode:this._isoCountryCode,senderId:this._senderId}}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",CfnSenderId.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnSenderIdPropsToCloudFormation(props)}}exports.CfnSenderId=CfnSenderId;function CfnSenderIdPropsValidator(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("deletionProtectionEnabled",cdk().validateBoolean)(properties.deletionProtectionEnabled)),errors.collect(cdk().propertyValidator("isoCountryCode",cdk().requiredValidator)(properties.isoCountryCode)),errors.collect(cdk().propertyValidator("isoCountryCode",cdk().validateString)(properties.isoCountryCode)),errors.collect(cdk().propertyValidator("senderId",cdk().requiredValidator)(properties.senderId)),errors.collect(cdk().propertyValidator("senderId",cdk().validateString)(properties.senderId)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnSenderIdProps"')}function convertCfnSenderIdPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSenderIdPropsValidator(properties).assertSuccess(),{DeletionProtectionEnabled:cdk().booleanToCloudFormation(properties.deletionProtectionEnabled),IsoCountryCode:cdk().stringToCloudFormation(properties.isoCountryCode),SenderId:cdk().stringToCloudFormation(properties.senderId),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnSenderIdPropsFromCloudFormation(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("deletionProtectionEnabled","DeletionProtectionEnabled",properties.DeletionProtectionEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DeletionProtectionEnabled):void 0),ret.addPropertyResult("isoCountryCode","IsoCountryCode",properties.IsoCountryCode!=null?cfn_parse().FromCloudFormation.getString(properties.IsoCountryCode):void 0),ret.addPropertyResult("senderId","SenderId",properties.SenderId!=null?cfn_parse().FromCloudFormation.getString(properties.SenderId):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}