UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

2 lines 132 kB
"use strict";var _a,_b,_c,_d,_e,_f,_g;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnTrustStoreRevocation=exports.CfnTrustStore=exports.CfnTargetGroup=exports.CfnLoadBalancer=exports.CfnListenerRule=exports.CfnListenerCertificate=exports.CfnListener=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");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp};class CfnListener extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnListenerPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");const ret=new CfnListener(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}constructor(scope,id,props){super(scope,id,{type:CfnListener.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_elasticloadbalancingv2_CfnListenerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnListener),error}cdk().requireProperty(props,"defaultActions",this),cdk().requireProperty(props,"loadBalancerArn",this),this.attrListenerArn=cdk().Token.asString(this.getAtt("ListenerArn",cdk().ResolutionTypeHint.STRING)),this.alpnPolicy=props.alpnPolicy,this.certificates=props.certificates,this.defaultActions=props.defaultActions,this.loadBalancerArn=props.loadBalancerArn,this.mutualAuthentication=props.mutualAuthentication,this.port=props.port,this.protocol=props.protocol,this.sslPolicy=props.sslPolicy}get cfnProperties(){return{alpnPolicy:this.alpnPolicy,certificates:this.certificates,defaultActions:this.defaultActions,loadBalancerArn:this.loadBalancerArn,mutualAuthentication:this.mutualAuthentication,port:this.port,protocol:this.protocol,sslPolicy:this.sslPolicy}}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",CfnListener.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnListenerPropsToCloudFormation(props)}}exports.CfnListener=CfnListener,_a=JSII_RTTI_SYMBOL_1,CfnListener[_a]={fqn:"aws-cdk-lib.aws_elasticloadbalancingv2.CfnListener",version:"2.130.0"},CfnListener.CFN_RESOURCE_TYPE_NAME="AWS::ElasticLoadBalancingV2::Listener";function CfnListenerFixedResponseConfigPropertyValidator(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("contentType",cdk().validateString)(properties.contentType)),errors.collect(cdk().propertyValidator("messageBody",cdk().validateString)(properties.messageBody)),errors.collect(cdk().propertyValidator("statusCode",cdk().requiredValidator)(properties.statusCode)),errors.collect(cdk().propertyValidator("statusCode",cdk().validateString)(properties.statusCode)),errors.wrap('supplied properties not correct for "FixedResponseConfigProperty"')}function convertCfnListenerFixedResponseConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerFixedResponseConfigPropertyValidator(properties).assertSuccess(),{ContentType:cdk().stringToCloudFormation(properties.contentType),MessageBody:cdk().stringToCloudFormation(properties.messageBody),StatusCode:cdk().stringToCloudFormation(properties.statusCode)}):properties}function CfnListenerFixedResponseConfigPropertyFromCloudFormation(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("contentType","ContentType",properties.ContentType!=null?cfn_parse().FromCloudFormation.getString(properties.ContentType):void 0),ret.addPropertyResult("messageBody","MessageBody",properties.MessageBody!=null?cfn_parse().FromCloudFormation.getString(properties.MessageBody):void 0),ret.addPropertyResult("statusCode","StatusCode",properties.StatusCode!=null?cfn_parse().FromCloudFormation.getString(properties.StatusCode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerAuthenticateCognitoConfigPropertyValidator(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("authenticationRequestExtraParams",cdk().hashValidator(cdk().validateString))(properties.authenticationRequestExtraParams)),errors.collect(cdk().propertyValidator("onUnauthenticatedRequest",cdk().validateString)(properties.onUnauthenticatedRequest)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("sessionCookieName",cdk().validateString)(properties.sessionCookieName)),errors.collect(cdk().propertyValidator("sessionTimeout",cdk().validateString)(properties.sessionTimeout)),errors.collect(cdk().propertyValidator("userPoolArn",cdk().requiredValidator)(properties.userPoolArn)),errors.collect(cdk().propertyValidator("userPoolArn",cdk().validateString)(properties.userPoolArn)),errors.collect(cdk().propertyValidator("userPoolClientId",cdk().requiredValidator)(properties.userPoolClientId)),errors.collect(cdk().propertyValidator("userPoolClientId",cdk().validateString)(properties.userPoolClientId)),errors.collect(cdk().propertyValidator("userPoolDomain",cdk().requiredValidator)(properties.userPoolDomain)),errors.collect(cdk().propertyValidator("userPoolDomain",cdk().validateString)(properties.userPoolDomain)),errors.wrap('supplied properties not correct for "AuthenticateCognitoConfigProperty"')}function convertCfnListenerAuthenticateCognitoConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerAuthenticateCognitoConfigPropertyValidator(properties).assertSuccess(),{AuthenticationRequestExtraParams:cdk().hashMapper(cdk().stringToCloudFormation)(properties.authenticationRequestExtraParams),OnUnauthenticatedRequest:cdk().stringToCloudFormation(properties.onUnauthenticatedRequest),Scope:cdk().stringToCloudFormation(properties.scope),SessionCookieName:cdk().stringToCloudFormation(properties.sessionCookieName),SessionTimeout:cdk().stringToCloudFormation(properties.sessionTimeout),UserPoolArn:cdk().stringToCloudFormation(properties.userPoolArn),UserPoolClientId:cdk().stringToCloudFormation(properties.userPoolClientId),UserPoolDomain:cdk().stringToCloudFormation(properties.userPoolDomain)}):properties}function CfnListenerAuthenticateCognitoConfigPropertyFromCloudFormation(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("authenticationRequestExtraParams","AuthenticationRequestExtraParams",properties.AuthenticationRequestExtraParams!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.AuthenticationRequestExtraParams):void 0),ret.addPropertyResult("onUnauthenticatedRequest","OnUnauthenticatedRequest",properties.OnUnauthenticatedRequest!=null?cfn_parse().FromCloudFormation.getString(properties.OnUnauthenticatedRequest):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("sessionCookieName","SessionCookieName",properties.SessionCookieName!=null?cfn_parse().FromCloudFormation.getString(properties.SessionCookieName):void 0),ret.addPropertyResult("sessionTimeout","SessionTimeout",properties.SessionTimeout!=null?cfn_parse().FromCloudFormation.getString(properties.SessionTimeout):void 0),ret.addPropertyResult("userPoolArn","UserPoolArn",properties.UserPoolArn!=null?cfn_parse().FromCloudFormation.getString(properties.UserPoolArn):void 0),ret.addPropertyResult("userPoolClientId","UserPoolClientId",properties.UserPoolClientId!=null?cfn_parse().FromCloudFormation.getString(properties.UserPoolClientId):void 0),ret.addPropertyResult("userPoolDomain","UserPoolDomain",properties.UserPoolDomain!=null?cfn_parse().FromCloudFormation.getString(properties.UserPoolDomain):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRedirectConfigPropertyValidator(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("host",cdk().validateString)(properties.host)),errors.collect(cdk().propertyValidator("path",cdk().validateString)(properties.path)),errors.collect(cdk().propertyValidator("port",cdk().validateString)(properties.port)),errors.collect(cdk().propertyValidator("protocol",cdk().validateString)(properties.protocol)),errors.collect(cdk().propertyValidator("query",cdk().validateString)(properties.query)),errors.collect(cdk().propertyValidator("statusCode",cdk().requiredValidator)(properties.statusCode)),errors.collect(cdk().propertyValidator("statusCode",cdk().validateString)(properties.statusCode)),errors.wrap('supplied properties not correct for "RedirectConfigProperty"')}function convertCfnListenerRedirectConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRedirectConfigPropertyValidator(properties).assertSuccess(),{Host:cdk().stringToCloudFormation(properties.host),Path:cdk().stringToCloudFormation(properties.path),Port:cdk().stringToCloudFormation(properties.port),Protocol:cdk().stringToCloudFormation(properties.protocol),Query:cdk().stringToCloudFormation(properties.query),StatusCode:cdk().stringToCloudFormation(properties.statusCode)}):properties}function CfnListenerRedirectConfigPropertyFromCloudFormation(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("host","Host",properties.Host!=null?cfn_parse().FromCloudFormation.getString(properties.Host):void 0),ret.addPropertyResult("path","Path",properties.Path!=null?cfn_parse().FromCloudFormation.getString(properties.Path):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse().FromCloudFormation.getString(properties.Port):void 0),ret.addPropertyResult("protocol","Protocol",properties.Protocol!=null?cfn_parse().FromCloudFormation.getString(properties.Protocol):void 0),ret.addPropertyResult("query","Query",properties.Query!=null?cfn_parse().FromCloudFormation.getString(properties.Query):void 0),ret.addPropertyResult("statusCode","StatusCode",properties.StatusCode!=null?cfn_parse().FromCloudFormation.getString(properties.StatusCode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerTargetGroupStickinessConfigPropertyValidator(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("durationSeconds",cdk().validateNumber)(properties.durationSeconds)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "TargetGroupStickinessConfigProperty"')}function convertCfnListenerTargetGroupStickinessConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerTargetGroupStickinessConfigPropertyValidator(properties).assertSuccess(),{DurationSeconds:cdk().numberToCloudFormation(properties.durationSeconds),Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnListenerTargetGroupStickinessConfigPropertyFromCloudFormation(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("durationSeconds","DurationSeconds",properties.DurationSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.DurationSeconds):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerTargetGroupTuplePropertyValidator(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("targetGroupArn",cdk().validateString)(properties.targetGroupArn)),errors.collect(cdk().propertyValidator("weight",cdk().validateNumber)(properties.weight)),errors.wrap('supplied properties not correct for "TargetGroupTupleProperty"')}function convertCfnListenerTargetGroupTuplePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerTargetGroupTuplePropertyValidator(properties).assertSuccess(),{TargetGroupArn:cdk().stringToCloudFormation(properties.targetGroupArn),Weight:cdk().numberToCloudFormation(properties.weight)}):properties}function CfnListenerTargetGroupTuplePropertyFromCloudFormation(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("targetGroupArn","TargetGroupArn",properties.TargetGroupArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetGroupArn):void 0),ret.addPropertyResult("weight","Weight",properties.Weight!=null?cfn_parse().FromCloudFormation.getNumber(properties.Weight):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerForwardConfigPropertyValidator(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("targetGroupStickinessConfig",CfnListenerTargetGroupStickinessConfigPropertyValidator)(properties.targetGroupStickinessConfig)),errors.collect(cdk().propertyValidator("targetGroups",cdk().listValidator(CfnListenerTargetGroupTuplePropertyValidator))(properties.targetGroups)),errors.wrap('supplied properties not correct for "ForwardConfigProperty"')}function convertCfnListenerForwardConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerForwardConfigPropertyValidator(properties).assertSuccess(),{TargetGroupStickinessConfig:convertCfnListenerTargetGroupStickinessConfigPropertyToCloudFormation(properties.targetGroupStickinessConfig),TargetGroups:cdk().listMapper(convertCfnListenerTargetGroupTuplePropertyToCloudFormation)(properties.targetGroups)}):properties}function CfnListenerForwardConfigPropertyFromCloudFormation(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("targetGroups","TargetGroups",properties.TargetGroups!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerTargetGroupTuplePropertyFromCloudFormation)(properties.TargetGroups):void 0),ret.addPropertyResult("targetGroupStickinessConfig","TargetGroupStickinessConfig",properties.TargetGroupStickinessConfig!=null?CfnListenerTargetGroupStickinessConfigPropertyFromCloudFormation(properties.TargetGroupStickinessConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerAuthenticateOidcConfigPropertyValidator(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("authenticationRequestExtraParams",cdk().hashValidator(cdk().validateString))(properties.authenticationRequestExtraParams)),errors.collect(cdk().propertyValidator("authorizationEndpoint",cdk().requiredValidator)(properties.authorizationEndpoint)),errors.collect(cdk().propertyValidator("authorizationEndpoint",cdk().validateString)(properties.authorizationEndpoint)),errors.collect(cdk().propertyValidator("clientId",cdk().requiredValidator)(properties.clientId)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("issuer",cdk().requiredValidator)(properties.issuer)),errors.collect(cdk().propertyValidator("issuer",cdk().validateString)(properties.issuer)),errors.collect(cdk().propertyValidator("onUnauthenticatedRequest",cdk().validateString)(properties.onUnauthenticatedRequest)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("sessionCookieName",cdk().validateString)(properties.sessionCookieName)),errors.collect(cdk().propertyValidator("sessionTimeout",cdk().validateString)(properties.sessionTimeout)),errors.collect(cdk().propertyValidator("tokenEndpoint",cdk().requiredValidator)(properties.tokenEndpoint)),errors.collect(cdk().propertyValidator("tokenEndpoint",cdk().validateString)(properties.tokenEndpoint)),errors.collect(cdk().propertyValidator("useExistingClientSecret",cdk().validateBoolean)(properties.useExistingClientSecret)),errors.collect(cdk().propertyValidator("userInfoEndpoint",cdk().requiredValidator)(properties.userInfoEndpoint)),errors.collect(cdk().propertyValidator("userInfoEndpoint",cdk().validateString)(properties.userInfoEndpoint)),errors.wrap('supplied properties not correct for "AuthenticateOidcConfigProperty"')}function convertCfnListenerAuthenticateOidcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerAuthenticateOidcConfigPropertyValidator(properties).assertSuccess(),{AuthenticationRequestExtraParams:cdk().hashMapper(cdk().stringToCloudFormation)(properties.authenticationRequestExtraParams),AuthorizationEndpoint:cdk().stringToCloudFormation(properties.authorizationEndpoint),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),Issuer:cdk().stringToCloudFormation(properties.issuer),OnUnauthenticatedRequest:cdk().stringToCloudFormation(properties.onUnauthenticatedRequest),Scope:cdk().stringToCloudFormation(properties.scope),SessionCookieName:cdk().stringToCloudFormation(properties.sessionCookieName),SessionTimeout:cdk().stringToCloudFormation(properties.sessionTimeout),TokenEndpoint:cdk().stringToCloudFormation(properties.tokenEndpoint),UseExistingClientSecret:cdk().booleanToCloudFormation(properties.useExistingClientSecret),UserInfoEndpoint:cdk().stringToCloudFormation(properties.userInfoEndpoint)}):properties}function CfnListenerAuthenticateOidcConfigPropertyFromCloudFormation(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("authenticationRequestExtraParams","AuthenticationRequestExtraParams",properties.AuthenticationRequestExtraParams!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.AuthenticationRequestExtraParams):void 0),ret.addPropertyResult("authorizationEndpoint","AuthorizationEndpoint",properties.AuthorizationEndpoint!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizationEndpoint):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("issuer","Issuer",properties.Issuer!=null?cfn_parse().FromCloudFormation.getString(properties.Issuer):void 0),ret.addPropertyResult("onUnauthenticatedRequest","OnUnauthenticatedRequest",properties.OnUnauthenticatedRequest!=null?cfn_parse().FromCloudFormation.getString(properties.OnUnauthenticatedRequest):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("sessionCookieName","SessionCookieName",properties.SessionCookieName!=null?cfn_parse().FromCloudFormation.getString(properties.SessionCookieName):void 0),ret.addPropertyResult("sessionTimeout","SessionTimeout",properties.SessionTimeout!=null?cfn_parse().FromCloudFormation.getString(properties.SessionTimeout):void 0),ret.addPropertyResult("tokenEndpoint","TokenEndpoint",properties.TokenEndpoint!=null?cfn_parse().FromCloudFormation.getString(properties.TokenEndpoint):void 0),ret.addPropertyResult("useExistingClientSecret","UseExistingClientSecret",properties.UseExistingClientSecret!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UseExistingClientSecret):void 0),ret.addPropertyResult("userInfoEndpoint","UserInfoEndpoint",properties.UserInfoEndpoint!=null?cfn_parse().FromCloudFormation.getString(properties.UserInfoEndpoint):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerActionPropertyValidator(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("authenticateCognitoConfig",CfnListenerAuthenticateCognitoConfigPropertyValidator)(properties.authenticateCognitoConfig)),errors.collect(cdk().propertyValidator("authenticateOidcConfig",CfnListenerAuthenticateOidcConfigPropertyValidator)(properties.authenticateOidcConfig)),errors.collect(cdk().propertyValidator("fixedResponseConfig",CfnListenerFixedResponseConfigPropertyValidator)(properties.fixedResponseConfig)),errors.collect(cdk().propertyValidator("forwardConfig",CfnListenerForwardConfigPropertyValidator)(properties.forwardConfig)),errors.collect(cdk().propertyValidator("order",cdk().validateNumber)(properties.order)),errors.collect(cdk().propertyValidator("redirectConfig",CfnListenerRedirectConfigPropertyValidator)(properties.redirectConfig)),errors.collect(cdk().propertyValidator("targetGroupArn",cdk().validateString)(properties.targetGroupArn)),errors.collect(cdk().propertyValidator("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "ActionProperty"')}function convertCfnListenerActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerActionPropertyValidator(properties).assertSuccess(),{AuthenticateCognitoConfig:convertCfnListenerAuthenticateCognitoConfigPropertyToCloudFormation(properties.authenticateCognitoConfig),AuthenticateOidcConfig:convertCfnListenerAuthenticateOidcConfigPropertyToCloudFormation(properties.authenticateOidcConfig),FixedResponseConfig:convertCfnListenerFixedResponseConfigPropertyToCloudFormation(properties.fixedResponseConfig),ForwardConfig:convertCfnListenerForwardConfigPropertyToCloudFormation(properties.forwardConfig),Order:cdk().numberToCloudFormation(properties.order),RedirectConfig:convertCfnListenerRedirectConfigPropertyToCloudFormation(properties.redirectConfig),TargetGroupArn:cdk().stringToCloudFormation(properties.targetGroupArn),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnListenerActionPropertyFromCloudFormation(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("authenticateCognitoConfig","AuthenticateCognitoConfig",properties.AuthenticateCognitoConfig!=null?CfnListenerAuthenticateCognitoConfigPropertyFromCloudFormation(properties.AuthenticateCognitoConfig):void 0),ret.addPropertyResult("authenticateOidcConfig","AuthenticateOidcConfig",properties.AuthenticateOidcConfig!=null?CfnListenerAuthenticateOidcConfigPropertyFromCloudFormation(properties.AuthenticateOidcConfig):void 0),ret.addPropertyResult("fixedResponseConfig","FixedResponseConfig",properties.FixedResponseConfig!=null?CfnListenerFixedResponseConfigPropertyFromCloudFormation(properties.FixedResponseConfig):void 0),ret.addPropertyResult("forwardConfig","ForwardConfig",properties.ForwardConfig!=null?CfnListenerForwardConfigPropertyFromCloudFormation(properties.ForwardConfig):void 0),ret.addPropertyResult("order","Order",properties.Order!=null?cfn_parse().FromCloudFormation.getNumber(properties.Order):void 0),ret.addPropertyResult("redirectConfig","RedirectConfig",properties.RedirectConfig!=null?CfnListenerRedirectConfigPropertyFromCloudFormation(properties.RedirectConfig):void 0),ret.addPropertyResult("targetGroupArn","TargetGroupArn",properties.TargetGroupArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetGroupArn):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerCertificatePropertyValidator(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("certificateArn",cdk().validateString)(properties.certificateArn)),errors.wrap('supplied properties not correct for "CertificateProperty"')}function convertCfnListenerCertificatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerCertificatePropertyValidator(properties).assertSuccess(),{CertificateArn:cdk().stringToCloudFormation(properties.certificateArn)}):properties}function CfnListenerCertificatePropertyFromCloudFormation(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("certificateArn","CertificateArn",properties.CertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerMutualAuthenticationPropertyValidator(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("ignoreClientCertificateExpiry",cdk().validateBoolean)(properties.ignoreClientCertificateExpiry)),errors.collect(cdk().propertyValidator("mode",cdk().validateString)(properties.mode)),errors.collect(cdk().propertyValidator("trustStoreArn",cdk().validateString)(properties.trustStoreArn)),errors.wrap('supplied properties not correct for "MutualAuthenticationProperty"')}function convertCfnListenerMutualAuthenticationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerMutualAuthenticationPropertyValidator(properties).assertSuccess(),{IgnoreClientCertificateExpiry:cdk().booleanToCloudFormation(properties.ignoreClientCertificateExpiry),Mode:cdk().stringToCloudFormation(properties.mode),TrustStoreArn:cdk().stringToCloudFormation(properties.trustStoreArn)}):properties}function CfnListenerMutualAuthenticationPropertyFromCloudFormation(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("ignoreClientCertificateExpiry","IgnoreClientCertificateExpiry",properties.IgnoreClientCertificateExpiry!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IgnoreClientCertificateExpiry):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addPropertyResult("trustStoreArn","TrustStoreArn",properties.TrustStoreArn!=null?cfn_parse().FromCloudFormation.getString(properties.TrustStoreArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerPropsValidator(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("alpnPolicy",cdk().listValidator(cdk().validateString))(properties.alpnPolicy)),errors.collect(cdk().propertyValidator("certificates",cdk().listValidator(CfnListenerCertificatePropertyValidator))(properties.certificates)),errors.collect(cdk().propertyValidator("defaultActions",cdk().requiredValidator)(properties.defaultActions)),errors.collect(cdk().propertyValidator("defaultActions",cdk().listValidator(CfnListenerActionPropertyValidator))(properties.defaultActions)),errors.collect(cdk().propertyValidator("loadBalancerArn",cdk().requiredValidator)(properties.loadBalancerArn)),errors.collect(cdk().propertyValidator("loadBalancerArn",cdk().validateString)(properties.loadBalancerArn)),errors.collect(cdk().propertyValidator("mutualAuthentication",CfnListenerMutualAuthenticationPropertyValidator)(properties.mutualAuthentication)),errors.collect(cdk().propertyValidator("port",cdk().validateNumber)(properties.port)),errors.collect(cdk().propertyValidator("protocol",cdk().validateString)(properties.protocol)),errors.collect(cdk().propertyValidator("sslPolicy",cdk().validateString)(properties.sslPolicy)),errors.wrap('supplied properties not correct for "CfnListenerProps"')}function convertCfnListenerPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerPropsValidator(properties).assertSuccess(),{AlpnPolicy:cdk().listMapper(cdk().stringToCloudFormation)(properties.alpnPolicy),Certificates:cdk().listMapper(convertCfnListenerCertificatePropertyToCloudFormation)(properties.certificates),DefaultActions:cdk().listMapper(convertCfnListenerActionPropertyToCloudFormation)(properties.defaultActions),LoadBalancerArn:cdk().stringToCloudFormation(properties.loadBalancerArn),MutualAuthentication:convertCfnListenerMutualAuthenticationPropertyToCloudFormation(properties.mutualAuthentication),Port:cdk().numberToCloudFormation(properties.port),Protocol:cdk().stringToCloudFormation(properties.protocol),SslPolicy:cdk().stringToCloudFormation(properties.sslPolicy)}):properties}function CfnListenerPropsFromCloudFormation(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("alpnPolicy","AlpnPolicy",properties.AlpnPolicy!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AlpnPolicy):void 0),ret.addPropertyResult("certificates","Certificates",properties.Certificates!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerCertificatePropertyFromCloudFormation)(properties.Certificates):void 0),ret.addPropertyResult("defaultActions","DefaultActions",properties.DefaultActions!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerActionPropertyFromCloudFormation)(properties.DefaultActions):void 0),ret.addPropertyResult("loadBalancerArn","LoadBalancerArn",properties.LoadBalancerArn!=null?cfn_parse().FromCloudFormation.getString(properties.LoadBalancerArn):void 0),ret.addPropertyResult("mutualAuthentication","MutualAuthentication",properties.MutualAuthentication!=null?CfnListenerMutualAuthenticationPropertyFromCloudFormation(properties.MutualAuthentication):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse().FromCloudFormation.getNumber(properties.Port):void 0),ret.addPropertyResult("protocol","Protocol",properties.Protocol!=null?cfn_parse().FromCloudFormation.getString(properties.Protocol):void 0),ret.addPropertyResult("sslPolicy","SslPolicy",properties.SslPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.SslPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnListenerCertificate extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnListenerCertificatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");const ret=new CfnListenerCertificate(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}constructor(scope,id,props){super(scope,id,{type:CfnListenerCertificate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_elasticloadbalancingv2_CfnListenerCertificateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnListenerCertificate),error}cdk().requireProperty(props,"certificates",this),cdk().requireProperty(props,"listenerArn",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.certificates=props.certificates,this.listenerArn=props.listenerArn}get cfnProperties(){return{certificates:this.certificates,listenerArn:this.listenerArn}}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",CfnListenerCertificate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnListenerCertificatePropsToCloudFormation(props)}}exports.CfnListenerCertificate=CfnListenerCertificate,_b=JSII_RTTI_SYMBOL_1,CfnListenerCertificate[_b]={fqn:"aws-cdk-lib.aws_elasticloadbalancingv2.CfnListenerCertificate",version:"2.130.0"},CfnListenerCertificate.CFN_RESOURCE_TYPE_NAME="AWS::ElasticLoadBalancingV2::ListenerCertificate";function CfnListenerCertificateCertificatePropertyValidator(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("certificateArn",cdk().validateString)(properties.certificateArn)),errors.wrap('supplied properties not correct for "CertificateProperty"')}function convertCfnListenerCertificateCertificatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerCertificateCertificatePropertyValidator(properties).assertSuccess(),{CertificateArn:cdk().stringToCloudFormation(properties.certificateArn)}):properties}function CfnListenerCertificateCertificatePropertyFromCloudFormation(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("certificateArn","CertificateArn",properties.CertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerCertificatePropsValidator(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("certificates",cdk().requiredValidator)(properties.certificates)),errors.collect(cdk().propertyValidator("certificates",cdk().listValidator(CfnListenerCertificateCertificatePropertyValidator))(properties.certificates)),errors.collect(cdk().propertyValidator("listenerArn",cdk().requiredValidator)(properties.listenerArn)),errors.collect(cdk().propertyValidator("listenerArn",cdk().validateString)(properties.listenerArn)),errors.wrap('supplied properties not correct for "CfnListenerCertificateProps"')}function convertCfnListenerCertificatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerCertificatePropsValidator(properties).assertSuccess(),{Certificates:cdk().listMapper(convertCfnListenerCertificateCertificatePropertyToCloudFormation)(properties.certificates),ListenerArn:cdk().stringToCloudFormation(properties.listenerArn)}):properties}function CfnListenerCertificatePropsFromCloudFormation(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("certificates","Certificates",properties.Certificates!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerCertificateCertificatePropertyFromCloudFormation)(properties.Certificates):void 0),ret.addPropertyResult("listenerArn","ListenerArn",properties.ListenerArn!=null?cfn_parse().FromCloudFormation.getString(properties.ListenerArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnListenerRule extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnListenerRulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");const ret=new CfnListenerRule(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}constructor(scope,id,props){super(scope,id,{type:CfnListenerRule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_elasticloadbalancingv2_CfnListenerRuleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnListenerRule),error}cdk().requireProperty(props,"actions",this),cdk().requireProperty(props,"conditions",this),cdk().requireProperty(props,"priority",this),this.attrIsDefault=this.getAtt("IsDefault"),this.attrRuleArn=cdk().Token.asString(this.getAtt("RuleArn",cdk().ResolutionTypeHint.STRING)),this.actions=props.actions,this.conditions=props.conditions,this.listenerArn=props.listenerArn,this.priority=props.priority}get cfnProperties(){return{actions:this.actions,conditions:this.conditions,listenerArn:this.listenerArn,priority:this.priority}}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",CfnListenerRule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnListenerRulePropsToCloudFormation(props)}}exports.CfnListenerRule=CfnListenerRule,_c=JSII_RTTI_SYMBOL_1,CfnListenerRule[_c]={fqn:"aws-cdk-lib.aws_elasticloadbalancingv2.CfnListenerRule",version:"2.130.0"},CfnListenerRule.CFN_RESOURCE_TYPE_NAME="AWS::ElasticLoadBalancingV2::ListenerRule";function CfnListenerRuleFixedResponseConfigPropertyValidator(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("contentType",cdk().validateString)(properties.contentType)),errors.collect(cdk().propertyValidator("messageBody",cdk().validateString)(properties.messageBody)),errors.collect(cdk().propertyValidator("statusCode",cdk().requiredValidator)(properties.statusCode)),errors.collect(cdk().propertyValidator("statusCode",cdk().validateString)(properties.statusCode)),errors.wrap('supplied properties not correct for "FixedResponseConfigProperty"')}function convertCfnListenerRuleFixedResponseConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleFixedResponseConfigPropertyValidator(properties).assertSuccess(),{ContentType:cdk().stringToCloudFormation(properties.contentType),MessageBody:cdk().stringToCloudFormation(properties.messageBody),StatusCode:cdk().stringToCloudFormation(properties.statusCode)}):properties}function CfnListenerRuleFixedResponseConfigPropertyFromCloudFormation(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("contentType","ContentType",properties.ContentType!=null?cfn_parse().FromCloudFormation.getString(properties.ContentType):void 0),ret.addPropertyResult("messageBody","MessageBody",properties.MessageBody!=null?cfn_parse().FromCloudFormation.getString(properties.MessageBody):void 0),ret.addPropertyResult("statusCode","StatusCode",properties.StatusCode!=null?cfn_parse().FromCloudFormation.getString(properties.StatusCode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleAuthenticateCognitoConfigPropertyValidator(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("authenticationRequestExtraParams",cdk().hashValidator(cdk().validateString))(properties.authenticationRequestExtraParams)),errors.collect(cdk().propertyValidator("onUnauthenticatedRequest",cdk().validateString)(properties.onUnauthenticatedRequest)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("sessionCookieName",cdk().validateString)(properties.sessionCookieName)),errors.collect(cdk().propertyValidator("sessionTimeout",cdk().validateNumber)(properties.sessionTimeout)),errors.collect(cdk().propertyValidator("userPoolArn",cdk().requiredValidator)(properties.userPoolArn)),errors.collect(cdk().propertyValidator("userPoolArn",cdk().validateString)(properties.userPoolArn)),errors.collect(cdk().propertyValidator("userPoolClientId",cdk().requiredValidator)(properties.userPoolClientId)),errors.collect(cdk().propertyValidator("userPoolClientId",cdk().validateString)(properties.userPoolClientId)),errors.collect(cdk().propertyValidator("userPoolDomain",cdk().requiredValidator)(properties.userPoolDomain)),errors.collect(cdk().propertyValidator("userPoolDomain",cdk().validateString)(properties.userPoolDomain)),errors.wrap('supplied properties not correct for "AuthenticateCognitoConfigProperty"')}function convertCfnListenerRuleAuthenticateCognitoConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleAuthenticateCognitoConfigPropertyValidator(properties).assertSuccess(),{AuthenticationRequestExtraParams:cdk().hashMapper(cdk().stringToCloudFormation)(properties.authenticationRequestExtraParams),OnUnauthenticatedRequest:cdk().stringToCloudFormation(properties.onUnauthenticatedRequest),Scope:cdk().stringToCloudFormation(properties.scope),SessionCookieName:cdk().stringToCloudFormation(properties.sessionCookieName),SessionTimeout:cdk().numberToCloudFormation(properties.sessionTimeout),UserPoolArn:cdk().stringToCloudFormation(properties.userPoolArn),UserPoolClientId:cdk().stringToCloudFormation(properties.userPoolClientId),UserPoolDomain:cdk().stringToCloudFormation(properties.userPoolDomain)}):properties}function CfnListenerRuleAuthenticateCognitoConfigPropertyFromCloudFormation(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("authenticationRequestExtraParams","AuthenticationRequestExtraParams",properties.AuthenticationRequestExtraParams!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.AuthenticationRequestExtraParams):void 0),ret.addPropertyResult("onUnauthenticatedRequest","OnUnauthenticatedRequest",properties.OnUnauthenticatedRequest!=null?cfn_parse().FromCloudFormation.getString(properties.OnUnauthenticatedRequest):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("sessionCookieName","SessionCookieName",properties.SessionCookieName!=null?cfn_parse().FromCloudFormation.getString(properties.SessionCookieName):void 0),ret.addPropertyResult("sessionTimeout","SessionTimeout",properties.SessionTimeout!=null?cfn_parse().FromCloudFormation.getNumber(properties.SessionTimeout):void 0),ret.addPropertyResult("userPoolArn","UserPoolArn",properties.UserPoolArn!=null?cfn_parse().FromCloudFormation.getString(properties.UserPoolArn):void 0),ret.addPropertyResult("userPoolClientId","UserPoolClientId",properties.UserPoolClientId!=null?cfn_parse().FromCloudFormation.getString(properties.UserPoolClientId):void 0),ret.addPropertyResult("userPoolDomain","UserPoolDomain",properties.UserPoolDomain!=null?cfn_parse().FromCloudFormation.getString(properties.UserPoolDomain):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleRedirectConfigPropertyValidator(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("host",cdk().validateString)(properties.host)),errors.collect(cdk().propertyValidator("path",cdk().validateString)(properties.path)),errors.collect(cdk().propertyValidator("port",cdk().validateString)(properties.port)),errors.collect(cdk().propertyValidator("protocol",cdk().validateString)(properties.protocol)),errors.collect(cdk().propertyValidator("query",cdk().validateString)(properties.query)),errors.collect(cdk().propertyValidator("statusCode",cdk().requiredValidator)(properties.statusCode)),errors.collect(cdk().propertyValidator("statusCode",cdk().validateString)(properties.statusCode)),errors.wrap('supplied properties not correct for "RedirectConfigProperty"')}function convertCfnListenerRuleRedirectConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleRedirectConfigPropertyValidator(properties).assertSuccess(),{Host:cdk().stringToCloudFormation(properties.host),Path:cdk().stringToCloudFormation(properties.path),Port:cdk().stringToCloudFormation(properties.port),Protocol:cdk().stringToCloudFormation(properties.protocol),Query:cdk().stringToCloudFormation(properties.query),StatusCode:cdk().stringToCloudFormation(properties.statusCode)}):properties}function CfnListenerRuleRedirectConfigPropertyFromCloudFormation(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("host","Host",properties.Host!=null?cfn_parse().FromCloudFormation.getString(properties.Host):void 0),ret.addPropertyResult("path","Path",properties.Path!=null?cfn_parse().FromCloudFormation.getString(properties.Path):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse().FromCloudFormation.getString(properties.Port):void 0),ret.addPropertyResult("protocol","Protocol",properties.Protocol!=null?cfn_parse().FromCloudFormation.getString(properties.Protocol):void 0),ret.addPropertyResult("query","Query",properties.Query!=null?cfn_parse().FromCloudFormation.getString(properties.Query):void 0),ret.addPropertyResult("statusCode","StatusCode",properties.StatusCode!=null?cfn_parse().FromCloudFormation.getString(properties.StatusCode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleTargetGroupStickinessConfigPropertyValidator(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("durationSeconds",cdk().validateNumber)(properties.durationSeconds)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "TargetGroupStickinessConfigProperty"')}function convertCfnListenerRuleTargetGroupStickinessConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleTargetGroupStickinessConfigPropertyValidator(properties).assertSuccess(),{DurationSeconds:cdk().numberToCloudFormation(properties.durationSeconds),Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnListenerRuleTargetGroupStickinessConfigPropertyFromCloudFormation(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("durationSeconds","DurationSeconds",properties.DurationSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.DurationSeconds):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleTargetGroupTuplePropertyValidator(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("targetGroupArn",cdk().validateString)(properties.targetGroupArn)),errors.collect(cdk().propertyValidator("weight",cdk().validateNumber)(properties.weight)),errors.wrap('supplied properties not correct for "TargetGroupTupleProperty"')}function convertCfnListenerRuleTargetGroupTuplePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleTargetGroupTuplePropertyValidator(properties).assertSuccess(),{TargetGroupArn:cdk().stringToCloudFormation(properties.targetGroupArn),Weight:cdk().numberToCloudFormation(properties.weight)}):properties}function CfnListenerRuleTargetGroupTuplePropertyFromCloudFormation(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("targetGroupArn","TargetGroupArn",properties.TargetGroupArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetGroupArn):void 0),ret.addPropertyResult("weight","Weight",properties.Weight!=null?cfn_parse().FromCloudFormation.getNumber(properties.Weight):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleForwardConfigPropertyValidator(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("targetGroupStickinessConfig",CfnListenerRuleTargetGroupStickinessConfigPropertyValidator)(properties.targetGroupStickinessConfig)),errors.collect(cdk().propertyValidator("targetGroups",cdk().listValidator(CfnListenerRuleTargetGroupTuplePropertyValidator))(properties.targetGroups)),errors.wrap('supplied properties not correct for "ForwardConfigProperty"')}function convertCfnListenerRuleForwardConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleForwardConfigPropertyValidator(properties).assertSuccess(),{TargetGroupStickinessConfig:convertCfnListenerRuleTargetGroupStickinessConfigPropertyToCloudFormation(properties.targetGroupStickinessConfig),TargetGroups:cdk().listMapper(convertCfnListenerRuleTargetGroupTuplePropertyToCloudFormation)(properties.targetGroups)}):properties}function CfnListenerRuleForwardConfigPropertyFromCloudFormation(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("targetGroups","TargetGroups",properties.TargetGroups!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerRuleTargetGroupTuplePropertyFromCloudFormation)(properties.TargetGroups):void 0),ret.addPropertyResult("targetGroupStickinessConfig","TargetGroupStickinessConfig",properties.TargetGroupStickinessConfig!=null?CfnListenerRuleTargetGroupStickinessConfigPropertyFromCloudFormation(properties.TargetGroupStickinessConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleAuthenticateOidcConfigPropertyValidator(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("authenticationRequestExtraParams",cdk().hashValidator(cdk().validateString))(properties.authenticationRequestExtraParams)),errors.collect(cdk().propertyValidator("authorizationEndpoint",cdk().requiredValidator)(properties.authorizationEndpoint)),errors.collect(cdk().propertyValidator("authorizationEndpoint",cdk().validateString)(properties.authorizationEndpoint)),errors.collect(cdk().propertyValidator("clientId",cdk().requiredValidator)(properties.clientId)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("issuer",cdk().requiredValidator)(properties.issuer)),errors.collect(cdk().propertyValidator("issuer",cdk().validateString)(properties.issuer)),errors.collect(cdk().propertyValidator("onUnauthenticatedRequest",cdk().validateString)(properties.onUnauthenticatedRequest)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("sessionCookieName",cdk().validateString)(properties.sessionCookieName)),errors.collect(cdk().propertyValidator("sessionTimeout",cdk().validateNumber)(properties.sessionTimeout)),errors.collect(cdk().propertyValidator("tokenEndpoint",cdk().requiredValidator)(properties.tokenEndpoint)),errors.collect(cdk().propertyValidator("tokenEndpoint",cdk().validateString)(properties.tokenEndpoint)),errors.collect(cdk().propertyValidator("useExistingClientSecret",cdk().validateBoolean)(properties.useExistingClientSecret)),errors.collect(cdk().propertyValidator("userInfoEndpoint",cdk().requiredValidator)(properties.userInfoEndpoint)),errors.collect(cdk().propertyValidator("userInfoEndpoint",cdk().validateString)(properties.userInfoEndpoint)),errors.wrap('supplied properties not correct for "AuthenticateOidcConfigProperty"')}function convertCfnListenerRuleAuthenticateOidcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleAuthenticateOidcConfigPropertyValidator(properties).assertSuccess(),{AuthenticationRequestExtraParams:cdk().hashMapper(cdk().stringToCloudFormation)(properties.authenticationRequestExtraParams),AuthorizationEndpoint:cdk().stringToCloudFormation(properties.authorizationEndpoint),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),Issuer:cdk().stringToCloudFormation(properties.issuer),OnUnauthenticatedRequest:cdk().stringToCloudFormation(properties.onUnauthenticatedRequest),Scope:cdk().stringToCloudFormation(properties.scope),SessionCookieName:cdk().stringToCloudFormation(properties.sessionCookieName),SessionTimeout:cdk().numberToCloudFormation(properties.sessionTimeout),TokenEndpoint:cdk().stringToCloudFormation(properties.tokenEndpoint),UseExistingClientSecret:cdk().booleanToCloudFormation(properties.useExistingClientSecret),UserInfoEndpoint:cdk().stringToCloudFormation(properties.userInfoEndpoint)}):properties}function CfnListenerRuleAuthenticateOidcConfigPropertyFromCloudFormation(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("authenticationRequestExtraParams","AuthenticationRequestExtraParams",properties.AuthenticationRequestExtraParams!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.AuthenticationRequestExtraParams):void 0),ret.addPropertyResult("authorizationEndpoint","AuthorizationEndpoint",properties.AuthorizationEndpoint!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizationEndpoint):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("issuer","Issuer",properties.Issuer!=null?cfn_parse().FromCloudFormation.getString(properties.Issuer):void 0),ret.addPropertyResult("onUnauthenticatedRequest","OnUnauthenticatedRequest",properties.OnUnauthenticatedRequest!=null?cfn_parse().FromCloudFormation.getString(properties.OnUnauthenticatedRequest):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("sessionCookieName","SessionCookieName",properties.SessionCookieName!=null?cfn_parse().FromCloudFormation.getString(properties.SessionCookieName):void 0),ret.addPropertyResult("sessionTimeout","SessionTimeout",properties.SessionTimeout!=null?cfn_parse().FromCloudFormation.getNumber(properties.SessionTimeout):void 0),ret.addPropertyResult("tokenEndpoint","TokenEndpoint",properties.TokenEndpoint!=null?cfn_parse().FromCloudFormation.getString(properties.TokenEndpoint):void 0),ret.addPropertyResult("useExistingClientSecret","UseExistingClientSecret",properties.UseExistingClientSecret!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UseExistingClientSecret):void 0),ret.addPropertyResult("userInfoEndpoint","UserInfoEndpoint",properties.UserInfoEndpoint!=null?cfn_parse().FromCloudFormation.getString(properties.UserInfoEndpoint):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleActionPropertyValidator(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("authenticateCognitoConfig",CfnListenerRuleAuthenticateCognitoConfigPropertyValidator)(properties.authenticateCognitoConfig)),errors.collect(cdk().propertyValidator("authenticateOidcConfig",CfnListenerRuleAuthenticateOidcConfigPropertyValidator)(properties.authenticateOidcConfig)),errors.collect(cdk().propertyValidator("fixedResponseConfig",CfnListenerRuleFixedResponseConfigPropertyValidator)(properties.fixedResponseConfig)),errors.collect(cdk().propertyValidator("forwardConfig",CfnListenerRuleForwardConfigPropertyValidator)(properties.forwardConfig)),errors.collect(cdk().propertyValidator("order",cdk().validateNumber)(properties.order)),errors.collect(cdk().propertyValidator("redirectConfig",CfnListenerRuleRedirectConfigPropertyValidator)(properties.redirectConfig)),errors.collect(cdk().propertyValidator("targetGroupArn",cdk().validateString)(properties.targetGroupArn)),errors.collect(cdk().propertyValidator("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "ActionProperty"')}function convertCfnListenerRuleActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleActionPropertyValidator(properties).assertSuccess(),{AuthenticateCognitoConfig:convertCfnListenerRuleAuthenticateCognitoConfigPropertyToCloudFormation(properties.authenticateCognitoConfig),AuthenticateOidcConfig:convertCfnListenerRuleAuthenticateOidcConfigPropertyToCloudFormation(properties.authenticateOidcConfig),FixedResponseConfig:convertCfnListenerRuleFixedResponseConfigPropertyToCloudFormation(properties.fixedResponseConfig),ForwardConfig:convertCfnListenerRuleForwardConfigPropertyToCloudFormation(properties.forwardConfig),Order:cdk().numberToCloudFormation(properties.order),RedirectConfig:convertCfnListenerRuleRedirectConfigPropertyToCloudFormation(properties.redirectConfig),TargetGroupArn:cdk().stringToCloudFormation(properties.targetGroupArn),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnListenerRuleActionPropertyFromCloudFormation(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("authenticateCognitoConfig","AuthenticateCognitoConfig",properties.AuthenticateCognitoConfig!=null?CfnListenerRuleAuthenticateCognitoConfigPropertyFromCloudFormation(properties.AuthenticateCognitoConfig):void 0),ret.addPropertyResult("authenticateOidcConfig","AuthenticateOidcConfig",properties.AuthenticateOidcConfig!=null?CfnListenerRuleAuthenticateOidcConfigPropertyFromCloudFormation(properties.AuthenticateOidcConfig):void 0),ret.addPropertyResult("fixedResponseConfig","FixedResponseConfig",properties.FixedResponseConfig!=null?CfnListenerRuleFixedResponseConfigPropertyFromCloudFormation(properties.FixedResponseConfig):void 0),ret.addPropertyResult("forwardConfig","ForwardConfig",properties.ForwardConfig!=null?CfnListenerRuleForwardConfigPropertyFromCloudFormation(properties.ForwardConfig):void 0),ret.addPropertyResult("order","Order",properties.Order!=null?cfn_parse().FromCloudFormation.getNumber(properties.Order):void 0),ret.addPropertyResult("redirectConfig","RedirectConfig",properties.RedirectConfig!=null?CfnListenerRuleRedirectConfigPropertyFromCloudFormation(properties.RedirectConfig):void 0),ret.addPropertyResult("targetGroupArn","TargetGroupArn",properties.TargetGroupArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetGroupArn):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleHttpHeaderConfigPropertyValidator(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("httpHeaderName",cdk().validateString)(properties.httpHeaderName)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "HttpHeaderConfigProperty"')}function convertCfnListenerRuleHttpHeaderConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleHttpHeaderConfigPropertyValidator(properties).assertSuccess(),{HttpHeaderName:cdk().stringToCloudFormation(properties.httpHeaderName),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnListenerRuleHttpHeaderConfigPropertyFromCloudFormation(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("httpHeaderName","HttpHeaderName",properties.HttpHeaderName!=null?cfn_parse().FromCloudFormation.getString(properties.HttpHeaderName):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleQueryStringKeyValuePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "QueryStringKeyValueProperty"')}function convertCfnListenerRuleQueryStringKeyValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleQueryStringKeyValuePropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnListenerRuleQueryStringKeyValuePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleQueryStringConfigPropertyValidator(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("values",cdk().listValidator(CfnListenerRuleQueryStringKeyValuePropertyValidator))(properties.values)),errors.wrap('supplied properties not correct for "QueryStringConfigProperty"')}function convertCfnListenerRuleQueryStringConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleQueryStringConfigPropertyValidator(properties).assertSuccess(),{Values:cdk().listMapper(convertCfnListenerRuleQueryStringKeyValuePropertyToCloudFormation)(properties.values)}):properties}function CfnListenerRuleQueryStringConfigPropertyFromCloudFormation(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("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerRuleQueryStringKeyValuePropertyFromCloudFormation)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleHostHeaderConfigPropertyValidator(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("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "HostHeaderConfigProperty"')}function convertCfnListenerRuleHostHeaderConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleHostHeaderConfigPropertyValidator(properties).assertSuccess(),{Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnListenerRuleHostHeaderConfigPropertyFromCloudFormation(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("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleHttpRequestMethodConfigPropertyValidator(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("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "HttpRequestMethodConfigProperty"')}function convertCfnListenerRuleHttpRequestMethodConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleHttpRequestMethodConfigPropertyValidator(properties).assertSuccess(),{Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnListenerRuleHttpRequestMethodConfigPropertyFromCloudFormation(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("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRulePathPatternConfigPropertyValidator(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("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "PathPatternConfigProperty"')}function convertCfnListenerRulePathPatternConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRulePathPatternConfigPropertyValidator(properties).assertSuccess(),{Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnListenerRulePathPatternConfigPropertyFromCloudFormation(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("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleSourceIpConfigPropertyValidator(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("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "SourceIpConfigProperty"')}function convertCfnListenerRuleSourceIpConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleSourceIpConfigPropertyValidator(properties).assertSuccess(),{Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnListenerRuleSourceIpConfigPropertyFromCloudFormation(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("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRuleRuleConditionPropertyValidator(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("field",cdk().validateString)(properties.field)),errors.collect(cdk().propertyValidator("hostHeaderConfig",CfnListenerRuleHostHeaderConfigPropertyValidator)(properties.hostHeaderConfig)),errors.collect(cdk().propertyValidator("httpHeaderConfig",CfnListenerRuleHttpHeaderConfigPropertyValidator)(properties.httpHeaderConfig)),errors.collect(cdk().propertyValidator("httpRequestMethodConfig",CfnListenerRuleHttpRequestMethodConfigPropertyValidator)(properties.httpRequestMethodConfig)),errors.collect(cdk().propertyValidator("pathPatternConfig",CfnListenerRulePathPatternConfigPropertyValidator)(properties.pathPatternConfig)),errors.collect(cdk().propertyValidator("queryStringConfig",CfnListenerRuleQueryStringConfigPropertyValidator)(properties.queryStringConfig)),errors.collect(cdk().propertyValidator("sourceIpConfig",CfnListenerRuleSourceIpConfigPropertyValidator)(properties.sourceIpConfig)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "RuleConditionProperty"')}function convertCfnListenerRuleRuleConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRuleRuleConditionPropertyValidator(properties).assertSuccess(),{Field:cdk().stringToCloudFormation(properties.field),HostHeaderConfig:convertCfnListenerRuleHostHeaderConfigPropertyToCloudFormation(properties.hostHeaderConfig),HttpHeaderConfig:convertCfnListenerRuleHttpHeaderConfigPropertyToCloudFormation(properties.httpHeaderConfig),HttpRequestMethodConfig:convertCfnListenerRuleHttpRequestMethodConfigPropertyToCloudFormation(properties.httpRequestMethodConfig),PathPatternConfig:convertCfnListenerRulePathPatternConfigPropertyToCloudFormation(properties.pathPatternConfig),QueryStringConfig:convertCfnListenerRuleQueryStringConfigPropertyToCloudFormation(properties.queryStringConfig),SourceIpConfig:convertCfnListenerRuleSourceIpConfigPropertyToCloudFormation(properties.sourceIpConfig),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnListenerRuleRuleConditionPropertyFromCloudFormation(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("field","Field",properties.Field!=null?cfn_parse().FromCloudFormation.getString(properties.Field):void 0),ret.addPropertyResult("hostHeaderConfig","HostHeaderConfig",properties.HostHeaderConfig!=null?CfnListenerRuleHostHeaderConfigPropertyFromCloudFormation(properties.HostHeaderConfig):void 0),ret.addPropertyResult("httpHeaderConfig","HttpHeaderConfig",properties.HttpHeaderConfig!=null?CfnListenerRuleHttpHeaderConfigPropertyFromCloudFormation(properties.HttpHeaderConfig):void 0),ret.addPropertyResult("httpRequestMethodConfig","HttpRequestMethodConfig",properties.HttpRequestMethodConfig!=null?CfnListenerRuleHttpRequestMethodConfigPropertyFromCloudFormation(properties.HttpRequestMethodConfig):void 0),ret.addPropertyResult("pathPatternConfig","PathPatternConfig",properties.PathPatternConfig!=null?CfnListenerRulePathPatternConfigPropertyFromCloudFormation(properties.PathPatternConfig):void 0),ret.addPropertyResult("queryStringConfig","QueryStringConfig",properties.QueryStringConfig!=null?CfnListenerRuleQueryStringConfigPropertyFromCloudFormation(properties.QueryStringConfig):void 0),ret.addPropertyResult("sourceIpConfig","SourceIpConfig",properties.SourceIpConfig!=null?CfnListenerRuleSourceIpConfigPropertyFromCloudFormation(properties.SourceIpConfig):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnListenerRulePropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("actions",cdk().requiredValidator)(properties.actions)),errors.collect(cdk().propertyValidator("actions",cdk().listValidator(CfnListenerRuleActionPropertyValidator))(properties.actions)),errors.collect(cdk().propertyValidator("conditions",cdk().requiredValidator)(properties.conditions)),errors.collect(cdk().propertyValidator("conditions",cdk().listValidator(CfnListenerRuleRuleConditionPropertyValidator))(properties.conditions)),errors.collect(cdk().propertyValidator("listenerArn",cdk().validateString)(properties.listenerArn)),errors.collect(cdk().propertyValidator("priority",cdk().requiredValidator)(properties.priority)),errors.collect(cdk().propertyValidator("priority",cdk().validateNumber)(properties.priority)),errors.wrap('supplied properties not correct for "CfnListenerRuleProps"')}function convertCfnListenerRulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnListenerRulePropsValidator(properties).assertSuccess(),{Actions:cdk().listMapper(convertCfnListenerRuleActionPropertyToCloudFormation)(properties.actions),Conditions:cdk().listMapper(convertCfnListenerRuleRuleConditionPropertyToCloudFormation)(properties.conditions),ListenerArn:cdk().stringToCloudFormation(properties.listenerArn),Priority:cdk().numberToCloudFormation(properties.priority)}):properties}function CfnListenerRulePropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("actions","Actions",properties.Actions!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerRuleActionPropertyFromCloudFormation)(properties.Actions):void 0),ret.addPropertyResult("conditions","Conditions",properties.Conditions!=null?cfn_parse().FromCloudFormation.getArray(CfnListenerRuleRuleConditionPropertyFromCloudFormation)(properties.Conditions):void 0),ret.addPropertyResult("listenerArn","ListenerArn",properties.ListenerArn!=null?cfn_parse().FromCloudFormation.getString(properties.ListenerArn):void 0),ret.addPropertyResult("priority","Priority",properties.Priority!=null?cfn_parse().FromCloudFormation.getNumber(properties.Priority):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnLoadBalancer extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLoadBalancerPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");const ret=new CfnLoadBalancer(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}constructor(scope,id,props={}){super(scope,id,{type:CfnLoadBalancer.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_elasticloadbalancingv2_CfnLoadBalancerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLoadBalancer),error}this.attrCanonicalHostedZoneId=cdk().Token.asString(this.getAtt("CanonicalHostedZoneID",cdk().ResolutionTypeHint.STRING)),this.attrDnsName=cdk().Token.asString(this.getAtt("DNSName",cdk().ResolutionTypeHint.STRING)),this.attrLoadBalancerArn=cdk().Token.asString(this.getAtt("LoadBalancerArn",cdk().ResolutionTypeHint.STRING)),this.attrLoadBalancerFullName=cdk().Token.asString(this.getAtt("LoadBalancerFullName",cdk().ResolutionTypeHint.STRING)),this.attrLoadBalancerName=cdk().Token.asString(this.getAtt("LoadBalancerName",cdk().ResolutionTypeHint.STRING)),this.attrSecurityGroups=cdk().Token.asList(this.getAtt("SecurityGroups",cdk().ResolutionTypeHint.STRING_LIST)),this.enforceSecurityGroupInboundRulesOnPrivateLinkTraffic=props.enforceSecurityGroupInboundRulesOnPrivateLinkTraffic,this.ipAddressType=props.ipAddressType,this.loadBalancerAttributes=props.loadBalancerAttributes,this.name=props.name,this.scheme=props.scheme,this.securityGroups=props.securityGroups,this.subnetMappings=props.subnetMappings,this.subnets=props.subnets,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::ElasticLoadBalancingV2::LoadBalancer",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags,this.type=props.type}get cfnProperties(){return{enforceSecurityGroupInboundRulesOnPrivateLinkTraffic:this.enforceSecurityGroupInboundRulesOnPrivateLinkTraffic,ipAddressType:this.ipAddressType,loadBalancerAttributes:this.loadBalancerAttributes,name:this.name,scheme:this.scheme,securityGroups:this.securityGroups,subnetMappings:this.subnetMappings,subnets:this.subnets,tags:this.tags.renderTags(),type:this.type}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnLoadBalancer.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnLoadBalancerPropsToCloudFormation(props)}}exports.CfnLoadBalancer=CfnLoadBalancer,_d=JSII_RTTI_SYMBOL_1,CfnLoadBalancer[_d]={fqn:"aws-cdk-lib.aws_elasticloadbalancingv2.CfnLoadBalancer",version:"2.130.0"},CfnLoadBalancer.CFN_RESOURCE_TYPE_NAME="AWS::ElasticLoadBalancingV2::LoadBalancer";function CfnLoadBalancerLoadBalancerAttributePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "LoadBalancerAttributeProperty"')}function convertCfnLoadBalancerLoadBalancerAttributePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLoadBalancerLoadBalancerAttributePropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnLoadBalancerLoadBalancerAttributePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnLoadBalancerSubnetMappingPropertyValidator(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("allocationId",cdk().validateString)(properties.allocationId)),errors.collect(cdk().propertyValidator("iPv6Address",cdk().validateString)(properties.iPv6Address)),errors.collect(cdk().propertyValidator("privateIPv4Address",cdk().validateString)(properties.privateIPv4Address)),errors.collect(cdk().propertyValidator("subnetId",cdk().requiredValidator)(properties.subnetId)),errors.collect(cdk().propertyValidator("subnetId",cdk().validateString)(properties.subnetId)),errors.wrap('supplied properties not correct for "SubnetMappingProperty"')}function convertCfnLoadBalancerSubnetMappingPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLoadBalancerSubnetMappingPropertyValidator(properties).assertSuccess(),{AllocationId:cdk().stringToCloudFormation(properties.allocationId),IPv6Address:cdk().stringToCloudFormation(properties.iPv6Address),PrivateIPv4Address:cdk().stringToCloudFormation(properties.privateIPv4Address),SubnetId:cdk().stringToCloudFormation(properties.subnetId)}):properties}function CfnLoadBalancerSubnetMappingPropertyFromCloudFormation(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("allocationId","AllocationId",properties.AllocationId!=null?cfn_parse().FromCloudFormation.getString(properties.AllocationId):void 0),ret.addPropertyResult("iPv6Address","IPv6Address",properties.IPv6Address!=null?cfn_parse().FromCloudFormation.getString(properties.IPv6Address):void 0),ret.addPropertyResult("privateIPv4Address","PrivateIPv4Address",properties.PrivateIPv4Address!=null?cfn_parse().FromCloudFormation.getString(properties.PrivateIPv4Address):void 0),ret.addPropertyResult("subnetId","SubnetId",properties.SubnetId!=null?cfn_parse().FromCloudFormation.getString(properties.SubnetId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnLoadBalancerPropsValidator(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("enforceSecurityGroupInboundRulesOnPrivateLinkTraffic",cdk().validateString)(properties.enforceSecurityGroupInboundRulesOnPrivateLinkTraffic)),errors.collect(cdk().propertyValidator("ipAddressType",cdk().validateString)(properties.ipAddressType)),errors.collect(cdk().propertyValidator("loadBalancerAttributes",cdk().listValidator(CfnLoadBalancerLoadBalancerAttributePropertyValidator))(properties.loadBalancerAttributes)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("scheme",cdk().validateString)(properties.scheme)),errors.collect(cdk().propertyValidator("securityGroups",cdk().listValidator(cdk().validateString))(properties.securityGroups)),errors.collect(cdk().propertyValidator("subnetMappings",cdk().listValidator(CfnLoadBalancerSubnetMappingPropertyValidator))(properties.subnetMappings)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "CfnLoadBalancerProps"')}function convertCfnLoadBalancerPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLoadBalancerPropsValidator(properties).assertSuccess(),{EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic:cdk().stringToCloudFormation(properties.enforceSecurityGroupInboundRulesOnPrivateLinkTraffic),IpAddressType:cdk().stringToCloudFormation(properties.ipAddressType),LoadBalancerAttributes:cdk().listMapper(convertCfnLoadBalancerLoadBalancerAttributePropertyToCloudFormation)(properties.loadBalancerAttributes),Name:cdk().stringToCloudFormation(properties.name),Scheme:cdk().stringToCloudFormation(properties.scheme),SecurityGroups:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroups),SubnetMappings:cdk().listMapper(convertCfnLoadBalancerSubnetMappingPropertyToCloudFormation)(properties.subnetMappings),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnLoadBalancerPropsFromCloudFormation(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("enforceSecurityGroupInboundRulesOnPrivateLinkTraffic","EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic",properties.EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic!=null?cfn_parse().FromCloudFormation.getString(properties.EnforceSecurityGroupInboundRulesOnPrivateLinkTraffic):void 0),ret.addPropertyResult("ipAddressType","IpAddressType",properties.IpAddressType!=null?cfn_parse().FromCloudFormation.getString(properties.IpAddressType):void 0),ret.addPropertyResult("loadBalancerAttributes","LoadBalancerAttributes",properties.LoadBalancerAttributes!=null?cfn_parse().FromCloudFormation.getArray(CfnLoadBalancerLoadBalancerAttributePropertyFromCloudFormation)(properties.LoadBalancerAttributes):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("scheme","Scheme",properties.Scheme!=null?cfn_parse().FromCloudFormation.getString(properties.Scheme):void 0),ret.addPropertyResult("securityGroups","SecurityGroups",properties.SecurityGroups!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroups):void 0),ret.addPropertyResult("subnetMappings","SubnetMappings",properties.SubnetMappings!=null?cfn_parse().FromCloudFormation.getArray(CfnLoadBalancerSubnetMappingPropertyFromCloudFormation)(properties.SubnetMappings):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTargetGroup extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTargetGroupPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");const ret=new CfnTargetGroup(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}constructor(scope,id,props={}){super(scope,id,{type:CfnTargetGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_elasticloadbalancingv2_CfnTargetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTargetGroup),error}this.attrLoadBalancerArns=cdk().Token.asList(this.getAtt("LoadBalancerArns",cdk().ResolutionTypeHint.STRING_LIST)),this.attrTargetGroupArn=cdk().Token.asString(this.getAtt("TargetGroupArn",cdk().ResolutionTypeHint.STRING)),this.attrTargetGroupFullName=cdk().Token.asString(this.getAtt("TargetGroupFullName",cdk().ResolutionTypeHint.STRING)),this.attrTargetGroupName=cdk().Token.asString(this.getAtt("TargetGroupName",cdk().ResolutionTypeHint.STRING)),this.healthCheckEnabled=props.healthCheckEnabled,this.healthCheckIntervalSeconds=props.healthCheckIntervalSeconds,this.healthCheckPath=props.healthCheckPath,this.healthCheckPort=props.healthCheckPort,this.healthCheckProtocol=props.healthCheckProtocol,this.healthCheckTimeoutSeconds=props.healthCheckTimeoutSeconds,this.healthyThresholdCount=props.healthyThresholdCount,this.ipAddressType=props.ipAddressType,this.matcher=props.matcher,this.name=props.name,this.port=props.port,this.protocol=props.protocol,this.protocolVersion=props.protocolVersion,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::ElasticLoadBalancingV2::TargetGroup",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags,this.targetGroupAttributes=props.targetGroupAttributes,this.targets=props.targets,this.targetType=props.targetType,this.unhealthyThresholdCount=props.unhealthyThresholdCount,this.vpcId=props.vpcId}get cfnProperties(){return{healthCheckEnabled:this.healthCheckEnabled,healthCheckIntervalSeconds:this.healthCheckIntervalSeconds,healthCheckPath:this.healthCheckPath,healthCheckPort:this.healthCheckPort,healthCheckProtocol:this.healthCheckProtocol,healthCheckTimeoutSeconds:this.healthCheckTimeoutSeconds,healthyThresholdCount:this.healthyThresholdCount,ipAddressType:this.ipAddressType,matcher:this.matcher,name:this.name,port:this.port,protocol:this.protocol,protocolVersion:this.protocolVersion,tags:this.tags.renderTags(),targetGroupAttributes:this.targetGroupAttributes,targets:this.targets,targetType:this.targetType,unhealthyThresholdCount:this.unhealthyThresholdCount,vpcId:this.vpcId}}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",CfnTargetGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTargetGroupPropsToCloudFormation(props)}}exports.CfnTargetGroup=CfnTargetGroup,_e=JSII_RTTI_SYMBOL_1,CfnTargetGroup[_e]={fqn:"aws-cdk-lib.aws_elasticloadbalancingv2.CfnTargetGroup",version:"2.130.0"},CfnTargetGroup.CFN_RESOURCE_TYPE_NAME="AWS::ElasticLoadBalancingV2::TargetGroup";function CfnTargetGroupMatcherPropertyValidator(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("grpcCode",cdk().validateString)(properties.grpcCode)),errors.collect(cdk().propertyValidator("httpCode",cdk().validateString)(properties.httpCode)),errors.wrap('supplied properties not correct for "MatcherProperty"')}function convertCfnTargetGroupMatcherPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTargetGroupMatcherPropertyValidator(properties).assertSuccess(),{GrpcCode:cdk().stringToCloudFormation(properties.grpcCode),HttpCode:cdk().stringToCloudFormation(properties.httpCode)}):properties}function CfnTargetGroupMatcherPropertyFromCloudFormation(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("grpcCode","GrpcCode",properties.GrpcCode!=null?cfn_parse().FromCloudFormation.getString(properties.GrpcCode):void 0),ret.addPropertyResult("httpCode","HttpCode",properties.HttpCode!=null?cfn_parse().FromCloudFormation.getString(properties.HttpCode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTargetGroupTargetDescriptionPropertyValidator(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("availabilityZone",cdk().validateString)(properties.availabilityZone)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("port",cdk().validateNumber)(properties.port)),errors.wrap('supplied properties not correct for "TargetDescriptionProperty"')}function convertCfnTargetGroupTargetDescriptionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTargetGroupTargetDescriptionPropertyValidator(properties).assertSuccess(),{AvailabilityZone:cdk().stringToCloudFormation(properties.availabilityZone),Id:cdk().stringToCloudFormation(properties.id),Port:cdk().numberToCloudFormation(properties.port)}):properties}function CfnTargetGroupTargetDescriptionPropertyFromCloudFormation(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("availabilityZone","AvailabilityZone",properties.AvailabilityZone!=null?cfn_parse().FromCloudFormation.getString(properties.AvailabilityZone):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse().FromCloudFormation.getNumber(properties.Port):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTargetGroupTargetGroupAttributePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "TargetGroupAttributeProperty"')}function convertCfnTargetGroupTargetGroupAttributePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTargetGroupTargetGroupAttributePropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnTargetGroupTargetGroupAttributePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTargetGroupPropsValidator(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("healthCheckEnabled",cdk().validateBoolean)(properties.healthCheckEnabled)),errors.collect(cdk().propertyValidator("healthCheckIntervalSeconds",cdk().validateNumber)(properties.healthCheckIntervalSeconds)),errors.collect(cdk().propertyValidator("healthCheckPath",cdk().validateString)(properties.healthCheckPath)),errors.collect(cdk().propertyValidator("healthCheckPort",cdk().validateString)(properties.healthCheckPort)),errors.collect(cdk().propertyValidator("healthCheckProtocol",cdk().validateString)(properties.healthCheckProtocol)),errors.collect(cdk().propertyValidator("healthCheckTimeoutSeconds",cdk().validateNumber)(properties.healthCheckTimeoutSeconds)),errors.collect(cdk().propertyValidator("healthyThresholdCount",cdk().validateNumber)(properties.healthyThresholdCount)),errors.collect(cdk().propertyValidator("ipAddressType",cdk().validateString)(properties.ipAddressType)),errors.collect(cdk().propertyValidator("matcher",CfnTargetGroupMatcherPropertyValidator)(properties.matcher)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("port",cdk().validateNumber)(properties.port)),errors.collect(cdk().propertyValidator("protocol",cdk().validateString)(properties.protocol)),errors.collect(cdk().propertyValidator("protocolVersion",cdk().validateString)(properties.protocolVersion)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("targetGroupAttributes",cdk().listValidator(CfnTargetGroupTargetGroupAttributePropertyValidator))(properties.targetGroupAttributes)),errors.collect(cdk().propertyValidator("targetType",cdk().validateString)(properties.targetType)),errors.collect(cdk().propertyValidator("targets",cdk().listValidator(CfnTargetGroupTargetDescriptionPropertyValidator))(properties.targets)),errors.collect(cdk().propertyValidator("unhealthyThresholdCount",cdk().validateNumber)(properties.unhealthyThresholdCount)),errors.collect(cdk().propertyValidator("vpcId",cdk().validateString)(properties.vpcId)),errors.wrap('supplied properties not correct for "CfnTargetGroupProps"')}function convertCfnTargetGroupPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTargetGroupPropsValidator(properties).assertSuccess(),{HealthCheckEnabled:cdk().booleanToCloudFormation(properties.healthCheckEnabled),HealthCheckIntervalSeconds:cdk().numberToCloudFormation(properties.healthCheckIntervalSeconds),HealthCheckPath:cdk().stringToCloudFormation(properties.healthCheckPath),HealthCheckPort:cdk().stringToCloudFormation(properties.healthCheckPort),HealthCheckProtocol:cdk().stringToCloudFormation(properties.healthCheckProtocol),HealthCheckTimeoutSeconds:cdk().numberToCloudFormation(properties.healthCheckTimeoutSeconds),HealthyThresholdCount:cdk().numberToCloudFormation(properties.healthyThresholdCount),IpAddressType:cdk().stringToCloudFormation(properties.ipAddressType),Matcher:convertCfnTargetGroupMatcherPropertyToCloudFormation(properties.matcher),Name:cdk().stringToCloudFormation(properties.name),Port:cdk().numberToCloudFormation(properties.port),Protocol:cdk().stringToCloudFormation(properties.protocol),ProtocolVersion:cdk().stringToCloudFormation(properties.protocolVersion),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TargetGroupAttributes:cdk().listMapper(convertCfnTargetGroupTargetGroupAttributePropertyToCloudFormation)(properties.targetGroupAttributes),TargetType:cdk().stringToCloudFormation(properties.targetType),Targets:cdk().listMapper(convertCfnTargetGroupTargetDescriptionPropertyToCloudFormation)(properties.targets),UnhealthyThresholdCount:cdk().numberToCloudFormation(properties.unhealthyThresholdCount),VpcId:cdk().stringToCloudFormation(properties.vpcId)}):properties}function CfnTargetGroupPropsFromCloudFormation(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("healthCheckEnabled","HealthCheckEnabled",properties.HealthCheckEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.HealthCheckEnabled):void 0),ret.addPropertyResult("healthCheckIntervalSeconds","HealthCheckIntervalSeconds",properties.HealthCheckIntervalSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.HealthCheckIntervalSeconds):void 0),ret.addPropertyResult("healthCheckPath","HealthCheckPath",properties.HealthCheckPath!=null?cfn_parse().FromCloudFormation.getString(properties.HealthCheckPath):void 0),ret.addPropertyResult("healthCheckPort","HealthCheckPort",properties.HealthCheckPort!=null?cfn_parse().FromCloudFormation.getString(properties.HealthCheckPort):void 0),ret.addPropertyResult("healthCheckProtocol","HealthCheckProtocol",properties.HealthCheckProtocol!=null?cfn_parse().FromCloudFormation.getString(properties.HealthCheckProtocol):void 0),ret.addPropertyResult("healthCheckTimeoutSeconds","HealthCheckTimeoutSeconds",properties.HealthCheckTimeoutSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.HealthCheckTimeoutSeconds):void 0),ret.addPropertyResult("healthyThresholdCount","HealthyThresholdCount",properties.HealthyThresholdCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.HealthyThresholdCount):void 0),ret.addPropertyResult("ipAddressType","IpAddressType",properties.IpAddressType!=null?cfn_parse().FromCloudFormation.getString(properties.IpAddressType):void 0),ret.addPropertyResult("matcher","Matcher",properties.Matcher!=null?CfnTargetGroupMatcherPropertyFromCloudFormation(properties.Matcher):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse().FromCloudFormation.getNumber(properties.Port):void 0),ret.addPropertyResult("protocol","Protocol",properties.Protocol!=null?cfn_parse().FromCloudFormation.getString(properties.Protocol):void 0),ret.addPropertyResult("protocolVersion","ProtocolVersion",properties.ProtocolVersion!=null?cfn_parse().FromCloudFormation.getString(properties.ProtocolVersion):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("targetGroupAttributes","TargetGroupAttributes",properties.TargetGroupAttributes!=null?cfn_parse().FromCloudFormation.getArray(CfnTargetGroupTargetGroupAttributePropertyFromCloudFormation)(properties.TargetGroupAttributes):void 0),ret.addPropertyResult("targets","Targets",properties.Targets!=null?cfn_parse().FromCloudFormation.getArray(CfnTargetGroupTargetDescriptionPropertyFromCloudFormation)(properties.Targets):void 0),ret.addPropertyResult("targetType","TargetType",properties.TargetType!=null?cfn_parse().FromCloudFormation.getString(properties.TargetType):void 0),ret.addPropertyResult("unhealthyThresholdCount","UnhealthyThresholdCount",properties.UnhealthyThresholdCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.UnhealthyThresholdCount):void 0),ret.addPropertyResult("vpcId","VpcId",properties.VpcId!=null?cfn_parse().FromCloudFormation.getString(properties.VpcId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTrustStore extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTrustStorePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");const ret=new CfnTrustStore(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}constructor(scope,id,props={}){super(scope,id,{type:CfnTrustStore.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_elasticloadbalancingv2_CfnTrustStoreProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTrustStore),error}this.attrNumberOfCaCertificates=cdk().Token.asNumber(this.getAtt("NumberOfCaCertificates",cdk().ResolutionTypeHint.NUMBER)),this.attrStatus=cdk().Token.asString(this.getAtt("Status",cdk().ResolutionTypeHint.STRING)),this.attrTrustStoreArn=cdk().Token.asString(this.getAtt("TrustStoreArn",cdk().ResolutionTypeHint.STRING)),this.caCertificatesBundleS3Bucket=props.caCertificatesBundleS3Bucket,this.caCertificatesBundleS3Key=props.caCertificatesBundleS3Key,this.caCertificatesBundleS3ObjectVersion=props.caCertificatesBundleS3ObjectVersion,this.name=props.name,this.tags=props.tags}get cfnProperties(){return{caCertificatesBundleS3Bucket:this.caCertificatesBundleS3Bucket,caCertificatesBundleS3Key:this.caCertificatesBundleS3Key,caCertificatesBundleS3ObjectVersion:this.caCertificatesBundleS3ObjectVersion,name:this.name,tags:this.tags}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnTrustStore.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTrustStorePropsToCloudFormation(props)}}exports.CfnTrustStore=CfnTrustStore,_f=JSII_RTTI_SYMBOL_1,CfnTrustStore[_f]={fqn:"aws-cdk-lib.aws_elasticloadbalancingv2.CfnTrustStore",version:"2.130.0"},CfnTrustStore.CFN_RESOURCE_TYPE_NAME="AWS::ElasticLoadBalancingV2::TrustStore";function CfnTrustStorePropsValidator(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("caCertificatesBundleS3Bucket",cdk().validateString)(properties.caCertificatesBundleS3Bucket)),errors.collect(cdk().propertyValidator("caCertificatesBundleS3Key",cdk().validateString)(properties.caCertificatesBundleS3Key)),errors.collect(cdk().propertyValidator("caCertificatesBundleS3ObjectVersion",cdk().validateString)(properties.caCertificatesBundleS3ObjectVersion)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnTrustStoreProps"')}function convertCfnTrustStorePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTrustStorePropsValidator(properties).assertSuccess(),{CaCertificatesBundleS3Bucket:cdk().stringToCloudFormation(properties.caCertificatesBundleS3Bucket),CaCertificatesBundleS3Key:cdk().stringToCloudFormation(properties.caCertificatesBundleS3Key),CaCertificatesBundleS3ObjectVersion:cdk().stringToCloudFormation(properties.caCertificatesBundleS3ObjectVersion),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnTrustStorePropsFromCloudFormation(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("caCertificatesBundleS3Bucket","CaCertificatesBundleS3Bucket",properties.CaCertificatesBundleS3Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.CaCertificatesBundleS3Bucket):void 0),ret.addPropertyResult("caCertificatesBundleS3Key","CaCertificatesBundleS3Key",properties.CaCertificatesBundleS3Key!=null?cfn_parse().FromCloudFormation.getString(properties.CaCertificatesBundleS3Key):void 0),ret.addPropertyResult("caCertificatesBundleS3ObjectVersion","CaCertificatesBundleS3ObjectVersion",properties.CaCertificatesBundleS3ObjectVersion!=null?cfn_parse().FromCloudFormation.getString(properties.CaCertificatesBundleS3ObjectVersion):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTrustStoreRevocation extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTrustStoreRevocationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");const ret=new CfnTrustStoreRevocation(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}constructor(scope,id,props={}){super(scope,id,{type:CfnTrustStoreRevocation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_elasticloadbalancingv2_CfnTrustStoreRevocationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTrustStoreRevocation),error}this.attrRevocationId=cdk().Token.asNumber(this.getAtt("RevocationId",cdk().ResolutionTypeHint.NUMBER)),this.attrTrustStoreRevocations=this.getAtt("TrustStoreRevocations"),this.revocationContents=props.revocationContents,this.trustStoreArn=props.trustStoreArn}get cfnProperties(){return{revocationContents:this.revocationContents,trustStoreArn:this.trustStoreArn}}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",CfnTrustStoreRevocation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTrustStoreRevocationPropsToCloudFormation(props)}}exports.CfnTrustStoreRevocation=CfnTrustStoreRevocation,_g=JSII_RTTI_SYMBOL_1,CfnTrustStoreRevocation[_g]={fqn:"aws-cdk-lib.aws_elasticloadbalancingv2.CfnTrustStoreRevocation",version:"2.130.0"},CfnTrustStoreRevocation.CFN_RESOURCE_TYPE_NAME="AWS::ElasticLoadBalancingV2::TrustStoreRevocation";function CfnTrustStoreRevocationRevocationContentPropertyValidator(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("revocationType",cdk().validateString)(properties.revocationType)),errors.collect(cdk().propertyValidator("s3Bucket",cdk().validateString)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Key",cdk().validateString)(properties.s3Key)),errors.collect(cdk().propertyValidator("s3ObjectVersion",cdk().validateString)(properties.s3ObjectVersion)),errors.wrap('supplied properties not correct for "RevocationContentProperty"')}function convertCfnTrustStoreRevocationRevocationContentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTrustStoreRevocationRevocationContentPropertyValidator(properties).assertSuccess(),{RevocationType:cdk().stringToCloudFormation(properties.revocationType),S3Bucket:cdk().stringToCloudFormation(properties.s3Bucket),S3Key:cdk().stringToCloudFormation(properties.s3Key),S3ObjectVersion:cdk().stringToCloudFormation(properties.s3ObjectVersion)}):properties}function CfnTrustStoreRevocationRevocationContentPropertyFromCloudFormation(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("revocationType","RevocationType",properties.RevocationType!=null?cfn_parse().FromCloudFormation.getString(properties.RevocationType):void 0),ret.addPropertyResult("s3Bucket","S3Bucket",properties.S3Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.S3Bucket):void 0),ret.addPropertyResult("s3Key","S3Key",properties.S3Key!=null?cfn_parse().FromCloudFormation.getString(properties.S3Key):void 0),ret.addPropertyResult("s3ObjectVersion","S3ObjectVersion",properties.S3ObjectVersion!=null?cfn_parse().FromCloudFormation.getString(properties.S3ObjectVersion):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTrustStoreRevocationTrustStoreRevocationPropertyValidator(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("numberOfRevokedEntries",cdk().validateNumber)(properties.numberOfRevokedEntries)),errors.collect(cdk().propertyValidator("revocationId",cdk().validateString)(properties.revocationId)),errors.collect(cdk().propertyValidator("revocationType",cdk().validateString)(properties.revocationType)),errors.collect(cdk().propertyValidator("trustStoreArn",cdk().validateString)(properties.trustStoreArn)),errors.wrap('supplied properties not correct for "TrustStoreRevocationProperty"')}function convertCfnTrustStoreRevocationTrustStoreRevocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTrustStoreRevocationTrustStoreRevocationPropertyValidator(properties).assertSuccess(),{NumberOfRevokedEntries:cdk().numberToCloudFormation(properties.numberOfRevokedEntries),RevocationId:cdk().stringToCloudFormation(properties.revocationId),RevocationType:cdk().stringToCloudFormation(properties.revocationType),TrustStoreArn:cdk().stringToCloudFormation(properties.trustStoreArn)}):properties}function CfnTrustStoreRevocationTrustStoreRevocationPropertyFromCloudFormation(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("numberOfRevokedEntries","NumberOfRevokedEntries",properties.NumberOfRevokedEntries!=null?cfn_parse().FromCloudFormation.getNumber(properties.NumberOfRevokedEntries):void 0),ret.addPropertyResult("revocationId","RevocationId",properties.RevocationId!=null?cfn_parse().FromCloudFormation.getString(properties.RevocationId):void 0),ret.addPropertyResult("revocationType","RevocationType",properties.RevocationType!=null?cfn_parse().FromCloudFormation.getString(properties.RevocationType):void 0),ret.addPropertyResult("trustStoreArn","TrustStoreArn",properties.TrustStoreArn!=null?cfn_parse().FromCloudFormation.getString(properties.TrustStoreArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTrustStoreRevocationPropsValidator(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("revocationContents",cdk().listValidator(CfnTrustStoreRevocationRevocationContentPropertyValidator))(properties.revocationContents)),errors.collect(cdk().propertyValidator("trustStoreArn",cdk().validateString)(properties.trustStoreArn)),errors.wrap('supplied properties not correct for "CfnTrustStoreRevocationProps"')}function convertCfnTrustStoreRevocationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTrustStoreRevocationPropsValidator(properties).assertSuccess(),{RevocationContents:cdk().listMapper(convertCfnTrustStoreRevocationRevocationContentPropertyToCloudFormation)(properties.revocationContents),TrustStoreArn:cdk().stringToCloudFormation(properties.trustStoreArn)}):properties}function CfnTrustStoreRevocationPropsFromCloudFormation(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("revocationContents","RevocationContents",properties.RevocationContents!=null?cfn_parse().FromCloudFormation.getArray(CfnTrustStoreRevocationRevocationContentPropertyFromCloudFormation)(properties.RevocationContents):void 0),ret.addPropertyResult("trustStoreArn","TrustStoreArn",properties.TrustStoreArn!=null?cfn_parse().FromCloudFormation.getString(properties.TrustStoreArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}