UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 85.3 kB
"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.251.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;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.251.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;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.251.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;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.251.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;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}}