UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 61.3 kB
"use strict";var _a,_b,_c,_d,_e;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnReportPlan=exports.CfnFramework=exports.CfnBackupVault=exports.CfnBackupSelection=exports.CfnBackupPlan=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnBackupPlanPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("backupPlan",cdk.requiredValidator)(properties.backupPlan)),errors.collect(cdk.propertyValidator("backupPlan",CfnBackupPlan_BackupPlanResourceTypePropertyValidator)(properties.backupPlan)),errors.collect(cdk.propertyValidator("backupPlanTags",cdk.hashValidator(cdk.validateString))(properties.backupPlanTags)),errors.wrap('supplied properties not correct for "CfnBackupPlanProps"')}function cfnBackupPlanPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupPlanPropsValidator(properties).assertSuccess(),{BackupPlan:cfnBackupPlanBackupPlanResourceTypePropertyToCloudFormation(properties.backupPlan),BackupPlanTags:cdk.hashMapper(cdk.stringToCloudFormation)(properties.backupPlanTags)}):properties}function CfnBackupPlanPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("backupPlan","BackupPlan",CfnBackupPlanBackupPlanResourceTypePropertyFromCloudFormation(properties.BackupPlan)),ret.addPropertyResult("backupPlanTags","BackupPlanTags",properties.BackupPlanTags!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.BackupPlanTags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBackupPlan extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnBackupPlan.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_backup_CfnBackupPlanProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBackupPlan),error}cdk.requireProperty(props,"backupPlan",this),this.attrBackupPlanArn=cdk.Token.asString(this.getAtt("BackupPlanArn",cdk.ResolutionTypeHint.STRING)),this.attrBackupPlanId=cdk.Token.asString(this.getAtt("BackupPlanId",cdk.ResolutionTypeHint.STRING)),this.attrVersionId=cdk.Token.asString(this.getAtt("VersionId",cdk.ResolutionTypeHint.STRING)),this.backupPlan=props.backupPlan,this.backupPlanTags=props.backupPlanTags}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBackupPlanPropsFromCloudFormation(resourceProperties),ret=new CfnBackupPlan(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}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",CfnBackupPlan.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{backupPlan:this.backupPlan,backupPlanTags:this.backupPlanTags}}renderProperties(props){return cfnBackupPlanPropsToCloudFormation(props)}}exports.CfnBackupPlan=CfnBackupPlan,_a=JSII_RTTI_SYMBOL_1,CfnBackupPlan[_a]={fqn:"aws-cdk-lib.aws_backup.CfnBackupPlan",version:"2.70.0"},CfnBackupPlan.CFN_RESOURCE_TYPE_NAME="AWS::Backup::BackupPlan";function CfnBackupPlan_AdvancedBackupSettingResourceTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("backupOptions",cdk.requiredValidator)(properties.backupOptions)),errors.collect(cdk.propertyValidator("backupOptions",cdk.validateObject)(properties.backupOptions)),errors.collect(cdk.propertyValidator("resourceType",cdk.requiredValidator)(properties.resourceType)),errors.collect(cdk.propertyValidator("resourceType",cdk.validateString)(properties.resourceType)),errors.wrap('supplied properties not correct for "AdvancedBackupSettingResourceTypeProperty"')}function cfnBackupPlanAdvancedBackupSettingResourceTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupPlan_AdvancedBackupSettingResourceTypePropertyValidator(properties).assertSuccess(),{BackupOptions:cdk.objectToCloudFormation(properties.backupOptions),ResourceType:cdk.stringToCloudFormation(properties.resourceType)}):properties}function CfnBackupPlanAdvancedBackupSettingResourceTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("backupOptions","BackupOptions",cfn_parse.FromCloudFormation.getAny(properties.BackupOptions)),ret.addPropertyResult("resourceType","ResourceType",cfn_parse.FromCloudFormation.getString(properties.ResourceType)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupPlan_BackupPlanResourceTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("advancedBackupSettings",cdk.listValidator(CfnBackupPlan_AdvancedBackupSettingResourceTypePropertyValidator))(properties.advancedBackupSettings)),errors.collect(cdk.propertyValidator("backupPlanName",cdk.requiredValidator)(properties.backupPlanName)),errors.collect(cdk.propertyValidator("backupPlanName",cdk.validateString)(properties.backupPlanName)),errors.collect(cdk.propertyValidator("backupPlanRule",cdk.requiredValidator)(properties.backupPlanRule)),errors.collect(cdk.propertyValidator("backupPlanRule",cdk.listValidator(CfnBackupPlan_BackupRuleResourceTypePropertyValidator))(properties.backupPlanRule)),errors.wrap('supplied properties not correct for "BackupPlanResourceTypeProperty"')}function cfnBackupPlanBackupPlanResourceTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupPlan_BackupPlanResourceTypePropertyValidator(properties).assertSuccess(),{AdvancedBackupSettings:cdk.listMapper(cfnBackupPlanAdvancedBackupSettingResourceTypePropertyToCloudFormation)(properties.advancedBackupSettings),BackupPlanName:cdk.stringToCloudFormation(properties.backupPlanName),BackupPlanRule:cdk.listMapper(cfnBackupPlanBackupRuleResourceTypePropertyToCloudFormation)(properties.backupPlanRule)}):properties}function CfnBackupPlanBackupPlanResourceTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("advancedBackupSettings","AdvancedBackupSettings",properties.AdvancedBackupSettings!=null?cfn_parse.FromCloudFormation.getArray(CfnBackupPlanAdvancedBackupSettingResourceTypePropertyFromCloudFormation)(properties.AdvancedBackupSettings):void 0),ret.addPropertyResult("backupPlanName","BackupPlanName",cfn_parse.FromCloudFormation.getString(properties.BackupPlanName)),ret.addPropertyResult("backupPlanRule","BackupPlanRule",cfn_parse.FromCloudFormation.getArray(CfnBackupPlanBackupRuleResourceTypePropertyFromCloudFormation)(properties.BackupPlanRule)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupPlan_BackupRuleResourceTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("completionWindowMinutes",cdk.validateNumber)(properties.completionWindowMinutes)),errors.collect(cdk.propertyValidator("copyActions",cdk.listValidator(CfnBackupPlan_CopyActionResourceTypePropertyValidator))(properties.copyActions)),errors.collect(cdk.propertyValidator("enableContinuousBackup",cdk.validateBoolean)(properties.enableContinuousBackup)),errors.collect(cdk.propertyValidator("lifecycle",CfnBackupPlan_LifecycleResourceTypePropertyValidator)(properties.lifecycle)),errors.collect(cdk.propertyValidator("recoveryPointTags",cdk.hashValidator(cdk.validateString))(properties.recoveryPointTags)),errors.collect(cdk.propertyValidator("ruleName",cdk.requiredValidator)(properties.ruleName)),errors.collect(cdk.propertyValidator("ruleName",cdk.validateString)(properties.ruleName)),errors.collect(cdk.propertyValidator("scheduleExpression",cdk.validateString)(properties.scheduleExpression)),errors.collect(cdk.propertyValidator("startWindowMinutes",cdk.validateNumber)(properties.startWindowMinutes)),errors.collect(cdk.propertyValidator("targetBackupVault",cdk.requiredValidator)(properties.targetBackupVault)),errors.collect(cdk.propertyValidator("targetBackupVault",cdk.validateString)(properties.targetBackupVault)),errors.wrap('supplied properties not correct for "BackupRuleResourceTypeProperty"')}function cfnBackupPlanBackupRuleResourceTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupPlan_BackupRuleResourceTypePropertyValidator(properties).assertSuccess(),{CompletionWindowMinutes:cdk.numberToCloudFormation(properties.completionWindowMinutes),CopyActions:cdk.listMapper(cfnBackupPlanCopyActionResourceTypePropertyToCloudFormation)(properties.copyActions),EnableContinuousBackup:cdk.booleanToCloudFormation(properties.enableContinuousBackup),Lifecycle:cfnBackupPlanLifecycleResourceTypePropertyToCloudFormation(properties.lifecycle),RecoveryPointTags:cdk.hashMapper(cdk.stringToCloudFormation)(properties.recoveryPointTags),RuleName:cdk.stringToCloudFormation(properties.ruleName),ScheduleExpression:cdk.stringToCloudFormation(properties.scheduleExpression),StartWindowMinutes:cdk.numberToCloudFormation(properties.startWindowMinutes),TargetBackupVault:cdk.stringToCloudFormation(properties.targetBackupVault)}):properties}function CfnBackupPlanBackupRuleResourceTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("completionWindowMinutes","CompletionWindowMinutes",properties.CompletionWindowMinutes!=null?cfn_parse.FromCloudFormation.getNumber(properties.CompletionWindowMinutes):void 0),ret.addPropertyResult("copyActions","CopyActions",properties.CopyActions!=null?cfn_parse.FromCloudFormation.getArray(CfnBackupPlanCopyActionResourceTypePropertyFromCloudFormation)(properties.CopyActions):void 0),ret.addPropertyResult("enableContinuousBackup","EnableContinuousBackup",properties.EnableContinuousBackup!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnableContinuousBackup):void 0),ret.addPropertyResult("lifecycle","Lifecycle",properties.Lifecycle!=null?CfnBackupPlanLifecycleResourceTypePropertyFromCloudFormation(properties.Lifecycle):void 0),ret.addPropertyResult("recoveryPointTags","RecoveryPointTags",properties.RecoveryPointTags!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.RecoveryPointTags):void 0),ret.addPropertyResult("ruleName","RuleName",cfn_parse.FromCloudFormation.getString(properties.RuleName)),ret.addPropertyResult("scheduleExpression","ScheduleExpression",properties.ScheduleExpression!=null?cfn_parse.FromCloudFormation.getString(properties.ScheduleExpression):void 0),ret.addPropertyResult("startWindowMinutes","StartWindowMinutes",properties.StartWindowMinutes!=null?cfn_parse.FromCloudFormation.getNumber(properties.StartWindowMinutes):void 0),ret.addPropertyResult("targetBackupVault","TargetBackupVault",cfn_parse.FromCloudFormation.getString(properties.TargetBackupVault)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupPlan_CopyActionResourceTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("destinationBackupVaultArn",cdk.requiredValidator)(properties.destinationBackupVaultArn)),errors.collect(cdk.propertyValidator("destinationBackupVaultArn",cdk.validateString)(properties.destinationBackupVaultArn)),errors.collect(cdk.propertyValidator("lifecycle",CfnBackupPlan_LifecycleResourceTypePropertyValidator)(properties.lifecycle)),errors.wrap('supplied properties not correct for "CopyActionResourceTypeProperty"')}function cfnBackupPlanCopyActionResourceTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupPlan_CopyActionResourceTypePropertyValidator(properties).assertSuccess(),{DestinationBackupVaultArn:cdk.stringToCloudFormation(properties.destinationBackupVaultArn),Lifecycle:cfnBackupPlanLifecycleResourceTypePropertyToCloudFormation(properties.lifecycle)}):properties}function CfnBackupPlanCopyActionResourceTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("destinationBackupVaultArn","DestinationBackupVaultArn",cfn_parse.FromCloudFormation.getString(properties.DestinationBackupVaultArn)),ret.addPropertyResult("lifecycle","Lifecycle",properties.Lifecycle!=null?CfnBackupPlanLifecycleResourceTypePropertyFromCloudFormation(properties.Lifecycle):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupPlan_LifecycleResourceTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("deleteAfterDays",cdk.validateNumber)(properties.deleteAfterDays)),errors.collect(cdk.propertyValidator("moveToColdStorageAfterDays",cdk.validateNumber)(properties.moveToColdStorageAfterDays)),errors.wrap('supplied properties not correct for "LifecycleResourceTypeProperty"')}function cfnBackupPlanLifecycleResourceTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupPlan_LifecycleResourceTypePropertyValidator(properties).assertSuccess(),{DeleteAfterDays:cdk.numberToCloudFormation(properties.deleteAfterDays),MoveToColdStorageAfterDays:cdk.numberToCloudFormation(properties.moveToColdStorageAfterDays)}):properties}function CfnBackupPlanLifecycleResourceTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("deleteAfterDays","DeleteAfterDays",properties.DeleteAfterDays!=null?cfn_parse.FromCloudFormation.getNumber(properties.DeleteAfterDays):void 0),ret.addPropertyResult("moveToColdStorageAfterDays","MoveToColdStorageAfterDays",properties.MoveToColdStorageAfterDays!=null?cfn_parse.FromCloudFormation.getNumber(properties.MoveToColdStorageAfterDays):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupSelectionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("backupPlanId",cdk.requiredValidator)(properties.backupPlanId)),errors.collect(cdk.propertyValidator("backupPlanId",cdk.validateString)(properties.backupPlanId)),errors.collect(cdk.propertyValidator("backupSelection",cdk.requiredValidator)(properties.backupSelection)),errors.collect(cdk.propertyValidator("backupSelection",CfnBackupSelection_BackupSelectionResourceTypePropertyValidator)(properties.backupSelection)),errors.wrap('supplied properties not correct for "CfnBackupSelectionProps"')}function cfnBackupSelectionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupSelectionPropsValidator(properties).assertSuccess(),{BackupPlanId:cdk.stringToCloudFormation(properties.backupPlanId),BackupSelection:cfnBackupSelectionBackupSelectionResourceTypePropertyToCloudFormation(properties.backupSelection)}):properties}function CfnBackupSelectionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("backupPlanId","BackupPlanId",cfn_parse.FromCloudFormation.getString(properties.BackupPlanId)),ret.addPropertyResult("backupSelection","BackupSelection",CfnBackupSelectionBackupSelectionResourceTypePropertyFromCloudFormation(properties.BackupSelection)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBackupSelection extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnBackupSelection.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_backup_CfnBackupSelectionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBackupSelection),error}cdk.requireProperty(props,"backupPlanId",this),cdk.requireProperty(props,"backupSelection",this),this.attrBackupPlanId=cdk.Token.asString(this.getAtt("BackupPlanId",cdk.ResolutionTypeHint.STRING)),this.attrId=cdk.Token.asString(this.getAtt("Id",cdk.ResolutionTypeHint.STRING)),this.attrSelectionId=cdk.Token.asString(this.getAtt("SelectionId",cdk.ResolutionTypeHint.STRING)),this.backupPlanId=props.backupPlanId,this.backupSelection=props.backupSelection}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBackupSelectionPropsFromCloudFormation(resourceProperties),ret=new CfnBackupSelection(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}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",CfnBackupSelection.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{backupPlanId:this.backupPlanId,backupSelection:this.backupSelection}}renderProperties(props){return cfnBackupSelectionPropsToCloudFormation(props)}}exports.CfnBackupSelection=CfnBackupSelection,_b=JSII_RTTI_SYMBOL_1,CfnBackupSelection[_b]={fqn:"aws-cdk-lib.aws_backup.CfnBackupSelection",version:"2.70.0"},CfnBackupSelection.CFN_RESOURCE_TYPE_NAME="AWS::Backup::BackupSelection";function CfnBackupSelection_BackupSelectionResourceTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("conditions",cdk.validateObject)(properties.conditions)),errors.collect(cdk.propertyValidator("iamRoleArn",cdk.requiredValidator)(properties.iamRoleArn)),errors.collect(cdk.propertyValidator("iamRoleArn",cdk.validateString)(properties.iamRoleArn)),errors.collect(cdk.propertyValidator("listOfTags",cdk.listValidator(CfnBackupSelection_ConditionResourceTypePropertyValidator))(properties.listOfTags)),errors.collect(cdk.propertyValidator("notResources",cdk.listValidator(cdk.validateString))(properties.notResources)),errors.collect(cdk.propertyValidator("resources",cdk.listValidator(cdk.validateString))(properties.resources)),errors.collect(cdk.propertyValidator("selectionName",cdk.requiredValidator)(properties.selectionName)),errors.collect(cdk.propertyValidator("selectionName",cdk.validateString)(properties.selectionName)),errors.wrap('supplied properties not correct for "BackupSelectionResourceTypeProperty"')}function cfnBackupSelectionBackupSelectionResourceTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupSelection_BackupSelectionResourceTypePropertyValidator(properties).assertSuccess(),{Conditions:cdk.objectToCloudFormation(properties.conditions),IamRoleArn:cdk.stringToCloudFormation(properties.iamRoleArn),ListOfTags:cdk.listMapper(cfnBackupSelectionConditionResourceTypePropertyToCloudFormation)(properties.listOfTags),NotResources:cdk.listMapper(cdk.stringToCloudFormation)(properties.notResources),Resources:cdk.listMapper(cdk.stringToCloudFormation)(properties.resources),SelectionName:cdk.stringToCloudFormation(properties.selectionName)}):properties}function CfnBackupSelectionBackupSelectionResourceTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("conditions","Conditions",properties.Conditions!=null?cfn_parse.FromCloudFormation.getAny(properties.Conditions):void 0),ret.addPropertyResult("iamRoleArn","IamRoleArn",cfn_parse.FromCloudFormation.getString(properties.IamRoleArn)),ret.addPropertyResult("listOfTags","ListOfTags",properties.ListOfTags!=null?cfn_parse.FromCloudFormation.getArray(CfnBackupSelectionConditionResourceTypePropertyFromCloudFormation)(properties.ListOfTags):void 0),ret.addPropertyResult("notResources","NotResources",properties.NotResources!=null?cfn_parse.FromCloudFormation.getStringArray(properties.NotResources):void 0),ret.addPropertyResult("resources","Resources",properties.Resources!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Resources):void 0),ret.addPropertyResult("selectionName","SelectionName",cfn_parse.FromCloudFormation.getString(properties.SelectionName)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupSelection_ConditionParameterPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("conditionKey",cdk.validateString)(properties.conditionKey)),errors.collect(cdk.propertyValidator("conditionValue",cdk.validateString)(properties.conditionValue)),errors.wrap('supplied properties not correct for "ConditionParameterProperty"')}function cfnBackupSelectionConditionParameterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupSelection_ConditionParameterPropertyValidator(properties).assertSuccess(),{ConditionKey:cdk.stringToCloudFormation(properties.conditionKey),ConditionValue:cdk.stringToCloudFormation(properties.conditionValue)}):properties}function CfnBackupSelectionConditionParameterPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("conditionKey","ConditionKey",properties.ConditionKey!=null?cfn_parse.FromCloudFormation.getString(properties.ConditionKey):void 0),ret.addPropertyResult("conditionValue","ConditionValue",properties.ConditionValue!=null?cfn_parse.FromCloudFormation.getString(properties.ConditionValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupSelection_ConditionResourceTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("conditionKey",cdk.requiredValidator)(properties.conditionKey)),errors.collect(cdk.propertyValidator("conditionKey",cdk.validateString)(properties.conditionKey)),errors.collect(cdk.propertyValidator("conditionType",cdk.requiredValidator)(properties.conditionType)),errors.collect(cdk.propertyValidator("conditionType",cdk.validateString)(properties.conditionType)),errors.collect(cdk.propertyValidator("conditionValue",cdk.requiredValidator)(properties.conditionValue)),errors.collect(cdk.propertyValidator("conditionValue",cdk.validateString)(properties.conditionValue)),errors.wrap('supplied properties not correct for "ConditionResourceTypeProperty"')}function cfnBackupSelectionConditionResourceTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupSelection_ConditionResourceTypePropertyValidator(properties).assertSuccess(),{ConditionKey:cdk.stringToCloudFormation(properties.conditionKey),ConditionType:cdk.stringToCloudFormation(properties.conditionType),ConditionValue:cdk.stringToCloudFormation(properties.conditionValue)}):properties}function CfnBackupSelectionConditionResourceTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("conditionKey","ConditionKey",cfn_parse.FromCloudFormation.getString(properties.ConditionKey)),ret.addPropertyResult("conditionType","ConditionType",cfn_parse.FromCloudFormation.getString(properties.ConditionType)),ret.addPropertyResult("conditionValue","ConditionValue",cfn_parse.FromCloudFormation.getString(properties.ConditionValue)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupSelection_ConditionsPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("stringEquals",cdk.listValidator(CfnBackupSelection_ConditionParameterPropertyValidator))(properties.stringEquals)),errors.collect(cdk.propertyValidator("stringLike",cdk.listValidator(CfnBackupSelection_ConditionParameterPropertyValidator))(properties.stringLike)),errors.collect(cdk.propertyValidator("stringNotEquals",cdk.listValidator(CfnBackupSelection_ConditionParameterPropertyValidator))(properties.stringNotEquals)),errors.collect(cdk.propertyValidator("stringNotLike",cdk.listValidator(CfnBackupSelection_ConditionParameterPropertyValidator))(properties.stringNotLike)),errors.wrap('supplied properties not correct for "ConditionsProperty"')}function cfnBackupSelectionConditionsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupSelection_ConditionsPropertyValidator(properties).assertSuccess(),{StringEquals:cdk.listMapper(cfnBackupSelectionConditionParameterPropertyToCloudFormation)(properties.stringEquals),StringLike:cdk.listMapper(cfnBackupSelectionConditionParameterPropertyToCloudFormation)(properties.stringLike),StringNotEquals:cdk.listMapper(cfnBackupSelectionConditionParameterPropertyToCloudFormation)(properties.stringNotEquals),StringNotLike:cdk.listMapper(cfnBackupSelectionConditionParameterPropertyToCloudFormation)(properties.stringNotLike)}):properties}function CfnBackupSelectionConditionsPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("stringEquals","StringEquals",properties.StringEquals!=null?cfn_parse.FromCloudFormation.getArray(CfnBackupSelectionConditionParameterPropertyFromCloudFormation)(properties.StringEquals):void 0),ret.addPropertyResult("stringLike","StringLike",properties.StringLike!=null?cfn_parse.FromCloudFormation.getArray(CfnBackupSelectionConditionParameterPropertyFromCloudFormation)(properties.StringLike):void 0),ret.addPropertyResult("stringNotEquals","StringNotEquals",properties.StringNotEquals!=null?cfn_parse.FromCloudFormation.getArray(CfnBackupSelectionConditionParameterPropertyFromCloudFormation)(properties.StringNotEquals):void 0),ret.addPropertyResult("stringNotLike","StringNotLike",properties.StringNotLike!=null?cfn_parse.FromCloudFormation.getArray(CfnBackupSelectionConditionParameterPropertyFromCloudFormation)(properties.StringNotLike):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupVaultPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("accessPolicy",cdk.validateObject)(properties.accessPolicy)),errors.collect(cdk.propertyValidator("backupVaultName",cdk.requiredValidator)(properties.backupVaultName)),errors.collect(cdk.propertyValidator("backupVaultName",cdk.validateString)(properties.backupVaultName)),errors.collect(cdk.propertyValidator("backupVaultTags",cdk.hashValidator(cdk.validateString))(properties.backupVaultTags)),errors.collect(cdk.propertyValidator("encryptionKeyArn",cdk.validateString)(properties.encryptionKeyArn)),errors.collect(cdk.propertyValidator("lockConfiguration",CfnBackupVault_LockConfigurationTypePropertyValidator)(properties.lockConfiguration)),errors.collect(cdk.propertyValidator("notifications",CfnBackupVault_NotificationObjectTypePropertyValidator)(properties.notifications)),errors.wrap('supplied properties not correct for "CfnBackupVaultProps"')}function cfnBackupVaultPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupVaultPropsValidator(properties).assertSuccess(),{BackupVaultName:cdk.stringToCloudFormation(properties.backupVaultName),AccessPolicy:cdk.objectToCloudFormation(properties.accessPolicy),BackupVaultTags:cdk.hashMapper(cdk.stringToCloudFormation)(properties.backupVaultTags),EncryptionKeyArn:cdk.stringToCloudFormation(properties.encryptionKeyArn),LockConfiguration:cfnBackupVaultLockConfigurationTypePropertyToCloudFormation(properties.lockConfiguration),Notifications:cfnBackupVaultNotificationObjectTypePropertyToCloudFormation(properties.notifications)}):properties}function CfnBackupVaultPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("backupVaultName","BackupVaultName",cfn_parse.FromCloudFormation.getString(properties.BackupVaultName)),ret.addPropertyResult("accessPolicy","AccessPolicy",properties.AccessPolicy!=null?cfn_parse.FromCloudFormation.getAny(properties.AccessPolicy):void 0),ret.addPropertyResult("backupVaultTags","BackupVaultTags",properties.BackupVaultTags!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.BackupVaultTags):void 0),ret.addPropertyResult("encryptionKeyArn","EncryptionKeyArn",properties.EncryptionKeyArn!=null?cfn_parse.FromCloudFormation.getString(properties.EncryptionKeyArn):void 0),ret.addPropertyResult("lockConfiguration","LockConfiguration",properties.LockConfiguration!=null?CfnBackupVaultLockConfigurationTypePropertyFromCloudFormation(properties.LockConfiguration):void 0),ret.addPropertyResult("notifications","Notifications",properties.Notifications!=null?CfnBackupVaultNotificationObjectTypePropertyFromCloudFormation(properties.Notifications):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBackupVault extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnBackupVault.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_backup_CfnBackupVaultProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBackupVault),error}cdk.requireProperty(props,"backupVaultName",this),this.attrBackupVaultArn=cdk.Token.asString(this.getAtt("BackupVaultArn",cdk.ResolutionTypeHint.STRING)),this.attrBackupVaultName=cdk.Token.asString(this.getAtt("BackupVaultName",cdk.ResolutionTypeHint.STRING)),this.backupVaultName=props.backupVaultName,this.accessPolicy=props.accessPolicy,this.backupVaultTags=props.backupVaultTags,this.encryptionKeyArn=props.encryptionKeyArn,this.lockConfiguration=props.lockConfiguration,this.notifications=props.notifications,this.node.scope&&cdk.Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::Backup::BackupVault' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBackupVaultPropsFromCloudFormation(resourceProperties),ret=new CfnBackupVault(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}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",CfnBackupVault.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{backupVaultName:this.backupVaultName,accessPolicy:this.accessPolicy,backupVaultTags:this.backupVaultTags,encryptionKeyArn:this.encryptionKeyArn,lockConfiguration:this.lockConfiguration,notifications:this.notifications}}renderProperties(props){return cfnBackupVaultPropsToCloudFormation(props)}}exports.CfnBackupVault=CfnBackupVault,_c=JSII_RTTI_SYMBOL_1,CfnBackupVault[_c]={fqn:"aws-cdk-lib.aws_backup.CfnBackupVault",version:"2.70.0"},CfnBackupVault.CFN_RESOURCE_TYPE_NAME="AWS::Backup::BackupVault";function CfnBackupVault_LockConfigurationTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("changeableForDays",cdk.validateNumber)(properties.changeableForDays)),errors.collect(cdk.propertyValidator("maxRetentionDays",cdk.validateNumber)(properties.maxRetentionDays)),errors.collect(cdk.propertyValidator("minRetentionDays",cdk.requiredValidator)(properties.minRetentionDays)),errors.collect(cdk.propertyValidator("minRetentionDays",cdk.validateNumber)(properties.minRetentionDays)),errors.wrap('supplied properties not correct for "LockConfigurationTypeProperty"')}function cfnBackupVaultLockConfigurationTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupVault_LockConfigurationTypePropertyValidator(properties).assertSuccess(),{ChangeableForDays:cdk.numberToCloudFormation(properties.changeableForDays),MaxRetentionDays:cdk.numberToCloudFormation(properties.maxRetentionDays),MinRetentionDays:cdk.numberToCloudFormation(properties.minRetentionDays)}):properties}function CfnBackupVaultLockConfigurationTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("changeableForDays","ChangeableForDays",properties.ChangeableForDays!=null?cfn_parse.FromCloudFormation.getNumber(properties.ChangeableForDays):void 0),ret.addPropertyResult("maxRetentionDays","MaxRetentionDays",properties.MaxRetentionDays!=null?cfn_parse.FromCloudFormation.getNumber(properties.MaxRetentionDays):void 0),ret.addPropertyResult("minRetentionDays","MinRetentionDays",cfn_parse.FromCloudFormation.getNumber(properties.MinRetentionDays)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBackupVault_NotificationObjectTypePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("backupVaultEvents",cdk.requiredValidator)(properties.backupVaultEvents)),errors.collect(cdk.propertyValidator("backupVaultEvents",cdk.listValidator(cdk.validateString))(properties.backupVaultEvents)),errors.collect(cdk.propertyValidator("snsTopicArn",cdk.requiredValidator)(properties.snsTopicArn)),errors.collect(cdk.propertyValidator("snsTopicArn",cdk.validateString)(properties.snsTopicArn)),errors.wrap('supplied properties not correct for "NotificationObjectTypeProperty"')}function cfnBackupVaultNotificationObjectTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBackupVault_NotificationObjectTypePropertyValidator(properties).assertSuccess(),{BackupVaultEvents:cdk.listMapper(cdk.stringToCloudFormation)(properties.backupVaultEvents),SNSTopicArn:cdk.stringToCloudFormation(properties.snsTopicArn)}):properties}function CfnBackupVaultNotificationObjectTypePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("backupVaultEvents","BackupVaultEvents",cfn_parse.FromCloudFormation.getStringArray(properties.BackupVaultEvents)),ret.addPropertyResult("snsTopicArn","SNSTopicArn",cfn_parse.FromCloudFormation.getString(properties.SNSTopicArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFrameworkPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("frameworkControls",cdk.requiredValidator)(properties.frameworkControls)),errors.collect(cdk.propertyValidator("frameworkControls",cdk.listValidator(CfnFramework_FrameworkControlPropertyValidator))(properties.frameworkControls)),errors.collect(cdk.propertyValidator("frameworkDescription",cdk.validateString)(properties.frameworkDescription)),errors.collect(cdk.propertyValidator("frameworkName",cdk.validateString)(properties.frameworkName)),errors.collect(cdk.propertyValidator("frameworkTags",cdk.listValidator(cdk.validateCfnTag))(properties.frameworkTags)),errors.wrap('supplied properties not correct for "CfnFrameworkProps"')}function cfnFrameworkPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFrameworkPropsValidator(properties).assertSuccess(),{FrameworkControls:cdk.listMapper(cfnFrameworkFrameworkControlPropertyToCloudFormation)(properties.frameworkControls),FrameworkDescription:cdk.stringToCloudFormation(properties.frameworkDescription),FrameworkName:cdk.stringToCloudFormation(properties.frameworkName),FrameworkTags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.frameworkTags)}):properties}function CfnFrameworkPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("frameworkControls","FrameworkControls",cfn_parse.FromCloudFormation.getArray(CfnFrameworkFrameworkControlPropertyFromCloudFormation)(properties.FrameworkControls)),ret.addPropertyResult("frameworkDescription","FrameworkDescription",properties.FrameworkDescription!=null?cfn_parse.FromCloudFormation.getString(properties.FrameworkDescription):void 0),ret.addPropertyResult("frameworkName","FrameworkName",properties.FrameworkName!=null?cfn_parse.FromCloudFormation.getString(properties.FrameworkName):void 0),ret.addPropertyResult("frameworkTags","FrameworkTags",properties.FrameworkTags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.FrameworkTags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFramework extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnFramework.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_backup_CfnFrameworkProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFramework),error}cdk.requireProperty(props,"frameworkControls",this),this.attrCreationTime=cdk.Token.asString(this.getAtt("CreationTime",cdk.ResolutionTypeHint.STRING)),this.attrDeploymentStatus=cdk.Token.asString(this.getAtt("DeploymentStatus",cdk.ResolutionTypeHint.STRING)),this.attrFrameworkArn=cdk.Token.asString(this.getAtt("FrameworkArn",cdk.ResolutionTypeHint.STRING)),this.attrFrameworkStatus=cdk.Token.asString(this.getAtt("FrameworkStatus",cdk.ResolutionTypeHint.STRING)),this.frameworkControls=props.frameworkControls,this.frameworkDescription=props.frameworkDescription,this.frameworkName=props.frameworkName,this.frameworkTags=props.frameworkTags}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFrameworkPropsFromCloudFormation(resourceProperties),ret=new CfnFramework(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}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",CfnFramework.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{frameworkControls:this.frameworkControls,frameworkDescription:this.frameworkDescription,frameworkName:this.frameworkName,frameworkTags:this.frameworkTags}}renderProperties(props){return cfnFrameworkPropsToCloudFormation(props)}}exports.CfnFramework=CfnFramework,_d=JSII_RTTI_SYMBOL_1,CfnFramework[_d]={fqn:"aws-cdk-lib.aws_backup.CfnFramework",version:"2.70.0"},CfnFramework.CFN_RESOURCE_TYPE_NAME="AWS::Backup::Framework";function CfnFramework_ControlInputParameterPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("parameterName",cdk.requiredValidator)(properties.parameterName)),errors.collect(cdk.propertyValidator("parameterName",cdk.validateString)(properties.parameterName)),errors.collect(cdk.propertyValidator("parameterValue",cdk.requiredValidator)(properties.parameterValue)),errors.collect(cdk.propertyValidator("parameterValue",cdk.validateString)(properties.parameterValue)),errors.wrap('supplied properties not correct for "ControlInputParameterProperty"')}function cfnFrameworkControlInputParameterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFramework_ControlInputParameterPropertyValidator(properties).assertSuccess(),{ParameterName:cdk.stringToCloudFormation(properties.parameterName),ParameterValue:cdk.stringToCloudFormation(properties.parameterValue)}):properties}function CfnFrameworkControlInputParameterPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("parameterName","ParameterName",cfn_parse.FromCloudFormation.getString(properties.ParameterName)),ret.addPropertyResult("parameterValue","ParameterValue",cfn_parse.FromCloudFormation.getString(properties.ParameterValue)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFramework_ControlScopePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("complianceResourceIds",cdk.listValidator(cdk.validateString))(properties.complianceResourceIds)),errors.collect(cdk.propertyValidator("complianceResourceTypes",cdk.listValidator(cdk.validateString))(properties.complianceResourceTypes)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "ControlScopeProperty"')}function cfnFrameworkControlScopePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFramework_ControlScopePropertyValidator(properties).assertSuccess(),{ComplianceResourceIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.complianceResourceIds),ComplianceResourceTypes:cdk.listMapper(cdk.stringToCloudFormation)(properties.complianceResourceTypes),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnFrameworkControlScopePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("complianceResourceIds","ComplianceResourceIds",properties.ComplianceResourceIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ComplianceResourceIds):void 0),ret.addPropertyResult("complianceResourceTypes","ComplianceResourceTypes",properties.ComplianceResourceTypes!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ComplianceResourceTypes):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}function CfnFramework_FrameworkControlPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("controlInputParameters",cdk.listValidator(CfnFramework_ControlInputParameterPropertyValidator))(properties.controlInputParameters)),errors.collect(cdk.propertyValidator("controlName",cdk.requiredValidator)(properties.controlName)),errors.collect(cdk.propertyValidator("controlName",cdk.validateString)(properties.controlName)