aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1 lines • 133 kB
JavaScript
"use strict";var _a,_b,_c,_d,_e,_f;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnVpcEndpointAssociation=exports.CfnTLSInspectionConfiguration=exports.CfnRuleGroup=exports.CfnLoggingConfiguration=exports.CfnFirewallPolicy=exports.CfnFirewall=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},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnFirewall extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFirewallPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnFirewall(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:CfnFirewall.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_networkfirewall_CfnFirewallProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFirewall),error}cdk().requireProperty(props,"firewallName",this),cdk().requireProperty(props,"firewallPolicyArn",this),cdk().requireProperty(props,"subnetMappings",this),cdk().requireProperty(props,"vpcId",this),this.attrEndpointIds=cdk().Token.asList(this.getAtt("EndpointIds",cdk().ResolutionTypeHint.STRING_LIST)),this.attrFirewallArn=cdk().Token.asString(this.getAtt("FirewallArn",cdk().ResolutionTypeHint.STRING)),this.attrFirewallId=cdk().Token.asString(this.getAtt("FirewallId",cdk().ResolutionTypeHint.STRING)),this.deleteProtection=props.deleteProtection,this.description=props.description,this.enabledAnalysisTypes=props.enabledAnalysisTypes,this.firewallName=props.firewallName,this.firewallPolicyArn=props.firewallPolicyArn,this.firewallPolicyChangeProtection=props.firewallPolicyChangeProtection,this.subnetChangeProtection=props.subnetChangeProtection,this.subnetMappings=props.subnetMappings,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::NetworkFirewall::Firewall",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags,this.vpcId=props.vpcId}get cfnProperties(){return{deleteProtection:this.deleteProtection,description:this.description,enabledAnalysisTypes:this.enabledAnalysisTypes,firewallName:this.firewallName,firewallPolicyArn:this.firewallPolicyArn,firewallPolicyChangeProtection:this.firewallPolicyChangeProtection,subnetChangeProtection:this.subnetChangeProtection,subnetMappings:this.subnetMappings,tags:this.tags.renderTags(),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",CfnFirewall.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnFirewallPropsToCloudFormation(props)}}exports.CfnFirewall=CfnFirewall,_a=JSII_RTTI_SYMBOL_1,CfnFirewall[_a]={fqn:"aws-cdk-lib.aws_networkfirewall.CfnFirewall",version:"2.202.0"},CfnFirewall.CFN_RESOURCE_TYPE_NAME="AWS::NetworkFirewall::Firewall";function CfnFirewallSubnetMappingPropertyValidator(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("ipAddressType",cdk().validateString)(properties.ipAddressType)),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 convertCfnFirewallSubnetMappingPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallSubnetMappingPropertyValidator(properties).assertSuccess(),{IPAddressType:cdk().stringToCloudFormation(properties.ipAddressType),SubnetId:cdk().stringToCloudFormation(properties.subnetId)}):properties}function CfnFirewallSubnetMappingPropertyFromCloudFormation(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("ipAddressType","IPAddressType",properties.IPAddressType!=null?cfn_parse().FromCloudFormation.getString(properties.IPAddressType):void 0),ret.addPropertyResult("subnetId","SubnetId",properties.SubnetId!=null?cfn_parse().FromCloudFormation.getString(properties.SubnetId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPropsValidator(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("deleteProtection",cdk().validateBoolean)(properties.deleteProtection)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("enabledAnalysisTypes",cdk().listValidator(cdk().validateString))(properties.enabledAnalysisTypes)),errors.collect(cdk().propertyValidator("firewallName",cdk().requiredValidator)(properties.firewallName)),errors.collect(cdk().propertyValidator("firewallName",cdk().validateString)(properties.firewallName)),errors.collect(cdk().propertyValidator("firewallPolicyArn",cdk().requiredValidator)(properties.firewallPolicyArn)),errors.collect(cdk().propertyValidator("firewallPolicyArn",cdk().validateString)(properties.firewallPolicyArn)),errors.collect(cdk().propertyValidator("firewallPolicyChangeProtection",cdk().validateBoolean)(properties.firewallPolicyChangeProtection)),errors.collect(cdk().propertyValidator("subnetChangeProtection",cdk().validateBoolean)(properties.subnetChangeProtection)),errors.collect(cdk().propertyValidator("subnetMappings",cdk().requiredValidator)(properties.subnetMappings)),errors.collect(cdk().propertyValidator("subnetMappings",cdk().listValidator(CfnFirewallSubnetMappingPropertyValidator))(properties.subnetMappings)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("vpcId",cdk().requiredValidator)(properties.vpcId)),errors.collect(cdk().propertyValidator("vpcId",cdk().validateString)(properties.vpcId)),errors.wrap('supplied properties not correct for "CfnFirewallProps"')}function convertCfnFirewallPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPropsValidator(properties).assertSuccess(),{DeleteProtection:cdk().booleanToCloudFormation(properties.deleteProtection),Description:cdk().stringToCloudFormation(properties.description),EnabledAnalysisTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.enabledAnalysisTypes),FirewallName:cdk().stringToCloudFormation(properties.firewallName),FirewallPolicyArn:cdk().stringToCloudFormation(properties.firewallPolicyArn),FirewallPolicyChangeProtection:cdk().booleanToCloudFormation(properties.firewallPolicyChangeProtection),SubnetChangeProtection:cdk().booleanToCloudFormation(properties.subnetChangeProtection),SubnetMappings:cdk().listMapper(convertCfnFirewallSubnetMappingPropertyToCloudFormation)(properties.subnetMappings),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VpcId:cdk().stringToCloudFormation(properties.vpcId)}):properties}function CfnFirewallPropsFromCloudFormation(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("deleteProtection","DeleteProtection",properties.DeleteProtection!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DeleteProtection):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("enabledAnalysisTypes","EnabledAnalysisTypes",properties.EnabledAnalysisTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.EnabledAnalysisTypes):void 0),ret.addPropertyResult("firewallName","FirewallName",properties.FirewallName!=null?cfn_parse().FromCloudFormation.getString(properties.FirewallName):void 0),ret.addPropertyResult("firewallPolicyArn","FirewallPolicyArn",properties.FirewallPolicyArn!=null?cfn_parse().FromCloudFormation.getString(properties.FirewallPolicyArn):void 0),ret.addPropertyResult("firewallPolicyChangeProtection","FirewallPolicyChangeProtection",properties.FirewallPolicyChangeProtection!=null?cfn_parse().FromCloudFormation.getBoolean(properties.FirewallPolicyChangeProtection):void 0),ret.addPropertyResult("subnetChangeProtection","SubnetChangeProtection",properties.SubnetChangeProtection!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SubnetChangeProtection):void 0),ret.addPropertyResult("subnetMappings","SubnetMappings",properties.SubnetMappings!=null?cfn_parse().FromCloudFormation.getArray(CfnFirewallSubnetMappingPropertyFromCloudFormation)(properties.SubnetMappings):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcId","VpcId",properties.VpcId!=null?cfn_parse().FromCloudFormation.getString(properties.VpcId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFirewallPolicy extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFirewallPolicyPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnFirewallPolicy(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:CfnFirewallPolicy.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_networkfirewall_CfnFirewallPolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFirewallPolicy),error}cdk().requireProperty(props,"firewallPolicy",this),cdk().requireProperty(props,"firewallPolicyName",this),this.attrFirewallPolicyArn=cdk().Token.asString(this.getAtt("FirewallPolicyArn",cdk().ResolutionTypeHint.STRING)),this.attrFirewallPolicyId=cdk().Token.asString(this.getAtt("FirewallPolicyId",cdk().ResolutionTypeHint.STRING)),this.description=props.description,this.firewallPolicy=props.firewallPolicy,this.firewallPolicyName=props.firewallPolicyName,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::NetworkFirewall::FirewallPolicy",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{description:this.description,firewallPolicy:this.firewallPolicy,firewallPolicyName:this.firewallPolicyName,tags:this.tags.renderTags()}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnFirewallPolicy.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnFirewallPolicyPropsToCloudFormation(props)}}exports.CfnFirewallPolicy=CfnFirewallPolicy,_b=JSII_RTTI_SYMBOL_1,CfnFirewallPolicy[_b]={fqn:"aws-cdk-lib.aws_networkfirewall.CfnFirewallPolicy",version:"2.202.0"},CfnFirewallPolicy.CFN_RESOURCE_TYPE_NAME="AWS::NetworkFirewall::FirewallPolicy";function CfnFirewallPolicyStatelessRuleGroupReferencePropertyValidator(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("priority",cdk().requiredValidator)(properties.priority)),errors.collect(cdk().propertyValidator("priority",cdk().validateNumber)(properties.priority)),errors.collect(cdk().propertyValidator("resourceArn",cdk().requiredValidator)(properties.resourceArn)),errors.collect(cdk().propertyValidator("resourceArn",cdk().validateString)(properties.resourceArn)),errors.wrap('supplied properties not correct for "StatelessRuleGroupReferenceProperty"')}function convertCfnFirewallPolicyStatelessRuleGroupReferencePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyStatelessRuleGroupReferencePropertyValidator(properties).assertSuccess(),{Priority:cdk().numberToCloudFormation(properties.priority),ResourceArn:cdk().stringToCloudFormation(properties.resourceArn)}):properties}function CfnFirewallPolicyStatelessRuleGroupReferencePropertyFromCloudFormation(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("priority","Priority",properties.Priority!=null?cfn_parse().FromCloudFormation.getNumber(properties.Priority):void 0),ret.addPropertyResult("resourceArn","ResourceArn",properties.ResourceArn!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyStatefulRuleGroupOverridePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),errors.wrap('supplied properties not correct for "StatefulRuleGroupOverrideProperty"')}function convertCfnFirewallPolicyStatefulRuleGroupOverridePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyStatefulRuleGroupOverridePropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action)}):properties}function CfnFirewallPolicyStatefulRuleGroupOverridePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?cfn_parse().FromCloudFormation.getString(properties.Action):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyStatefulRuleGroupReferencePropertyValidator(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("override",CfnFirewallPolicyStatefulRuleGroupOverridePropertyValidator)(properties.override)),errors.collect(cdk().propertyValidator("priority",cdk().validateNumber)(properties.priority)),errors.collect(cdk().propertyValidator("resourceArn",cdk().requiredValidator)(properties.resourceArn)),errors.collect(cdk().propertyValidator("resourceArn",cdk().validateString)(properties.resourceArn)),errors.wrap('supplied properties not correct for "StatefulRuleGroupReferenceProperty"')}function convertCfnFirewallPolicyStatefulRuleGroupReferencePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyStatefulRuleGroupReferencePropertyValidator(properties).assertSuccess(),{Override:convertCfnFirewallPolicyStatefulRuleGroupOverridePropertyToCloudFormation(properties.override),Priority:cdk().numberToCloudFormation(properties.priority),ResourceArn:cdk().stringToCloudFormation(properties.resourceArn)}):properties}function CfnFirewallPolicyStatefulRuleGroupReferencePropertyFromCloudFormation(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("override","Override",properties.Override!=null?CfnFirewallPolicyStatefulRuleGroupOverridePropertyFromCloudFormation(properties.Override):void 0),ret.addPropertyResult("priority","Priority",properties.Priority!=null?cfn_parse().FromCloudFormation.getNumber(properties.Priority):void 0),ret.addPropertyResult("resourceArn","ResourceArn",properties.ResourceArn!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyFlowTimeoutsPropertyValidator(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("tcpIdleTimeoutSeconds",cdk().validateNumber)(properties.tcpIdleTimeoutSeconds)),errors.wrap('supplied properties not correct for "FlowTimeoutsProperty"')}function convertCfnFirewallPolicyFlowTimeoutsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyFlowTimeoutsPropertyValidator(properties).assertSuccess(),{TcpIdleTimeoutSeconds:cdk().numberToCloudFormation(properties.tcpIdleTimeoutSeconds)}):properties}function CfnFirewallPolicyFlowTimeoutsPropertyFromCloudFormation(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("tcpIdleTimeoutSeconds","TcpIdleTimeoutSeconds",properties.TcpIdleTimeoutSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.TcpIdleTimeoutSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyStatefulEngineOptionsPropertyValidator(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("flowTimeouts",CfnFirewallPolicyFlowTimeoutsPropertyValidator)(properties.flowTimeouts)),errors.collect(cdk().propertyValidator("ruleOrder",cdk().validateString)(properties.ruleOrder)),errors.collect(cdk().propertyValidator("streamExceptionPolicy",cdk().validateString)(properties.streamExceptionPolicy)),errors.wrap('supplied properties not correct for "StatefulEngineOptionsProperty"')}function convertCfnFirewallPolicyStatefulEngineOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyStatefulEngineOptionsPropertyValidator(properties).assertSuccess(),{FlowTimeouts:convertCfnFirewallPolicyFlowTimeoutsPropertyToCloudFormation(properties.flowTimeouts),RuleOrder:cdk().stringToCloudFormation(properties.ruleOrder),StreamExceptionPolicy:cdk().stringToCloudFormation(properties.streamExceptionPolicy)}):properties}function CfnFirewallPolicyStatefulEngineOptionsPropertyFromCloudFormation(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("flowTimeouts","FlowTimeouts",properties.FlowTimeouts!=null?CfnFirewallPolicyFlowTimeoutsPropertyFromCloudFormation(properties.FlowTimeouts):void 0),ret.addPropertyResult("ruleOrder","RuleOrder",properties.RuleOrder!=null?cfn_parse().FromCloudFormation.getString(properties.RuleOrder):void 0),ret.addPropertyResult("streamExceptionPolicy","StreamExceptionPolicy",properties.StreamExceptionPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.StreamExceptionPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyDimensionPropertyValidator(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("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "DimensionProperty"')}function convertCfnFirewallPolicyDimensionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyDimensionPropertyValidator(properties).assertSuccess(),{Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnFirewallPolicyDimensionPropertyFromCloudFormation(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("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyPublishMetricActionPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("dimensions",cdk().requiredValidator)(properties.dimensions)),errors.collect(cdk().propertyValidator("dimensions",cdk().listValidator(CfnFirewallPolicyDimensionPropertyValidator))(properties.dimensions)),errors.wrap('supplied properties not correct for "PublishMetricActionProperty"')}function convertCfnFirewallPolicyPublishMetricActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyPublishMetricActionPropertyValidator(properties).assertSuccess(),{Dimensions:cdk().listMapper(convertCfnFirewallPolicyDimensionPropertyToCloudFormation)(properties.dimensions)}):properties}function CfnFirewallPolicyPublishMetricActionPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("dimensions","Dimensions",properties.Dimensions!=null?cfn_parse().FromCloudFormation.getArray(CfnFirewallPolicyDimensionPropertyFromCloudFormation)(properties.Dimensions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyActionDefinitionPropertyValidator(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("publishMetricAction",CfnFirewallPolicyPublishMetricActionPropertyValidator)(properties.publishMetricAction)),errors.wrap('supplied properties not correct for "ActionDefinitionProperty"')}function convertCfnFirewallPolicyActionDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyActionDefinitionPropertyValidator(properties).assertSuccess(),{PublishMetricAction:convertCfnFirewallPolicyPublishMetricActionPropertyToCloudFormation(properties.publishMetricAction)}):properties}function CfnFirewallPolicyActionDefinitionPropertyFromCloudFormation(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("publishMetricAction","PublishMetricAction",properties.PublishMetricAction!=null?CfnFirewallPolicyPublishMetricActionPropertyFromCloudFormation(properties.PublishMetricAction):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyCustomActionPropertyValidator(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("actionDefinition",cdk().requiredValidator)(properties.actionDefinition)),errors.collect(cdk().propertyValidator("actionDefinition",CfnFirewallPolicyActionDefinitionPropertyValidator)(properties.actionDefinition)),errors.collect(cdk().propertyValidator("actionName",cdk().requiredValidator)(properties.actionName)),errors.collect(cdk().propertyValidator("actionName",cdk().validateString)(properties.actionName)),errors.wrap('supplied properties not correct for "CustomActionProperty"')}function convertCfnFirewallPolicyCustomActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyCustomActionPropertyValidator(properties).assertSuccess(),{ActionDefinition:convertCfnFirewallPolicyActionDefinitionPropertyToCloudFormation(properties.actionDefinition),ActionName:cdk().stringToCloudFormation(properties.actionName)}):properties}function CfnFirewallPolicyCustomActionPropertyFromCloudFormation(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("actionDefinition","ActionDefinition",properties.ActionDefinition!=null?CfnFirewallPolicyActionDefinitionPropertyFromCloudFormation(properties.ActionDefinition):void 0),ret.addPropertyResult("actionName","ActionName",properties.ActionName!=null?cfn_parse().FromCloudFormation.getString(properties.ActionName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyIPSetPropertyValidator(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("definition",cdk().listValidator(cdk().validateString))(properties.definition)),errors.wrap('supplied properties not correct for "IPSetProperty"')}function convertCfnFirewallPolicyIPSetPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyIPSetPropertyValidator(properties).assertSuccess(),{Definition:cdk().listMapper(cdk().stringToCloudFormation)(properties.definition)}):properties}function CfnFirewallPolicyIPSetPropertyFromCloudFormation(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("definition","Definition",properties.Definition!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Definition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyPolicyVariablesPropertyValidator(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("ruleVariables",cdk().hashValidator(CfnFirewallPolicyIPSetPropertyValidator))(properties.ruleVariables)),errors.wrap('supplied properties not correct for "PolicyVariablesProperty"')}function convertCfnFirewallPolicyPolicyVariablesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyPolicyVariablesPropertyValidator(properties).assertSuccess(),{RuleVariables:cdk().hashMapper(convertCfnFirewallPolicyIPSetPropertyToCloudFormation)(properties.ruleVariables)}):properties}function CfnFirewallPolicyPolicyVariablesPropertyFromCloudFormation(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("ruleVariables","RuleVariables",properties.RuleVariables!=null?cfn_parse().FromCloudFormation.getMap(CfnFirewallPolicyIPSetPropertyFromCloudFormation)(properties.RuleVariables):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyFirewallPolicyPropertyValidator(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("policyVariables",CfnFirewallPolicyPolicyVariablesPropertyValidator)(properties.policyVariables)),errors.collect(cdk().propertyValidator("statefulDefaultActions",cdk().listValidator(cdk().validateString))(properties.statefulDefaultActions)),errors.collect(cdk().propertyValidator("statefulEngineOptions",CfnFirewallPolicyStatefulEngineOptionsPropertyValidator)(properties.statefulEngineOptions)),errors.collect(cdk().propertyValidator("statefulRuleGroupReferences",cdk().listValidator(CfnFirewallPolicyStatefulRuleGroupReferencePropertyValidator))(properties.statefulRuleGroupReferences)),errors.collect(cdk().propertyValidator("statelessCustomActions",cdk().listValidator(CfnFirewallPolicyCustomActionPropertyValidator))(properties.statelessCustomActions)),errors.collect(cdk().propertyValidator("statelessDefaultActions",cdk().requiredValidator)(properties.statelessDefaultActions)),errors.collect(cdk().propertyValidator("statelessDefaultActions",cdk().listValidator(cdk().validateString))(properties.statelessDefaultActions)),errors.collect(cdk().propertyValidator("statelessFragmentDefaultActions",cdk().requiredValidator)(properties.statelessFragmentDefaultActions)),errors.collect(cdk().propertyValidator("statelessFragmentDefaultActions",cdk().listValidator(cdk().validateString))(properties.statelessFragmentDefaultActions)),errors.collect(cdk().propertyValidator("statelessRuleGroupReferences",cdk().listValidator(CfnFirewallPolicyStatelessRuleGroupReferencePropertyValidator))(properties.statelessRuleGroupReferences)),errors.collect(cdk().propertyValidator("tlsInspectionConfigurationArn",cdk().validateString)(properties.tlsInspectionConfigurationArn)),errors.wrap('supplied properties not correct for "FirewallPolicyProperty"')}function convertCfnFirewallPolicyFirewallPolicyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyFirewallPolicyPropertyValidator(properties).assertSuccess(),{PolicyVariables:convertCfnFirewallPolicyPolicyVariablesPropertyToCloudFormation(properties.policyVariables),StatefulDefaultActions:cdk().listMapper(cdk().stringToCloudFormation)(properties.statefulDefaultActions),StatefulEngineOptions:convertCfnFirewallPolicyStatefulEngineOptionsPropertyToCloudFormation(properties.statefulEngineOptions),StatefulRuleGroupReferences:cdk().listMapper(convertCfnFirewallPolicyStatefulRuleGroupReferencePropertyToCloudFormation)(properties.statefulRuleGroupReferences),StatelessCustomActions:cdk().listMapper(convertCfnFirewallPolicyCustomActionPropertyToCloudFormation)(properties.statelessCustomActions),StatelessDefaultActions:cdk().listMapper(cdk().stringToCloudFormation)(properties.statelessDefaultActions),StatelessFragmentDefaultActions:cdk().listMapper(cdk().stringToCloudFormation)(properties.statelessFragmentDefaultActions),StatelessRuleGroupReferences:cdk().listMapper(convertCfnFirewallPolicyStatelessRuleGroupReferencePropertyToCloudFormation)(properties.statelessRuleGroupReferences),TLSInspectionConfigurationArn:cdk().stringToCloudFormation(properties.tlsInspectionConfigurationArn)}):properties}function CfnFirewallPolicyFirewallPolicyPropertyFromCloudFormation(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("policyVariables","PolicyVariables",properties.PolicyVariables!=null?CfnFirewallPolicyPolicyVariablesPropertyFromCloudFormation(properties.PolicyVariables):void 0),ret.addPropertyResult("statefulDefaultActions","StatefulDefaultActions",properties.StatefulDefaultActions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.StatefulDefaultActions):void 0),ret.addPropertyResult("statefulEngineOptions","StatefulEngineOptions",properties.StatefulEngineOptions!=null?CfnFirewallPolicyStatefulEngineOptionsPropertyFromCloudFormation(properties.StatefulEngineOptions):void 0),ret.addPropertyResult("statefulRuleGroupReferences","StatefulRuleGroupReferences",properties.StatefulRuleGroupReferences!=null?cfn_parse().FromCloudFormation.getArray(CfnFirewallPolicyStatefulRuleGroupReferencePropertyFromCloudFormation)(properties.StatefulRuleGroupReferences):void 0),ret.addPropertyResult("statelessCustomActions","StatelessCustomActions",properties.StatelessCustomActions!=null?cfn_parse().FromCloudFormation.getArray(CfnFirewallPolicyCustomActionPropertyFromCloudFormation)(properties.StatelessCustomActions):void 0),ret.addPropertyResult("statelessDefaultActions","StatelessDefaultActions",properties.StatelessDefaultActions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.StatelessDefaultActions):void 0),ret.addPropertyResult("statelessFragmentDefaultActions","StatelessFragmentDefaultActions",properties.StatelessFragmentDefaultActions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.StatelessFragmentDefaultActions):void 0),ret.addPropertyResult("statelessRuleGroupReferences","StatelessRuleGroupReferences",properties.StatelessRuleGroupReferences!=null?cfn_parse().FromCloudFormation.getArray(CfnFirewallPolicyStatelessRuleGroupReferencePropertyFromCloudFormation)(properties.StatelessRuleGroupReferences):void 0),ret.addPropertyResult("tlsInspectionConfigurationArn","TLSInspectionConfigurationArn",properties.TLSInspectionConfigurationArn!=null?cfn_parse().FromCloudFormation.getString(properties.TLSInspectionConfigurationArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFirewallPolicyPropsValidator(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("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("firewallPolicy",cdk().requiredValidator)(properties.firewallPolicy)),errors.collect(cdk().propertyValidator("firewallPolicy",CfnFirewallPolicyFirewallPolicyPropertyValidator)(properties.firewallPolicy)),errors.collect(cdk().propertyValidator("firewallPolicyName",cdk().requiredValidator)(properties.firewallPolicyName)),errors.collect(cdk().propertyValidator("firewallPolicyName",cdk().validateString)(properties.firewallPolicyName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnFirewallPolicyProps"')}function convertCfnFirewallPolicyPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFirewallPolicyPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),FirewallPolicy:convertCfnFirewallPolicyFirewallPolicyPropertyToCloudFormation(properties.firewallPolicy),FirewallPolicyName:cdk().stringToCloudFormation(properties.firewallPolicyName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnFirewallPolicyPropsFromCloudFormation(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("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("firewallPolicy","FirewallPolicy",properties.FirewallPolicy!=null?CfnFirewallPolicyFirewallPolicyPropertyFromCloudFormation(properties.FirewallPolicy):void 0),ret.addPropertyResult("firewallPolicyName","FirewallPolicyName",properties.FirewallPolicyName!=null?cfn_parse().FromCloudFormation.getString(properties.FirewallPolicyName):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 CfnLoggingConfiguration extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLoggingConfigurationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnLoggingConfiguration(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:CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_networkfirewall_CfnLoggingConfigurationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLoggingConfiguration),error}cdk().requireProperty(props,"firewallArn",this),cdk().requireProperty(props,"loggingConfiguration",this),this.enableMonitoringDashboard=props.enableMonitoringDashboard,this.firewallArn=props.firewallArn,this.firewallName=props.firewallName,this.loggingConfiguration=props.loggingConfiguration}get cfnProperties(){return{enableMonitoringDashboard:this.enableMonitoringDashboard,firewallArn:this.firewallArn,firewallName:this.firewallName,loggingConfiguration:this.loggingConfiguration}}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",CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnLoggingConfigurationPropsToCloudFormation(props)}}exports.CfnLoggingConfiguration=CfnLoggingConfiguration,_c=JSII_RTTI_SYMBOL_1,CfnLoggingConfiguration[_c]={fqn:"aws-cdk-lib.aws_networkfirewall.CfnLoggingConfiguration",version:"2.202.0"},CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME="AWS::NetworkFirewall::LoggingConfiguration";function CfnLoggingConfigurationLogDestinationConfigPropertyValidator(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("logDestination",cdk().requiredValidator)(properties.logDestination)),errors.collect(cdk().propertyValidator("logDestination",cdk().hashValidator(cdk().validateString))(properties.logDestination)),errors.collect(cdk().propertyValidator("logDestinationType",cdk().requiredValidator)(properties.logDestinationType)),errors.collect(cdk().propertyValidator("logDestinationType",cdk().validateString)(properties.logDestinationType)),errors.collect(cdk().propertyValidator("logType",cdk().requiredValidator)(properties.logType)),errors.collect(cdk().propertyValidator("logType",cdk().validateString)(properties.logType)),errors.wrap('supplied properties not correct for "LogDestinationConfigProperty"')}function convertCfnLoggingConfigurationLogDestinationConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLoggingConfigurationLogDestinationConfigPropertyValidator(properties).assertSuccess(),{LogDestination:cdk().hashMapper(cdk().stringToCloudFormation)(properties.logDestination),LogDestinationType:cdk().stringToCloudFormation(properties.logDestinationType),LogType:cdk().stringToCloudFormation(properties.logType)}):properties}function CfnLoggingConfigurationLogDestinationConfigPropertyFromCloudFormation(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("logDestination","LogDestination",properties.LogDestination!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.LogDestination):void 0),ret.addPropertyResult("logDestinationType","LogDestinationType",properties.LogDestinationType!=null?cfn_parse().FromCloudFormation.getString(properties.LogDestinationType):void 0),ret.addPropertyResult("logType","LogType",properties.LogType!=null?cfn_parse().FromCloudFormation.getString(properties.LogType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnLoggingConfigurationLoggingConfigurationPropertyValidator(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("logDestinationConfigs",cdk().requiredValidator)(properties.logDestinationConfigs)),errors.collect(cdk().propertyValidator("logDestinationConfigs",cdk().listValidator(CfnLoggingConfigurationLogDestinationConfigPropertyValidator))(properties.logDestinationConfigs)),errors.wrap('supplied properties not correct for "LoggingConfigurationProperty"')}function convertCfnLoggingConfigurationLoggingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLoggingConfigurationLoggingConfigurationPropertyValidator(properties).assertSuccess(),{LogDestinationConfigs:cdk().listMapper(convertCfnLoggingConfigurationLogDestinationConfigPropertyToCloudFormation)(properties.logDestinationConfigs)}):properties}function CfnLoggingConfigurationLoggingConfigurationPropertyFromCloudFormation(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("logDestinationConfigs","LogDestinationConfigs",properties.LogDestinationConfigs!=null?cfn_parse().FromCloudFormation.getArray(CfnLoggingConfigurationLogDestinationConfigPropertyFromCloudFormation)(properties.LogDestinationConfigs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnLoggingConfigurationPropsValidator(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("enableMonitoringDashboard",cdk().validateBoolean)(properties.enableMonitoringDashboard)),errors.collect(cdk().propertyValidator("firewallArn",cdk().requiredValidator)(properties.firewallArn)),errors.collect(cdk().propertyValidator("firewallArn",cdk().validateString)(properties.firewallArn)),errors.collect(cdk().propertyValidator("firewallName",cdk().validateString)(properties.firewallName)),errors.collect(cdk().propertyValidator("loggingConfiguration",cdk().requiredValidator)(properties.loggingConfiguration)),errors.collect(cdk().propertyValidator("loggingConfiguration",CfnLoggingConfigurationLoggingConfigurationPropertyValidator)(properties.loggingConfiguration)),errors.wrap('supplied properties not correct for "CfnLoggingConfigurationProps"')}function convertCfnLoggingConfigurationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLoggingConfigurationPropsValidator(properties).assertSuccess(),{EnableMonitoringDashboard:cdk().booleanToCloudFormation(properties.enableMonitoringDashboard),FirewallArn:cdk().stringToCloudFormation(properties.firewallArn),FirewallName:cdk().stringToCloudFormation(properties.firewallName),LoggingConfiguration:convertCfnLoggingConfigurationLoggingConfigurationPropertyToCloudFormation(properties.loggingConfiguration)}):properties}function CfnLoggingConfigurationPropsFromCloudForma