"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnTransformer=exports.CfnScheduledQuery=exports.CfnLogAnomalyDetector=exports.CfnIntegration=exports.CfnDeliverySource=exports.CfnDeliveryDestination=exports.CfnDelivery=exports.CfnSubscriptionFilter=exports.CfnResourcePolicy=exports.CfnQueryDefinition=exports.CfnMetricFilter=exports.CfnLogStream=exports.CfnLogGroup=exports.CfnDestination=exports.CfnAccountPolicy=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 CfnAccountPolicy extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnAccountPolicy",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::AccountPolicy";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAccountPolicyPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAccountPolicy(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 isCfnAccountPolicy(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAccountPolicy.CFN_RESOURCE_TYPE_NAME}_policyDocument;_policyName;_policyType;_scope;_selectionCriteria;cfnPropertyNames={policyDocument:"PolicyDocument",policyName:"PolicyName",policyType:"PolicyType",scope:"Scope",selectionCriteria:"SelectionCriteria"};constructor(scope,id,props){super(scope,id,{type:CfnAccountPolicy.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnAccountPolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAccountPolicy),error}cdk().requireProperty(props,"policyDocument",this),cdk().requireProperty(props,"policyName",this),cdk().requireProperty(props,"policyType",this),this._policyDocument=props.policyDocument,this._policyName=props.policyName,this._policyType=props.policyType,this._scope=props.scope,this._selectionCriteria=props.selectionCriteria}get accountPolicyRef(){return{accountId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),policyType:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),policyName:cdk().Fn.select(2,cdk().Fn.split("|",this.ref))}}get policyDocument(){return this._policyDocument}set policyDocument(value){cdk().traceProperty(this.node,"PolicyDocument"),this._policyDocument=value}get policyName(){return this._policyName}set policyName(value){cdk().traceProperty(this.node,"PolicyName"),this._policyName=value}get policyType(){return this._policyType}set policyType(value){cdk().traceProperty(this.node,"PolicyType"),this._policyType=value}get scope(){return this._scope}set scope(value){cdk().traceProperty(this.node,"Scope"),this._scope=value}get selectionCriteria(){return this._selectionCriteria}set selectionCriteria(value){cdk().traceProperty(this.node,"SelectionCriteria"),this._selectionCriteria=value}get attrAccountId(){return cdk().Token.asString(this.getAtt("AccountId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{policyDocument:this._policyDocument,policyName:this._policyName,policyType:this._policyType,scope:this._scope,selectionCriteria:this._selectionCriteria}}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",CfnAccountPolicy.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAccountPolicyPropsToCloudFormation(props)}}exports.CfnAccountPolicy=CfnAccountPolicy;function CfnAccountPolicyPropsValidator(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("policyDocument",cdk().requiredValidator)(properties.policyDocument)),errors.collect(cdk().propertyValidator("policyDocument",cdk().validateString)(properties.policyDocument)),errors.collect(cdk().propertyValidator("policyName",cdk().requiredValidator)(properties.policyName)),errors.collect(cdk().propertyValidator("policyName",cdk().validateString)(properties.policyName)),errors.collect(cdk().propertyValidator("policyType",cdk().requiredValidator)(properties.policyType)),errors.collect(cdk().propertyValidator("policyType",cdk().validateString)(properties.policyType)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("selectionCriteria",cdk().validateString)(properties.selectionCriteria)),errors.wrap('supplied properties not correct for "CfnAccountPolicyProps"')}function convertCfnAccountPolicyPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccountPolicyPropsValidator(properties).assertSuccess(),{PolicyDocument:cdk().stringToCloudFormation(properties.policyDocument),PolicyName:cdk().stringToCloudFormation(properties.policyName),PolicyType:cdk().stringToCloudFormation(properties.policyType),Scope:cdk().stringToCloudFormation(properties.scope),SelectionCriteria:cdk().stringToCloudFormation(properties.selectionCriteria)}):properties}function CfnAccountPolicyPropsFromCloudFormation(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("policyDocument","PolicyDocument",properties.PolicyDocument!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyDocument):void 0),ret.addPropertyResult("policyName","PolicyName",properties.PolicyName!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyName):void 0),ret.addPropertyResult("policyType","PolicyType",properties.PolicyType!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyType):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.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDestination extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnDestination",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::Destination";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDestinationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDestination(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 isCfnDestination(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDestination.CFN_RESOURCE_TYPE_NAME}static fromDestinationArn(scope,id,arn){class Import extends cdk().Resource{destinationRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:destination:${DestinationName}").parse(arn2);this.destinationRef={destinationName:variables.DestinationName,destinationArn:arn2}}}return new Import(scope,id,arn)}static fromDestinationName(scope,id,destinationName){class Import extends cdk().Resource{destinationRef;constructor(scope2,id2,destinationName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:destination:${DestinationName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DestinationName:destinationName2});super(scope2,id2,{environmentFromArn:arn}),this.destinationRef={destinationName:destinationName2,destinationArn:arn}}}return new Import(scope,id,destinationName)}static arnForDestination(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_logs_IDestinationRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDestination),error}return resource.destinationRef.destinationArn}cdkTagManager;_destinationName;_destinationPolicy;_roleArn;_tags;_targetArn;cfnPropertyNames={tags:"Tags",destinationName:"DestinationName",destinationPolicy:"DestinationPolicy",roleArn:"RoleArn",targetArn:"TargetArn"};constructor(scope,id,props){super(scope,id,{type:CfnDestination.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnDestinationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDestination),error}cdk().requireProperty(props,"destinationName",this),cdk().requireProperty(props,"roleArn",this),cdk().requireProperty(props,"targetArn",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Logs::Destination",void 0,{tagPropertyName:"tags"}),this._destinationName=props.destinationName,this._destinationPolicy=props.destinationPolicy,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this._tags=props.tags,this._targetArn=cdk().getRefProperty(props.targetArn?.deliveryStreamRef,"deliveryStreamArn")??cdk().getRefProperty(props.targetArn?.streamRef,"streamArn")??cdk().getRefProperty(props.targetArn?.functionRef,"functionArn")??cdk().ensureStringOrUndefined(props.targetArn,"targetArn","kinesisfirehose.IDeliveryStreamRef | kinesis.IStreamRef | lambda.IFunctionRef | string")}get destinationRef(){return{destinationName:this.ref,destinationArn:this.attrArn}}get destinationName(){return this._destinationName}set destinationName(value){cdk().traceProperty(this.node,"DestinationName"),this._destinationName=value}get destinationPolicy(){return this._destinationPolicy}set destinationPolicy(value){cdk().traceProperty(this.node,"DestinationPolicy"),this._destinationPolicy=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 targetArn(){return this._targetArn}set targetArn(value){cdk().traceProperty(this.node,"TargetArn"),this._targetArn=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),destinationName:this._destinationName,destinationPolicy:this._destinationPolicy,roleArn:this._roleArn,targetArn:this._targetArn}}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",CfnDestination.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDestinationPropsToCloudFormation(props)}}exports.CfnDestination=CfnDestination;function CfnDestinationPropsValidator(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("destinationName",cdk().requiredValidator)(properties.destinationName)),errors.collect(cdk().propertyValidator("destinationName",cdk().validateString)(properties.destinationName)),errors.collect(cdk().propertyValidator("destinationPolicy",cdk().validateString)(properties.destinationPolicy)),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.collect(cdk().propertyValidator("targetArn",cdk().requiredValidator)(properties.targetArn)),errors.collect(cdk().propertyValidator("targetArn",cdk().validateString)(properties.targetArn)),errors.wrap('supplied properties not correct for "CfnDestinationProps"')}function convertCfnDestinationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDestinationPropsValidator(properties).assertSuccess(),{DestinationName:cdk().stringToCloudFormation(properties.destinationName),DestinationPolicy:cdk().stringToCloudFormation(properties.destinationPolicy),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TargetArn:cdk().stringToCloudFormation(properties.targetArn)}):properties}function CfnDestinationPropsFromCloudFormation(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("destinationName","DestinationName",properties.DestinationName!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationName):void 0),ret.addPropertyResult("destinationPolicy","DestinationPolicy",properties.DestinationPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationPolicy):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.addPropertyResult("targetArn","TargetArn",properties.TargetArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnLogGroup extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnLogGroup",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::LogGroup";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLogGroupPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnLogGroup(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 isCfnLogGroup(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnLogGroup.CFN_RESOURCE_TYPE_NAME}static fromLogGroupArn(scope,id,arn){class Import extends cdk().Resource{logGroupRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:log-group:${LogGroupName}").parse(arn2);this.logGroupRef={logGroupName:variables.LogGroupName,logGroupArn:arn2}}}return new Import(scope,id,arn)}static fromLogGroupName(scope,id,logGroupName){class Import extends cdk().Resource{logGroupRef;constructor(scope2,id2,logGroupName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:log-group:${LogGroupName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,LogGroupName:logGroupName2});super(scope2,id2,{environmentFromArn:arn}),this.logGroupRef={logGroupName:logGroupName2,logGroupArn:arn}}}return new Import(scope,id,logGroupName)}static arnForLogGroup(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_logs_ILogGroupRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForLogGroup),error}return resource.logGroupRef.logGroupArn}_bearerTokenAuthenticationEnabled;_dataProtectionPolicy;_deletionProtectionEnabled;_fieldIndexPolicies;_kmsKeyId;_logGroupClass;_logGroupName;_resourcePolicyDocument;_retentionInDays;tags;_tagsRaw;cfnPropertyNames={bearerTokenAuthenticationEnabled:"BearerTokenAuthenticationEnabled",dataProtectionPolicy:"DataProtectionPolicy",deletionProtectionEnabled:"DeletionProtectionEnabled",fieldIndexPolicies:"FieldIndexPolicies",kmsKeyId:"KmsKeyId",logGroupClass:"LogGroupClass",logGroupName:"LogGroupName",resourcePolicyDocument:"ResourcePolicyDocument",retentionInDays:"RetentionInDays",tags:"Tags"};constructor(scope,id,props={}){super(scope,id,{type:CfnLogGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnLogGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLogGroup),error}this._bearerTokenAuthenticationEnabled=props.bearerTokenAuthenticationEnabled,this._dataProtectionPolicy=props.dataProtectionPolicy,this._deletionProtectionEnabled=props.deletionProtectionEnabled,this._fieldIndexPolicies=props.fieldIndexPolicies,this._kmsKeyId=cdk().getRefProperty(props.kmsKeyId?.keyRef,"keyArn")??cdk().ensureStringOrUndefined(props.kmsKeyId,"kmsKeyId","kms.IKeyRef | string"),this._logGroupClass=props.logGroupClass,this._logGroupName=cdk().getRefProperty(props.logGroupName?.functionRef,"functionName")??cdk().ensureStringOrUndefined(props.logGroupName,"logGroupName","lambda.IFunctionRef | string"),this._resourcePolicyDocument=props.resourcePolicyDocument,this._retentionInDays=props.retentionInDays,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Logs::LogGroup",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this.node.scope!=null&&cdk().Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::Logs::LogGroup' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}get logGroupRef(){return{logGroupName:this.ref,logGroupArn:this.attrArn}}get bearerTokenAuthenticationEnabled(){return this._bearerTokenAuthenticationEnabled}set bearerTokenAuthenticationEnabled(value){cdk().traceProperty(this.node,"BearerTokenAuthenticationEnabled"),this._bearerTokenAuthenticationEnabled=value}get dataProtectionPolicy(){return this._dataProtectionPolicy}set dataProtectionPolicy(value){cdk().traceProperty(this.node,"DataProtectionPolicy"),this._dataProtectionPolicy=value}get deletionProtectionEnabled(){return this._deletionProtectionEnabled}set deletionProtectionEnabled(value){cdk().traceProperty(this.node,"DeletionProtectionEnabled"),this._deletionProtectionEnabled=value}get fieldIndexPolicies(){return this._fieldIndexPolicies}set fieldIndexPolicies(value){cdk().traceProperty(this.node,"FieldIndexPolicies"),this._fieldIndexPolicies=value}get kmsKeyId(){return this._kmsKeyId}set kmsKeyId(value){cdk().traceProperty(this.node,"KmsKeyId"),this._kmsKeyId=value}get logGroupClass(){return this._logGroupClass}set logGroupClass(value){cdk().traceProperty(this.node,"LogGroupClass"),this._logGroupClass=value}get logGroupName(){return this._logGroupName}set logGroupName(value){cdk().traceProperty(this.node,"LogGroupName"),this._logGroupName=value}get resourcePolicyDocument(){return this._resourcePolicyDocument}set resourcePolicyDocument(value){cdk().traceProperty(this.node,"ResourcePolicyDocument"),this._resourcePolicyDocument=value}get retentionInDays(){return this._retentionInDays}set retentionInDays(value){cdk().traceProperty(this.node,"RetentionInDays"),this._retentionInDays=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{bearerTokenAuthenticationEnabled:this._bearerTokenAuthenticationEnabled,dataProtectionPolicy:this._dataProtectionPolicy,deletionProtectionEnabled:this._deletionProtectionEnabled,fieldIndexPolicies:this._fieldIndexPolicies,kmsKeyId:this._kmsKeyId,logGroupClass:this._logGroupClass,logGroupName:this._logGroupName,resourcePolicyDocument:this._resourcePolicyDocument,retentionInDays:this._retentionInDays,tags:this.tags.renderTags()}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnLogGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnLogGroupPropsToCloudFormation(props)}}exports.CfnLogGroup=CfnLogGroup;function CfnLogGroupPropsValidator(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("bearerTokenAuthenticationEnabled",cdk().validateBoolean)(properties.bearerTokenAuthenticationEnabled)),errors.collect(cdk().propertyValidator("dataProtectionPolicy",cdk().validateObject)(properties.dataProtectionPolicy)),errors.collect(cdk().propertyValidator("deletionProtectionEnabled",cdk().validateBoolean)(properties.deletionProtectionEnabled)),errors.collect(cdk().propertyValidator("fieldIndexPolicies",cdk().listValidator(cdk().validateObject))(properties.fieldIndexPolicies)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("logGroupClass",cdk().validateString)(properties.logGroupClass)),errors.collect(cdk().propertyValidator("logGroupName",cdk().validateString)(properties.logGroupName)),errors.collect(cdk().propertyValidator("resourcePolicyDocument",cdk().validateObject)(properties.resourcePolicyDocument)),errors.collect(cdk().propertyValidator("retentionInDays",cdk().validateNumber)(properties.retentionInDays)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnLogGroupProps"')}function convertCfnLogGroupPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLogGroupPropsValidator(properties).assertSuccess(),{BearerTokenAuthenticationEnabled:cdk().booleanToCloudFormation(properties.bearerTokenAuthenticationEnabled),DataProtectionPolicy:cdk().objectToCloudFormation(properties.dataProtectionPolicy),DeletionProtectionEnabled:cdk().booleanToCloudFormation(properties.deletionProtectionEnabled),FieldIndexPolicies:cdk().listMapper(cdk().objectToCloudFormation)(properties.fieldIndexPolicies),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),LogGroupClass:cdk().stringToCloudFormation(properties.logGroupClass),LogGroupName:cdk().stringToCloudFormation(properties.logGroupName),ResourcePolicyDocument:cdk().objectToCloudFormation(properties.resourcePolicyDocument),RetentionInDays:cdk().numberToCloudFormation(properties.retentionInDays),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnLogGroupPropsFromCloudFormation(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("bearerTokenAuthenticationEnabled","BearerTokenAuthenticationEnabled",properties.BearerTokenAuthenticationEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.BearerTokenAuthenticationEnabled):void 0),ret.addPropertyResult("dataProtectionPolicy","DataProtectionPolicy",properties.DataProtectionPolicy!=null?cfn_parse().FromCloudFormation.getAny(properties.DataProtectionPolicy):void 0),ret.addPropertyResult("deletionProtectionEnabled","DeletionProtectionEnabled",properties.DeletionProtectionEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DeletionProtectionEnabled):void 0),ret.addPropertyResult("fieldIndexPolicies","FieldIndexPolicies",properties.FieldIndexPolicies!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getAny)(properties.FieldIndexPolicies):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("logGroupClass","LogGroupClass",properties.LogGroupClass!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupClass):void 0),ret.addPropertyResult("logGroupName","LogGroupName",properties.LogGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupName):void 0),ret.addPropertyResult("resourcePolicyDocument","ResourcePolicyDocument",properties.ResourcePolicyDocument!=null?cfn_parse().FromCloudFormation.getAny(properties.ResourcePolicyDocument):void 0),ret.addPropertyResult("retentionInDays","RetentionInDays",properties.RetentionInDays!=null?cfn_parse().FromCloudFormation.getNumber(properties.RetentionInDays):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 CfnLogStream extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnLogStream",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::LogStream";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLogStreamPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnLogStream(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 isCfnLogStream(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnLogStream.CFN_RESOURCE_TYPE_NAME}_logGroupName;_logStreamName;cfnPropertyNames={logGroupName:"LogGroupName",logStreamName:"LogStreamName"};constructor(scope,id,props){super(scope,id,{type:CfnLogStream.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnLogStreamProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLogStream),error}cdk().requireProperty(props,"logGroupName",this),this._logGroupName=cdk().getRefProperty(props.logGroupName?.logGroupRef,"logGroupName")??cdk().ensureStringOrUndefined(props.logGroupName,"logGroupName","logs.ILogGroupRef | string"),this._logStreamName=props.logStreamName}get logStreamRef(){return{logGroupName:this.logGroupName,logStreamName:this.ref}}get logGroupName(){return this._logGroupName}set logGroupName(value){cdk().traceProperty(this.node,"LogGroupName"),this._logGroupName=value}get logStreamName(){return this._logStreamName}set logStreamName(value){cdk().traceProperty(this.node,"LogStreamName"),this._logStreamName=value}get cfnProperties(){return{logGroupName:this._logGroupName,logStreamName:this._logStreamName}}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",CfnLogStream.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnLogStreamPropsToCloudFormation(props)}}exports.CfnLogStream=CfnLogStream;function CfnLogStreamPropsValidator(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("logGroupName",cdk().requiredValidator)(properties.logGroupName)),errors.collect(cdk().propertyValidator("logGroupName",cdk().validateString)(properties.logGroupName)),errors.collect(cdk().propertyValidator("logStreamName",cdk().validateString)(properties.logStreamName)),errors.wrap('supplied properties not correct for "CfnLogStreamProps"')}function convertCfnLogStreamPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLogStreamPropsValidator(properties).assertSuccess(),{LogGroupName:cdk().stringToCloudFormation(properties.logGroupName),LogStreamName:cdk().stringToCloudFormation(properties.logStreamName)}):properties}function CfnLogStreamPropsFromCloudFormation(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("logGroupName","LogGroupName",properties.LogGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupName):void 0),ret.addPropertyResult("logStreamName","LogStreamName",properties.LogStreamName!=null?cfn_parse().FromCloudFormation.getString(properties.LogStreamName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMetricFilter extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnMetricFilter",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::MetricFilter";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMetricFilterPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMetricFilter(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 isCfnMetricFilter(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMetricFilter.CFN_RESOURCE_TYPE_NAME}_applyOnTransformedLogs;_emitSystemFieldDimensions;_fieldSelectionCriteria;_filterName;_filterPattern;_logGroupName;_metricTransformations;cfnPropertyNames={applyOnTransformedLogs:"ApplyOnTransformedLogs",emitSystemFieldDimensions:"EmitSystemFieldDimensions",fieldSelectionCriteria:"FieldSelectionCriteria",filterName:"FilterName",filterPattern:"FilterPattern",logGroupName:"LogGroupName",metricTransformations:"MetricTransformations"};constructor(scope,id,props){super(scope,id,{type:CfnMetricFilter.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnMetricFilterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMetricFilter),error}cdk().requireProperty(props,"filterPattern",this),cdk().requireProperty(props,"logGroupName",this),cdk().requireProperty(props,"metricTransformations",this),this._applyOnTransformedLogs=props.applyOnTransformedLogs,this._emitSystemFieldDimensions=props.emitSystemFieldDimensions,this._fieldSelectionCriteria=props.fieldSelectionCriteria,this._filterName=props.filterName,this._filterPattern=props.filterPattern,this._logGroupName=cdk().getRefProperty(props.logGroupName?.logGroupRef,"logGroupName")??cdk().ensureStringOrUndefined(props.logGroupName,"logGroupName","logs.ILogGroupRef | string"),this._metricTransformations=props.metricTransformations}get metricFilterRef(){return{logGroupName:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),filterName:cdk().Fn.select(1,cdk().Fn.split("|",this.ref))}}get applyOnTransformedLogs(){return this._applyOnTransformedLogs}set applyOnTransformedLogs(value){cdk().traceProperty(this.node,"ApplyOnTransformedLogs"),this._applyOnTransformedLogs=value}get emitSystemFieldDimensions(){return this._emitSystemFieldDimensions}set emitSystemFieldDimensions(value){cdk().traceProperty(this.node,"EmitSystemFieldDimensions"),this._emitSystemFieldDimensions=value}get fieldSelectionCriteria(){return this._fieldSelectionCriteria}set fieldSelectionCriteria(value){cdk().traceProperty(this.node,"FieldSelectionCriteria"),this._fieldSelectionCriteria=value}get filterName(){return this._filterName}set filterName(value){cdk().traceProperty(this.node,"FilterName"),this._filterName=value}get filterPattern(){return this._filterPattern}set filterPattern(value){cdk().traceProperty(this.node,"FilterPattern"),this._filterPattern=value}get logGroupName(){return this._logGroupName}set logGroupName(value){cdk().traceProperty(this.node,"LogGroupName"),this._logGroupName=value}get metricTransformations(){return this._metricTransformations}set metricTransformations(value){cdk().traceProperty(this.node,"MetricTransformations"),this._metricTransformations=value}get cfnProperties(){return{applyOnTransformedLogs:this._applyOnTransformedLogs,emitSystemFieldDimensions:this._emitSystemFieldDimensions,fieldSelectionCriteria:this._fieldSelectionCriteria,filterName:this._filterName,filterPattern:this._filterPattern,logGroupName:this._logGroupName,metricTransformations:this._metricTransformations}}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",CfnMetricFilter.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMetricFilterPropsToCloudFormation(props)}}exports.CfnMetricFilter=CfnMetricFilter;function CfnMetricFilterDimensionPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "DimensionProperty"')}function convertCfnMetricFilterDimensionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMetricFilterDimensionPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnMetricFilterDimensionPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMetricFilterMetricTransformationPropertyValidator(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("defaultValue",cdk().validateNumber)(properties.defaultValue)),errors.collect(cdk().propertyValidator("dimensions",cdk().listValidator(CfnMetricFilterDimensionPropertyValidator))(properties.dimensions)),errors.collect(cdk().propertyValidator("metricName",cdk().requiredValidator)(properties.metricName)),errors.collect(cdk().propertyValidator("metricName",cdk().validateString)(properties.metricName)),errors.collect(cdk().propertyValidator("metricNamespace",cdk().requiredValidator)(properties.metricNamespace)),errors.collect(cdk().propertyValidator("metricNamespace",cdk().validateString)(properties.metricNamespace)),errors.collect(cdk().propertyValidator("metricValue",cdk().requiredValidator)(properties.metricValue)),errors.collect(cdk().propertyValidator("metricValue",cdk().validateString)(properties.metricValue)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.wrap('supplied properties not correct for "MetricTransformationProperty"')}function convertCfnMetricFilterMetricTransformationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMetricFilterMetricTransformationPropertyValidator(properties).assertSuccess(),{DefaultValue:cdk().numberToCloudFormation(properties.defaultValue),Dimensions:cdk().listMapper(convertCfnMetricFilterDimensionPropertyToCloudFormation)(properties.dimensions),MetricName:cdk().stringToCloudFormation(properties.metricName),MetricNamespace:cdk().stringToCloudFormation(properties.metricNamespace),MetricValue:cdk().stringToCloudFormation(properties.metricValue),Unit:cdk().stringToCloudFormation(properties.unit)}):properties}function CfnMetricFilterMetricTransformationPropertyFromCloudFormation(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("defaultValue","DefaultValue",properties.DefaultValue!=null?cfn_parse().FromCloudFormation.getNumber(properties.DefaultValue):void 0),ret.addPropertyResult("dimensions","Dimensions",properties.Dimensions!=null?cfn_parse().FromCloudFormation.getArray(CfnMetricFilterDimensionPropertyFromCloudFormation)(properties.Dimensions):void 0),ret.addPropertyResult("metricName","MetricName",properties.MetricName!=null?cfn_parse().FromCloudFormation.getString(properties.MetricName):void 0),ret.addPropertyResult("metricNamespace","MetricNamespace",properties.MetricNamespace!=null?cfn_parse().FromCloudFormation.getString(properties.MetricNamespace):void 0),ret.addPropertyResult("metricValue","MetricValue",properties.MetricValue!=null?cfn_parse().FromCloudFormation.getString(properties.MetricValue):void 0),ret.addPropertyResult("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMetricFilterPropsValidator(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("applyOnTransformedLogs",cdk().validateBoolean)(properties.applyOnTransformedLogs)),errors.collect(cdk().propertyValidator("emitSystemFieldDimensions",cdk().listValidator(cdk().validateString))(properties.emitSystemFieldDimensions)),errors.collect(cdk().propertyValidator("fieldSelectionCriteria",cdk().validateString)(properties.fieldSelectionCriteria)),errors.collect(cdk().propertyValidator("filterName",cdk().validateString)(properties.filterName)),errors.collect(cdk().propertyValidator("filterPattern",cdk().requiredValidator)(properties.filterPattern)),errors.collect(cdk().propertyValidator("filterPattern",cdk().validateString)(properties.filterPattern)),errors.collect(cdk().propertyValidator("logGroupName",cdk().requiredValidator)(properties.logGroupName)),errors.collect(cdk().propertyValidator("logGroupName",cdk().validateString)(properties.logGroupName)),errors.collect(cdk().propertyValidator("metricTransformations",cdk().requiredValidator)(properties.metricTransformations)),errors.collect(cdk().propertyValidator("metricTransformations",cdk().listValidator(CfnMetricFilterMetricTransformationPropertyValidator))(properties.metricTransformations)),errors.wrap('supplied properties not correct for "CfnMetricFilterProps"')}function convertCfnMetricFilterPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMetricFilterPropsValidator(properties).assertSuccess(),{ApplyOnTransformedLogs:cdk().booleanToCloudFormation(properties.applyOnTransformedLogs),EmitSystemFieldDimensions:cdk().listMapper(cdk().stringToCloudFormation)(properties.emitSystemFieldDimensions),FieldSelectionCriteria:cdk().stringToCloudFormation(properties.fieldSelectionCriteria),FilterName:cdk().stringToCloudFormation(properties.filterName),FilterPattern:cdk().stringToCloudFormation(properties.filterPattern),LogGroupName:cdk().stringToCloudFormation(properties.logGroupName),MetricTransformations:cdk().listMapper(convertCfnMetricFilterMetricTransformationPropertyToCloudFormation)(properties.metricTransformations)}):properties}function CfnMetricFilterPropsFromCloudFormation(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("applyOnTransformedLogs","ApplyOnTransformedLogs",properties.ApplyOnTransformedLogs!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ApplyOnTransformedLogs):void 0),ret.addPropertyResult("emitSystemFieldDimensions","EmitSystemFieldDimensions",properties.EmitSystemFieldDimensions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.EmitSystemFieldDimensions):void 0),ret.addPropertyResult("fieldSelectionCriteria","FieldSelectionCriteria",properties.FieldSelectionCriteria!=null?cfn_parse().FromCloudFormation.getString(properties.FieldSelectionCriteria):void 0),ret.addPropertyResult("filterName","FilterName",properties.FilterName!=null?cfn_parse().FromCloudFormation.getString(properties.FilterName):void 0),ret.addPropertyResult("filterPattern","FilterPattern",properties.FilterPattern!=null?cfn_parse().FromCloudFormation.getString(properties.FilterPattern):void 0),ret.addPropertyResult("logGroupName","LogGroupName",properties.LogGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupName):void 0),ret.addPropertyResult("metricTransformations","MetricTransformations",properties.MetricTransformations!=null?cfn_parse().FromCloudFormation.getArray(CfnMetricFilterMetricTransformationPropertyFromCloudFormation)(properties.MetricTransformations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnQueryDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnQueryDefinition",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::QueryDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnQueryDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnQueryDefinition(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 isCfnQueryDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnQueryDefinition.CFN_RESOURCE_TYPE_NAME}_logGroupNames;_name;_parameters;_queryLanguage;_queryString;cfnPropertyNames={logGroupNames:"LogGroupNames",name:"Name",parameters:"Parameters",queryLanguage:"QueryLanguage",queryString:"QueryString"};constructor(scope,id,props){super(scope,id,{type:CfnQueryDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnQueryDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnQueryDefinition),error}cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"queryString",this),this._logGroupNames=cdk().mapArrayInPlace(props.logGroupNames,item=>cdk().getRefProperty(item?.logGroupRef,"logGroupName")??cdk().ensureStringOrUndefined(item,"logGroupNames","logs.ILogGroupRef | string")),this._name=props.name,this._parameters=props.parameters,this._queryLanguage=props.queryLanguage,this._queryString=props.queryString}get queryDefinitionRef(){return{queryDefinitionId:this.ref}}get logGroupNames(){return this._logGroupNames}set logGroupNames(value){cdk().traceProperty(this.node,"LogGroupNames"),this._logGroupNames=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get parameters(){return this._parameters}set parameters(value){cdk().traceProperty(this.node,"Parameters"),this._parameters=value}get queryLanguage(){return this._queryLanguage}set queryLanguage(value){cdk().traceProperty(this.node,"QueryLanguage"),this._queryLanguage=value}get queryString(){return this._queryString}set queryString(value){cdk().traceProperty(this.node,"QueryString"),this._queryString=value}get attrQueryDefinitionId(){return cdk().Token.asString(this.getAtt("QueryDefinitionId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{logGroupNames:this._logGroupNames,name:this._name,parameters:this._parameters,queryLanguage:this._queryLanguage,queryString:this._queryString}}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",CfnQueryDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnQueryDefinitionPropsToCloudFormation(props)}}exports.CfnQueryDefinition=CfnQueryDefinition;function CfnQueryDefinitionQueryParameterPropertyValidator(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("defaultValue",cdk().validateString)(properties.defaultValue)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),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 "QueryParameterProperty"')}function convertCfnQueryDefinitionQueryParameterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnQueryDefinitionQueryParameterPropertyValidator(properties).assertSuccess(),{DefaultValue:cdk().stringToCloudFormation(properties.defaultValue),Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnQueryDefinitionQueryParameterPropertyFromCloudFormation(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("defaultValue","DefaultValue",properties.DefaultValue!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultValue):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnQueryDefinitionPropsValidator(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("logGroupNames",cdk().listValidator(cdk().validateString))(properties.logGroupNames)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("parameters",cdk().listValidator(CfnQueryDefinitionQueryParameterPropertyValidator))(properties.parameters)),errors.collect(cdk().propertyValidator("queryLanguage",cdk().validateString)(properties.queryLanguage)),errors.collect(cdk().propertyValidator("queryString",cdk().requiredValidator)(properties.queryString)),errors.collect(cdk().propertyValidator("queryString",cdk().validateString)(properties.queryString)),errors.wrap('supplied properties not correct for "CfnQueryDefinitionProps"')}function convertCfnQueryDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnQueryDefinitionPropsValidator(properties).assertSuccess(),{LogGroupNames:cdk().listMapper(cdk().stringToCloudFormation)(properties.logGroupNames),Name:cdk().stringToCloudFormation(properties.name),Parameters:cdk().listMapper(convertCfnQueryDefinitionQueryParameterPropertyToCloudFormation)(properties.parameters),QueryLanguage:cdk().stringToCloudFormation(properties.queryLanguage),QueryString:cdk().stringToCloudFormation(properties.queryString)}):properties}function CfnQueryDefinitionPropsFromCloudFormation(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("logGroupNames","LogGroupNames",properties.LogGroupNames!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LogGroupNames):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse().FromCloudFormation.getArray(CfnQueryDefinitionQueryParameterPropertyFromCloudFormation)(properties.Parameters):void 0),ret.addPropertyResult("queryLanguage","QueryLanguage",properties.QueryLanguage!=null?cfn_parse().FromCloudFormation.getString(properties.QueryLanguage):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse().FromCloudFormation.getString(properties.QueryString):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnResourcePolicy extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnResourcePolicy",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::ResourcePolicy";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnResourcePolicyPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnResourcePolicy(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 isCfnResourcePolicy(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnResourcePolicy.CFN_RESOURCE_TYPE_NAME}_policyDocument;_policyName;cfnPropertyNames={policyDocument:"PolicyDocument",policyName:"PolicyName"};constructor(scope,id,props){super(scope,id,{type:CfnResourcePolicy.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnResourcePolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnResourcePolicy),error}cdk().requireProperty(props,"policyDocument",this),cdk().requireProperty(props,"policyName",this),this._policyDocument=props.policyDocument,this._policyName=props.policyName}get resourcePolicyRef(){return{policyName:this.ref}}get policyDocument(){return this._policyDocument}set policyDocument(value){cdk().traceProperty(this.node,"PolicyDocument"),this._policyDocument=value}get policyName(){return this._policyName}set policyName(value){cdk().traceProperty(this.node,"PolicyName"),this._policyName=value}get cfnProperties(){return{policyDocument:this._policyDocument,policyName:this._policyName}}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",CfnResourcePolicy.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnResourcePolicyPropsToCloudFormation(props)}}exports.CfnResourcePolicy=CfnResourcePolicy;function CfnResourcePolicyPropsValidator(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("policyDocument",cdk().requiredValidator)(properties.policyDocument)),errors.collect(cdk().propertyValidator("policyDocument",cdk().validateString)(properties.policyDocument)),errors.collect(cdk().propertyValidator("policyName",cdk().requiredValidator)(properties.policyName)),errors.collect(cdk().propertyValidator("policyName",cdk().validateString)(properties.policyName)),errors.wrap('supplied properties not correct for "CfnResourcePolicyProps"')}function convertCfnResourcePolicyPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnResourcePolicyPropsValidator(properties).assertSuccess(),{PolicyDocument:cdk().stringToCloudFormation(properties.policyDocument),PolicyName:cdk().stringToCloudFormation(properties.policyName)}):properties}function CfnResourcePolicyPropsFromCloudFormation(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("policyDocument","PolicyDocument",properties.PolicyDocument!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyDocument):void 0),ret.addPropertyResult("policyName","PolicyName",properties.PolicyName!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnSubscriptionFilter extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnSubscriptionFilter",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::SubscriptionFilter";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSubscriptionFilterPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnSubscriptionFilter(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 isCfnSubscriptionFilter(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnSubscriptionFilter.CFN_RESOURCE_TYPE_NAME}_applyOnTransformedLogs;_destinationArn;_distribution;_emitSystemFields;_fieldSelectionCriteria;_filterName;_filterPattern;_logGroupName;_roleArn;cfnPropertyNames={applyOnTransformedLogs:"ApplyOnTransformedLogs",destinationArn:"DestinationArn",distribution:"Distribution",emitSystemFields:"EmitSystemFields",fieldSelectionCriteria:"FieldSelectionCriteria",filterName:"FilterName",filterPattern:"FilterPattern",logGroupName:"LogGroupName",roleArn:"RoleArn"};constructor(scope,id,props){super(scope,id,{type:CfnSubscriptionFilter.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnSubscriptionFilterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSubscriptionFilter),error}cdk().requireProperty(props,"destinationArn",this),cdk().requireProperty(props,"filterPattern",this),cdk().requireProperty(props,"logGroupName",this),this._applyOnTransformedLogs=props.applyOnTransformedLogs,this._destinationArn=cdk().getRefProperty(props.destinationArn?.functionRef,"functionArn")??cdk().getRefProperty(props.destinationArn?.streamRef,"streamArn")??cdk().getRefProperty(props.destinationArn?.deliveryStreamRef,"deliveryStreamArn")??cdk().ensureStringOrUndefined(props.destinationArn,"destinationArn","lambda.IFunctionRef | kinesis.IStreamRef | kinesisfirehose.IDeliveryStreamRef | string"),this._distribution=props.distribution,this._emitSystemFields=props.emitSystemFields,this._fieldSelectionCriteria=props.fieldSelectionCriteria,this._filterName=props.filterName,this._filterPattern=props.filterPattern,this._logGroupName=cdk().getRefProperty(props.logGroupName?.logGroupRef,"logGroupName")??cdk().ensureStringOrUndefined(props.logGroupName,"logGroupName","logs.ILogGroupRef | string"),this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string")}get subscriptionFilterRef(){return{filterName:this.ref,logGroupName:this.logGroupName}}get applyOnTransformedLogs(){return this._applyOnTransformedLogs}set applyOnTransformedLogs(value){cdk().traceProperty(this.node,"ApplyOnTransformedLogs"),this._applyOnTransformedLogs=value}get destinationArn(){return this._destinationArn}set destinationArn(value){cdk().traceProperty(this.node,"DestinationArn"),this._destinationArn=value}get distribution(){return this._distribution}set distribution(value){cdk().traceProperty(this.node,"Distribution"),this._distribution=value}get emitSystemFields(){return this._emitSystemFields}set emitSystemFields(value){cdk().traceProperty(this.node,"EmitSystemFields"),this._emitSystemFields=value}get fieldSelectionCriteria(){return this._fieldSelectionCriteria}set fieldSelectionCriteria(value){cdk().traceProperty(this.node,"FieldSelectionCriteria"),this._fieldSelectionCriteria=value}get filterName(){return this._filterName}set filterName(value){cdk().traceProperty(this.node,"FilterName"),this._filterName=value}get filterPattern(){return this._filterPattern}set filterPattern(value){cdk().traceProperty(this.node,"FilterPattern"),this._filterPattern=value}get logGroupName(){return this._logGroupName}set logGroupName(value){cdk().traceProperty(this.node,"LogGroupName"),this._logGroupName=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get cfnProperties(){return{applyOnTransformedLogs:this._applyOnTransformedLogs,destinationArn:this._destinationArn,distribution:this._distribution,emitSystemFields:this._emitSystemFields,fieldSelectionCriteria:this._fieldSelectionCriteria,filterName:this._filterName,filterPattern:this._filterPattern,logGroupName:this._logGroupName,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",CfnSubscriptionFilter.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnSubscriptionFilterPropsToCloudFormation(props)}}exports.CfnSubscriptionFilter=CfnSubscriptionFilter;function CfnSubscriptionFilterPropsValidator(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("applyOnTransformedLogs",cdk().validateBoolean)(properties.applyOnTransformedLogs)),errors.collect(cdk().propertyValidator("destinationArn",cdk().requiredValidator)(properties.destinationArn)),errors.collect(cdk().propertyValidator("destinationArn",cdk().validateString)(properties.destinationArn)),errors.collect(cdk().propertyValidator("distribution",cdk().validateString)(properties.distribution)),errors.collect(cdk().propertyValidator("emitSystemFields",cdk().listValidator(cdk().validateString))(properties.emitSystemFields)),errors.collect(cdk().propertyValidator("fieldSelectionCriteria",cdk().validateString)(properties.fieldSelectionCriteria)),errors.collect(cdk().propertyValidator("filterName",cdk().validateString)(properties.filterName)),errors.collect(cdk().propertyValidator("filterPattern",cdk().requiredValidator)(properties.filterPattern)),errors.collect(cdk().propertyValidator("filterPattern",cdk().validateString)(properties.filterPattern)),errors.collect(cdk().propertyValidator("logGroupName",cdk().requiredValidator)(properties.logGroupName)),errors.collect(cdk().propertyValidator("logGroupName",cdk().validateString)(properties.logGroupName)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "CfnSubscriptionFilterProps"')}function convertCfnSubscriptionFilterPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSubscriptionFilterPropsValidator(properties).assertSuccess(),{ApplyOnTransformedLogs:cdk().booleanToCloudFormation(properties.applyOnTransformedLogs),DestinationArn:cdk().stringToCloudFormation(properties.destinationArn),Distribution:cdk().stringToCloudFormation(properties.distribution),EmitSystemFields:cdk().listMapper(cdk().stringToCloudFormation)(properties.emitSystemFields),FieldSelectionCriteria:cdk().stringToCloudFormation(properties.fieldSelectionCriteria),FilterName:cdk().stringToCloudFormation(properties.filterName),FilterPattern:cdk().stringToCloudFormation(properties.filterPattern),LogGroupName:cdk().stringToCloudFormation(properties.logGroupName),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnSubscriptionFilterPropsFromCloudFormation(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("applyOnTransformedLogs","ApplyOnTransformedLogs",properties.ApplyOnTransformedLogs!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ApplyOnTransformedLogs):void 0),ret.addPropertyResult("destinationArn","DestinationArn",properties.DestinationArn!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationArn):void 0),ret.addPropertyResult("distribution","Distribution",properties.Distribution!=null?cfn_parse().FromCloudFormation.getString(properties.Distribution):void 0),ret.addPropertyResult("emitSystemFields","EmitSystemFields",properties.EmitSystemFields!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.EmitSystemFields):void 0),ret.addPropertyResult("fieldSelectionCriteria","FieldSelectionCriteria",properties.FieldSelectionCriteria!=null?cfn_parse().FromCloudFormation.getString(properties.FieldSelectionCriteria):void 0),ret.addPropertyResult("filterName","FilterName",properties.FilterName!=null?cfn_parse().FromCloudFormation.getString(properties.FilterName):void 0),ret.addPropertyResult("filterPattern","FilterPattern",properties.FilterPattern!=null?cfn_parse().FromCloudFormation.getString(properties.FilterPattern):void 0),ret.addPropertyResult("logGroupName","LogGroupName",properties.LogGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupName):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDelivery extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnDelivery",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::Delivery";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeliveryPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDelivery(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 isCfnDelivery(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDelivery.CFN_RESOURCE_TYPE_NAME}static arnForDelivery(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_logs_IDeliveryRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDelivery),error}return resource.deliveryRef.deliveryArn}cdkTagManager;_deliveryDestinationArn;_deliverySourceName;_fieldDelimiter;_recordFields;_s3EnableHiveCompatiblePath;_s3SuffixPath;_tags;cfnPropertyNames={tags:"Tags",deliveryDestinationArn:"DeliveryDestinationArn",deliverySourceName:"DeliverySourceName",fieldDelimiter:"FieldDelimiter",recordFields:"RecordFields",s3EnableHiveCompatiblePath:"S3EnableHiveCompatiblePath",s3SuffixPath:"S3SuffixPath"};constructor(scope,id,props){super(scope,id,{type:CfnDelivery.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnDeliveryProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDelivery),error}cdk().requireProperty(props,"deliveryDestinationArn",this),cdk().requireProperty(props,"deliverySourceName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Logs::Delivery",void 0,{tagPropertyName:"tags"}),this._deliveryDestinationArn=props.deliveryDestinationArn,this._deliverySourceName=props.deliverySourceName,this._fieldDelimiter=props.fieldDelimiter,this._recordFields=props.recordFields,this._s3EnableHiveCompatiblePath=props.s3EnableHiveCompatiblePath,this._s3SuffixPath=props.s3SuffixPath,this._tags=props.tags}get deliveryRef(){return{deliveryId:this.ref,deliveryArn:this.attrArn}}get deliveryDestinationArn(){return this._deliveryDestinationArn}set deliveryDestinationArn(value){cdk().traceProperty(this.node,"DeliveryDestinationArn"),this._deliveryDestinationArn=value}get deliverySourceName(){return this._deliverySourceName}set deliverySourceName(value){cdk().traceProperty(this.node,"DeliverySourceName"),this._deliverySourceName=value}get fieldDelimiter(){return this._fieldDelimiter}set fieldDelimiter(value){cdk().traceProperty(this.node,"FieldDelimiter"),this._fieldDelimiter=value}get recordFields(){return this._recordFields}set recordFields(value){cdk().traceProperty(this.node,"RecordFields"),this._recordFields=value}get s3EnableHiveCompatiblePath(){return this._s3EnableHiveCompatiblePath}set s3EnableHiveCompatiblePath(value){cdk().traceProperty(this.node,"S3EnableHiveCompatiblePath"),this._s3EnableHiveCompatiblePath=value}get s3SuffixPath(){return this._s3SuffixPath}set s3SuffixPath(value){cdk().traceProperty(this.node,"S3SuffixPath"),this._s3SuffixPath=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 attrDeliveryDestinationType(){return cdk().Token.asString(this.getAtt("DeliveryDestinationType",cdk().ResolutionTypeHint.STRING))}get attrDeliveryId(){return cdk().Token.asString(this.getAtt("DeliveryId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),deliveryDestinationArn:this._deliveryDestinationArn,deliverySourceName:this._deliverySourceName,fieldDelimiter:this._fieldDelimiter,recordFields:this._recordFields,s3EnableHiveCompatiblePath:this._s3EnableHiveCompatiblePath,s3SuffixPath:this._s3SuffixPath}}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",CfnDelivery.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDeliveryPropsToCloudFormation(props)}}exports.CfnDelivery=CfnDelivery;function CfnDeliveryPropsValidator(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("deliveryDestinationArn",cdk().requiredValidator)(properties.deliveryDestinationArn)),errors.collect(cdk().propertyValidator("deliveryDestinationArn",cdk().validateString)(properties.deliveryDestinationArn)),errors.collect(cdk().propertyValidator("deliverySourceName",cdk().requiredValidator)(properties.deliverySourceName)),errors.collect(cdk().propertyValidator("deliverySourceName",cdk().validateString)(properties.deliverySourceName)),errors.collect(cdk().propertyValidator("fieldDelimiter",cdk().validateString)(properties.fieldDelimiter)),errors.collect(cdk().propertyValidator("recordFields",cdk().listValidator(cdk().validateString))(properties.recordFields)),errors.collect(cdk().propertyValidator("s3EnableHiveCompatiblePath",cdk().validateBoolean)(properties.s3EnableHiveCompatiblePath)),errors.collect(cdk().propertyValidator("s3SuffixPath",cdk().validateString)(properties.s3SuffixPath)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDeliveryProps"')}function convertCfnDeliveryPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeliveryPropsValidator(properties).assertSuccess(),{DeliveryDestinationArn:cdk().stringToCloudFormation(properties.deliveryDestinationArn),DeliverySourceName:cdk().stringToCloudFormation(properties.deliverySourceName),FieldDelimiter:cdk().stringToCloudFormation(properties.fieldDelimiter),RecordFields:cdk().listMapper(cdk().stringToCloudFormation)(properties.recordFields),S3EnableHiveCompatiblePath:cdk().booleanToCloudFormation(properties.s3EnableHiveCompatiblePath),S3SuffixPath:cdk().stringToCloudFormation(properties.s3SuffixPath),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDeliveryPropsFromCloudFormation(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("deliveryDestinationArn","DeliveryDestinationArn",properties.DeliveryDestinationArn!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryDestinationArn):void 0),ret.addPropertyResult("deliverySourceName","DeliverySourceName",properties.DeliverySourceName!=null?cfn_parse().FromCloudFormation.getString(properties.DeliverySourceName):void 0),ret.addPropertyResult("fieldDelimiter","FieldDelimiter",properties.FieldDelimiter!=null?cfn_parse().FromCloudFormation.getString(properties.FieldDelimiter):void 0),ret.addPropertyResult("recordFields","RecordFields",properties.RecordFields!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.RecordFields):void 0),ret.addPropertyResult("s3EnableHiveCompatiblePath","S3EnableHiveCompatiblePath",properties.S3EnableHiveCompatiblePath!=null?cfn_parse().FromCloudFormation.getBoolean(properties.S3EnableHiveCompatiblePath):void 0),ret.addPropertyResult("s3SuffixPath","S3SuffixPath",properties.S3SuffixPath!=null?cfn_parse().FromCloudFormation.getString(properties.S3SuffixPath):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 CfnDeliveryDestination extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnDeliveryDestination",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::DeliveryDestination";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeliveryDestinationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDeliveryDestination(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 isCfnDeliveryDestination(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDeliveryDestination.CFN_RESOURCE_TYPE_NAME}static fromDeliveryDestinationArn(scope,id,arn){class Import extends cdk().Resource{deliveryDestinationRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:delivery-destination:${DeliveryDestinationName}").parse(arn2);this.deliveryDestinationRef={deliveryDestinationName:variables.DeliveryDestinationName,deliveryDestinationArn:arn2}}}return new Import(scope,id,arn)}static fromDeliveryDestinationName(scope,id,deliveryDestinationName){class Import extends cdk().Resource{deliveryDestinationRef;constructor(scope2,id2,deliveryDestinationName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:delivery-destination:${DeliveryDestinationName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DeliveryDestinationName:deliveryDestinationName2});super(scope2,id2,{environmentFromArn:arn}),this.deliveryDestinationRef={deliveryDestinationName:deliveryDestinationName2,deliveryDestinationArn:arn}}}return new Import(scope,id,deliveryDestinationName)}static arnForDeliveryDestination(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_logs_IDeliveryDestinationRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDeliveryDestination),error}return resource.deliveryDestinationRef.deliveryDestinationArn}cdkTagManager;_deliveryDestinationPolicy;_deliveryDestinationType;_destinationResourceArn;_name;_outputFormat;_tags;cfnPropertyNames={tags:"Tags",deliveryDestinationPolicy:"DeliveryDestinationPolicy",deliveryDestinationType:"DeliveryDestinationType",destinationResourceArn:"DestinationResourceArn",name:"Name",outputFormat:"OutputFormat"};constructor(scope,id,props){super(scope,id,{type:CfnDeliveryDestination.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnDeliveryDestinationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDeliveryDestination),error}cdk().requireProperty(props,"name",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Logs::DeliveryDestination",void 0,{tagPropertyName:"tags"}),this._deliveryDestinationPolicy=props.deliveryDestinationPolicy,this._deliveryDestinationType=props.deliveryDestinationType,this._destinationResourceArn=props.destinationResourceArn,this._name=props.name,this._outputFormat=props.outputFormat,this._tags=props.tags}get deliveryDestinationRef(){return{deliveryDestinationName:this.ref,deliveryDestinationArn:this.attrArn}}get deliveryDestinationPolicy(){return this._deliveryDestinationPolicy}set deliveryDestinationPolicy(value){cdk().traceProperty(this.node,"DeliveryDestinationPolicy"),this._deliveryDestinationPolicy=value}get deliveryDestinationType(){return this._deliveryDestinationType}set deliveryDestinationType(value){cdk().traceProperty(this.node,"DeliveryDestinationType"),this._deliveryDestinationType=value}get destinationResourceArn(){return this._destinationResourceArn}set destinationResourceArn(value){cdk().traceProperty(this.node,"DestinationResourceArn"),this._destinationResourceArn=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get outputFormat(){return this._outputFormat}set outputFormat(value){cdk().traceProperty(this.node,"OutputFormat"),this._outputFormat=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),deliveryDestinationPolicy:this._deliveryDestinationPolicy,deliveryDestinationType:this._deliveryDestinationType,destinationResourceArn:this._destinationResourceArn,name:this._name,outputFormat:this._outputFormat}}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",CfnDeliveryDestination.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDeliveryDestinationPropsToCloudFormation(props)}}exports.CfnDeliveryDestination=CfnDeliveryDestination;function CfnDeliveryDestinationDestinationPolicyPropertyValidator(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("deliveryDestinationName",cdk().validateString)(properties.deliveryDestinationName)),errors.collect(cdk().propertyValidator("deliveryDestinationPolicy",cdk().validateObject)(properties.deliveryDestinationPolicy)),errors.wrap('supplied properties not correct for "DestinationPolicyProperty"')}function convertCfnDeliveryDestinationDestinationPolicyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeliveryDestinationDestinationPolicyPropertyValidator(properties).assertSuccess(),{DeliveryDestinationName:cdk().stringToCloudFormation(properties.deliveryDestinationName),DeliveryDestinationPolicy:cdk().objectToCloudFormation(properties.deliveryDestinationPolicy)}):properties}function CfnDeliveryDestinationDestinationPolicyPropertyFromCloudFormation(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("deliveryDestinationName","DeliveryDestinationName",properties.DeliveryDestinationName!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryDestinationName):void 0),ret.addPropertyResult("deliveryDestinationPolicy","DeliveryDestinationPolicy",properties.DeliveryDestinationPolicy!=null?cfn_parse().FromCloudFormation.getAny(properties.DeliveryDestinationPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDeliveryDestinationPropsValidator(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("deliveryDestinationPolicy",CfnDeliveryDestinationDestinationPolicyPropertyValidator)(properties.deliveryDestinationPolicy)),errors.collect(cdk().propertyValidator("deliveryDestinationType",cdk().validateString)(properties.deliveryDestinationType)),errors.collect(cdk().propertyValidator("destinationResourceArn",cdk().validateString)(properties.destinationResourceArn)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("outputFormat",cdk().validateString)(properties.outputFormat)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDeliveryDestinationProps"')}function convertCfnDeliveryDestinationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeliveryDestinationPropsValidator(properties).assertSuccess(),{DeliveryDestinationPolicy:convertCfnDeliveryDestinationDestinationPolicyPropertyToCloudFormation(properties.deliveryDestinationPolicy),DeliveryDestinationType:cdk().stringToCloudFormation(properties.deliveryDestinationType),DestinationResourceArn:cdk().stringToCloudFormation(properties.destinationResourceArn),Name:cdk().stringToCloudFormation(properties.name),OutputFormat:cdk().stringToCloudFormation(properties.outputFormat),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDeliveryDestinationPropsFromCloudFormation(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("deliveryDestinationPolicy","DeliveryDestinationPolicy",properties.DeliveryDestinationPolicy!=null?CfnDeliveryDestinationDestinationPolicyPropertyFromCloudFormation(properties.DeliveryDestinationPolicy):void 0),ret.addPropertyResult("deliveryDestinationType","DeliveryDestinationType",properties.DeliveryDestinationType!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryDestinationType):void 0),ret.addPropertyResult("destinationResourceArn","DestinationResourceArn",properties.DestinationResourceArn!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationResourceArn):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("outputFormat","OutputFormat",properties.OutputFormat!=null?cfn_parse().FromCloudFormation.getString(properties.OutputFormat):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 CfnDeliverySource extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnDeliverySource",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::DeliverySource";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeliverySourcePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDeliverySource(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 isCfnDeliverySource(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDeliverySource.CFN_RESOURCE_TYPE_NAME}static fromDeliverySourceArn(scope,id,arn){class Import extends cdk().Resource{deliverySourceRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:delivery-source:${DeliverySourceName}").parse(arn2);this.deliverySourceRef={deliverySourceName:variables.DeliverySourceName,deliverySourceArn:arn2}}}return new Import(scope,id,arn)}static fromDeliverySourceName(scope,id,deliverySourceName){class Import extends cdk().Resource{deliverySourceRef;constructor(scope2,id2,deliverySourceName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:logs:${Region}:${Account}:delivery-source:${DeliverySourceName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DeliverySourceName:deliverySourceName2});super(scope2,id2,{environmentFromArn:arn}),this.deliverySourceRef={deliverySourceName:deliverySourceName2,deliverySourceArn:arn}}}return new Import(scope,id,deliverySourceName)}static arnForDeliverySource(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_logs_IDeliverySourceRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDeliverySource),error}return resource.deliverySourceRef.deliverySourceArn}cdkTagManager;_logType;_name;_resourceArn;_tags;cfnPropertyNames={tags:"Tags",logType:"LogType",name:"Name",resourceArn:"ResourceArn"};constructor(scope,id,props){super(scope,id,{type:CfnDeliverySource.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnDeliverySourceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDeliverySource),error}cdk().requireProperty(props,"name",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Logs::DeliverySource",void 0,{tagPropertyName:"tags"}),this._logType=props.logType,this._name=props.name,this._resourceArn=props.resourceArn,this._tags=props.tags}get deliverySourceRef(){return{deliverySourceName:this.ref,deliverySourceArn:this.attrArn}}get logType(){return this._logType}set logType(value){cdk().traceProperty(this.node,"LogType"),this._logType=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get resourceArn(){return this._resourceArn}set resourceArn(value){cdk().traceProperty(this.node,"ResourceArn"),this._resourceArn=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 attrResourceArns(){return cdk().Token.asList(this.getAtt("ResourceArns",cdk().ResolutionTypeHint.STRING_LIST))}get attrService(){return cdk().Token.asString(this.getAtt("Service",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),logType:this._logType,name:this._name,resourceArn:this._resourceArn}}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",CfnDeliverySource.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDeliverySourcePropsToCloudFormation(props)}}exports.CfnDeliverySource=CfnDeliverySource;function CfnDeliverySourcePropsValidator(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("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("resourceArn",cdk().validateString)(properties.resourceArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDeliverySourceProps"')}function convertCfnDeliverySourcePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeliverySourcePropsValidator(properties).assertSuccess(),{LogType:cdk().stringToCloudFormation(properties.logType),Name:cdk().stringToCloudFormation(properties.name),ResourceArn:cdk().stringToCloudFormation(properties.resourceArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDeliverySourcePropsFromCloudFormation(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("logType","LogType",properties.LogType!=null?cfn_parse().FromCloudFormation.getString(properties.LogType):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("resourceArn","ResourceArn",properties.ResourceArn!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceArn):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 CfnIntegration extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnIntegration",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::Integration";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnIntegrationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnIntegration(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 isCfnIntegration(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnIntegration.CFN_RESOURCE_TYPE_NAME}_integrationName;_integrationType;_resourceConfig;cfnPropertyNames={integrationName:"IntegrationName",integrationType:"IntegrationType",resourceConfig:"ResourceConfig"};constructor(scope,id,props){super(scope,id,{type:CfnIntegration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnIntegrationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnIntegration),error}cdk().requireProperty(props,"integrationName",this),cdk().requireProperty(props,"integrationType",this),cdk().requireProperty(props,"resourceConfig",this),this._integrationName=props.integrationName,this._integrationType=props.integrationType,this._resourceConfig=props.resourceConfig}get integrationRef(){return{integrationName:this.ref}}get integrationName(){return this._integrationName}set integrationName(value){cdk().traceProperty(this.node,"IntegrationName"),this._integrationName=value}get integrationType(){return this._integrationType}set integrationType(value){cdk().traceProperty(this.node,"IntegrationType"),this._integrationType=value}get resourceConfig(){return this._resourceConfig}set resourceConfig(value){cdk().traceProperty(this.node,"ResourceConfig"),this._resourceConfig=value}get attrIntegrationStatus(){return cdk().Token.asString(this.getAtt("IntegrationStatus",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{integrationName:this._integrationName,integrationType:this._integrationType,resourceConfig:this._resourceConfig}}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",CfnIntegration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnIntegrationPropsToCloudFormation(props)}}exports.CfnIntegration=CfnIntegration;function CfnIntegrationOpenSearchResourceConfigPropertyValidator(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("applicationArn",cdk().validateString)(properties.applicationArn)),errors.collect(cdk().propertyValidator("dashboardViewerPrincipals",cdk().requiredValidator)(properties.dashboardViewerPrincipals)),errors.collect(cdk().propertyValidator("dashboardViewerPrincipals",cdk().listValidator(cdk().validateString))(properties.dashboardViewerPrincipals)),errors.collect(cdk().propertyValidator("dataSourceRoleArn",cdk().requiredValidator)(properties.dataSourceRoleArn)),errors.collect(cdk().propertyValidator("dataSourceRoleArn",cdk().validateString)(properties.dataSourceRoleArn)),errors.collect(cdk().propertyValidator("kmsKeyArn",cdk().validateString)(properties.kmsKeyArn)),errors.collect(cdk().propertyValidator("retentionDays",cdk().validateNumber)(properties.retentionDays)),errors.wrap('supplied properties not correct for "OpenSearchResourceConfigProperty"')}function convertCfnIntegrationOpenSearchResourceConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationOpenSearchResourceConfigPropertyValidator(properties).assertSuccess(),{ApplicationARN:cdk().stringToCloudFormation(properties.applicationArn),DashboardViewerPrincipals:cdk().listMapper(cdk().stringToCloudFormation)(properties.dashboardViewerPrincipals),DataSourceRoleArn:cdk().stringToCloudFormation(properties.dataSourceRoleArn),KmsKeyArn:cdk().stringToCloudFormation(properties.kmsKeyArn),RetentionDays:cdk().numberToCloudFormation(properties.retentionDays)}):properties}function CfnIntegrationOpenSearchResourceConfigPropertyFromCloudFormation(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("applicationArn","ApplicationARN",properties.ApplicationARN!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationARN):void 0),ret.addPropertyResult("dashboardViewerPrincipals","DashboardViewerPrincipals",properties.DashboardViewerPrincipals!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.DashboardViewerPrincipals):void 0),ret.addPropertyResult("dataSourceRoleArn","DataSourceRoleArn",properties.DataSourceRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.DataSourceRoleArn):void 0),ret.addPropertyResult("kmsKeyArn","KmsKeyArn",properties.KmsKeyArn!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyArn):void 0),ret.addPropertyResult("retentionDays","RetentionDays",properties.RetentionDays!=null?cfn_parse().FromCloudFormation.getNumber(properties.RetentionDays):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnIntegrationResourceConfigPropertyValidator(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("openSearchResourceConfig",CfnIntegrationOpenSearchResourceConfigPropertyValidator)(properties.openSearchResourceConfig)),errors.wrap('supplied properties not correct for "ResourceConfigProperty"')}function convertCfnIntegrationResourceConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationResourceConfigPropertyValidator(properties).assertSuccess(),{OpenSearchResourceConfig:convertCfnIntegrationOpenSearchResourceConfigPropertyToCloudFormation(properties.openSearchResourceConfig)}):properties}function CfnIntegrationResourceConfigPropertyFromCloudFormation(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("openSearchResourceConfig","OpenSearchResourceConfig",properties.OpenSearchResourceConfig!=null?CfnIntegrationOpenSearchResourceConfigPropertyFromCloudFormation(properties.OpenSearchResourceConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnIntegrationPropsValidator(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("integrationName",cdk().requiredValidator)(properties.integrationName)),errors.collect(cdk().propertyValidator("integrationName",cdk().validateString)(properties.integrationName)),errors.collect(cdk().propertyValidator("integrationType",cdk().requiredValidator)(properties.integrationType)),errors.collect(cdk().propertyValidator("integrationType",cdk().validateString)(properties.integrationType)),errors.collect(cdk().propertyValidator("resourceConfig",cdk().requiredValidator)(properties.resourceConfig)),errors.collect(cdk().propertyValidator("resourceConfig",CfnIntegrationResourceConfigPropertyValidator)(properties.resourceConfig)),errors.wrap('supplied properties not correct for "CfnIntegrationProps"')}function convertCfnIntegrationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationPropsValidator(properties).assertSuccess(),{IntegrationName:cdk().stringToCloudFormation(properties.integrationName),IntegrationType:cdk().stringToCloudFormation(properties.integrationType),ResourceConfig:convertCfnIntegrationResourceConfigPropertyToCloudFormation(properties.resourceConfig)}):properties}function CfnIntegrationPropsFromCloudFormation(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("integrationName","IntegrationName",properties.IntegrationName!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationName):void 0),ret.addPropertyResult("integrationType","IntegrationType",properties.IntegrationType!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationType):void 0),ret.addPropertyResult("resourceConfig","ResourceConfig",properties.ResourceConfig!=null?CfnIntegrationResourceConfigPropertyFromCloudFormation(properties.ResourceConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnLogAnomalyDetector extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnLogAnomalyDetector",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::LogAnomalyDetector";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLogAnomalyDetectorPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnLogAnomalyDetector(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 isCfnLogAnomalyDetector(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnLogAnomalyDetector.CFN_RESOURCE_TYPE_NAME}_accountId;_anomalyVisibilityTime;_detectorName;_evaluationFrequency;_filterPattern;_kmsKeyId;_logGroupArnList;cfnPropertyNames={accountId:"AccountId",anomalyVisibilityTime:"AnomalyVisibilityTime",detectorName:"DetectorName",evaluationFrequency:"EvaluationFrequency",filterPattern:"FilterPattern",kmsKeyId:"KmsKeyId",logGroupArnList:"LogGroupArnList"};constructor(scope,id,props={}){super(scope,id,{type:CfnLogAnomalyDetector.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnLogAnomalyDetectorProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLogAnomalyDetector),error}this._accountId=props.accountId,this._anomalyVisibilityTime=props.anomalyVisibilityTime,this._detectorName=props.detectorName,this._evaluationFrequency=props.evaluationFrequency,this._filterPattern=props.filterPattern,this._kmsKeyId=props.kmsKeyId,this._logGroupArnList=props.logGroupArnList}get logAnomalyDetectorRef(){return{anomalyDetectorArn:this.ref}}get accountId(){return this._accountId}set accountId(value){cdk().traceProperty(this.node,"AccountId"),this._accountId=value}get anomalyVisibilityTime(){return this._anomalyVisibilityTime}set anomalyVisibilityTime(value){cdk().traceProperty(this.node,"AnomalyVisibilityTime"),this._anomalyVisibilityTime=value}get detectorName(){return this._detectorName}set detectorName(value){cdk().traceProperty(this.node,"DetectorName"),this._detectorName=value}get evaluationFrequency(){return this._evaluationFrequency}set evaluationFrequency(value){cdk().traceProperty(this.node,"EvaluationFrequency"),this._evaluationFrequency=value}get filterPattern(){return this._filterPattern}set filterPattern(value){cdk().traceProperty(this.node,"FilterPattern"),this._filterPattern=value}get kmsKeyId(){return this._kmsKeyId}set kmsKeyId(value){cdk().traceProperty(this.node,"KmsKeyId"),this._kmsKeyId=value}get logGroupArnList(){return this._logGroupArnList}set logGroupArnList(value){cdk().traceProperty(this.node,"LogGroupArnList"),this._logGroupArnList=value}get attrAnomalyDetectorArn(){return cdk().Token.asString(this.getAtt("AnomalyDetectorArn",cdk().ResolutionTypeHint.STRING))}get attrAnomalyDetectorStatus(){return cdk().Token.asString(this.getAtt("AnomalyDetectorStatus",cdk().ResolutionTypeHint.STRING))}get attrCreationTimeStamp(){return this.getAtt("CreationTimeStamp",cdk().ResolutionTypeHint.NUMBER)}get attrLastModifiedTimeStamp(){return this.getAtt("LastModifiedTimeStamp",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{accountId:this._accountId,anomalyVisibilityTime:this._anomalyVisibilityTime,detectorName:this._detectorName,evaluationFrequency:this._evaluationFrequency,filterPattern:this._filterPattern,kmsKeyId:this._kmsKeyId,logGroupArnList:this._logGroupArnList}}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",CfnLogAnomalyDetector.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnLogAnomalyDetectorPropsToCloudFormation(props)}}exports.CfnLogAnomalyDetector=CfnLogAnomalyDetector;function CfnLogAnomalyDetectorPropsValidator(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("accountId",cdk().validateString)(properties.accountId)),errors.collect(cdk().propertyValidator("anomalyVisibilityTime",cdk().validateNumber)(properties.anomalyVisibilityTime)),errors.collect(cdk().propertyValidator("detectorName",cdk().validateString)(properties.detectorName)),errors.collect(cdk().propertyValidator("evaluationFrequency",cdk().validateString)(properties.evaluationFrequency)),errors.collect(cdk().propertyValidator("filterPattern",cdk().validateString)(properties.filterPattern)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("logGroupArnList",cdk().listValidator(cdk().validateString))(properties.logGroupArnList)),errors.wrap('supplied properties not correct for "CfnLogAnomalyDetectorProps"')}function convertCfnLogAnomalyDetectorPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnLogAnomalyDetectorPropsValidator(properties).assertSuccess(),{AccountId:cdk().stringToCloudFormation(properties.accountId),AnomalyVisibilityTime:cdk().numberToCloudFormation(properties.anomalyVisibilityTime),DetectorName:cdk().stringToCloudFormation(properties.detectorName),EvaluationFrequency:cdk().stringToCloudFormation(properties.evaluationFrequency),FilterPattern:cdk().stringToCloudFormation(properties.filterPattern),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),LogGroupArnList:cdk().listMapper(cdk().stringToCloudFormation)(properties.logGroupArnList)}):properties}function CfnLogAnomalyDetectorPropsFromCloudFormation(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("accountId","AccountId",properties.AccountId!=null?cfn_parse().FromCloudFormation.getString(properties.AccountId):void 0),ret.addPropertyResult("anomalyVisibilityTime","AnomalyVisibilityTime",properties.AnomalyVisibilityTime!=null?cfn_parse().FromCloudFormation.getNumber(properties.AnomalyVisibilityTime):void 0),ret.addPropertyResult("detectorName","DetectorName",properties.DetectorName!=null?cfn_parse().FromCloudFormation.getString(properties.DetectorName):void 0),ret.addPropertyResult("evaluationFrequency","EvaluationFrequency",properties.EvaluationFrequency!=null?cfn_parse().FromCloudFormation.getString(properties.EvaluationFrequency):void 0),ret.addPropertyResult("filterPattern","FilterPattern",properties.FilterPattern!=null?cfn_parse().FromCloudFormation.getString(properties.FilterPattern):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("logGroupArnList","LogGroupArnList",properties.LogGroupArnList!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LogGroupArnList):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnScheduledQuery extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnScheduledQuery",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::ScheduledQuery";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnScheduledQueryPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnScheduledQuery(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 isCfnScheduledQuery(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnScheduledQuery.CFN_RESOURCE_TYPE_NAME}static arnForScheduledQuery(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_logs_IScheduledQueryRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForScheduledQuery),error}return resource.scheduledQueryRef.scheduledQueryArn}cdkTagManager;_description;_destinationConfiguration;_executionRoleArn;_logGroupIdentifiers;_name;_queryLanguage;_queryString;_scheduleEndTime;_scheduleExpression;_scheduleStartTime;_startTimeOffset;_state;_tags;_timezone;cfnPropertyNames={tags:"Tags",description:"Description",destinationConfiguration:"DestinationConfiguration",executionRoleArn:"ExecutionRoleArn",logGroupIdentifiers:"LogGroupIdentifiers",name:"Name",queryLanguage:"QueryLanguage",queryString:"QueryString",scheduleEndTime:"ScheduleEndTime",scheduleExpression:"ScheduleExpression",scheduleStartTime:"ScheduleStartTime",startTimeOffset:"StartTimeOffset",state:"State",timezone:"Timezone"};constructor(scope,id,props){super(scope,id,{type:CfnScheduledQuery.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnScheduledQueryProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnScheduledQuery),error}cdk().requireProperty(props,"executionRoleArn",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"queryLanguage",this),cdk().requireProperty(props,"queryString",this),cdk().requireProperty(props,"scheduleExpression",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Logs::ScheduledQuery",void 0,{tagPropertyName:"tags"}),this._description=props.description,this._destinationConfiguration=props.destinationConfiguration,this._executionRoleArn=props.executionRoleArn,this._logGroupIdentifiers=props.logGroupIdentifiers,this._name=props.name,this._queryLanguage=props.queryLanguage,this._queryString=props.queryString,this._scheduleEndTime=props.scheduleEndTime,this._scheduleExpression=props.scheduleExpression,this._scheduleStartTime=props.scheduleStartTime,this._startTimeOffset=props.startTimeOffset,this._state=props.state,this._tags=props.tags,this._timezone=props.timezone}get scheduledQueryRef(){return{scheduledQueryArn:this.ref}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get destinationConfiguration(){return this._destinationConfiguration}set destinationConfiguration(value){cdk().traceProperty(this.node,"DestinationConfiguration"),this._destinationConfiguration=value}get executionRoleArn(){return this._executionRoleArn}set executionRoleArn(value){cdk().traceProperty(this.node,"ExecutionRoleArn"),this._executionRoleArn=value}get logGroupIdentifiers(){return this._logGroupIdentifiers}set logGroupIdentifiers(value){cdk().traceProperty(this.node,"LogGroupIdentifiers"),this._logGroupIdentifiers=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get queryLanguage(){return this._queryLanguage}set queryLanguage(value){cdk().traceProperty(this.node,"QueryLanguage"),this._queryLanguage=value}get queryString(){return this._queryString}set queryString(value){cdk().traceProperty(this.node,"QueryString"),this._queryString=value}get scheduleEndTime(){return this._scheduleEndTime}set scheduleEndTime(value){cdk().traceProperty(this.node,"ScheduleEndTime"),this._scheduleEndTime=value}get scheduleExpression(){return this._scheduleExpression}set scheduleExpression(value){cdk().traceProperty(this.node,"ScheduleExpression"),this._scheduleExpression=value}get scheduleStartTime(){return this._scheduleStartTime}set scheduleStartTime(value){cdk().traceProperty(this.node,"ScheduleStartTime"),this._scheduleStartTime=value}get startTimeOffset(){return this._startTimeOffset}set startTimeOffset(value){cdk().traceProperty(this.node,"StartTimeOffset"),this._startTimeOffset=value}get state(){return this._state}set state(value){cdk().traceProperty(this.node,"State"),this._state=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get timezone(){return this._timezone}set timezone(value){cdk().traceProperty(this.node,"Timezone"),this._timezone=value}get attrCreationTime(){return this.getAtt("CreationTime",cdk().ResolutionTypeHint.NUMBER)}get attrLastExecutionStatus(){return cdk().Token.asString(this.getAtt("LastExecutionStatus",cdk().ResolutionTypeHint.STRING))}get attrLastTriggeredTime(){return this.getAtt("LastTriggeredTime",cdk().ResolutionTypeHint.NUMBER)}get attrLastUpdatedTime(){return this.getAtt("LastUpdatedTime",cdk().ResolutionTypeHint.NUMBER)}get attrScheduledQueryArn(){return cdk().Token.asString(this.getAtt("ScheduledQueryArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),description:this._description,destinationConfiguration:this._destinationConfiguration,executionRoleArn:this._executionRoleArn,logGroupIdentifiers:this._logGroupIdentifiers,name:this._name,queryLanguage:this._queryLanguage,queryString:this._queryString,scheduleEndTime:this._scheduleEndTime,scheduleExpression:this._scheduleExpression,scheduleStartTime:this._scheduleStartTime,startTimeOffset:this._startTimeOffset,state:this._state,timezone:this._timezone}}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",CfnScheduledQuery.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnScheduledQueryPropsToCloudFormation(props)}}exports.CfnScheduledQuery=CfnScheduledQuery;function CfnScheduledQueryS3ConfigurationPropertyValidator(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("destinationIdentifier",cdk().requiredValidator)(properties.destinationIdentifier)),errors.collect(cdk().propertyValidator("destinationIdentifier",cdk().validateString)(properties.destinationIdentifier)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "S3ConfigurationProperty"')}function convertCfnScheduledQueryS3ConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnScheduledQueryS3ConfigurationPropertyValidator(properties).assertSuccess(),{DestinationIdentifier:cdk().stringToCloudFormation(properties.destinationIdentifier),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnScheduledQueryS3ConfigurationPropertyFromCloudFormation(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("destinationIdentifier","DestinationIdentifier",properties.DestinationIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationIdentifier):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledQueryDestinationConfigurationPropertyValidator(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("s3Configuration",CfnScheduledQueryS3ConfigurationPropertyValidator)(properties.s3Configuration)),errors.wrap('supplied properties not correct for "DestinationConfigurationProperty"')}function convertCfnScheduledQueryDestinationConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnScheduledQueryDestinationConfigurationPropertyValidator(properties).assertSuccess(),{S3Configuration:convertCfnScheduledQueryS3ConfigurationPropertyToCloudFormation(properties.s3Configuration)}):properties}function CfnScheduledQueryDestinationConfigurationPropertyFromCloudFormation(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("s3Configuration","S3Configuration",properties.S3Configuration!=null?CfnScheduledQueryS3ConfigurationPropertyFromCloudFormation(properties.S3Configuration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledQueryTagsItemsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "TagsItemsProperty"')}function convertCfnScheduledQueryTagsItemsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnScheduledQueryTagsItemsPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnScheduledQueryTagsItemsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledQueryPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("destinationConfiguration",CfnScheduledQueryDestinationConfigurationPropertyValidator)(properties.destinationConfiguration)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().requiredValidator)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().validateString)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("logGroupIdentifiers",cdk().listValidator(cdk().validateString))(properties.logGroupIdentifiers)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("queryLanguage",cdk().requiredValidator)(properties.queryLanguage)),errors.collect(cdk().propertyValidator("queryLanguage",cdk().validateString)(properties.queryLanguage)),errors.collect(cdk().propertyValidator("queryString",cdk().requiredValidator)(properties.queryString)),errors.collect(cdk().propertyValidator("queryString",cdk().validateString)(properties.queryString)),errors.collect(cdk().propertyValidator("scheduleEndTime",cdk().validateNumber)(properties.scheduleEndTime)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().requiredValidator)(properties.scheduleExpression)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().validateString)(properties.scheduleExpression)),errors.collect(cdk().propertyValidator("scheduleStartTime",cdk().validateNumber)(properties.scheduleStartTime)),errors.collect(cdk().propertyValidator("startTimeOffset",cdk().validateNumber)(properties.startTimeOffset)),errors.collect(cdk().propertyValidator("state",cdk().validateString)(properties.state)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(CfnScheduledQueryTagsItemsPropertyValidator))(properties.tags)),errors.collect(cdk().propertyValidator("timezone",cdk().validateString)(properties.timezone)),errors.wrap('supplied properties not correct for "CfnScheduledQueryProps"')}function convertCfnScheduledQueryPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnScheduledQueryPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),DestinationConfiguration:convertCfnScheduledQueryDestinationConfigurationPropertyToCloudFormation(properties.destinationConfiguration),ExecutionRoleArn:cdk().stringToCloudFormation(properties.executionRoleArn),LogGroupIdentifiers:cdk().listMapper(cdk().stringToCloudFormation)(properties.logGroupIdentifiers),Name:cdk().stringToCloudFormation(properties.name),QueryLanguage:cdk().stringToCloudFormation(properties.queryLanguage),QueryString:cdk().stringToCloudFormation(properties.queryString),ScheduleEndTime:cdk().numberToCloudFormation(properties.scheduleEndTime),ScheduleExpression:cdk().stringToCloudFormation(properties.scheduleExpression),ScheduleStartTime:cdk().numberToCloudFormation(properties.scheduleStartTime),StartTimeOffset:cdk().numberToCloudFormation(properties.startTimeOffset),State:cdk().stringToCloudFormation(properties.state),Tags:cdk().listMapper(convertCfnScheduledQueryTagsItemsPropertyToCloudFormation)(properties.tags),Timezone:cdk().stringToCloudFormation(properties.timezone)}):properties}function CfnScheduledQueryPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("destinationConfiguration","DestinationConfiguration",properties.DestinationConfiguration!=null?CfnScheduledQueryDestinationConfigurationPropertyFromCloudFormation(properties.DestinationConfiguration):void 0),ret.addPropertyResult("executionRoleArn","ExecutionRoleArn",properties.ExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleArn):void 0),ret.addPropertyResult("logGroupIdentifiers","LogGroupIdentifiers",properties.LogGroupIdentifiers!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LogGroupIdentifiers):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("queryLanguage","QueryLanguage",properties.QueryLanguage!=null?cfn_parse().FromCloudFormation.getString(properties.QueryLanguage):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse().FromCloudFormation.getString(properties.QueryString):void 0),ret.addPropertyResult("scheduleEndTime","ScheduleEndTime",properties.ScheduleEndTime!=null?cfn_parse().FromCloudFormation.getNumber(properties.ScheduleEndTime):void 0),ret.addPropertyResult("scheduleExpression","ScheduleExpression",properties.ScheduleExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ScheduleExpression):void 0),ret.addPropertyResult("scheduleStartTime","ScheduleStartTime",properties.ScheduleStartTime!=null?cfn_parse().FromCloudFormation.getNumber(properties.ScheduleStartTime):void 0),ret.addPropertyResult("startTimeOffset","StartTimeOffset",properties.StartTimeOffset!=null?cfn_parse().FromCloudFormation.getNumber(properties.StartTimeOffset):void 0),ret.addPropertyResult("state","State",properties.State!=null?cfn_parse().FromCloudFormation.getString(properties.State):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(CfnScheduledQueryTagsItemsPropertyFromCloudFormation)(properties.Tags):void 0),ret.addPropertyResult("timezone","Timezone",properties.Timezone!=null?cfn_parse().FromCloudFormation.getString(properties.Timezone):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTransformer extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_logs.CfnTransformer",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Logs::Transformer";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTransformerPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnTransformer(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 isCfnTransformer(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnTransformer.CFN_RESOURCE_TYPE_NAME}_logGroupIdentifier;_transformerConfig;cfnPropertyNames={logGroupIdentifier:"LogGroupIdentifier",transformerConfig:"TransformerConfig"};constructor(scope,id,props){super(scope,id,{type:CfnTransformer.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_logs_CfnTransformerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTransformer),error}cdk().requireProperty(props,"logGroupIdentifier",this),cdk().requireProperty(props,"transformerConfig",this),this._logGroupIdentifier=props.logGroupIdentifier,this._transformerConfig=props.transformerConfig}get transformerRef(){return{logGroupIdentifier:this.ref}}get logGroupIdentifier(){return this._logGroupIdentifier}set logGroupIdentifier(value){cdk().traceProperty(this.node,"LogGroupIdentifier"),this._logGroupIdentifier=value}get transformerConfig(){return this._transformerConfig}set transformerConfig(value){cdk().traceProperty(this.node,"TransformerConfig"),this._transformerConfig=value}get cfnProperties(){return{logGroupIdentifier:this._logGroupIdentifier,transformerConfig:this._transformerConfig}}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",CfnTransformer.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTransformerPropsToCloudFormation(props)}}exports.CfnTransformer=CfnTransformer;function CfnTransformerParseCloudfrontPropertyValidator(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("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParseCloudfrontProperty"')}function convertCfnTransformerParseCloudfrontPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParseCloudfrontPropertyValidator(properties).assertSuccess(),{Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParseCloudfrontPropertyFromCloudFormation(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("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerParseVPCPropertyValidator(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("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParseVPCProperty"')}function convertCfnTransformerParseVPCPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParseVPCPropertyValidator(properties).assertSuccess(),{Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParseVPCPropertyFromCloudFormation(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("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerParseWAFPropertyValidator(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("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParseWAFProperty"')}function convertCfnTransformerParseWAFPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParseWAFPropertyValidator(properties).assertSuccess(),{Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParseWAFPropertyFromCloudFormation(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("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerParseJSONPropertyValidator(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().validateString)(properties.destination)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParseJSONProperty"')}function convertCfnTransformerParseJSONPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParseJSONPropertyValidator(properties).assertSuccess(),{Destination:cdk().stringToCloudFormation(properties.destination),Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParseJSONPropertyFromCloudFormation(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?cfn_parse().FromCloudFormation.getString(properties.Destination):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerParseRoute53PropertyValidator(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("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParseRoute53Property"')}function convertCfnTransformerParseRoute53PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParseRoute53PropertyValidator(properties).assertSuccess(),{Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParseRoute53PropertyFromCloudFormation(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("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerParsePostgresPropertyValidator(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("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParsePostgresProperty"')}function convertCfnTransformerParsePostgresPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParsePostgresPropertyValidator(properties).assertSuccess(),{Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParsePostgresPropertyFromCloudFormation(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("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerParseToOCSFPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("eventSource",cdk().requiredValidator)(properties.eventSource)),errors.collect(cdk().propertyValidator("eventSource",cdk().validateString)(properties.eventSource)),errors.collect(cdk().propertyValidator("mappingVersion",cdk().validateString)(properties.mappingVersion)),errors.collect(cdk().propertyValidator("ocsfVersion",cdk().requiredValidator)(properties.ocsfVersion)),errors.collect(cdk().propertyValidator("ocsfVersion",cdk().validateString)(properties.ocsfVersion)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParseToOCSFProperty"')}function convertCfnTransformerParseToOCSFPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParseToOCSFPropertyValidator(properties).assertSuccess(),{EventSource:cdk().stringToCloudFormation(properties.eventSource),MappingVersion:cdk().stringToCloudFormation(properties.mappingVersion),OcsfVersion:cdk().stringToCloudFormation(properties.ocsfVersion),Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParseToOCSFPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("eventSource","EventSource",properties.EventSource!=null?cfn_parse().FromCloudFormation.getString(properties.EventSource):void 0),ret.addPropertyResult("mappingVersion","MappingVersion",properties.MappingVersion!=null?cfn_parse().FromCloudFormation.getString(properties.MappingVersion):void 0),ret.addPropertyResult("ocsfVersion","OcsfVersion",properties.OcsfVersion!=null?cfn_parse().FromCloudFormation.getString(properties.OcsfVersion):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerParseKeyValuePropertyValidator(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().validateString)(properties.destination)),errors.collect(cdk().propertyValidator("fieldDelimiter",cdk().validateString)(properties.fieldDelimiter)),errors.collect(cdk().propertyValidator("keyPrefix",cdk().validateString)(properties.keyPrefix)),errors.collect(cdk().propertyValidator("keyValueDelimiter",cdk().validateString)(properties.keyValueDelimiter)),errors.collect(cdk().propertyValidator("nonMatchValue",cdk().validateString)(properties.nonMatchValue)),errors.collect(cdk().propertyValidator("overwriteIfExists",cdk().validateBoolean)(properties.overwriteIfExists)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ParseKeyValueProperty"')}function convertCfnTransformerParseKeyValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerParseKeyValuePropertyValidator(properties).assertSuccess(),{Destination:cdk().stringToCloudFormation(properties.destination),FieldDelimiter:cdk().stringToCloudFormation(properties.fieldDelimiter),KeyPrefix:cdk().stringToCloudFormation(properties.keyPrefix),KeyValueDelimiter:cdk().stringToCloudFormation(properties.keyValueDelimiter),NonMatchValue:cdk().stringToCloudFormation(properties.nonMatchValue),OverwriteIfExists:cdk().booleanToCloudFormation(properties.overwriteIfExists),Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerParseKeyValuePropertyFromCloudFormation(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?cfn_parse().FromCloudFormation.getString(properties.Destination):void 0),ret.addPropertyResult("fieldDelimiter","FieldDelimiter",properties.FieldDelimiter!=null?cfn_parse().FromCloudFormation.getString(properties.FieldDelimiter):void 0),ret.addPropertyResult("keyPrefix","KeyPrefix",properties.KeyPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.KeyPrefix):void 0),ret.addPropertyResult("keyValueDelimiter","KeyValueDelimiter",properties.KeyValueDelimiter!=null?cfn_parse().FromCloudFormation.getString(properties.KeyValueDelimiter):void 0),ret.addPropertyResult("nonMatchValue","NonMatchValue",properties.NonMatchValue!=null?cfn_parse().FromCloudFormation.getString(properties.NonMatchValue):void 0),ret.addPropertyResult("overwriteIfExists","OverwriteIfExists",properties.OverwriteIfExists!=null?cfn_parse().FromCloudFormation.getBoolean(properties.OverwriteIfExists):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerCopyValueEntryPropertyValidator(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("overwriteIfExists",cdk().validateBoolean)(properties.overwriteIfExists)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.collect(cdk().propertyValidator("target",cdk().requiredValidator)(properties.target)),errors.collect(cdk().propertyValidator("target",cdk().validateString)(properties.target)),errors.wrap('supplied properties not correct for "CopyValueEntryProperty"')}function convertCfnTransformerCopyValueEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerCopyValueEntryPropertyValidator(properties).assertSuccess(),{OverwriteIfExists:cdk().booleanToCloudFormation(properties.overwriteIfExists),Source:cdk().stringToCloudFormation(properties.source),Target:cdk().stringToCloudFormation(properties.target)}):properties}function CfnTransformerCopyValueEntryPropertyFromCloudFormation(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("overwriteIfExists","OverwriteIfExists",properties.OverwriteIfExists!=null?cfn_parse().FromCloudFormation.getBoolean(properties.OverwriteIfExists):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addPropertyResult("target","Target",properties.Target!=null?cfn_parse().FromCloudFormation.getString(properties.Target):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerCopyValuePropertyValidator(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("entries",cdk().requiredValidator)(properties.entries)),errors.collect(cdk().propertyValidator("entries",cdk().listValidator(CfnTransformerCopyValueEntryPropertyValidator))(properties.entries)),errors.wrap('supplied properties not correct for "CopyValueProperty"')}function convertCfnTransformerCopyValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerCopyValuePropertyValidator(properties).assertSuccess(),{Entries:cdk().listMapper(convertCfnTransformerCopyValueEntryPropertyToCloudFormation)(properties.entries)}):properties}function CfnTransformerCopyValuePropertyFromCloudFormation(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("entries","Entries",properties.Entries!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerCopyValueEntryPropertyFromCloudFormation)(properties.Entries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerCsvPropertyValidator(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("columns",cdk().listValidator(cdk().validateString))(properties.columns)),errors.collect(cdk().propertyValidator("delimiter",cdk().validateString)(properties.delimiter)),errors.collect(cdk().propertyValidator("quoteCharacter",cdk().validateString)(properties.quoteCharacter)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "CsvProperty"')}function convertCfnTransformerCsvPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerCsvPropertyValidator(properties).assertSuccess(),{Columns:cdk().listMapper(cdk().stringToCloudFormation)(properties.columns),Delimiter:cdk().stringToCloudFormation(properties.delimiter),QuoteCharacter:cdk().stringToCloudFormation(properties.quoteCharacter),Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerCsvPropertyFromCloudFormation(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("columns","Columns",properties.Columns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Columns):void 0),ret.addPropertyResult("delimiter","Delimiter",properties.Delimiter!=null?cfn_parse().FromCloudFormation.getString(properties.Delimiter):void 0),ret.addPropertyResult("quoteCharacter","QuoteCharacter",properties.QuoteCharacter!=null?cfn_parse().FromCloudFormation.getString(properties.QuoteCharacter):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerDateTimeConverterPropertyValidator(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("locale",cdk().validateString)(properties.locale)),errors.collect(cdk().propertyValidator("matchPatterns",cdk().requiredValidator)(properties.matchPatterns)),errors.collect(cdk().propertyValidator("matchPatterns",cdk().listValidator(cdk().validateString))(properties.matchPatterns)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.collect(cdk().propertyValidator("sourceTimezone",cdk().validateString)(properties.sourceTimezone)),errors.collect(cdk().propertyValidator("target",cdk().requiredValidator)(properties.target)),errors.collect(cdk().propertyValidator("target",cdk().validateString)(properties.target)),errors.collect(cdk().propertyValidator("targetFormat",cdk().validateString)(properties.targetFormat)),errors.collect(cdk().propertyValidator("targetTimezone",cdk().validateString)(properties.targetTimezone)),errors.wrap('supplied properties not correct for "DateTimeConverterProperty"')}function convertCfnTransformerDateTimeConverterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerDateTimeConverterPropertyValidator(properties).assertSuccess(),{Locale:cdk().stringToCloudFormation(properties.locale),MatchPatterns:cdk().listMapper(cdk().stringToCloudFormation)(properties.matchPatterns),Source:cdk().stringToCloudFormation(properties.source),SourceTimezone:cdk().stringToCloudFormation(properties.sourceTimezone),Target:cdk().stringToCloudFormation(properties.target),TargetFormat:cdk().stringToCloudFormation(properties.targetFormat),TargetTimezone:cdk().stringToCloudFormation(properties.targetTimezone)}):properties}function CfnTransformerDateTimeConverterPropertyFromCloudFormation(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("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addPropertyResult("matchPatterns","MatchPatterns",properties.MatchPatterns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.MatchPatterns):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addPropertyResult("sourceTimezone","SourceTimezone",properties.SourceTimezone!=null?cfn_parse().FromCloudFormation.getString(properties.SourceTimezone):void 0),ret.addPropertyResult("target","Target",properties.Target!=null?cfn_parse().FromCloudFormation.getString(properties.Target):void 0),ret.addPropertyResult("targetFormat","TargetFormat",properties.TargetFormat!=null?cfn_parse().FromCloudFormation.getString(properties.TargetFormat):void 0),ret.addPropertyResult("targetTimezone","TargetTimezone",properties.TargetTimezone!=null?cfn_parse().FromCloudFormation.getString(properties.TargetTimezone):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerDeleteKeysPropertyValidator(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("withKeys",cdk().requiredValidator)(properties.withKeys)),errors.collect(cdk().propertyValidator("withKeys",cdk().listValidator(cdk().validateString))(properties.withKeys)),errors.wrap('supplied properties not correct for "DeleteKeysProperty"')}function convertCfnTransformerDeleteKeysPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerDeleteKeysPropertyValidator(properties).assertSuccess(),{WithKeys:cdk().listMapper(cdk().stringToCloudFormation)(properties.withKeys)}):properties}function CfnTransformerDeleteKeysPropertyFromCloudFormation(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("withKeys","WithKeys",properties.WithKeys!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.WithKeys):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerGrokPropertyValidator(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("match",cdk().requiredValidator)(properties.match)),errors.collect(cdk().propertyValidator("match",cdk().validateString)(properties.match)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "GrokProperty"')}function convertCfnTransformerGrokPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerGrokPropertyValidator(properties).assertSuccess(),{Match:cdk().stringToCloudFormation(properties.match),Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerGrokPropertyFromCloudFormation(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("match","Match",properties.Match!=null?cfn_parse().FromCloudFormation.getString(properties.Match):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerListToMapPropertyValidator(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("flatten",cdk().validateBoolean)(properties.flatten)),errors.collect(cdk().propertyValidator("flattenedElement",cdk().validateString)(properties.flattenedElement)),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.collect(cdk().propertyValidator("target",cdk().validateString)(properties.target)),errors.collect(cdk().propertyValidator("valueKey",cdk().validateString)(properties.valueKey)),errors.wrap('supplied properties not correct for "ListToMapProperty"')}function convertCfnTransformerListToMapPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerListToMapPropertyValidator(properties).assertSuccess(),{Flatten:cdk().booleanToCloudFormation(properties.flatten),FlattenedElement:cdk().stringToCloudFormation(properties.flattenedElement),Key:cdk().stringToCloudFormation(properties.key),Source:cdk().stringToCloudFormation(properties.source),Target:cdk().stringToCloudFormation(properties.target),ValueKey:cdk().stringToCloudFormation(properties.valueKey)}):properties}function CfnTransformerListToMapPropertyFromCloudFormation(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("flatten","Flatten",properties.Flatten!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Flatten):void 0),ret.addPropertyResult("flattenedElement","FlattenedElement",properties.FlattenedElement!=null?cfn_parse().FromCloudFormation.getString(properties.FlattenedElement):void 0),ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addPropertyResult("target","Target",properties.Target!=null?cfn_parse().FromCloudFormation.getString(properties.Target):void 0),ret.addPropertyResult("valueKey","ValueKey",properties.ValueKey!=null?cfn_parse().FromCloudFormation.getString(properties.ValueKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerAddKeyEntryPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("overwriteIfExists",cdk().validateBoolean)(properties.overwriteIfExists)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "AddKeyEntryProperty"')}function convertCfnTransformerAddKeyEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerAddKeyEntryPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),OverwriteIfExists:cdk().booleanToCloudFormation(properties.overwriteIfExists),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnTransformerAddKeyEntryPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("overwriteIfExists","OverwriteIfExists",properties.OverwriteIfExists!=null?cfn_parse().FromCloudFormation.getBoolean(properties.OverwriteIfExists):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerAddKeysPropertyValidator(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("entries",cdk().requiredValidator)(properties.entries)),errors.collect(cdk().propertyValidator("entries",cdk().listValidator(CfnTransformerAddKeyEntryPropertyValidator))(properties.entries)),errors.wrap('supplied properties not correct for "AddKeysProperty"')}function convertCfnTransformerAddKeysPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerAddKeysPropertyValidator(properties).assertSuccess(),{Entries:cdk().listMapper(convertCfnTransformerAddKeyEntryPropertyToCloudFormation)(properties.entries)}):properties}function CfnTransformerAddKeysPropertyFromCloudFormation(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("entries","Entries",properties.Entries!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerAddKeyEntryPropertyFromCloudFormation)(properties.Entries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerMoveKeyEntryPropertyValidator(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("overwriteIfExists",cdk().validateBoolean)(properties.overwriteIfExists)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.collect(cdk().propertyValidator("target",cdk().requiredValidator)(properties.target)),errors.collect(cdk().propertyValidator("target",cdk().validateString)(properties.target)),errors.wrap('supplied properties not correct for "MoveKeyEntryProperty"')}function convertCfnTransformerMoveKeyEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerMoveKeyEntryPropertyValidator(properties).assertSuccess(),{OverwriteIfExists:cdk().booleanToCloudFormation(properties.overwriteIfExists),Source:cdk().stringToCloudFormation(properties.source),Target:cdk().stringToCloudFormation(properties.target)}):properties}function CfnTransformerMoveKeyEntryPropertyFromCloudFormation(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("overwriteIfExists","OverwriteIfExists",properties.OverwriteIfExists!=null?cfn_parse().FromCloudFormation.getBoolean(properties.OverwriteIfExists):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addPropertyResult("target","Target",properties.Target!=null?cfn_parse().FromCloudFormation.getString(properties.Target):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerMoveKeysPropertyValidator(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("entries",cdk().requiredValidator)(properties.entries)),errors.collect(cdk().propertyValidator("entries",cdk().listValidator(CfnTransformerMoveKeyEntryPropertyValidator))(properties.entries)),errors.wrap('supplied properties not correct for "MoveKeysProperty"')}function convertCfnTransformerMoveKeysPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerMoveKeysPropertyValidator(properties).assertSuccess(),{Entries:cdk().listMapper(convertCfnTransformerMoveKeyEntryPropertyToCloudFormation)(properties.entries)}):properties}function CfnTransformerMoveKeysPropertyFromCloudFormation(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("entries","Entries",properties.Entries!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerMoveKeyEntryPropertyFromCloudFormation)(properties.Entries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerRenameKeyEntryPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("overwriteIfExists",cdk().validateBoolean)(properties.overwriteIfExists)),errors.collect(cdk().propertyValidator("renameTo",cdk().requiredValidator)(properties.renameTo)),errors.collect(cdk().propertyValidator("renameTo",cdk().validateString)(properties.renameTo)),errors.wrap('supplied properties not correct for "RenameKeyEntryProperty"')}function convertCfnTransformerRenameKeyEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerRenameKeyEntryPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),OverwriteIfExists:cdk().booleanToCloudFormation(properties.overwriteIfExists),RenameTo:cdk().stringToCloudFormation(properties.renameTo)}):properties}function CfnTransformerRenameKeyEntryPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("overwriteIfExists","OverwriteIfExists",properties.OverwriteIfExists!=null?cfn_parse().FromCloudFormation.getBoolean(properties.OverwriteIfExists):void 0),ret.addPropertyResult("renameTo","RenameTo",properties.RenameTo!=null?cfn_parse().FromCloudFormation.getString(properties.RenameTo):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerRenameKeysPropertyValidator(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("entries",cdk().requiredValidator)(properties.entries)),errors.collect(cdk().propertyValidator("entries",cdk().listValidator(CfnTransformerRenameKeyEntryPropertyValidator))(properties.entries)),errors.wrap('supplied properties not correct for "RenameKeysProperty"')}function convertCfnTransformerRenameKeysPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerRenameKeysPropertyValidator(properties).assertSuccess(),{Entries:cdk().listMapper(convertCfnTransformerRenameKeyEntryPropertyToCloudFormation)(properties.entries)}):properties}function CfnTransformerRenameKeysPropertyFromCloudFormation(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("entries","Entries",properties.Entries!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerRenameKeyEntryPropertyFromCloudFormation)(properties.Entries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerLowerCaseStringPropertyValidator(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("withKeys",cdk().requiredValidator)(properties.withKeys)),errors.collect(cdk().propertyValidator("withKeys",cdk().listValidator(cdk().validateString))(properties.withKeys)),errors.wrap('supplied properties not correct for "LowerCaseStringProperty"')}function convertCfnTransformerLowerCaseStringPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerLowerCaseStringPropertyValidator(properties).assertSuccess(),{WithKeys:cdk().listMapper(cdk().stringToCloudFormation)(properties.withKeys)}):properties}function CfnTransformerLowerCaseStringPropertyFromCloudFormation(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("withKeys","WithKeys",properties.WithKeys!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.WithKeys):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerSplitStringEntryPropertyValidator(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("delimiter",cdk().requiredValidator)(properties.delimiter)),errors.collect(cdk().propertyValidator("delimiter",cdk().validateString)(properties.delimiter)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "SplitStringEntryProperty"')}function convertCfnTransformerSplitStringEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerSplitStringEntryPropertyValidator(properties).assertSuccess(),{Delimiter:cdk().stringToCloudFormation(properties.delimiter),Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnTransformerSplitStringEntryPropertyFromCloudFormation(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("delimiter","Delimiter",properties.Delimiter!=null?cfn_parse().FromCloudFormation.getString(properties.Delimiter):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerSplitStringPropertyValidator(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("entries",cdk().requiredValidator)(properties.entries)),errors.collect(cdk().propertyValidator("entries",cdk().listValidator(CfnTransformerSplitStringEntryPropertyValidator))(properties.entries)),errors.wrap('supplied properties not correct for "SplitStringProperty"')}function convertCfnTransformerSplitStringPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerSplitStringPropertyValidator(properties).assertSuccess(),{Entries:cdk().listMapper(convertCfnTransformerSplitStringEntryPropertyToCloudFormation)(properties.entries)}):properties}function CfnTransformerSplitStringPropertyFromCloudFormation(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("entries","Entries",properties.Entries!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerSplitStringEntryPropertyFromCloudFormation)(properties.Entries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerSubstituteStringEntryPropertyValidator(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("from",cdk().requiredValidator)(properties.from)),errors.collect(cdk().propertyValidator("from",cdk().validateString)(properties.from)),errors.collect(cdk().propertyValidator("source",cdk().requiredValidator)(properties.source)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.collect(cdk().propertyValidator("to",cdk().requiredValidator)(properties.to)),errors.collect(cdk().propertyValidator("to",cdk().validateString)(properties.to)),errors.wrap('supplied properties not correct for "SubstituteStringEntryProperty"')}function convertCfnTransformerSubstituteStringEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerSubstituteStringEntryPropertyValidator(properties).assertSuccess(),{From:cdk().stringToCloudFormation(properties.from),Source:cdk().stringToCloudFormation(properties.source),To:cdk().stringToCloudFormation(properties.to)}):properties}function CfnTransformerSubstituteStringEntryPropertyFromCloudFormation(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("from","From",properties.From!=null?cfn_parse().FromCloudFormation.getString(properties.From):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addPropertyResult("to","To",properties.To!=null?cfn_parse().FromCloudFormation.getString(properties.To):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerSubstituteStringPropertyValidator(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("entries",cdk().requiredValidator)(properties.entries)),errors.collect(cdk().propertyValidator("entries",cdk().listValidator(CfnTransformerSubstituteStringEntryPropertyValidator))(properties.entries)),errors.wrap('supplied properties not correct for "SubstituteStringProperty"')}function convertCfnTransformerSubstituteStringPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerSubstituteStringPropertyValidator(properties).assertSuccess(),{Entries:cdk().listMapper(convertCfnTransformerSubstituteStringEntryPropertyToCloudFormation)(properties.entries)}):properties}function CfnTransformerSubstituteStringPropertyFromCloudFormation(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("entries","Entries",properties.Entries!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerSubstituteStringEntryPropertyFromCloudFormation)(properties.Entries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerTrimStringPropertyValidator(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("withKeys",cdk().requiredValidator)(properties.withKeys)),errors.collect(cdk().propertyValidator("withKeys",cdk().listValidator(cdk().validateString))(properties.withKeys)),errors.wrap('supplied properties not correct for "TrimStringProperty"')}function convertCfnTransformerTrimStringPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerTrimStringPropertyValidator(properties).assertSuccess(),{WithKeys:cdk().listMapper(cdk().stringToCloudFormation)(properties.withKeys)}):properties}function CfnTransformerTrimStringPropertyFromCloudFormation(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("withKeys","WithKeys",properties.WithKeys!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.WithKeys):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerUpperCaseStringPropertyValidator(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("withKeys",cdk().requiredValidator)(properties.withKeys)),errors.collect(cdk().propertyValidator("withKeys",cdk().listValidator(cdk().validateString))(properties.withKeys)),errors.wrap('supplied properties not correct for "UpperCaseStringProperty"')}function convertCfnTransformerUpperCaseStringPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerUpperCaseStringPropertyValidator(properties).assertSuccess(),{WithKeys:cdk().listMapper(cdk().stringToCloudFormation)(properties.withKeys)}):properties}function CfnTransformerUpperCaseStringPropertyFromCloudFormation(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("withKeys","WithKeys",properties.WithKeys!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.WithKeys):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerTypeConverterEntryPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),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 "TypeConverterEntryProperty"')}function convertCfnTransformerTypeConverterEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerTypeConverterEntryPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnTransformerTypeConverterEntryPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerTypeConverterPropertyValidator(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("entries",cdk().requiredValidator)(properties.entries)),errors.collect(cdk().propertyValidator("entries",cdk().listValidator(CfnTransformerTypeConverterEntryPropertyValidator))(properties.entries)),errors.wrap('supplied properties not correct for "TypeConverterProperty"')}function convertCfnTransformerTypeConverterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerTypeConverterPropertyValidator(properties).assertSuccess(),{Entries:cdk().listMapper(convertCfnTransformerTypeConverterEntryPropertyToCloudFormation)(properties.entries)}):properties}function CfnTransformerTypeConverterPropertyFromCloudFormation(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("entries","Entries",properties.Entries!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerTypeConverterEntryPropertyFromCloudFormation)(properties.Entries):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerProcessorPropertyValidator(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("addKeys",CfnTransformerAddKeysPropertyValidator)(properties.addKeys)),errors.collect(cdk().propertyValidator("copyValue",CfnTransformerCopyValuePropertyValidator)(properties.copyValue)),errors.collect(cdk().propertyValidator("csv",CfnTransformerCsvPropertyValidator)(properties.csv)),errors.collect(cdk().propertyValidator("dateTimeConverter",CfnTransformerDateTimeConverterPropertyValidator)(properties.dateTimeConverter)),errors.collect(cdk().propertyValidator("deleteKeys",CfnTransformerDeleteKeysPropertyValidator)(properties.deleteKeys)),errors.collect(cdk().propertyValidator("grok",CfnTransformerGrokPropertyValidator)(properties.grok)),errors.collect(cdk().propertyValidator("listToMap",CfnTransformerListToMapPropertyValidator)(properties.listToMap)),errors.collect(cdk().propertyValidator("lowerCaseString",CfnTransformerLowerCaseStringPropertyValidator)(properties.lowerCaseString)),errors.collect(cdk().propertyValidator("moveKeys",CfnTransformerMoveKeysPropertyValidator)(properties.moveKeys)),errors.collect(cdk().propertyValidator("parseCloudfront",CfnTransformerParseCloudfrontPropertyValidator)(properties.parseCloudfront)),errors.collect(cdk().propertyValidator("parseJson",CfnTransformerParseJSONPropertyValidator)(properties.parseJson)),errors.collect(cdk().propertyValidator("parseKeyValue",CfnTransformerParseKeyValuePropertyValidator)(properties.parseKeyValue)),errors.collect(cdk().propertyValidator("parsePostgres",CfnTransformerParsePostgresPropertyValidator)(properties.parsePostgres)),errors.collect(cdk().propertyValidator("parseRoute53",CfnTransformerParseRoute53PropertyValidator)(properties.parseRoute53)),errors.collect(cdk().propertyValidator("parseToOcsf",CfnTransformerParseToOCSFPropertyValidator)(properties.parseToOcsf)),errors.collect(cdk().propertyValidator("parseVpc",CfnTransformerParseVPCPropertyValidator)(properties.parseVpc)),errors.collect(cdk().propertyValidator("parseWaf",CfnTransformerParseWAFPropertyValidator)(properties.parseWaf)),errors.collect(cdk().propertyValidator("renameKeys",CfnTransformerRenameKeysPropertyValidator)(properties.renameKeys)),errors.collect(cdk().propertyValidator("splitString",CfnTransformerSplitStringPropertyValidator)(properties.splitString)),errors.collect(cdk().propertyValidator("substituteString",CfnTransformerSubstituteStringPropertyValidator)(properties.substituteString)),errors.collect(cdk().propertyValidator("trimString",CfnTransformerTrimStringPropertyValidator)(properties.trimString)),errors.collect(cdk().propertyValidator("typeConverter",CfnTransformerTypeConverterPropertyValidator)(properties.typeConverter)),errors.collect(cdk().propertyValidator("upperCaseString",CfnTransformerUpperCaseStringPropertyValidator)(properties.upperCaseString)),errors.wrap('supplied properties not correct for "ProcessorProperty"')}function convertCfnTransformerProcessorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerProcessorPropertyValidator(properties).assertSuccess(),{AddKeys:convertCfnTransformerAddKeysPropertyToCloudFormation(properties.addKeys),CopyValue:convertCfnTransformerCopyValuePropertyToCloudFormation(properties.copyValue),Csv:convertCfnTransformerCsvPropertyToCloudFormation(properties.csv),DateTimeConverter:convertCfnTransformerDateTimeConverterPropertyToCloudFormation(properties.dateTimeConverter),DeleteKeys:convertCfnTransformerDeleteKeysPropertyToCloudFormation(properties.deleteKeys),Grok:convertCfnTransformerGrokPropertyToCloudFormation(properties.grok),ListToMap:convertCfnTransformerListToMapPropertyToCloudFormation(properties.listToMap),LowerCaseString:convertCfnTransformerLowerCaseStringPropertyToCloudFormation(properties.lowerCaseString),MoveKeys:convertCfnTransformerMoveKeysPropertyToCloudFormation(properties.moveKeys),ParseCloudfront:convertCfnTransformerParseCloudfrontPropertyToCloudFormation(properties.parseCloudfront),ParseJSON:convertCfnTransformerParseJSONPropertyToCloudFormation(properties.parseJson),ParseKeyValue:convertCfnTransformerParseKeyValuePropertyToCloudFormation(properties.parseKeyValue),ParsePostgres:convertCfnTransformerParsePostgresPropertyToCloudFormation(properties.parsePostgres),ParseRoute53:convertCfnTransformerParseRoute53PropertyToCloudFormation(properties.parseRoute53),ParseToOCSF:convertCfnTransformerParseToOCSFPropertyToCloudFormation(properties.parseToOcsf),ParseVPC:convertCfnTransformerParseVPCPropertyToCloudFormation(properties.parseVpc),ParseWAF:convertCfnTransformerParseWAFPropertyToCloudFormation(properties.parseWaf),RenameKeys:convertCfnTransformerRenameKeysPropertyToCloudFormation(properties.renameKeys),SplitString:convertCfnTransformerSplitStringPropertyToCloudFormation(properties.splitString),SubstituteString:convertCfnTransformerSubstituteStringPropertyToCloudFormation(properties.substituteString),TrimString:convertCfnTransformerTrimStringPropertyToCloudFormation(properties.trimString),TypeConverter:convertCfnTransformerTypeConverterPropertyToCloudFormation(properties.typeConverter),UpperCaseString:convertCfnTransformerUpperCaseStringPropertyToCloudFormation(properties.upperCaseString)}):properties}function CfnTransformerProcessorPropertyFromCloudFormation(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("addKeys","AddKeys",properties.AddKeys!=null?CfnTransformerAddKeysPropertyFromCloudFormation(properties.AddKeys):void 0),ret.addPropertyResult("copyValue","CopyValue",properties.CopyValue!=null?CfnTransformerCopyValuePropertyFromCloudFormation(properties.CopyValue):void 0),ret.addPropertyResult("csv","Csv",properties.Csv!=null?CfnTransformerCsvPropertyFromCloudFormation(properties.Csv):void 0),ret.addPropertyResult("dateTimeConverter","DateTimeConverter",properties.DateTimeConverter!=null?CfnTransformerDateTimeConverterPropertyFromCloudFormation(properties.DateTimeConverter):void 0),ret.addPropertyResult("deleteKeys","DeleteKeys",properties.DeleteKeys!=null?CfnTransformerDeleteKeysPropertyFromCloudFormation(properties.DeleteKeys):void 0),ret.addPropertyResult("grok","Grok",properties.Grok!=null?CfnTransformerGrokPropertyFromCloudFormation(properties.Grok):void 0),ret.addPropertyResult("listToMap","ListToMap",properties.ListToMap!=null?CfnTransformerListToMapPropertyFromCloudFormation(properties.ListToMap):void 0),ret.addPropertyResult("lowerCaseString","LowerCaseString",properties.LowerCaseString!=null?CfnTransformerLowerCaseStringPropertyFromCloudFormation(properties.LowerCaseString):void 0),ret.addPropertyResult("moveKeys","MoveKeys",properties.MoveKeys!=null?CfnTransformerMoveKeysPropertyFromCloudFormation(properties.MoveKeys):void 0),ret.addPropertyResult("parseCloudfront","ParseCloudfront",properties.ParseCloudfront!=null?CfnTransformerParseCloudfrontPropertyFromCloudFormation(properties.ParseCloudfront):void 0),ret.addPropertyResult("parseJson","ParseJSON",properties.ParseJSON!=null?CfnTransformerParseJSONPropertyFromCloudFormation(properties.ParseJSON):void 0),ret.addPropertyResult("parseKeyValue","ParseKeyValue",properties.ParseKeyValue!=null?CfnTransformerParseKeyValuePropertyFromCloudFormation(properties.ParseKeyValue):void 0),ret.addPropertyResult("parsePostgres","ParsePostgres",properties.ParsePostgres!=null?CfnTransformerParsePostgresPropertyFromCloudFormation(properties.ParsePostgres):void 0),ret.addPropertyResult("parseRoute53","ParseRoute53",properties.ParseRoute53!=null?CfnTransformerParseRoute53PropertyFromCloudFormation(properties.ParseRoute53):void 0),ret.addPropertyResult("parseToOcsf","ParseToOCSF",properties.ParseToOCSF!=null?CfnTransformerParseToOCSFPropertyFromCloudFormation(properties.ParseToOCSF):void 0),ret.addPropertyResult("parseVpc","ParseVPC",properties.ParseVPC!=null?CfnTransformerParseVPCPropertyFromCloudFormation(properties.ParseVPC):void 0),ret.addPropertyResult("parseWaf","ParseWAF",properties.ParseWAF!=null?CfnTransformerParseWAFPropertyFromCloudFormation(properties.ParseWAF):void 0),ret.addPropertyResult("renameKeys","RenameKeys",properties.RenameKeys!=null?CfnTransformerRenameKeysPropertyFromCloudFormation(properties.RenameKeys):void 0),ret.addPropertyResult("splitString","SplitString",properties.SplitString!=null?CfnTransformerSplitStringPropertyFromCloudFormation(properties.SplitString):void 0),ret.addPropertyResult("substituteString","SubstituteString",properties.SubstituteString!=null?CfnTransformerSubstituteStringPropertyFromCloudFormation(properties.SubstituteString):void 0),ret.addPropertyResult("trimString","TrimString",properties.TrimString!=null?CfnTransformerTrimStringPropertyFromCloudFormation(properties.TrimString):void 0),ret.addPropertyResult("typeConverter","TypeConverter",properties.TypeConverter!=null?CfnTransformerTypeConverterPropertyFromCloudFormation(properties.TypeConverter):void 0),ret.addPropertyResult("upperCaseString","UpperCaseString",properties.UpperCaseString!=null?CfnTransformerUpperCaseStringPropertyFromCloudFormation(properties.UpperCaseString):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTransformerPropsValidator(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("logGroupIdentifier",cdk().requiredValidator)(properties.logGroupIdentifier)),errors.collect(cdk().propertyValidator("logGroupIdentifier",cdk().validateString)(properties.logGroupIdentifier)),errors.collect(cdk().propertyValidator("transformerConfig",cdk().requiredValidator)(properties.transformerConfig)),errors.collect(cdk().propertyValidator("transformerConfig",cdk().listValidator(CfnTransformerProcessorPropertyValidator))(properties.transformerConfig)),errors.wrap('supplied properties not correct for "CfnTransformerProps"')}function convertCfnTransformerPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTransformerPropsValidator(properties).assertSuccess(),{LogGroupIdentifier:cdk().stringToCloudFormation(properties.logGroupIdentifier),TransformerConfig:cdk().listMapper(convertCfnTransformerProcessorPropertyToCloudFormation)(properties.transformerConfig)}):properties}function CfnTransformerPropsFromCloudFormation(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("logGroupIdentifier","LogGroupIdentifier",properties.LogGroupIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.LogGroupIdentifier):void 0),ret.addPropertyResult("transformerConfig","TransformerConfig",properties.TransformerConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnTransformerProcessorPropertyFromCloudFormation)(properties.TransformerConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}