"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnTelemetryRule=exports.CfnTelemetryPipelines=exports.CfnTelemetryEnrichment=exports.CfnS3TableIntegration=exports.CfnOrganizationTelemetryRule=exports.CfnOrganizationCentralizationRule=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core/lib");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnOrganizationCentralizationRule extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_observabilityadmin.CfnOrganizationCentralizationRule",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ObservabilityAdmin::OrganizationCentralizationRule";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnOrganizationCentralizationRulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnOrganizationCentralizationRule(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnOrganizationCentralizationRule(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnOrganizationCentralizationRule.CFN_RESOURCE_TYPE_NAME}cdkTagManager;_rule;_ruleName;_tags;cfnPropertyNames={tags:"Tags",rule:"Rule",ruleName:"RuleName"};constructor(scope,id,props){super(scope,id,{type:CfnOrganizationCentralizationRule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_observabilityadmin_CfnOrganizationCentralizationRuleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnOrganizationCentralizationRule),error}cdk().requireProperty(props,"rule",this),cdk().requireProperty(props,"ruleName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::ObservabilityAdmin::OrganizationCentralizationRule",void 0,{tagPropertyName:"tags"}),this._rule=props.rule,this._ruleName=props.ruleName,this._tags=props.tags}get organizationCentralizationRuleRef(){return{ruleArn:this.ref}}get rule(){return this._rule}set rule(value){cdk().traceProperty(this.node,"Rule"),this._rule=value}get ruleName(){return this._ruleName}set ruleName(value){cdk().traceProperty(this.node,"RuleName"),this._ruleName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrRuleArn(){return cdk().Token.asString(this.getAtt("RuleArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),rule:this._rule,ruleName:this._ruleName}}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",CfnOrganizationCentralizationRule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnOrganizationCentralizationRulePropsToCloudFormation(props)}}exports.CfnOrganizationCentralizationRule=CfnOrganizationCentralizationRule;function CfnOrganizationCentralizationRuleSourceLogsConfigurationPropertyValidator(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("dataSourceSelectionCriteria",cdk().validateString)(properties.dataSourceSelectionCriteria)),errors.collect(cdk().propertyValidator("encryptedLogGroupStrategy",cdk().requiredValidator)(properties.encryptedLogGroupStrategy)),errors.collect(cdk().propertyValidator("encryptedLogGroupStrategy",cdk().validateString)(properties.encryptedLogGroupStrategy)),errors.collect(cdk().propertyValidator("logGroupSelectionCriteria",cdk().validateString)(properties.logGroupSelectionCriteria)),errors.wrap('supplied properties not correct for "SourceLogsConfigurationProperty"')}function convertCfnOrganizationCentralizationRuleSourceLogsConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleSourceLogsConfigurationPropertyValidator(properties).assertSuccess(),{DataSourceSelectionCriteria:cdk().stringToCloudFormation(properties.dataSourceSelectionCriteria),EncryptedLogGroupStrategy:cdk().stringToCloudFormation(properties.encryptedLogGroupStrategy),LogGroupSelectionCriteria:cdk().stringToCloudFormation(properties.logGroupSelectionCriteria)}):properties}function CfnOrganizationCentralizationRuleSourceLogsConfigurationPropertyFromCloudFormation(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("dataSourceSelectionCriteria","DataSourceSelectionCriteria",properties.DataSourceSelectionCriteria!=null?cfn_parse().FromCloudFormation.getString(properties.DataSourceSelectionCriteria):void 0),ret.addPropertyResult("encryptedLogGroupStrategy","EncryptedLogGroupStrategy",properties.EncryptedLogGroupStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.EncryptedLogGroupStrategy):void 0),ret.addPropertyResult("logGroupSelectionCriteria","LogGroupSelectionCriteria",properties.LogGroupSelectionCriteria!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupSelectionCriteria):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRuleCentralizationRuleSourcePropertyValidator(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("regions",cdk().requiredValidator)(properties.regions)),errors.collect(cdk().propertyValidator("regions",cdk().listValidator(cdk().validateString))(properties.regions)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("sourceLogsConfiguration",CfnOrganizationCentralizationRuleSourceLogsConfigurationPropertyValidator)(properties.sourceLogsConfiguration)),errors.wrap('supplied properties not correct for "CentralizationRuleSourceProperty"')}function convertCfnOrganizationCentralizationRuleCentralizationRuleSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleCentralizationRuleSourcePropertyValidator(properties).assertSuccess(),{Regions:cdk().listMapper(cdk().stringToCloudFormation)(properties.regions),Scope:cdk().stringToCloudFormation(properties.scope),SourceLogsConfiguration:convertCfnOrganizationCentralizationRuleSourceLogsConfigurationPropertyToCloudFormation(properties.sourceLogsConfiguration)}):properties}function CfnOrganizationCentralizationRuleCentralizationRuleSourcePropertyFromCloudFormation(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("regions","Regions",properties.Regions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Regions):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("sourceLogsConfiguration","SourceLogsConfiguration",properties.SourceLogsConfiguration!=null?CfnOrganizationCentralizationRuleSourceLogsConfigurationPropertyFromCloudFormation(properties.SourceLogsConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRuleLogsEncryptionConfigurationPropertyValidator(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("encryptionConflictResolutionStrategy",cdk().validateString)(properties.encryptionConflictResolutionStrategy)),errors.collect(cdk().propertyValidator("encryptionStrategy",cdk().requiredValidator)(properties.encryptionStrategy)),errors.collect(cdk().propertyValidator("encryptionStrategy",cdk().validateString)(properties.encryptionStrategy)),errors.collect(cdk().propertyValidator("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.wrap('supplied properties not correct for "LogsEncryptionConfigurationProperty"')}function convertCfnOrganizationCentralizationRuleLogsEncryptionConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleLogsEncryptionConfigurationPropertyValidator(properties).assertSuccess(),{EncryptionConflictResolutionStrategy:cdk().stringToCloudFormation(properties.encryptionConflictResolutionStrategy),EncryptionStrategy:cdk().stringToCloudFormation(properties.encryptionStrategy),KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn)}):properties}function CfnOrganizationCentralizationRuleLogsEncryptionConfigurationPropertyFromCloudFormation(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("encryptionConflictResolutionStrategy","EncryptionConflictResolutionStrategy",properties.EncryptionConflictResolutionStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.EncryptionConflictResolutionStrategy):void 0),ret.addPropertyResult("encryptionStrategy","EncryptionStrategy",properties.EncryptionStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.EncryptionStrategy):void 0),ret.addPropertyResult("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRuleLogsBackupConfigurationPropertyValidator(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("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.collect(cdk().propertyValidator("region",cdk().requiredValidator)(properties.region)),errors.collect(cdk().propertyValidator("region",cdk().validateString)(properties.region)),errors.wrap('supplied properties not correct for "LogsBackupConfigurationProperty"')}function convertCfnOrganizationCentralizationRuleLogsBackupConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleLogsBackupConfigurationPropertyValidator(properties).assertSuccess(),{KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn),Region:cdk().stringToCloudFormation(properties.region)}):properties}function CfnOrganizationCentralizationRuleLogsBackupConfigurationPropertyFromCloudFormation(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("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addPropertyResult("region","Region",properties.Region!=null?cfn_parse().FromCloudFormation.getString(properties.Region):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRuleLogGroupNameConfigurationPropertyValidator(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("logGroupNamePattern",cdk().requiredValidator)(properties.logGroupNamePattern)),errors.collect(cdk().propertyValidator("logGroupNamePattern",cdk().validateString)(properties.logGroupNamePattern)),errors.wrap('supplied properties not correct for "LogGroupNameConfigurationProperty"')}function convertCfnOrganizationCentralizationRuleLogGroupNameConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleLogGroupNameConfigurationPropertyValidator(properties).assertSuccess(),{LogGroupNamePattern:cdk().stringToCloudFormation(properties.logGroupNamePattern)}):properties}function CfnOrganizationCentralizationRuleLogGroupNameConfigurationPropertyFromCloudFormation(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("logGroupNamePattern","LogGroupNamePattern",properties.LogGroupNamePattern!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupNamePattern):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRuleDestinationLogsConfigurationPropertyValidator(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("backupConfiguration",CfnOrganizationCentralizationRuleLogsBackupConfigurationPropertyValidator)(properties.backupConfiguration)),errors.collect(cdk().propertyValidator("logGroupNameConfiguration",CfnOrganizationCentralizationRuleLogGroupNameConfigurationPropertyValidator)(properties.logGroupNameConfiguration)),errors.collect(cdk().propertyValidator("logsEncryptionConfiguration",CfnOrganizationCentralizationRuleLogsEncryptionConfigurationPropertyValidator)(properties.logsEncryptionConfiguration)),errors.wrap('supplied properties not correct for "DestinationLogsConfigurationProperty"')}function convertCfnOrganizationCentralizationRuleDestinationLogsConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleDestinationLogsConfigurationPropertyValidator(properties).assertSuccess(),{BackupConfiguration:convertCfnOrganizationCentralizationRuleLogsBackupConfigurationPropertyToCloudFormation(properties.backupConfiguration),LogGroupNameConfiguration:convertCfnOrganizationCentralizationRuleLogGroupNameConfigurationPropertyToCloudFormation(properties.logGroupNameConfiguration),LogsEncryptionConfiguration:convertCfnOrganizationCentralizationRuleLogsEncryptionConfigurationPropertyToCloudFormation(properties.logsEncryptionConfiguration)}):properties}function CfnOrganizationCentralizationRuleDestinationLogsConfigurationPropertyFromCloudFormation(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("backupConfiguration","BackupConfiguration",properties.BackupConfiguration!=null?CfnOrganizationCentralizationRuleLogsBackupConfigurationPropertyFromCloudFormation(properties.BackupConfiguration):void 0),ret.addPropertyResult("logGroupNameConfiguration","LogGroupNameConfiguration",properties.LogGroupNameConfiguration!=null?CfnOrganizationCentralizationRuleLogGroupNameConfigurationPropertyFromCloudFormation(properties.LogGroupNameConfiguration):void 0),ret.addPropertyResult("logsEncryptionConfiguration","LogsEncryptionConfiguration",properties.LogsEncryptionConfiguration!=null?CfnOrganizationCentralizationRuleLogsEncryptionConfigurationPropertyFromCloudFormation(properties.LogsEncryptionConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRuleCentralizationRuleDestinationPropertyValidator(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("account",cdk().validateString)(properties.account)),errors.collect(cdk().propertyValidator("destinationLogsConfiguration",CfnOrganizationCentralizationRuleDestinationLogsConfigurationPropertyValidator)(properties.destinationLogsConfiguration)),errors.collect(cdk().propertyValidator("region",cdk().requiredValidator)(properties.region)),errors.collect(cdk().propertyValidator("region",cdk().validateString)(properties.region)),errors.wrap('supplied properties not correct for "CentralizationRuleDestinationProperty"')}function convertCfnOrganizationCentralizationRuleCentralizationRuleDestinationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleCentralizationRuleDestinationPropertyValidator(properties).assertSuccess(),{Account:cdk().stringToCloudFormation(properties.account),DestinationLogsConfiguration:convertCfnOrganizationCentralizationRuleDestinationLogsConfigurationPropertyToCloudFormation(properties.destinationLogsConfiguration),Region:cdk().stringToCloudFormation(properties.region)}):properties}function CfnOrganizationCentralizationRuleCentralizationRuleDestinationPropertyFromCloudFormation(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("account","Account",properties.Account!=null?cfn_parse().FromCloudFormation.getString(properties.Account):void 0),ret.addPropertyResult("destinationLogsConfiguration","DestinationLogsConfiguration",properties.DestinationLogsConfiguration!=null?CfnOrganizationCentralizationRuleDestinationLogsConfigurationPropertyFromCloudFormation(properties.DestinationLogsConfiguration):void 0),ret.addPropertyResult("region","Region",properties.Region!=null?cfn_parse().FromCloudFormation.getString(properties.Region):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRuleCentralizationRulePropertyValidator(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("destination",cdk().requiredValidator)(properties.destination)),errors.collect(cdk().propertyValidator("destination",CfnOrganizationCentralizationRuleCentralizationRuleDestinationPropertyValidator)(properties.destination)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",CfnOrganizationCentralizationRuleCentralizationRuleSourcePropertyValidator)(properties.source)),errors.wrap('supplied properties not correct for "CentralizationRuleProperty"')}function convertCfnOrganizationCentralizationRuleCentralizationRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRuleCentralizationRulePropertyValidator(properties).assertSuccess(),{Destination:convertCfnOrganizationCentralizationRuleCentralizationRuleDestinationPropertyToCloudFormation(properties.destination),Source:convertCfnOrganizationCentralizationRuleCentralizationRuleSourcePropertyToCloudFormation(properties.source)}):properties}function CfnOrganizationCentralizationRuleCentralizationRulePropertyFromCloudFormation(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("destination","Destination",properties.Destination!=null?CfnOrganizationCentralizationRuleCentralizationRuleDestinationPropertyFromCloudFormation(properties.Destination):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?CfnOrganizationCentralizationRuleCentralizationRuleSourcePropertyFromCloudFormation(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationCentralizationRulePropsValidator(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("rule",cdk().requiredValidator)(properties.rule)),errors.collect(cdk().propertyValidator("rule",CfnOrganizationCentralizationRuleCentralizationRulePropertyValidator)(properties.rule)),errors.collect(cdk().propertyValidator("ruleName",cdk().requiredValidator)(properties.ruleName)),errors.collect(cdk().propertyValidator("ruleName",cdk().validateString)(properties.ruleName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnOrganizationCentralizationRuleProps"')}function convertCfnOrganizationCentralizationRulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationCentralizationRulePropsValidator(properties).assertSuccess(),{Rule:convertCfnOrganizationCentralizationRuleCentralizationRulePropertyToCloudFormation(properties.rule),RuleName:cdk().stringToCloudFormation(properties.ruleName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnOrganizationCentralizationRulePropsFromCloudFormation(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("rule","Rule",properties.Rule!=null?CfnOrganizationCentralizationRuleCentralizationRulePropertyFromCloudFormation(properties.Rule):void 0),ret.addPropertyResult("ruleName","RuleName",properties.RuleName!=null?cfn_parse().FromCloudFormation.getString(properties.RuleName):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 CfnOrganizationTelemetryRule extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_observabilityadmin.CfnOrganizationTelemetryRule",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ObservabilityAdmin::OrganizationTelemetryRule";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnOrganizationTelemetryRulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnOrganizationTelemetryRule(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnOrganizationTelemetryRule(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnOrganizationTelemetryRule.CFN_RESOURCE_TYPE_NAME}cdkTagManager;_rule;_ruleName;_tags;cfnPropertyNames={tags:"Tags",rule:"Rule",ruleName:"RuleName"};constructor(scope,id,props){super(scope,id,{type:CfnOrganizationTelemetryRule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_observabilityadmin_CfnOrganizationTelemetryRuleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnOrganizationTelemetryRule),error}cdk().requireProperty(props,"rule",this),cdk().requireProperty(props,"ruleName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::ObservabilityAdmin::OrganizationTelemetryRule",void 0,{tagPropertyName:"tags"}),this._rule=props.rule,this._ruleName=props.ruleName,this._tags=props.tags}get organizationTelemetryRuleRef(){return{ruleArn:this.ref}}get rule(){return this._rule}set rule(value){cdk().traceProperty(this.node,"Rule"),this._rule=value}get ruleName(){return this._ruleName}set ruleName(value){cdk().traceProperty(this.node,"RuleName"),this._ruleName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrRuleArn(){return cdk().Token.asString(this.getAtt("RuleArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),rule:this._rule,ruleName:this._ruleName}}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",CfnOrganizationTelemetryRule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnOrganizationTelemetryRulePropsToCloudFormation(props)}}exports.CfnOrganizationTelemetryRule=CfnOrganizationTelemetryRule;function CfnOrganizationTelemetryRuleVPCFlowLogParametersPropertyValidator(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("logFormat",cdk().validateString)(properties.logFormat)),errors.collect(cdk().propertyValidator("maxAggregationInterval",cdk().validateNumber)(properties.maxAggregationInterval)),errors.collect(cdk().propertyValidator("trafficType",cdk().validateString)(properties.trafficType)),errors.wrap('supplied properties not correct for "VPCFlowLogParametersProperty"')}function convertCfnOrganizationTelemetryRuleVPCFlowLogParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleVPCFlowLogParametersPropertyValidator(properties).assertSuccess(),{LogFormat:cdk().stringToCloudFormation(properties.logFormat),MaxAggregationInterval:cdk().numberToCloudFormation(properties.maxAggregationInterval),TrafficType:cdk().stringToCloudFormation(properties.trafficType)}):properties}function CfnOrganizationTelemetryRuleVPCFlowLogParametersPropertyFromCloudFormation(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("logFormat","LogFormat",properties.LogFormat!=null?cfn_parse().FromCloudFormation.getString(properties.LogFormat):void 0),ret.addPropertyResult("maxAggregationInterval","MaxAggregationInterval",properties.MaxAggregationInterval!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxAggregationInterval):void 0),ret.addPropertyResult("trafficType","TrafficType",properties.TrafficType!=null?cfn_parse().FromCloudFormation.getString(properties.TrafficType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleAdvancedFieldSelectorPropertyValidator(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("endsWith",cdk().listValidator(cdk().validateString))(properties.endsWith)),errors.collect(cdk().propertyValidator("equalTo",cdk().listValidator(cdk().validateString))(properties.equalTo)),errors.collect(cdk().propertyValidator("field",cdk().validateString)(properties.field)),errors.collect(cdk().propertyValidator("notEndsWith",cdk().listValidator(cdk().validateString))(properties.notEndsWith)),errors.collect(cdk().propertyValidator("notEquals",cdk().listValidator(cdk().validateString))(properties.notEquals)),errors.collect(cdk().propertyValidator("notStartsWith",cdk().listValidator(cdk().validateString))(properties.notStartsWith)),errors.collect(cdk().propertyValidator("startsWith",cdk().listValidator(cdk().validateString))(properties.startsWith)),errors.wrap('supplied properties not correct for "AdvancedFieldSelectorProperty"')}function convertCfnOrganizationTelemetryRuleAdvancedFieldSelectorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleAdvancedFieldSelectorPropertyValidator(properties).assertSuccess(),{EndsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.endsWith),Equals:cdk().listMapper(cdk().stringToCloudFormation)(properties.equalTo),Field:cdk().stringToCloudFormation(properties.field),NotEndsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.notEndsWith),NotEquals:cdk().listMapper(cdk().stringToCloudFormation)(properties.notEquals),NotStartsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.notStartsWith),StartsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.startsWith)}):properties}function CfnOrganizationTelemetryRuleAdvancedFieldSelectorPropertyFromCloudFormation(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("endsWith","EndsWith",properties.EndsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.EndsWith):void 0),ret.addPropertyResult("equalTo","Equals",properties.Equals!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Equals):void 0),ret.addPropertyResult("field","Field",properties.Field!=null?cfn_parse().FromCloudFormation.getString(properties.Field):void 0),ret.addPropertyResult("notEndsWith","NotEndsWith",properties.NotEndsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.NotEndsWith):void 0),ret.addPropertyResult("notEquals","NotEquals",properties.NotEquals!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.NotEquals):void 0),ret.addPropertyResult("notStartsWith","NotStartsWith",properties.NotStartsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.NotStartsWith):void 0),ret.addPropertyResult("startsWith","StartsWith",properties.StartsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.StartsWith):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleAdvancedEventSelectorPropertyValidator(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("fieldSelectors",cdk().requiredValidator)(properties.fieldSelectors)),errors.collect(cdk().propertyValidator("fieldSelectors",cdk().listValidator(CfnOrganizationTelemetryRuleAdvancedFieldSelectorPropertyValidator))(properties.fieldSelectors)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "AdvancedEventSelectorProperty"')}function convertCfnOrganizationTelemetryRuleAdvancedEventSelectorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleAdvancedEventSelectorPropertyValidator(properties).assertSuccess(),{FieldSelectors:cdk().listMapper(convertCfnOrganizationTelemetryRuleAdvancedFieldSelectorPropertyToCloudFormation)(properties.fieldSelectors),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnOrganizationTelemetryRuleAdvancedEventSelectorPropertyFromCloudFormation(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("fieldSelectors","FieldSelectors",properties.FieldSelectors!=null?cfn_parse().FromCloudFormation.getArray(CfnOrganizationTelemetryRuleAdvancedFieldSelectorPropertyFromCloudFormation)(properties.FieldSelectors):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleCloudtrailParametersPropertyValidator(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("advancedEventSelectors",cdk().requiredValidator)(properties.advancedEventSelectors)),errors.collect(cdk().propertyValidator("advancedEventSelectors",cdk().listValidator(CfnOrganizationTelemetryRuleAdvancedEventSelectorPropertyValidator))(properties.advancedEventSelectors)),errors.wrap('supplied properties not correct for "CloudtrailParametersProperty"')}function convertCfnOrganizationTelemetryRuleCloudtrailParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleCloudtrailParametersPropertyValidator(properties).assertSuccess(),{AdvancedEventSelectors:cdk().listMapper(convertCfnOrganizationTelemetryRuleAdvancedEventSelectorPropertyToCloudFormation)(properties.advancedEventSelectors)}):properties}function CfnOrganizationTelemetryRuleCloudtrailParametersPropertyFromCloudFormation(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("advancedEventSelectors","AdvancedEventSelectors",properties.AdvancedEventSelectors!=null?cfn_parse().FromCloudFormation.getArray(CfnOrganizationTelemetryRuleAdvancedEventSelectorPropertyFromCloudFormation)(properties.AdvancedEventSelectors):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleELBLoadBalancerLoggingParametersPropertyValidator(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("fieldDelimiter",cdk().validateString)(properties.fieldDelimiter)),errors.collect(cdk().propertyValidator("outputFormat",cdk().validateString)(properties.outputFormat)),errors.wrap('supplied properties not correct for "ELBLoadBalancerLoggingParametersProperty"')}function convertCfnOrganizationTelemetryRuleELBLoadBalancerLoggingParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleELBLoadBalancerLoggingParametersPropertyValidator(properties).assertSuccess(),{FieldDelimiter:cdk().stringToCloudFormation(properties.fieldDelimiter),OutputFormat:cdk().stringToCloudFormation(properties.outputFormat)}):properties}function CfnOrganizationTelemetryRuleELBLoadBalancerLoggingParametersPropertyFromCloudFormation(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("fieldDelimiter","FieldDelimiter",properties.FieldDelimiter!=null?cfn_parse().FromCloudFormation.getString(properties.FieldDelimiter):void 0),ret.addPropertyResult("outputFormat","OutputFormat",properties.OutputFormat!=null?cfn_parse().FromCloudFormation.getString(properties.OutputFormat):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleSingleHeaderPropertyValidator(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().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "SingleHeaderProperty"')}function convertCfnOrganizationTelemetryRuleSingleHeaderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleSingleHeaderPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnOrganizationTelemetryRuleSingleHeaderPropertyFromCloudFormation(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("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleFieldToMatchPropertyValidator(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("method",cdk().validateString)(properties.method)),errors.collect(cdk().propertyValidator("queryString",cdk().validateString)(properties.queryString)),errors.collect(cdk().propertyValidator("singleHeader",CfnOrganizationTelemetryRuleSingleHeaderPropertyValidator)(properties.singleHeader)),errors.collect(cdk().propertyValidator("uriPath",cdk().validateString)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function convertCfnOrganizationTelemetryRuleFieldToMatchPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleFieldToMatchPropertyValidator(properties).assertSuccess(),{Method:cdk().stringToCloudFormation(properties.method),QueryString:cdk().stringToCloudFormation(properties.queryString),SingleHeader:convertCfnOrganizationTelemetryRuleSingleHeaderPropertyToCloudFormation(properties.singleHeader),UriPath:cdk().stringToCloudFormation(properties.uriPath)}):properties}function CfnOrganizationTelemetryRuleFieldToMatchPropertyFromCloudFormation(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("method","Method",properties.Method!=null?cfn_parse().FromCloudFormation.getString(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse().FromCloudFormation.getString(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?CfnOrganizationTelemetryRuleSingleHeaderPropertyFromCloudFormation(properties.SingleHeader):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse().FromCloudFormation.getString(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleActionConditionPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),errors.wrap('supplied properties not correct for "ActionConditionProperty"')}function convertCfnOrganizationTelemetryRuleActionConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleActionConditionPropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action)}):properties}function CfnOrganizationTelemetryRuleActionConditionPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?cfn_parse().FromCloudFormation.getString(properties.Action):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleLabelNameConditionPropertyValidator(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("labelName",cdk().validateString)(properties.labelName)),errors.wrap('supplied properties not correct for "LabelNameConditionProperty"')}function convertCfnOrganizationTelemetryRuleLabelNameConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleLabelNameConditionPropertyValidator(properties).assertSuccess(),{LabelName:cdk().stringToCloudFormation(properties.labelName)}):properties}function CfnOrganizationTelemetryRuleLabelNameConditionPropertyFromCloudFormation(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("labelName","LabelName",properties.LabelName!=null?cfn_parse().FromCloudFormation.getString(properties.LabelName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleConditionPropertyValidator(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("actionCondition",CfnOrganizationTelemetryRuleActionConditionPropertyValidator)(properties.actionCondition)),errors.collect(cdk().propertyValidator("labelNameCondition",CfnOrganizationTelemetryRuleLabelNameConditionPropertyValidator)(properties.labelNameCondition)),errors.wrap('supplied properties not correct for "ConditionProperty"')}function convertCfnOrganizationTelemetryRuleConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleConditionPropertyValidator(properties).assertSuccess(),{ActionCondition:convertCfnOrganizationTelemetryRuleActionConditionPropertyToCloudFormation(properties.actionCondition),LabelNameCondition:convertCfnOrganizationTelemetryRuleLabelNameConditionPropertyToCloudFormation(properties.labelNameCondition)}):properties}function CfnOrganizationTelemetryRuleConditionPropertyFromCloudFormation(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("actionCondition","ActionCondition",properties.ActionCondition!=null?CfnOrganizationTelemetryRuleActionConditionPropertyFromCloudFormation(properties.ActionCondition):void 0),ret.addPropertyResult("labelNameCondition","LabelNameCondition",properties.LabelNameCondition!=null?CfnOrganizationTelemetryRuleLabelNameConditionPropertyFromCloudFormation(properties.LabelNameCondition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleFilterPropertyValidator(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("behavior",cdk().validateString)(properties.behavior)),errors.collect(cdk().propertyValidator("conditions",cdk().listValidator(CfnOrganizationTelemetryRuleConditionPropertyValidator))(properties.conditions)),errors.collect(cdk().propertyValidator("requirement",cdk().validateString)(properties.requirement)),errors.wrap('supplied properties not correct for "FilterProperty"')}function convertCfnOrganizationTelemetryRuleFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleFilterPropertyValidator(properties).assertSuccess(),{Behavior:cdk().stringToCloudFormation(properties.behavior),Conditions:cdk().listMapper(convertCfnOrganizationTelemetryRuleConditionPropertyToCloudFormation)(properties.conditions),Requirement:cdk().stringToCloudFormation(properties.requirement)}):properties}function CfnOrganizationTelemetryRuleFilterPropertyFromCloudFormation(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("behavior","Behavior",properties.Behavior!=null?cfn_parse().FromCloudFormation.getString(properties.Behavior):void 0),ret.addPropertyResult("conditions","Conditions",properties.Conditions!=null?cfn_parse().FromCloudFormation.getArray(CfnOrganizationTelemetryRuleConditionPropertyFromCloudFormation)(properties.Conditions):void 0),ret.addPropertyResult("requirement","Requirement",properties.Requirement!=null?cfn_parse().FromCloudFormation.getString(properties.Requirement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleLoggingFilterPropertyValidator(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("defaultBehavior",cdk().validateString)(properties.defaultBehavior)),errors.collect(cdk().propertyValidator("filters",cdk().listValidator(CfnOrganizationTelemetryRuleFilterPropertyValidator))(properties.filters)),errors.wrap('supplied properties not correct for "LoggingFilterProperty"')}function convertCfnOrganizationTelemetryRuleLoggingFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleLoggingFilterPropertyValidator(properties).assertSuccess(),{DefaultBehavior:cdk().stringToCloudFormation(properties.defaultBehavior),Filters:cdk().listMapper(convertCfnOrganizationTelemetryRuleFilterPropertyToCloudFormation)(properties.filters)}):properties}function CfnOrganizationTelemetryRuleLoggingFilterPropertyFromCloudFormation(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("defaultBehavior","DefaultBehavior",properties.DefaultBehavior!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultBehavior):void 0),ret.addPropertyResult("filters","Filters",properties.Filters!=null?cfn_parse().FromCloudFormation.getArray(CfnOrganizationTelemetryRuleFilterPropertyFromCloudFormation)(properties.Filters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleWAFLoggingParametersPropertyValidator(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("logType",cdk().validateString)(properties.logType)),errors.collect(cdk().propertyValidator("loggingFilter",CfnOrganizationTelemetryRuleLoggingFilterPropertyValidator)(properties.loggingFilter)),errors.collect(cdk().propertyValidator("redactedFields",cdk().listValidator(CfnOrganizationTelemetryRuleFieldToMatchPropertyValidator))(properties.redactedFields)),errors.wrap('supplied properties not correct for "WAFLoggingParametersProperty"')}function convertCfnOrganizationTelemetryRuleWAFLoggingParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleWAFLoggingParametersPropertyValidator(properties).assertSuccess(),{LogType:cdk().stringToCloudFormation(properties.logType),LoggingFilter:convertCfnOrganizationTelemetryRuleLoggingFilterPropertyToCloudFormation(properties.loggingFilter),RedactedFields:cdk().listMapper(convertCfnOrganizationTelemetryRuleFieldToMatchPropertyToCloudFormation)(properties.redactedFields)}):properties}function CfnOrganizationTelemetryRuleWAFLoggingParametersPropertyFromCloudFormation(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("loggingFilter","LoggingFilter",properties.LoggingFilter!=null?CfnOrganizationTelemetryRuleLoggingFilterPropertyFromCloudFormation(properties.LoggingFilter):void 0),ret.addPropertyResult("logType","LogType",properties.LogType!=null?cfn_parse().FromCloudFormation.getString(properties.LogType):void 0),ret.addPropertyResult("redactedFields","RedactedFields",properties.RedactedFields!=null?cfn_parse().FromCloudFormation.getArray(CfnOrganizationTelemetryRuleFieldToMatchPropertyFromCloudFormation)(properties.RedactedFields):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleTelemetryDestinationConfigurationPropertyValidator(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("cloudtrailParameters",CfnOrganizationTelemetryRuleCloudtrailParametersPropertyValidator)(properties.cloudtrailParameters)),errors.collect(cdk().propertyValidator("destinationPattern",cdk().validateString)(properties.destinationPattern)),errors.collect(cdk().propertyValidator("destinationType",cdk().validateString)(properties.destinationType)),errors.collect(cdk().propertyValidator("elbLoadBalancerLoggingParameters",CfnOrganizationTelemetryRuleELBLoadBalancerLoggingParametersPropertyValidator)(properties.elbLoadBalancerLoggingParameters)),errors.collect(cdk().propertyValidator("retentionInDays",cdk().validateNumber)(properties.retentionInDays)),errors.collect(cdk().propertyValidator("vpcFlowLogParameters",CfnOrganizationTelemetryRuleVPCFlowLogParametersPropertyValidator)(properties.vpcFlowLogParameters)),errors.collect(cdk().propertyValidator("wafLoggingParameters",CfnOrganizationTelemetryRuleWAFLoggingParametersPropertyValidator)(properties.wafLoggingParameters)),errors.wrap('supplied properties not correct for "TelemetryDestinationConfigurationProperty"')}function convertCfnOrganizationTelemetryRuleTelemetryDestinationConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleTelemetryDestinationConfigurationPropertyValidator(properties).assertSuccess(),{CloudtrailParameters:convertCfnOrganizationTelemetryRuleCloudtrailParametersPropertyToCloudFormation(properties.cloudtrailParameters),DestinationPattern:cdk().stringToCloudFormation(properties.destinationPattern),DestinationType:cdk().stringToCloudFormation(properties.destinationType),ELBLoadBalancerLoggingParameters:convertCfnOrganizationTelemetryRuleELBLoadBalancerLoggingParametersPropertyToCloudFormation(properties.elbLoadBalancerLoggingParameters),RetentionInDays:cdk().numberToCloudFormation(properties.retentionInDays),VPCFlowLogParameters:convertCfnOrganizationTelemetryRuleVPCFlowLogParametersPropertyToCloudFormation(properties.vpcFlowLogParameters),WAFLoggingParameters:convertCfnOrganizationTelemetryRuleWAFLoggingParametersPropertyToCloudFormation(properties.wafLoggingParameters)}):properties}function CfnOrganizationTelemetryRuleTelemetryDestinationConfigurationPropertyFromCloudFormation(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("cloudtrailParameters","CloudtrailParameters",properties.CloudtrailParameters!=null?CfnOrganizationTelemetryRuleCloudtrailParametersPropertyFromCloudFormation(properties.CloudtrailParameters):void 0),ret.addPropertyResult("destinationPattern","DestinationPattern",properties.DestinationPattern!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationPattern):void 0),ret.addPropertyResult("destinationType","DestinationType",properties.DestinationType!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationType):void 0),ret.addPropertyResult("elbLoadBalancerLoggingParameters","ELBLoadBalancerLoggingParameters",properties.ELBLoadBalancerLoggingParameters!=null?CfnOrganizationTelemetryRuleELBLoadBalancerLoggingParametersPropertyFromCloudFormation(properties.ELBLoadBalancerLoggingParameters):void 0),ret.addPropertyResult("retentionInDays","RetentionInDays",properties.RetentionInDays!=null?cfn_parse().FromCloudFormation.getNumber(properties.RetentionInDays):void 0),ret.addPropertyResult("vpcFlowLogParameters","VPCFlowLogParameters",properties.VPCFlowLogParameters!=null?CfnOrganizationTelemetryRuleVPCFlowLogParametersPropertyFromCloudFormation(properties.VPCFlowLogParameters):void 0),ret.addPropertyResult("wafLoggingParameters","WAFLoggingParameters",properties.WAFLoggingParameters!=null?CfnOrganizationTelemetryRuleWAFLoggingParametersPropertyFromCloudFormation(properties.WAFLoggingParameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRuleTelemetryRulePropertyValidator(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("destinationConfiguration",CfnOrganizationTelemetryRuleTelemetryDestinationConfigurationPropertyValidator)(properties.destinationConfiguration)),errors.collect(cdk().propertyValidator("resourceType",cdk().requiredValidator)(properties.resourceType)),errors.collect(cdk().propertyValidator("resourceType",cdk().validateString)(properties.resourceType)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("selectionCriteria",cdk().validateString)(properties.selectionCriteria)),errors.collect(cdk().propertyValidator("telemetrySourceTypes",cdk().listValidator(cdk().validateString))(properties.telemetrySourceTypes)),errors.collect(cdk().propertyValidator("telemetryType",cdk().requiredValidator)(properties.telemetryType)),errors.collect(cdk().propertyValidator("telemetryType",cdk().validateString)(properties.telemetryType)),errors.wrap('supplied properties not correct for "TelemetryRuleProperty"')}function convertCfnOrganizationTelemetryRuleTelemetryRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRuleTelemetryRulePropertyValidator(properties).assertSuccess(),{DestinationConfiguration:convertCfnOrganizationTelemetryRuleTelemetryDestinationConfigurationPropertyToCloudFormation(properties.destinationConfiguration),ResourceType:cdk().stringToCloudFormation(properties.resourceType),Scope:cdk().stringToCloudFormation(properties.scope),SelectionCriteria:cdk().stringToCloudFormation(properties.selectionCriteria),TelemetrySourceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.telemetrySourceTypes),TelemetryType:cdk().stringToCloudFormation(properties.telemetryType)}):properties}function CfnOrganizationTelemetryRuleTelemetryRulePropertyFromCloudFormation(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("destinationConfiguration","DestinationConfiguration",properties.DestinationConfiguration!=null?CfnOrganizationTelemetryRuleTelemetryDestinationConfigurationPropertyFromCloudFormation(properties.DestinationConfiguration):void 0),ret.addPropertyResult("resourceType","ResourceType",properties.ResourceType!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceType):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("selectionCriteria","SelectionCriteria",properties.SelectionCriteria!=null?cfn_parse().FromCloudFormation.getString(properties.SelectionCriteria):void 0),ret.addPropertyResult("telemetrySourceTypes","TelemetrySourceTypes",properties.TelemetrySourceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.TelemetrySourceTypes):void 0),ret.addPropertyResult("telemetryType","TelemetryType",properties.TelemetryType!=null?cfn_parse().FromCloudFormation.getString(properties.TelemetryType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnOrganizationTelemetryRulePropsValidator(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("rule",cdk().requiredValidator)(properties.rule)),errors.collect(cdk().propertyValidator("rule",CfnOrganizationTelemetryRuleTelemetryRulePropertyValidator)(properties.rule)),errors.collect(cdk().propertyValidator("ruleName",cdk().requiredValidator)(properties.ruleName)),errors.collect(cdk().propertyValidator("ruleName",cdk().validateString)(properties.ruleName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnOrganizationTelemetryRuleProps"')}function convertCfnOrganizationTelemetryRulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnOrganizationTelemetryRulePropsValidator(properties).assertSuccess(),{Rule:convertCfnOrganizationTelemetryRuleTelemetryRulePropertyToCloudFormation(properties.rule),RuleName:cdk().stringToCloudFormation(properties.ruleName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnOrganizationTelemetryRulePropsFromCloudFormation(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("rule","Rule",properties.Rule!=null?CfnOrganizationTelemetryRuleTelemetryRulePropertyFromCloudFormation(properties.Rule):void 0),ret.addPropertyResult("ruleName","RuleName",properties.RuleName!=null?cfn_parse().FromCloudFormation.getString(properties.RuleName):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 CfnS3TableIntegration extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_observabilityadmin.CfnS3TableIntegration",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ObservabilityAdmin::S3TableIntegration";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnS3TableIntegrationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnS3TableIntegration(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnS3TableIntegration(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnS3TableIntegration.CFN_RESOURCE_TYPE_NAME}static arnForS3TableIntegration(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_observabilityadmin_IS3TableIntegrationRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForS3TableIntegration),error}return resource.s3TableIntegrationRef.s3TableIntegrationArn}cdkTagManager;_encryption;_logSources;_roleArn;_tags;cfnPropertyNames={tags:"Tags",encryption:"Encryption",logSources:"LogSources",roleArn:"RoleArn"};constructor(scope,id,props){super(scope,id,{type:CfnS3TableIntegration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_observabilityadmin_CfnS3TableIntegrationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnS3TableIntegration),error}cdk().requireProperty(props,"encryption",this),cdk().requireProperty(props,"roleArn",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::ObservabilityAdmin::S3TableIntegration",void 0,{tagPropertyName:"tags"}),this._encryption=props.encryption,this._logSources=props.logSources,this._roleArn=props.roleArn,this._tags=props.tags}get s3TableIntegrationRef(){return{s3TableIntegrationArn:this.ref}}get encryption(){return this._encryption}set encryption(value){cdk().traceProperty(this.node,"Encryption"),this._encryption=value}get logSources(){return this._logSources}set logSources(value){cdk().traceProperty(this.node,"LogSources"),this._logSources=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),encryption:this._encryption,logSources:this._logSources,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",CfnS3TableIntegration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnS3TableIntegrationPropsToCloudFormation(props)}}exports.CfnS3TableIntegration=CfnS3TableIntegration;function CfnS3TableIntegrationEncryptionConfigPropertyValidator(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("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.collect(cdk().propertyValidator("sseAlgorithm",cdk().requiredValidator)(properties.sseAlgorithm)),errors.collect(cdk().propertyValidator("sseAlgorithm",cdk().validateString)(properties.sseAlgorithm)),errors.wrap('supplied properties not correct for "EncryptionConfigProperty"')}function convertCfnS3TableIntegrationEncryptionConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnS3TableIntegrationEncryptionConfigPropertyValidator(properties).assertSuccess(),{KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn),SseAlgorithm:cdk().stringToCloudFormation(properties.sseAlgorithm)}):properties}function CfnS3TableIntegrationEncryptionConfigPropertyFromCloudFormation(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("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addPropertyResult("sseAlgorithm","SseAlgorithm",properties.SseAlgorithm!=null?cfn_parse().FromCloudFormation.getString(properties.SseAlgorithm):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnS3TableIntegrationLogSourcePropertyValidator(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("identifier",cdk().validateString)(properties.identifier)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "LogSourceProperty"')}function convertCfnS3TableIntegrationLogSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnS3TableIntegrationLogSourcePropertyValidator(properties).assertSuccess(),{Identifier:cdk().stringToCloudFormation(properties.identifier),Name:cdk().stringToCloudFormation(properties.name),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnS3TableIntegrationLogSourcePropertyFromCloudFormation(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("identifier","Identifier",properties.Identifier!=null?cfn_parse().FromCloudFormation.getString(properties.Identifier):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnS3TableIntegrationPropsValidator(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("encryption",cdk().requiredValidator)(properties.encryption)),errors.collect(cdk().propertyValidator("encryption",CfnS3TableIntegrationEncryptionConfigPropertyValidator)(properties.encryption)),errors.collect(cdk().propertyValidator("logSources",cdk().listValidator(CfnS3TableIntegrationLogSourcePropertyValidator))(properties.logSources)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnS3TableIntegrationProps"')}function convertCfnS3TableIntegrationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnS3TableIntegrationPropsValidator(properties).assertSuccess(),{Encryption:convertCfnS3TableIntegrationEncryptionConfigPropertyToCloudFormation(properties.encryption),LogSources:cdk().listMapper(convertCfnS3TableIntegrationLogSourcePropertyToCloudFormation)(properties.logSources),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnS3TableIntegrationPropsFromCloudFormation(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("encryption","Encryption",properties.Encryption!=null?CfnS3TableIntegrationEncryptionConfigPropertyFromCloudFormation(properties.Encryption):void 0),ret.addPropertyResult("logSources","LogSources",properties.LogSources!=null?cfn_parse().FromCloudFormation.getArray(CfnS3TableIntegrationLogSourcePropertyFromCloudFormation)(properties.LogSources):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):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 CfnTelemetryEnrichment extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_observabilityadmin.CfnTelemetryEnrichment",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ObservabilityAdmin::TelemetryEnrichment";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTelemetryEnrichmentPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnTelemetryEnrichment(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnTelemetryEnrichment(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnTelemetryEnrichment.CFN_RESOURCE_TYPE_NAME}_scope;cfnPropertyNames={scope:"Scope"};constructor(scope,id,props={}){super(scope,id,{type:CfnTelemetryEnrichment.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_observabilityadmin_CfnTelemetryEnrichmentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTelemetryEnrichment),error}this._scope=props.scope}get telemetryEnrichmentRef(){return{scope:this.ref}}get scope(){return this._scope}set scope(value){cdk().traceProperty(this.node,"Scope"),this._scope=value}get attrStatus(){return cdk().Token.asString(this.getAtt("Status",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{scope:this._scope}}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",CfnTelemetryEnrichment.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTelemetryEnrichmentPropsToCloudFormation(props)}}exports.CfnTelemetryEnrichment=CfnTelemetryEnrichment;function CfnTelemetryEnrichmentPropsValidator(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("scope",cdk().validateString)(properties.scope)),errors.wrap('supplied properties not correct for "CfnTelemetryEnrichmentProps"')}function convertCfnTelemetryEnrichmentPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryEnrichmentPropsValidator(properties).assertSuccess(),{Scope:cdk().stringToCloudFormation(properties.scope)}):properties}function CfnTelemetryEnrichmentPropsFromCloudFormation(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("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTelemetryPipelines extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_observabilityadmin.CfnTelemetryPipelines",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ObservabilityAdmin::TelemetryPipelines";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTelemetryPipelinesPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnTelemetryPipelines(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnTelemetryPipelines(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnTelemetryPipelines.CFN_RESOURCE_TYPE_NAME}static arnForTelemetryPipelines(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_observabilityadmin_ITelemetryPipelinesRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForTelemetryPipelines),error}return resource.telemetryPipelinesRef.telemetryPipelinesArn}cdkTagManager;_configuration;_name;_tags;cfnPropertyNames={tags:"Tags",configuration:"Configuration",name:"Name"};constructor(scope,id,props){super(scope,id,{type:CfnTelemetryPipelines.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_observabilityadmin_CfnTelemetryPipelinesProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTelemetryPipelines),error}cdk().requireProperty(props,"configuration",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::ObservabilityAdmin::TelemetryPipelines",void 0,{tagPropertyName:"tags"}),this._configuration=props.configuration,this._name=props.name,this._tags=props.tags}get telemetryPipelinesRef(){return{pipelineIdentifier:this.ref,telemetryPipelinesArn:this.attrArn}}get configuration(){return this._configuration}set configuration(value){cdk().traceProperty(this.node,"Configuration"),this._configuration=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrPipeline(){return this.getAtt("Pipeline")}get attrPipelineIdentifier(){return cdk().Token.asString(this.getAtt("PipelineIdentifier",cdk().ResolutionTypeHint.STRING))}get attrStatus(){return cdk().Token.asString(this.getAtt("Status",cdk().ResolutionTypeHint.STRING))}get attrStatusReason(){return this.getAtt("StatusReason")}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),configuration:this._configuration,name:this._name}}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",CfnTelemetryPipelines.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTelemetryPipelinesPropsToCloudFormation(props)}}exports.CfnTelemetryPipelines=CfnTelemetryPipelines;function CfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyValidator(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("body",cdk().requiredValidator)(properties.body)),errors.collect(cdk().propertyValidator("body",cdk().validateString)(properties.body)),errors.wrap('supplied properties not correct for "TelemetryPipelineConfigurationProperty"')}function convertCfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyValidator(properties).assertSuccess(),{Body:cdk().stringToCloudFormation(properties.body)}):properties}function CfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyFromCloudFormation(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("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getString(properties.Body):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryPipelinesTelemetryPipelineStatusReasonPropertyValidator(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.wrap('supplied properties not correct for "TelemetryPipelineStatusReasonProperty"')}function convertCfnTelemetryPipelinesTelemetryPipelineStatusReasonPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryPipelinesTelemetryPipelineStatusReasonPropertyValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description)}):properties}function CfnTelemetryPipelinesTelemetryPipelineStatusReasonPropertyFromCloudFormation(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.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryPipelinesTelemetryPipelinePropertyValidator(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("arn",cdk().validateString)(properties.arn)),errors.collect(cdk().propertyValidator("configuration",CfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyValidator)(properties.configuration)),errors.collect(cdk().propertyValidator("createdTimeStamp",cdk().validateNumber)(properties.createdTimeStamp)),errors.collect(cdk().propertyValidator("lastUpdateTimeStamp",cdk().validateNumber)(properties.lastUpdateTimeStamp)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("status",cdk().validateString)(properties.status)),errors.collect(cdk().propertyValidator("statusReason",CfnTelemetryPipelinesTelemetryPipelineStatusReasonPropertyValidator)(properties.statusReason)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "TelemetryPipelineProperty"')}function convertCfnTelemetryPipelinesTelemetryPipelinePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryPipelinesTelemetryPipelinePropertyValidator(properties).assertSuccess(),{Arn:cdk().stringToCloudFormation(properties.arn),Configuration:convertCfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyToCloudFormation(properties.configuration),CreatedTimeStamp:cdk().numberToCloudFormation(properties.createdTimeStamp),LastUpdateTimeStamp:cdk().numberToCloudFormation(properties.lastUpdateTimeStamp),Name:cdk().stringToCloudFormation(properties.name),Status:cdk().stringToCloudFormation(properties.status),StatusReason:convertCfnTelemetryPipelinesTelemetryPipelineStatusReasonPropertyToCloudFormation(properties.statusReason),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnTelemetryPipelinesTelemetryPipelinePropertyFromCloudFormation(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("arn","Arn",properties.Arn!=null?cfn_parse().FromCloudFormation.getString(properties.Arn):void 0),ret.addPropertyResult("configuration","Configuration",properties.Configuration!=null?CfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyFromCloudFormation(properties.Configuration):void 0),ret.addPropertyResult("createdTimeStamp","CreatedTimeStamp",properties.CreatedTimeStamp!=null?cfn_parse().FromCloudFormation.getNumber(properties.CreatedTimeStamp):void 0),ret.addPropertyResult("lastUpdateTimeStamp","LastUpdateTimeStamp",properties.LastUpdateTimeStamp!=null?cfn_parse().FromCloudFormation.getNumber(properties.LastUpdateTimeStamp):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse().FromCloudFormation.getString(properties.Status):void 0),ret.addPropertyResult("statusReason","StatusReason",properties.StatusReason!=null?CfnTelemetryPipelinesTelemetryPipelineStatusReasonPropertyFromCloudFormation(properties.StatusReason):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 CfnTelemetryPipelinesPropsValidator(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("configuration",cdk().requiredValidator)(properties.configuration)),errors.collect(cdk().propertyValidator("configuration",CfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyValidator)(properties.configuration)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnTelemetryPipelinesProps"')}function convertCfnTelemetryPipelinesPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryPipelinesPropsValidator(properties).assertSuccess(),{Configuration:convertCfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyToCloudFormation(properties.configuration),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnTelemetryPipelinesPropsFromCloudFormation(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("configuration","Configuration",properties.Configuration!=null?CfnTelemetryPipelinesTelemetryPipelineConfigurationPropertyFromCloudFormation(properties.Configuration):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTelemetryRule extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_observabilityadmin.CfnTelemetryRule",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ObservabilityAdmin::TelemetryRule";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTelemetryRulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnTelemetryRule(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnTelemetryRule(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnTelemetryRule.CFN_RESOURCE_TYPE_NAME}cdkTagManager;_rule;_ruleName;_tags;cfnPropertyNames={tags:"Tags",rule:"Rule",ruleName:"RuleName"};constructor(scope,id,props){super(scope,id,{type:CfnTelemetryRule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_observabilityadmin_CfnTelemetryRuleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTelemetryRule),error}cdk().requireProperty(props,"rule",this),cdk().requireProperty(props,"ruleName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::ObservabilityAdmin::TelemetryRule",void 0,{tagPropertyName:"tags"}),this._rule=props.rule,this._ruleName=props.ruleName,this._tags=props.tags}get telemetryRuleRef(){return{ruleArn:this.ref}}get rule(){return this._rule}set rule(value){cdk().traceProperty(this.node,"Rule"),this._rule=value}get ruleName(){return this._ruleName}set ruleName(value){cdk().traceProperty(this.node,"RuleName"),this._ruleName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrRuleArn(){return cdk().Token.asString(this.getAtt("RuleArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),rule:this._rule,ruleName:this._ruleName}}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",CfnTelemetryRule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTelemetryRulePropsToCloudFormation(props)}}exports.CfnTelemetryRule=CfnTelemetryRule;function CfnTelemetryRuleVPCFlowLogParametersPropertyValidator(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("logFormat",cdk().validateString)(properties.logFormat)),errors.collect(cdk().propertyValidator("maxAggregationInterval",cdk().validateNumber)(properties.maxAggregationInterval)),errors.collect(cdk().propertyValidator("trafficType",cdk().validateString)(properties.trafficType)),errors.wrap('supplied properties not correct for "VPCFlowLogParametersProperty"')}function convertCfnTelemetryRuleVPCFlowLogParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleVPCFlowLogParametersPropertyValidator(properties).assertSuccess(),{LogFormat:cdk().stringToCloudFormation(properties.logFormat),MaxAggregationInterval:cdk().numberToCloudFormation(properties.maxAggregationInterval),TrafficType:cdk().stringToCloudFormation(properties.trafficType)}):properties}function CfnTelemetryRuleVPCFlowLogParametersPropertyFromCloudFormation(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("logFormat","LogFormat",properties.LogFormat!=null?cfn_parse().FromCloudFormation.getString(properties.LogFormat):void 0),ret.addPropertyResult("maxAggregationInterval","MaxAggregationInterval",properties.MaxAggregationInterval!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxAggregationInterval):void 0),ret.addPropertyResult("trafficType","TrafficType",properties.TrafficType!=null?cfn_parse().FromCloudFormation.getString(properties.TrafficType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleAdvancedFieldSelectorPropertyValidator(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("endsWith",cdk().listValidator(cdk().validateString))(properties.endsWith)),errors.collect(cdk().propertyValidator("equalTo",cdk().listValidator(cdk().validateString))(properties.equalTo)),errors.collect(cdk().propertyValidator("field",cdk().validateString)(properties.field)),errors.collect(cdk().propertyValidator("notEndsWith",cdk().listValidator(cdk().validateString))(properties.notEndsWith)),errors.collect(cdk().propertyValidator("notEquals",cdk().listValidator(cdk().validateString))(properties.notEquals)),errors.collect(cdk().propertyValidator("notStartsWith",cdk().listValidator(cdk().validateString))(properties.notStartsWith)),errors.collect(cdk().propertyValidator("startsWith",cdk().listValidator(cdk().validateString))(properties.startsWith)),errors.wrap('supplied properties not correct for "AdvancedFieldSelectorProperty"')}function convertCfnTelemetryRuleAdvancedFieldSelectorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleAdvancedFieldSelectorPropertyValidator(properties).assertSuccess(),{EndsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.endsWith),Equals:cdk().listMapper(cdk().stringToCloudFormation)(properties.equalTo),Field:cdk().stringToCloudFormation(properties.field),NotEndsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.notEndsWith),NotEquals:cdk().listMapper(cdk().stringToCloudFormation)(properties.notEquals),NotStartsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.notStartsWith),StartsWith:cdk().listMapper(cdk().stringToCloudFormation)(properties.startsWith)}):properties}function CfnTelemetryRuleAdvancedFieldSelectorPropertyFromCloudFormation(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("endsWith","EndsWith",properties.EndsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.EndsWith):void 0),ret.addPropertyResult("equalTo","Equals",properties.Equals!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Equals):void 0),ret.addPropertyResult("field","Field",properties.Field!=null?cfn_parse().FromCloudFormation.getString(properties.Field):void 0),ret.addPropertyResult("notEndsWith","NotEndsWith",properties.NotEndsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.NotEndsWith):void 0),ret.addPropertyResult("notEquals","NotEquals",properties.NotEquals!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.NotEquals):void 0),ret.addPropertyResult("notStartsWith","NotStartsWith",properties.NotStartsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.NotStartsWith):void 0),ret.addPropertyResult("startsWith","StartsWith",properties.StartsWith!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.StartsWith):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleAdvancedEventSelectorPropertyValidator(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("fieldSelectors",cdk().requiredValidator)(properties.fieldSelectors)),errors.collect(cdk().propertyValidator("fieldSelectors",cdk().listValidator(CfnTelemetryRuleAdvancedFieldSelectorPropertyValidator))(properties.fieldSelectors)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "AdvancedEventSelectorProperty"')}function convertCfnTelemetryRuleAdvancedEventSelectorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleAdvancedEventSelectorPropertyValidator(properties).assertSuccess(),{FieldSelectors:cdk().listMapper(convertCfnTelemetryRuleAdvancedFieldSelectorPropertyToCloudFormation)(properties.fieldSelectors),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnTelemetryRuleAdvancedEventSelectorPropertyFromCloudFormation(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("fieldSelectors","FieldSelectors",properties.FieldSelectors!=null?cfn_parse().FromCloudFormation.getArray(CfnTelemetryRuleAdvancedFieldSelectorPropertyFromCloudFormation)(properties.FieldSelectors):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleCloudtrailParametersPropertyValidator(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("advancedEventSelectors",cdk().requiredValidator)(properties.advancedEventSelectors)),errors.collect(cdk().propertyValidator("advancedEventSelectors",cdk().listValidator(CfnTelemetryRuleAdvancedEventSelectorPropertyValidator))(properties.advancedEventSelectors)),errors.wrap('supplied properties not correct for "CloudtrailParametersProperty"')}function convertCfnTelemetryRuleCloudtrailParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleCloudtrailParametersPropertyValidator(properties).assertSuccess(),{AdvancedEventSelectors:cdk().listMapper(convertCfnTelemetryRuleAdvancedEventSelectorPropertyToCloudFormation)(properties.advancedEventSelectors)}):properties}function CfnTelemetryRuleCloudtrailParametersPropertyFromCloudFormation(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("advancedEventSelectors","AdvancedEventSelectors",properties.AdvancedEventSelectors!=null?cfn_parse().FromCloudFormation.getArray(CfnTelemetryRuleAdvancedEventSelectorPropertyFromCloudFormation)(properties.AdvancedEventSelectors):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleELBLoadBalancerLoggingParametersPropertyValidator(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("fieldDelimiter",cdk().validateString)(properties.fieldDelimiter)),errors.collect(cdk().propertyValidator("outputFormat",cdk().validateString)(properties.outputFormat)),errors.wrap('supplied properties not correct for "ELBLoadBalancerLoggingParametersProperty"')}function convertCfnTelemetryRuleELBLoadBalancerLoggingParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleELBLoadBalancerLoggingParametersPropertyValidator(properties).assertSuccess(),{FieldDelimiter:cdk().stringToCloudFormation(properties.fieldDelimiter),OutputFormat:cdk().stringToCloudFormation(properties.outputFormat)}):properties}function CfnTelemetryRuleELBLoadBalancerLoggingParametersPropertyFromCloudFormation(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("fieldDelimiter","FieldDelimiter",properties.FieldDelimiter!=null?cfn_parse().FromCloudFormation.getString(properties.FieldDelimiter):void 0),ret.addPropertyResult("outputFormat","OutputFormat",properties.OutputFormat!=null?cfn_parse().FromCloudFormation.getString(properties.OutputFormat):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleSingleHeaderPropertyValidator(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().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "SingleHeaderProperty"')}function convertCfnTelemetryRuleSingleHeaderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleSingleHeaderPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnTelemetryRuleSingleHeaderPropertyFromCloudFormation(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("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleFieldToMatchPropertyValidator(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("method",cdk().validateString)(properties.method)),errors.collect(cdk().propertyValidator("queryString",cdk().validateString)(properties.queryString)),errors.collect(cdk().propertyValidator("singleHeader",CfnTelemetryRuleSingleHeaderPropertyValidator)(properties.singleHeader)),errors.collect(cdk().propertyValidator("uriPath",cdk().validateString)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function convertCfnTelemetryRuleFieldToMatchPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleFieldToMatchPropertyValidator(properties).assertSuccess(),{Method:cdk().stringToCloudFormation(properties.method),QueryString:cdk().stringToCloudFormation(properties.queryString),SingleHeader:convertCfnTelemetryRuleSingleHeaderPropertyToCloudFormation(properties.singleHeader),UriPath:cdk().stringToCloudFormation(properties.uriPath)}):properties}function CfnTelemetryRuleFieldToMatchPropertyFromCloudFormation(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("method","Method",properties.Method!=null?cfn_parse().FromCloudFormation.getString(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse().FromCloudFormation.getString(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?CfnTelemetryRuleSingleHeaderPropertyFromCloudFormation(properties.SingleHeader):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse().FromCloudFormation.getString(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleActionConditionPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),errors.wrap('supplied properties not correct for "ActionConditionProperty"')}function convertCfnTelemetryRuleActionConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleActionConditionPropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action)}):properties}function CfnTelemetryRuleActionConditionPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?cfn_parse().FromCloudFormation.getString(properties.Action):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleLabelNameConditionPropertyValidator(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("labelName",cdk().validateString)(properties.labelName)),errors.wrap('supplied properties not correct for "LabelNameConditionProperty"')}function convertCfnTelemetryRuleLabelNameConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleLabelNameConditionPropertyValidator(properties).assertSuccess(),{LabelName:cdk().stringToCloudFormation(properties.labelName)}):properties}function CfnTelemetryRuleLabelNameConditionPropertyFromCloudFormation(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("labelName","LabelName",properties.LabelName!=null?cfn_parse().FromCloudFormation.getString(properties.LabelName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleConditionPropertyValidator(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("actionCondition",CfnTelemetryRuleActionConditionPropertyValidator)(properties.actionCondition)),errors.collect(cdk().propertyValidator("labelNameCondition",CfnTelemetryRuleLabelNameConditionPropertyValidator)(properties.labelNameCondition)),errors.wrap('supplied properties not correct for "ConditionProperty"')}function convertCfnTelemetryRuleConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleConditionPropertyValidator(properties).assertSuccess(),{ActionCondition:convertCfnTelemetryRuleActionConditionPropertyToCloudFormation(properties.actionCondition),LabelNameCondition:convertCfnTelemetryRuleLabelNameConditionPropertyToCloudFormation(properties.labelNameCondition)}):properties}function CfnTelemetryRuleConditionPropertyFromCloudFormation(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("actionCondition","ActionCondition",properties.ActionCondition!=null?CfnTelemetryRuleActionConditionPropertyFromCloudFormation(properties.ActionCondition):void 0),ret.addPropertyResult("labelNameCondition","LabelNameCondition",properties.LabelNameCondition!=null?CfnTelemetryRuleLabelNameConditionPropertyFromCloudFormation(properties.LabelNameCondition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleFilterPropertyValidator(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("behavior",cdk().validateString)(properties.behavior)),errors.collect(cdk().propertyValidator("conditions",cdk().listValidator(CfnTelemetryRuleConditionPropertyValidator))(properties.conditions)),errors.collect(cdk().propertyValidator("requirement",cdk().validateString)(properties.requirement)),errors.wrap('supplied properties not correct for "FilterProperty"')}function convertCfnTelemetryRuleFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleFilterPropertyValidator(properties).assertSuccess(),{Behavior:cdk().stringToCloudFormation(properties.behavior),Conditions:cdk().listMapper(convertCfnTelemetryRuleConditionPropertyToCloudFormation)(properties.conditions),Requirement:cdk().stringToCloudFormation(properties.requirement)}):properties}function CfnTelemetryRuleFilterPropertyFromCloudFormation(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("behavior","Behavior",properties.Behavior!=null?cfn_parse().FromCloudFormation.getString(properties.Behavior):void 0),ret.addPropertyResult("conditions","Conditions",properties.Conditions!=null?cfn_parse().FromCloudFormation.getArray(CfnTelemetryRuleConditionPropertyFromCloudFormation)(properties.Conditions):void 0),ret.addPropertyResult("requirement","Requirement",properties.Requirement!=null?cfn_parse().FromCloudFormation.getString(properties.Requirement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleLoggingFilterPropertyValidator(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("defaultBehavior",cdk().validateString)(properties.defaultBehavior)),errors.collect(cdk().propertyValidator("filters",cdk().listValidator(CfnTelemetryRuleFilterPropertyValidator))(properties.filters)),errors.wrap('supplied properties not correct for "LoggingFilterProperty"')}function convertCfnTelemetryRuleLoggingFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleLoggingFilterPropertyValidator(properties).assertSuccess(),{DefaultBehavior:cdk().stringToCloudFormation(properties.defaultBehavior),Filters:cdk().listMapper(convertCfnTelemetryRuleFilterPropertyToCloudFormation)(properties.filters)}):properties}function CfnTelemetryRuleLoggingFilterPropertyFromCloudFormation(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("defaultBehavior","DefaultBehavior",properties.DefaultBehavior!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultBehavior):void 0),ret.addPropertyResult("filters","Filters",properties.Filters!=null?cfn_parse().FromCloudFormation.getArray(CfnTelemetryRuleFilterPropertyFromCloudFormation)(properties.Filters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleWAFLoggingParametersPropertyValidator(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("logType",cdk().validateString)(properties.logType)),errors.collect(cdk().propertyValidator("loggingFilter",CfnTelemetryRuleLoggingFilterPropertyValidator)(properties.loggingFilter)),errors.collect(cdk().propertyValidator("redactedFields",cdk().listValidator(CfnTelemetryRuleFieldToMatchPropertyValidator))(properties.redactedFields)),errors.wrap('supplied properties not correct for "WAFLoggingParametersProperty"')}function convertCfnTelemetryRuleWAFLoggingParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleWAFLoggingParametersPropertyValidator(properties).assertSuccess(),{LogType:cdk().stringToCloudFormation(properties.logType),LoggingFilter:convertCfnTelemetryRuleLoggingFilterPropertyToCloudFormation(properties.loggingFilter),RedactedFields:cdk().listMapper(convertCfnTelemetryRuleFieldToMatchPropertyToCloudFormation)(properties.redactedFields)}):properties}function CfnTelemetryRuleWAFLoggingParametersPropertyFromCloudFormation(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("loggingFilter","LoggingFilter",properties.LoggingFilter!=null?CfnTelemetryRuleLoggingFilterPropertyFromCloudFormation(properties.LoggingFilter):void 0),ret.addPropertyResult("logType","LogType",properties.LogType!=null?cfn_parse().FromCloudFormation.getString(properties.LogType):void 0),ret.addPropertyResult("redactedFields","RedactedFields",properties.RedactedFields!=null?cfn_parse().FromCloudFormation.getArray(CfnTelemetryRuleFieldToMatchPropertyFromCloudFormation)(properties.RedactedFields):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleLogDeliveryParametersPropertyValidator(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("logTypes",cdk().listValidator(cdk().validateString))(properties.logTypes)),errors.wrap('supplied properties not correct for "LogDeliveryParametersProperty"')}function convertCfnTelemetryRuleLogDeliveryParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleLogDeliveryParametersPropertyValidator(properties).assertSuccess(),{LogTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.logTypes)}):properties}function CfnTelemetryRuleLogDeliveryParametersPropertyFromCloudFormation(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("logTypes","LogTypes",properties.LogTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LogTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleTelemetryDestinationConfigurationPropertyValidator(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("cloudtrailParameters",CfnTelemetryRuleCloudtrailParametersPropertyValidator)(properties.cloudtrailParameters)),errors.collect(cdk().propertyValidator("destinationPattern",cdk().validateString)(properties.destinationPattern)),errors.collect(cdk().propertyValidator("destinationType",cdk().validateString)(properties.destinationType)),errors.collect(cdk().propertyValidator("elbLoadBalancerLoggingParameters",CfnTelemetryRuleELBLoadBalancerLoggingParametersPropertyValidator)(properties.elbLoadBalancerLoggingParameters)),errors.collect(cdk().propertyValidator("logDeliveryParameters",CfnTelemetryRuleLogDeliveryParametersPropertyValidator)(properties.logDeliveryParameters)),errors.collect(cdk().propertyValidator("retentionInDays",cdk().validateNumber)(properties.retentionInDays)),errors.collect(cdk().propertyValidator("vpcFlowLogParameters",CfnTelemetryRuleVPCFlowLogParametersPropertyValidator)(properties.vpcFlowLogParameters)),errors.collect(cdk().propertyValidator("wafLoggingParameters",CfnTelemetryRuleWAFLoggingParametersPropertyValidator)(properties.wafLoggingParameters)),errors.wrap('supplied properties not correct for "TelemetryDestinationConfigurationProperty"')}function convertCfnTelemetryRuleTelemetryDestinationConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleTelemetryDestinationConfigurationPropertyValidator(properties).assertSuccess(),{CloudtrailParameters:convertCfnTelemetryRuleCloudtrailParametersPropertyToCloudFormation(properties.cloudtrailParameters),DestinationPattern:cdk().stringToCloudFormation(properties.destinationPattern),DestinationType:cdk().stringToCloudFormation(properties.destinationType),ELBLoadBalancerLoggingParameters:convertCfnTelemetryRuleELBLoadBalancerLoggingParametersPropertyToCloudFormation(properties.elbLoadBalancerLoggingParameters),LogDeliveryParameters:convertCfnTelemetryRuleLogDeliveryParametersPropertyToCloudFormation(properties.logDeliveryParameters),RetentionInDays:cdk().numberToCloudFormation(properties.retentionInDays),VPCFlowLogParameters:convertCfnTelemetryRuleVPCFlowLogParametersPropertyToCloudFormation(properties.vpcFlowLogParameters),WAFLoggingParameters:convertCfnTelemetryRuleWAFLoggingParametersPropertyToCloudFormation(properties.wafLoggingParameters)}):properties}function CfnTelemetryRuleTelemetryDestinationConfigurationPropertyFromCloudFormation(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("cloudtrailParameters","CloudtrailParameters",properties.CloudtrailParameters!=null?CfnTelemetryRuleCloudtrailParametersPropertyFromCloudFormation(properties.CloudtrailParameters):void 0),ret.addPropertyResult("destinationPattern","DestinationPattern",properties.DestinationPattern!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationPattern):void 0),ret.addPropertyResult("destinationType","DestinationType",properties.DestinationType!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationType):void 0),ret.addPropertyResult("elbLoadBalancerLoggingParameters","ELBLoadBalancerLoggingParameters",properties.ELBLoadBalancerLoggingParameters!=null?CfnTelemetryRuleELBLoadBalancerLoggingParametersPropertyFromCloudFormation(properties.ELBLoadBalancerLoggingParameters):void 0),ret.addPropertyResult("logDeliveryParameters","LogDeliveryParameters",properties.LogDeliveryParameters!=null?CfnTelemetryRuleLogDeliveryParametersPropertyFromCloudFormation(properties.LogDeliveryParameters):void 0),ret.addPropertyResult("retentionInDays","RetentionInDays",properties.RetentionInDays!=null?cfn_parse().FromCloudFormation.getNumber(properties.RetentionInDays):void 0),ret.addPropertyResult("vpcFlowLogParameters","VPCFlowLogParameters",properties.VPCFlowLogParameters!=null?CfnTelemetryRuleVPCFlowLogParametersPropertyFromCloudFormation(properties.VPCFlowLogParameters):void 0),ret.addPropertyResult("wafLoggingParameters","WAFLoggingParameters",properties.WAFLoggingParameters!=null?CfnTelemetryRuleWAFLoggingParametersPropertyFromCloudFormation(properties.WAFLoggingParameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRuleTelemetryRulePropertyValidator(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("destinationConfiguration",CfnTelemetryRuleTelemetryDestinationConfigurationPropertyValidator)(properties.destinationConfiguration)),errors.collect(cdk().propertyValidator("resourceType",cdk().requiredValidator)(properties.resourceType)),errors.collect(cdk().propertyValidator("resourceType",cdk().validateString)(properties.resourceType)),errors.collect(cdk().propertyValidator("selectionCriteria",cdk().validateString)(properties.selectionCriteria)),errors.collect(cdk().propertyValidator("telemetrySourceTypes",cdk().listValidator(cdk().validateString))(properties.telemetrySourceTypes)),errors.collect(cdk().propertyValidator("telemetryType",cdk().requiredValidator)(properties.telemetryType)),errors.collect(cdk().propertyValidator("telemetryType",cdk().validateString)(properties.telemetryType)),errors.wrap('supplied properties not correct for "TelemetryRuleProperty"')}function convertCfnTelemetryRuleTelemetryRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRuleTelemetryRulePropertyValidator(properties).assertSuccess(),{DestinationConfiguration:convertCfnTelemetryRuleTelemetryDestinationConfigurationPropertyToCloudFormation(properties.destinationConfiguration),ResourceType:cdk().stringToCloudFormation(properties.resourceType),SelectionCriteria:cdk().stringToCloudFormation(properties.selectionCriteria),TelemetrySourceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.telemetrySourceTypes),TelemetryType:cdk().stringToCloudFormation(properties.telemetryType)}):properties}function CfnTelemetryRuleTelemetryRulePropertyFromCloudFormation(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("destinationConfiguration","DestinationConfiguration",properties.DestinationConfiguration!=null?CfnTelemetryRuleTelemetryDestinationConfigurationPropertyFromCloudFormation(properties.DestinationConfiguration):void 0),ret.addPropertyResult("resourceType","ResourceType",properties.ResourceType!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceType):void 0),ret.addPropertyResult("selectionCriteria","SelectionCriteria",properties.SelectionCriteria!=null?cfn_parse().FromCloudFormation.getString(properties.SelectionCriteria):void 0),ret.addPropertyResult("telemetrySourceTypes","TelemetrySourceTypes",properties.TelemetrySourceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.TelemetrySourceTypes):void 0),ret.addPropertyResult("telemetryType","TelemetryType",properties.TelemetryType!=null?cfn_parse().FromCloudFormation.getString(properties.TelemetryType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTelemetryRulePropsValidator(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("rule",cdk().requiredValidator)(properties.rule)),errors.collect(cdk().propertyValidator("rule",CfnTelemetryRuleTelemetryRulePropertyValidator)(properties.rule)),errors.collect(cdk().propertyValidator("ruleName",cdk().requiredValidator)(properties.ruleName)),errors.collect(cdk().propertyValidator("ruleName",cdk().validateString)(properties.ruleName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnTelemetryRuleProps"')}function convertCfnTelemetryRulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTelemetryRulePropsValidator(properties).assertSuccess(),{Rule:convertCfnTelemetryRuleTelemetryRulePropertyToCloudFormation(properties.rule),RuleName:cdk().stringToCloudFormation(properties.ruleName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnTelemetryRulePropsFromCloudFormation(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("rule","Rule",properties.Rule!=null?CfnTelemetryRuleTelemetryRulePropertyFromCloudFormation(properties.Rule):void 0),ret.addPropertyResult("ruleName","RuleName",properties.RuleName!=null?cfn_parse().FromCloudFormation.getString(properties.RuleName):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}