UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 121 kB
"use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnStoredQuery=exports.CfnRemediationConfiguration=exports.CfnOrganizationConformancePack=exports.CfnOrganizationConfigRule=exports.CfnDeliveryChannel=exports.CfnConformancePack=exports.CfnConfigurationRecorder=exports.CfnConfigurationAggregator=exports.CfnConfigRule=exports.CfnAggregationAuthorization=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 CfnAggregationAuthorization extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAggregationAuthorizationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnAggregationAuthorization(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:CfnAggregationAuthorization.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_config_CfnAggregationAuthorizationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAggregationAuthorization),error}cdk().requireProperty(props,"authorizedAccountId",this),cdk().requireProperty(props,"authorizedAwsRegion",this),this.attrAggregationAuthorizationArn=cdk().Token.asString(this.getAtt("AggregationAuthorizationArn",cdk().ResolutionTypeHint.STRING)),this.authorizedAccountId=props.authorizedAccountId,this.authorizedAwsRegion=props.authorizedAwsRegion,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Config::AggregationAuthorization",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{authorizedAccountId:this.authorizedAccountId,authorizedAwsRegion:this.authorizedAwsRegion,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",CfnAggregationAuthorization.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAggregationAuthorizationPropsToCloudFormation(props)}}exports.CfnAggregationAuthorization=CfnAggregationAuthorization,_a=JSII_RTTI_SYMBOL_1,CfnAggregationAuthorization[_a]={fqn:"aws-cdk-lib.aws_config.CfnAggregationAuthorization",version:"2.202.0"},CfnAggregationAuthorization.CFN_RESOURCE_TYPE_NAME="AWS::Config::AggregationAuthorization";function CfnAggregationAuthorizationPropsValidator(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("authorizedAccountId",cdk().requiredValidator)(properties.authorizedAccountId)),errors.collect(cdk().propertyValidator("authorizedAccountId",cdk().validateString)(properties.authorizedAccountId)),errors.collect(cdk().propertyValidator("authorizedAwsRegion",cdk().requiredValidator)(properties.authorizedAwsRegion)),errors.collect(cdk().propertyValidator("authorizedAwsRegion",cdk().validateString)(properties.authorizedAwsRegion)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnAggregationAuthorizationProps"')}function convertCfnAggregationAuthorizationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAggregationAuthorizationPropsValidator(properties).assertSuccess(),{AuthorizedAccountId:cdk().stringToCloudFormation(properties.authorizedAccountId),AuthorizedAwsRegion:cdk().stringToCloudFormation(properties.authorizedAwsRegion),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnAggregationAuthorizationPropsFromCloudFormation(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("authorizedAccountId","AuthorizedAccountId",properties.AuthorizedAccountId!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizedAccountId):void 0),ret.addPropertyResult("authorizedAwsRegion","AuthorizedAwsRegion",properties.AuthorizedAwsRegion!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizedAwsRegion):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 CfnConfigRule extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigRulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnConfigRule(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:CfnConfigRule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_config_CfnConfigRuleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfigRule),error}cdk().requireProperty(props,"source",this),this.attrArn=cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING)),this.attrComplianceType=cdk().Token.asString(this.getAtt("Compliance.Type",cdk().ResolutionTypeHint.STRING)),this.attrConfigRuleId=cdk().Token.asString(this.getAtt("ConfigRuleId",cdk().ResolutionTypeHint.STRING)),this.compliance=props.compliance,this.configRuleName=props.configRuleName,this.description=props.description,this.evaluationModes=props.evaluationModes,this.inputParameters=props.inputParameters,this.maximumExecutionFrequency=props.maximumExecutionFrequency,this.scope=props.scope,this.source=props.source}get cfnProperties(){return{compliance:this.compliance,configRuleName:this.configRuleName,description:this.description,evaluationModes:this.evaluationModes,inputParameters:this.inputParameters,maximumExecutionFrequency:this.maximumExecutionFrequency,scope:this.scope,source:this.source}}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",CfnConfigRule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigRulePropsToCloudFormation(props)}}exports.CfnConfigRule=CfnConfigRule,_b=JSII_RTTI_SYMBOL_1,CfnConfigRule[_b]={fqn:"aws-cdk-lib.aws_config.CfnConfigRule",version:"2.202.0"},CfnConfigRule.CFN_RESOURCE_TYPE_NAME="AWS::Config::ConfigRule";function CfnConfigRuleEvaluationModeConfigurationPropertyValidator(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("mode",cdk().validateString)(properties.mode)),errors.wrap('supplied properties not correct for "EvaluationModeConfigurationProperty"')}function convertCfnConfigRuleEvaluationModeConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigRuleEvaluationModeConfigurationPropertyValidator(properties).assertSuccess(),{Mode:cdk().stringToCloudFormation(properties.mode)}):properties}function CfnConfigRuleEvaluationModeConfigurationPropertyFromCloudFormation(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("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigRuleScopePropertyValidator(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("complianceResourceId",cdk().validateString)(properties.complianceResourceId)),errors.collect(cdk().propertyValidator("complianceResourceTypes",cdk().listValidator(cdk().validateString))(properties.complianceResourceTypes)),errors.collect(cdk().propertyValidator("tagKey",cdk().validateString)(properties.tagKey)),errors.collect(cdk().propertyValidator("tagValue",cdk().validateString)(properties.tagValue)),errors.wrap('supplied properties not correct for "ScopeProperty"')}function convertCfnConfigRuleScopePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigRuleScopePropertyValidator(properties).assertSuccess(),{ComplianceResourceId:cdk().stringToCloudFormation(properties.complianceResourceId),ComplianceResourceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.complianceResourceTypes),TagKey:cdk().stringToCloudFormation(properties.tagKey),TagValue:cdk().stringToCloudFormation(properties.tagValue)}):properties}function CfnConfigRuleScopePropertyFromCloudFormation(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("complianceResourceId","ComplianceResourceId",properties.ComplianceResourceId!=null?cfn_parse().FromCloudFormation.getString(properties.ComplianceResourceId):void 0),ret.addPropertyResult("complianceResourceTypes","ComplianceResourceTypes",properties.ComplianceResourceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ComplianceResourceTypes):void 0),ret.addPropertyResult("tagKey","TagKey",properties.TagKey!=null?cfn_parse().FromCloudFormation.getString(properties.TagKey):void 0),ret.addPropertyResult("tagValue","TagValue",properties.TagValue!=null?cfn_parse().FromCloudFormation.getString(properties.TagValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigRuleCompliancePropertyValidator(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("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "ComplianceProperty"')}function convertCfnConfigRuleCompliancePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigRuleCompliancePropertyValidator(properties).assertSuccess(),{Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnConfigRuleCompliancePropertyFromCloudFormation(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("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigRuleCustomPolicyDetailsPropertyValidator(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("enableDebugLogDelivery",cdk().validateBoolean)(properties.enableDebugLogDelivery)),errors.collect(cdk().propertyValidator("policyRuntime",cdk().validateString)(properties.policyRuntime)),errors.collect(cdk().propertyValidator("policyText",cdk().validateString)(properties.policyText)),errors.wrap('supplied properties not correct for "CustomPolicyDetailsProperty"')}function convertCfnConfigRuleCustomPolicyDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigRuleCustomPolicyDetailsPropertyValidator(properties).assertSuccess(),{EnableDebugLogDelivery:cdk().booleanToCloudFormation(properties.enableDebugLogDelivery),PolicyRuntime:cdk().stringToCloudFormation(properties.policyRuntime),PolicyText:cdk().stringToCloudFormation(properties.policyText)}):properties}function CfnConfigRuleCustomPolicyDetailsPropertyFromCloudFormation(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("enableDebugLogDelivery","EnableDebugLogDelivery",properties.EnableDebugLogDelivery!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableDebugLogDelivery):void 0),ret.addPropertyResult("policyRuntime","PolicyRuntime",properties.PolicyRuntime!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyRuntime):void 0),ret.addPropertyResult("policyText","PolicyText",properties.PolicyText!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyText):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigRuleSourceDetailPropertyValidator(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("eventSource",cdk().requiredValidator)(properties.eventSource)),errors.collect(cdk().propertyValidator("eventSource",cdk().validateString)(properties.eventSource)),errors.collect(cdk().propertyValidator("maximumExecutionFrequency",cdk().validateString)(properties.maximumExecutionFrequency)),errors.collect(cdk().propertyValidator("messageType",cdk().requiredValidator)(properties.messageType)),errors.collect(cdk().propertyValidator("messageType",cdk().validateString)(properties.messageType)),errors.wrap('supplied properties not correct for "SourceDetailProperty"')}function convertCfnConfigRuleSourceDetailPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigRuleSourceDetailPropertyValidator(properties).assertSuccess(),{EventSource:cdk().stringToCloudFormation(properties.eventSource),MaximumExecutionFrequency:cdk().stringToCloudFormation(properties.maximumExecutionFrequency),MessageType:cdk().stringToCloudFormation(properties.messageType)}):properties}function CfnConfigRuleSourceDetailPropertyFromCloudFormation(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("eventSource","EventSource",properties.EventSource!=null?cfn_parse().FromCloudFormation.getString(properties.EventSource):void 0),ret.addPropertyResult("maximumExecutionFrequency","MaximumExecutionFrequency",properties.MaximumExecutionFrequency!=null?cfn_parse().FromCloudFormation.getString(properties.MaximumExecutionFrequency):void 0),ret.addPropertyResult("messageType","MessageType",properties.MessageType!=null?cfn_parse().FromCloudFormation.getString(properties.MessageType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigRuleSourcePropertyValidator(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("customPolicyDetails",CfnConfigRuleCustomPolicyDetailsPropertyValidator)(properties.customPolicyDetails)),errors.collect(cdk().propertyValidator("owner",cdk().requiredValidator)(properties.owner)),errors.collect(cdk().propertyValidator("owner",cdk().validateString)(properties.owner)),errors.collect(cdk().propertyValidator("sourceDetails",cdk().listValidator(CfnConfigRuleSourceDetailPropertyValidator))(properties.sourceDetails)),errors.collect(cdk().propertyValidator("sourceIdentifier",cdk().validateString)(properties.sourceIdentifier)),errors.wrap('supplied properties not correct for "SourceProperty"')}function convertCfnConfigRuleSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigRuleSourcePropertyValidator(properties).assertSuccess(),{CustomPolicyDetails:convertCfnConfigRuleCustomPolicyDetailsPropertyToCloudFormation(properties.customPolicyDetails),Owner:cdk().stringToCloudFormation(properties.owner),SourceDetails:cdk().listMapper(convertCfnConfigRuleSourceDetailPropertyToCloudFormation)(properties.sourceDetails),SourceIdentifier:cdk().stringToCloudFormation(properties.sourceIdentifier)}):properties}function CfnConfigRuleSourcePropertyFromCloudFormation(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("customPolicyDetails","CustomPolicyDetails",properties.CustomPolicyDetails!=null?CfnConfigRuleCustomPolicyDetailsPropertyFromCloudFormation(properties.CustomPolicyDetails):void 0),ret.addPropertyResult("owner","Owner",properties.Owner!=null?cfn_parse().FromCloudFormation.getString(properties.Owner):void 0),ret.addPropertyResult("sourceDetails","SourceDetails",properties.SourceDetails!=null?cfn_parse().FromCloudFormation.getArray(CfnConfigRuleSourceDetailPropertyFromCloudFormation)(properties.SourceDetails):void 0),ret.addPropertyResult("sourceIdentifier","SourceIdentifier",properties.SourceIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.SourceIdentifier):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigRulePropsValidator(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("compliance",CfnConfigRuleCompliancePropertyValidator)(properties.compliance)),errors.collect(cdk().propertyValidator("configRuleName",cdk().validateString)(properties.configRuleName)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("evaluationModes",cdk().listValidator(CfnConfigRuleEvaluationModeConfigurationPropertyValidator))(properties.evaluationModes)),errors.collect(cdk().propertyValidator("inputParameters",cdk().validateObject)(properties.inputParameters)),errors.collect(cdk().propertyValidator("maximumExecutionFrequency",cdk().validateString)(properties.maximumExecutionFrequency)),errors.collect(cdk().propertyValidator("scope",CfnConfigRuleScopePropertyValidator)(properties.scope)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",CfnConfigRuleSourcePropertyValidator)(properties.source)),errors.wrap('supplied properties not correct for "CfnConfigRuleProps"')}function convertCfnConfigRulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigRulePropsValidator(properties).assertSuccess(),{Compliance:convertCfnConfigRuleCompliancePropertyToCloudFormation(properties.compliance),ConfigRuleName:cdk().stringToCloudFormation(properties.configRuleName),Description:cdk().stringToCloudFormation(properties.description),EvaluationModes:cdk().listMapper(convertCfnConfigRuleEvaluationModeConfigurationPropertyToCloudFormation)(properties.evaluationModes),InputParameters:cdk().objectToCloudFormation(properties.inputParameters),MaximumExecutionFrequency:cdk().stringToCloudFormation(properties.maximumExecutionFrequency),Scope:convertCfnConfigRuleScopePropertyToCloudFormation(properties.scope),Source:convertCfnConfigRuleSourcePropertyToCloudFormation(properties.source)}):properties}function CfnConfigRulePropsFromCloudFormation(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("compliance","Compliance",properties.Compliance!=null?CfnConfigRuleCompliancePropertyFromCloudFormation(properties.Compliance):void 0),ret.addPropertyResult("configRuleName","ConfigRuleName",properties.ConfigRuleName!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigRuleName):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("evaluationModes","EvaluationModes",properties.EvaluationModes!=null?cfn_parse().FromCloudFormation.getArray(CfnConfigRuleEvaluationModeConfigurationPropertyFromCloudFormation)(properties.EvaluationModes):void 0),ret.addPropertyResult("inputParameters","InputParameters",properties.InputParameters!=null?cfn_parse().FromCloudFormation.getAny(properties.InputParameters):void 0),ret.addPropertyResult("maximumExecutionFrequency","MaximumExecutionFrequency",properties.MaximumExecutionFrequency!=null?cfn_parse().FromCloudFormation.getString(properties.MaximumExecutionFrequency):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?CfnConfigRuleScopePropertyFromCloudFormation(properties.Scope):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?CfnConfigRuleSourcePropertyFromCloudFormation(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConfigurationAggregator extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigurationAggregatorPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnConfigurationAggregator(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:CfnConfigurationAggregator.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_config_CfnConfigurationAggregatorProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfigurationAggregator),error}this.attrConfigurationAggregatorArn=cdk().Token.asString(this.getAtt("ConfigurationAggregatorArn",cdk().ResolutionTypeHint.STRING)),this.accountAggregationSources=props.accountAggregationSources,this.configurationAggregatorName=props.configurationAggregatorName,this.organizationAggregationSource=props.organizationAggregationSource,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Config::ConfigurationAggregator",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{accountAggregationSources:this.accountAggregationSources,configurationAggregatorName:this.configurationAggregatorName,organizationAggregationSource:this.organizationAggregationSource,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",CfnConfigurationAggregator.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigurationAggregatorPropsToCloudFormation(props)}}exports.CfnConfigurationAggregator=CfnConfigurationAggregator,_c=JSII_RTTI_SYMBOL_1,CfnConfigurationAggregator[_c]={fqn:"aws-cdk-lib.aws_config.CfnConfigurationAggregator",version:"2.202.0"},CfnConfigurationAggregator.CFN_RESOURCE_TYPE_NAME="AWS::Config::ConfigurationAggregator";function CfnConfigurationAggregatorAccountAggregationSourcePropertyValidator(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("accountIds",cdk().requiredValidator)(properties.accountIds)),errors.collect(cdk().propertyValidator("accountIds",cdk().listValidator(cdk().validateString))(properties.accountIds)),errors.collect(cdk().propertyValidator("allAwsRegions",cdk().validateBoolean)(properties.allAwsRegions)),errors.collect(cdk().propertyValidator("awsRegions",cdk().listValidator(cdk().validateString))(properties.awsRegions)),errors.wrap('supplied properties not correct for "AccountAggregationSourceProperty"')}function convertCfnConfigurationAggregatorAccountAggregationSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationAggregatorAccountAggregationSourcePropertyValidator(properties).assertSuccess(),{AccountIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.accountIds),AllAwsRegions:cdk().booleanToCloudFormation(properties.allAwsRegions),AwsRegions:cdk().listMapper(cdk().stringToCloudFormation)(properties.awsRegions)}):properties}function CfnConfigurationAggregatorAccountAggregationSourcePropertyFromCloudFormation(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("accountIds","AccountIds",properties.AccountIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AccountIds):void 0),ret.addPropertyResult("allAwsRegions","AllAwsRegions",properties.AllAwsRegions!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AllAwsRegions):void 0),ret.addPropertyResult("awsRegions","AwsRegions",properties.AwsRegions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AwsRegions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationAggregatorOrganizationAggregationSourcePropertyValidator(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("allAwsRegions",cdk().validateBoolean)(properties.allAwsRegions)),errors.collect(cdk().propertyValidator("awsRegions",cdk().listValidator(cdk().validateString))(properties.awsRegions)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "OrganizationAggregationSourceProperty"')}function convertCfnConfigurationAggregatorOrganizationAggregationSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationAggregatorOrganizationAggregationSourcePropertyValidator(properties).assertSuccess(),{AllAwsRegions:cdk().booleanToCloudFormation(properties.allAwsRegions),AwsRegions:cdk().listMapper(cdk().stringToCloudFormation)(properties.awsRegions),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnConfigurationAggregatorOrganizationAggregationSourcePropertyFromCloudFormation(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("allAwsRegions","AllAwsRegions",properties.AllAwsRegions!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AllAwsRegions):void 0),ret.addPropertyResult("awsRegions","AwsRegions",properties.AwsRegions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AwsRegions):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationAggregatorPropsValidator(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("accountAggregationSources",cdk().listValidator(CfnConfigurationAggregatorAccountAggregationSourcePropertyValidator))(properties.accountAggregationSources)),errors.collect(cdk().propertyValidator("configurationAggregatorName",cdk().validateString)(properties.configurationAggregatorName)),errors.collect(cdk().propertyValidator("organizationAggregationSource",CfnConfigurationAggregatorOrganizationAggregationSourcePropertyValidator)(properties.organizationAggregationSource)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnConfigurationAggregatorProps"')}function convertCfnConfigurationAggregatorPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationAggregatorPropsValidator(properties).assertSuccess(),{AccountAggregationSources:cdk().listMapper(convertCfnConfigurationAggregatorAccountAggregationSourcePropertyToCloudFormation)(properties.accountAggregationSources),ConfigurationAggregatorName:cdk().stringToCloudFormation(properties.configurationAggregatorName),OrganizationAggregationSource:convertCfnConfigurationAggregatorOrganizationAggregationSourcePropertyToCloudFormation(properties.organizationAggregationSource),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnConfigurationAggregatorPropsFromCloudFormation(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("accountAggregationSources","AccountAggregationSources",properties.AccountAggregationSources!=null?cfn_parse().FromCloudFormation.getArray(CfnConfigurationAggregatorAccountAggregationSourcePropertyFromCloudFormation)(properties.AccountAggregationSources):void 0),ret.addPropertyResult("configurationAggregatorName","ConfigurationAggregatorName",properties.ConfigurationAggregatorName!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigurationAggregatorName):void 0),ret.addPropertyResult("organizationAggregationSource","OrganizationAggregationSource",properties.OrganizationAggregationSource!=null?CfnConfigurationAggregatorOrganizationAggregationSourcePropertyFromCloudFormation(properties.OrganizationAggregationSource):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 CfnConfigurationRecorder extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConfigurationRecorderPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnConfigurationRecorder(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:CfnConfigurationRecorder.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_config_CfnConfigurationRecorderProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConfigurationRecorder),error}cdk().requireProperty(props,"roleArn",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.name=props.name,this.recordingGroup=props.recordingGroup,this.recordingMode=props.recordingMode,this.roleArn=props.roleArn}get cfnProperties(){return{name:this.name,recordingGroup:this.recordingGroup,recordingMode:this.recordingMode,roleArn:this.roleArn}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnConfigurationRecorder.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConfigurationRecorderPropsToCloudFormation(props)}}exports.CfnConfigurationRecorder=CfnConfigurationRecorder,_d=JSII_RTTI_SYMBOL_1,CfnConfigurationRecorder[_d]={fqn:"aws-cdk-lib.aws_config.CfnConfigurationRecorder",version:"2.202.0"},CfnConfigurationRecorder.CFN_RESOURCE_TYPE_NAME="AWS::Config::ConfigurationRecorder";function CfnConfigurationRecorderExclusionByResourceTypesPropertyValidator(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("resourceTypes",cdk().requiredValidator)(properties.resourceTypes)),errors.collect(cdk().propertyValidator("resourceTypes",cdk().listValidator(cdk().validateString))(properties.resourceTypes)),errors.wrap('supplied properties not correct for "ExclusionByResourceTypesProperty"')}function convertCfnConfigurationRecorderExclusionByResourceTypesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationRecorderExclusionByResourceTypesPropertyValidator(properties).assertSuccess(),{ResourceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.resourceTypes)}):properties}function CfnConfigurationRecorderExclusionByResourceTypesPropertyFromCloudFormation(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("resourceTypes","ResourceTypes",properties.ResourceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ResourceTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationRecorderRecordingStrategyPropertyValidator(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("useOnly",cdk().requiredValidator)(properties.useOnly)),errors.collect(cdk().propertyValidator("useOnly",cdk().validateString)(properties.useOnly)),errors.wrap('supplied properties not correct for "RecordingStrategyProperty"')}function convertCfnConfigurationRecorderRecordingStrategyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationRecorderRecordingStrategyPropertyValidator(properties).assertSuccess(),{UseOnly:cdk().stringToCloudFormation(properties.useOnly)}):properties}function CfnConfigurationRecorderRecordingStrategyPropertyFromCloudFormation(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("useOnly","UseOnly",properties.UseOnly!=null?cfn_parse().FromCloudFormation.getString(properties.UseOnly):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationRecorderRecordingGroupPropertyValidator(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("allSupported",cdk().validateBoolean)(properties.allSupported)),errors.collect(cdk().propertyValidator("exclusionByResourceTypes",CfnConfigurationRecorderExclusionByResourceTypesPropertyValidator)(properties.exclusionByResourceTypes)),errors.collect(cdk().propertyValidator("includeGlobalResourceTypes",cdk().validateBoolean)(properties.includeGlobalResourceTypes)),errors.collect(cdk().propertyValidator("recordingStrategy",CfnConfigurationRecorderRecordingStrategyPropertyValidator)(properties.recordingStrategy)),errors.collect(cdk().propertyValidator("resourceTypes",cdk().listValidator(cdk().validateString))(properties.resourceTypes)),errors.wrap('supplied properties not correct for "RecordingGroupProperty"')}function convertCfnConfigurationRecorderRecordingGroupPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationRecorderRecordingGroupPropertyValidator(properties).assertSuccess(),{AllSupported:cdk().booleanToCloudFormation(properties.allSupported),ExclusionByResourceTypes:convertCfnConfigurationRecorderExclusionByResourceTypesPropertyToCloudFormation(properties.exclusionByResourceTypes),IncludeGlobalResourceTypes:cdk().booleanToCloudFormation(properties.includeGlobalResourceTypes),RecordingStrategy:convertCfnConfigurationRecorderRecordingStrategyPropertyToCloudFormation(properties.recordingStrategy),ResourceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.resourceTypes)}):properties}function CfnConfigurationRecorderRecordingGroupPropertyFromCloudFormation(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("allSupported","AllSupported",properties.AllSupported!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AllSupported):void 0),ret.addPropertyResult("exclusionByResourceTypes","ExclusionByResourceTypes",properties.ExclusionByResourceTypes!=null?CfnConfigurationRecorderExclusionByResourceTypesPropertyFromCloudFormation(properties.ExclusionByResourceTypes):void 0),ret.addPropertyResult("includeGlobalResourceTypes","IncludeGlobalResourceTypes",properties.IncludeGlobalResourceTypes!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IncludeGlobalResourceTypes):void 0),ret.addPropertyResult("recordingStrategy","RecordingStrategy",properties.RecordingStrategy!=null?CfnConfigurationRecorderRecordingStrategyPropertyFromCloudFormation(properties.RecordingStrategy):void 0),ret.addPropertyResult("resourceTypes","ResourceTypes",properties.ResourceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ResourceTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationRecorderRecordingModeOverridePropertyValidator(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("recordingFrequency",cdk().requiredValidator)(properties.recordingFrequency)),errors.collect(cdk().propertyValidator("recordingFrequency",cdk().validateString)(properties.recordingFrequency)),errors.collect(cdk().propertyValidator("resourceTypes",cdk().requiredValidator)(properties.resourceTypes)),errors.collect(cdk().propertyValidator("resourceTypes",cdk().listValidator(cdk().validateString))(properties.resourceTypes)),errors.wrap('supplied properties not correct for "RecordingModeOverrideProperty"')}function convertCfnConfigurationRecorderRecordingModeOverridePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationRecorderRecordingModeOverridePropertyValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),RecordingFrequency:cdk().stringToCloudFormation(properties.recordingFrequency),ResourceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.resourceTypes)}):properties}function CfnConfigurationRecorderRecordingModeOverridePropertyFromCloudFormation(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("recordingFrequency","RecordingFrequency",properties.RecordingFrequency!=null?cfn_parse().FromCloudFormation.getString(properties.RecordingFrequency):void 0),ret.addPropertyResult("resourceTypes","ResourceTypes",properties.ResourceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ResourceTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationRecorderRecordingModePropertyValidator(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("recordingFrequency",cdk().requiredValidator)(properties.recordingFrequency)),errors.collect(cdk().propertyValidator("recordingFrequency",cdk().validateString)(properties.recordingFrequency)),errors.collect(cdk().propertyValidator("recordingModeOverrides",cdk().listValidator(CfnConfigurationRecorderRecordingModeOverridePropertyValidator))(properties.recordingModeOverrides)),errors.wrap('supplied properties not correct for "RecordingModeProperty"')}function convertCfnConfigurationRecorderRecordingModePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationRecorderRecordingModePropertyValidator(properties).assertSuccess(),{RecordingFrequency:cdk().stringToCloudFormation(properties.recordingFrequency),RecordingModeOverrides:cdk().listMapper(convertCfnConfigurationRecorderRecordingModeOverridePropertyToCloudFormation)(properties.recordingModeOverrides)}):properties}function CfnConfigurationRecorderRecordingModePropertyFromCloudFormation(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("recordingFrequency","RecordingFrequency",properties.RecordingFrequency!=null?cfn_parse().FromCloudFormation.getString(properties.RecordingFrequency):void 0),ret.addPropertyResult("recordingModeOverrides","RecordingModeOverrides",properties.RecordingModeOverrides!=null?cfn_parse().FromCloudFormation.getArray(CfnConfigurationRecorderRecordingModeOverridePropertyFromCloudFormation)(properties.RecordingModeOverrides):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConfigurationRecorderPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("recordingGroup",CfnConfigurationRecorderRecordingGroupPropertyValidator)(properties.recordingGroup)),errors.collect(cdk().propertyValidator("recordingMode",CfnConfigurationRecorderRecordingModePropertyValidator)(properties.recordingMode)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "CfnConfigurationRecorderProps"')}function convertCfnConfigurationRecorderPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConfigurationRecorderPropsValidator(properties).asse