Files
agent-claw/cdk/node_modules/aws-cdk-lib/aws-iotevents/lib/iotevents.generated.js
2026-05-06 18:55:16 -05:00

2 lines
126 KiB
JavaScript

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnInput=exports.CfnDetectorModel=exports.CfnAlarmModel=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 CfnAlarmModel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotevents.CfnAlarmModel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTEvents::AlarmModel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAlarmModelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAlarmModel(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 isCfnAlarmModel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAlarmModel.CFN_RESOURCE_TYPE_NAME}static fromAlarmModelName(scope,id,alarmModelName){class Import extends cdk().Resource{alarmModelRef;constructor(scope2,id2,alarmModelName2){super(scope2,id2),this.alarmModelRef={alarmModelName:alarmModelName2}}}return new Import(scope,id,alarmModelName)}static arnForAlarmModel(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotevents_IAlarmModelRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAlarmModel),error}return new(cfn_parse()).TemplateString("arn:${Partition}:iotevents:${Region}:${Account}:alarmModel/${AlarmModelName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,AlarmModelName:resource.alarmModelRef.alarmModelName})}_alarmCapabilities;_alarmEventActions;_alarmModelDescription;_alarmModelName;_alarmRule;_key;_roleArn;_severity;tags;_tagsRaw;cfnPropertyNames={alarmCapabilities:"AlarmCapabilities",alarmEventActions:"AlarmEventActions",alarmModelDescription:"AlarmModelDescription",alarmModelName:"AlarmModelName",alarmRule:"AlarmRule",key:"Key",roleArn:"RoleArn",severity:"Severity",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnAlarmModel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotevents_CfnAlarmModelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAlarmModel),error}cdk().requireProperty(props,"alarmRule",this),cdk().requireProperty(props,"roleArn",this),this._alarmCapabilities=props.alarmCapabilities,this._alarmEventActions=props.alarmEventActions,this._alarmModelDescription=props.alarmModelDescription,this._alarmModelName=props.alarmModelName,this._alarmRule=props.alarmRule,this._key=props.key,this._roleArn=props.roleArn,this._severity=props.severity,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTEvents::AlarmModel",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get alarmModelRef(){return{alarmModelName:this.ref}}get alarmCapabilities(){return this._alarmCapabilities}set alarmCapabilities(value){cdk().traceProperty(this.node,"AlarmCapabilities"),this._alarmCapabilities=value}get alarmEventActions(){return this._alarmEventActions}set alarmEventActions(value){cdk().traceProperty(this.node,"AlarmEventActions"),this._alarmEventActions=value}get alarmModelDescription(){return this._alarmModelDescription}set alarmModelDescription(value){cdk().traceProperty(this.node,"AlarmModelDescription"),this._alarmModelDescription=value}get alarmModelName(){return this._alarmModelName}set alarmModelName(value){cdk().traceProperty(this.node,"AlarmModelName"),this._alarmModelName=value}get alarmRule(){return this._alarmRule}set alarmRule(value){cdk().traceProperty(this.node,"AlarmRule"),this._alarmRule=value}get key(){return this._key}set key(value){cdk().traceProperty(this.node,"Key"),this._key=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get severity(){return this._severity}set severity(value){cdk().traceProperty(this.node,"Severity"),this._severity=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get cfnProperties(){return{alarmCapabilities:this._alarmCapabilities,alarmEventActions:this._alarmEventActions,alarmModelDescription:this._alarmModelDescription,alarmModelName:this._alarmModelName,alarmRule:this._alarmRule,key:this._key,roleArn:this._roleArn,severity:this._severity,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",CfnAlarmModel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAlarmModelPropsToCloudFormation(props)}}exports.CfnAlarmModel=CfnAlarmModel;function CfnAlarmModelSimpleRulePropertyValidator(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("comparisonOperator",cdk().requiredValidator)(properties.comparisonOperator)),errors.collect(cdk().propertyValidator("comparisonOperator",cdk().validateString)(properties.comparisonOperator)),errors.collect(cdk().propertyValidator("inputProperty",cdk().requiredValidator)(properties.inputProperty)),errors.collect(cdk().propertyValidator("inputProperty",cdk().validateString)(properties.inputProperty)),errors.collect(cdk().propertyValidator("threshold",cdk().requiredValidator)(properties.threshold)),errors.collect(cdk().propertyValidator("threshold",cdk().validateString)(properties.threshold)),errors.wrap('supplied properties not correct for "SimpleRuleProperty"')}function convertCfnAlarmModelSimpleRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelSimpleRulePropertyValidator(properties).assertSuccess(),{ComparisonOperator:cdk().stringToCloudFormation(properties.comparisonOperator),InputProperty:cdk().stringToCloudFormation(properties.inputProperty),Threshold:cdk().stringToCloudFormation(properties.threshold)}):properties}function CfnAlarmModelSimpleRulePropertyFromCloudFormation(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("comparisonOperator","ComparisonOperator",properties.ComparisonOperator!=null?cfn_parse().FromCloudFormation.getString(properties.ComparisonOperator):void 0),ret.addPropertyResult("inputProperty","InputProperty",properties.InputProperty!=null?cfn_parse().FromCloudFormation.getString(properties.InputProperty):void 0),ret.addPropertyResult("threshold","Threshold",properties.Threshold!=null?cfn_parse().FromCloudFormation.getString(properties.Threshold):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAlarmRulePropertyValidator(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("simpleRule",CfnAlarmModelSimpleRulePropertyValidator)(properties.simpleRule)),errors.wrap('supplied properties not correct for "AlarmRuleProperty"')}function convertCfnAlarmModelAlarmRulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAlarmRulePropertyValidator(properties).assertSuccess(),{SimpleRule:convertCfnAlarmModelSimpleRulePropertyToCloudFormation(properties.simpleRule)}):properties}function CfnAlarmModelAlarmRulePropertyFromCloudFormation(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("simpleRule","SimpleRule",properties.SimpleRule!=null?CfnAlarmModelSimpleRulePropertyFromCloudFormation(properties.SimpleRule):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAcknowledgeFlowPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "AcknowledgeFlowProperty"')}function convertCfnAlarmModelAcknowledgeFlowPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAcknowledgeFlowPropertyValidator(properties).assertSuccess(),{Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnAlarmModelAcknowledgeFlowPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelInitializationConfigurationPropertyValidator(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("disabledOnInitialization",cdk().requiredValidator)(properties.disabledOnInitialization)),errors.collect(cdk().propertyValidator("disabledOnInitialization",cdk().validateBoolean)(properties.disabledOnInitialization)),errors.wrap('supplied properties not correct for "InitializationConfigurationProperty"')}function convertCfnAlarmModelInitializationConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelInitializationConfigurationPropertyValidator(properties).assertSuccess(),{DisabledOnInitialization:cdk().booleanToCloudFormation(properties.disabledOnInitialization)}):properties}function CfnAlarmModelInitializationConfigurationPropertyFromCloudFormation(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("disabledOnInitialization","DisabledOnInitialization",properties.DisabledOnInitialization!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DisabledOnInitialization):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAlarmCapabilitiesPropertyValidator(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("acknowledgeFlow",CfnAlarmModelAcknowledgeFlowPropertyValidator)(properties.acknowledgeFlow)),errors.collect(cdk().propertyValidator("initializationConfiguration",CfnAlarmModelInitializationConfigurationPropertyValidator)(properties.initializationConfiguration)),errors.wrap('supplied properties not correct for "AlarmCapabilitiesProperty"')}function convertCfnAlarmModelAlarmCapabilitiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAlarmCapabilitiesPropertyValidator(properties).assertSuccess(),{AcknowledgeFlow:convertCfnAlarmModelAcknowledgeFlowPropertyToCloudFormation(properties.acknowledgeFlow),InitializationConfiguration:convertCfnAlarmModelInitializationConfigurationPropertyToCloudFormation(properties.initializationConfiguration)}):properties}function CfnAlarmModelAlarmCapabilitiesPropertyFromCloudFormation(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("acknowledgeFlow","AcknowledgeFlow",properties.AcknowledgeFlow!=null?CfnAlarmModelAcknowledgeFlowPropertyFromCloudFormation(properties.AcknowledgeFlow):void 0),ret.addPropertyResult("initializationConfiguration","InitializationConfiguration",properties.InitializationConfiguration!=null?CfnAlarmModelInitializationConfigurationPropertyFromCloudFormation(properties.InitializationConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelPayloadPropertyValidator(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("contentExpression",cdk().requiredValidator)(properties.contentExpression)),errors.collect(cdk().propertyValidator("contentExpression",cdk().validateString)(properties.contentExpression)),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 "PayloadProperty"')}function convertCfnAlarmModelPayloadPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelPayloadPropertyValidator(properties).assertSuccess(),{ContentExpression:cdk().stringToCloudFormation(properties.contentExpression),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAlarmModelPayloadPropertyFromCloudFormation(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("contentExpression","ContentExpression",properties.ContentExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ContentExpression):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelDynamoDBv2PropertyValidator(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("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("tableName",cdk().requiredValidator)(properties.tableName)),errors.collect(cdk().propertyValidator("tableName",cdk().validateString)(properties.tableName)),errors.wrap('supplied properties not correct for "DynamoDBv2Property"')}function convertCfnAlarmModelDynamoDBv2PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelDynamoDBv2PropertyValidator(properties).assertSuccess(),{Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload),TableName:cdk().stringToCloudFormation(properties.tableName)}):properties}function CfnAlarmModelDynamoDBv2PropertyFromCloudFormation(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("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("tableName","TableName",properties.TableName!=null?cfn_parse().FromCloudFormation.getString(properties.TableName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelIotEventsPropertyValidator(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("inputName",cdk().requiredValidator)(properties.inputName)),errors.collect(cdk().propertyValidator("inputName",cdk().validateString)(properties.inputName)),errors.collect(cdk().propertyValidator("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),errors.wrap('supplied properties not correct for "IotEventsProperty"')}function convertCfnAlarmModelIotEventsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelIotEventsPropertyValidator(properties).assertSuccess(),{InputName:cdk().stringToCloudFormation(properties.inputName),Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload)}):properties}function CfnAlarmModelIotEventsPropertyFromCloudFormation(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("inputName","InputName",properties.InputName!=null?cfn_parse().FromCloudFormation.getString(properties.InputName):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAssetPropertyVariantPropertyValidator(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("booleanValue",cdk().validateString)(properties.booleanValue)),errors.collect(cdk().propertyValidator("doubleValue",cdk().validateString)(properties.doubleValue)),errors.collect(cdk().propertyValidator("integerValue",cdk().validateString)(properties.integerValue)),errors.collect(cdk().propertyValidator("stringValue",cdk().validateString)(properties.stringValue)),errors.wrap('supplied properties not correct for "AssetPropertyVariantProperty"')}function convertCfnAlarmModelAssetPropertyVariantPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAssetPropertyVariantPropertyValidator(properties).assertSuccess(),{BooleanValue:cdk().stringToCloudFormation(properties.booleanValue),DoubleValue:cdk().stringToCloudFormation(properties.doubleValue),IntegerValue:cdk().stringToCloudFormation(properties.integerValue),StringValue:cdk().stringToCloudFormation(properties.stringValue)}):properties}function CfnAlarmModelAssetPropertyVariantPropertyFromCloudFormation(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("booleanValue","BooleanValue",properties.BooleanValue!=null?cfn_parse().FromCloudFormation.getString(properties.BooleanValue):void 0),ret.addPropertyResult("doubleValue","DoubleValue",properties.DoubleValue!=null?cfn_parse().FromCloudFormation.getString(properties.DoubleValue):void 0),ret.addPropertyResult("integerValue","IntegerValue",properties.IntegerValue!=null?cfn_parse().FromCloudFormation.getString(properties.IntegerValue):void 0),ret.addPropertyResult("stringValue","StringValue",properties.StringValue!=null?cfn_parse().FromCloudFormation.getString(properties.StringValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAssetPropertyTimestampPropertyValidator(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("offsetInNanos",cdk().validateString)(properties.offsetInNanos)),errors.collect(cdk().propertyValidator("timeInSeconds",cdk().requiredValidator)(properties.timeInSeconds)),errors.collect(cdk().propertyValidator("timeInSeconds",cdk().validateString)(properties.timeInSeconds)),errors.wrap('supplied properties not correct for "AssetPropertyTimestampProperty"')}function convertCfnAlarmModelAssetPropertyTimestampPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAssetPropertyTimestampPropertyValidator(properties).assertSuccess(),{OffsetInNanos:cdk().stringToCloudFormation(properties.offsetInNanos),TimeInSeconds:cdk().stringToCloudFormation(properties.timeInSeconds)}):properties}function CfnAlarmModelAssetPropertyTimestampPropertyFromCloudFormation(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("offsetInNanos","OffsetInNanos",properties.OffsetInNanos!=null?cfn_parse().FromCloudFormation.getString(properties.OffsetInNanos):void 0),ret.addPropertyResult("timeInSeconds","TimeInSeconds",properties.TimeInSeconds!=null?cfn_parse().FromCloudFormation.getString(properties.TimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAssetPropertyValuePropertyValidator(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("quality",cdk().validateString)(properties.quality)),errors.collect(cdk().propertyValidator("timestamp",CfnAlarmModelAssetPropertyTimestampPropertyValidator)(properties.timestamp)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",CfnAlarmModelAssetPropertyVariantPropertyValidator)(properties.value)),errors.wrap('supplied properties not correct for "AssetPropertyValueProperty"')}function convertCfnAlarmModelAssetPropertyValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAssetPropertyValuePropertyValidator(properties).assertSuccess(),{Quality:cdk().stringToCloudFormation(properties.quality),Timestamp:convertCfnAlarmModelAssetPropertyTimestampPropertyToCloudFormation(properties.timestamp),Value:convertCfnAlarmModelAssetPropertyVariantPropertyToCloudFormation(properties.value)}):properties}function CfnAlarmModelAssetPropertyValuePropertyFromCloudFormation(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("quality","Quality",properties.Quality!=null?cfn_parse().FromCloudFormation.getString(properties.Quality):void 0),ret.addPropertyResult("timestamp","Timestamp",properties.Timestamp!=null?CfnAlarmModelAssetPropertyTimestampPropertyFromCloudFormation(properties.Timestamp):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?CfnAlarmModelAssetPropertyVariantPropertyFromCloudFormation(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelIotSiteWisePropertyValidator(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("assetId",cdk().validateString)(properties.assetId)),errors.collect(cdk().propertyValidator("entryId",cdk().validateString)(properties.entryId)),errors.collect(cdk().propertyValidator("propertyAlias",cdk().validateString)(properties.propertyAlias)),errors.collect(cdk().propertyValidator("propertyId",cdk().validateString)(properties.propertyId)),errors.collect(cdk().propertyValidator("propertyValue",CfnAlarmModelAssetPropertyValuePropertyValidator)(properties.propertyValue)),errors.wrap('supplied properties not correct for "IotSiteWiseProperty"')}function convertCfnAlarmModelIotSiteWisePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelIotSiteWisePropertyValidator(properties).assertSuccess(),{AssetId:cdk().stringToCloudFormation(properties.assetId),EntryId:cdk().stringToCloudFormation(properties.entryId),PropertyAlias:cdk().stringToCloudFormation(properties.propertyAlias),PropertyId:cdk().stringToCloudFormation(properties.propertyId),PropertyValue:convertCfnAlarmModelAssetPropertyValuePropertyToCloudFormation(properties.propertyValue)}):properties}function CfnAlarmModelIotSiteWisePropertyFromCloudFormation(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("assetId","AssetId",properties.AssetId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetId):void 0),ret.addPropertyResult("entryId","EntryId",properties.EntryId!=null?cfn_parse().FromCloudFormation.getString(properties.EntryId):void 0),ret.addPropertyResult("propertyAlias","PropertyAlias",properties.PropertyAlias!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyAlias):void 0),ret.addPropertyResult("propertyId","PropertyId",properties.PropertyId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyId):void 0),ret.addPropertyResult("propertyValue","PropertyValue",properties.PropertyValue!=null?CfnAlarmModelAssetPropertyValuePropertyFromCloudFormation(properties.PropertyValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelSqsPropertyValidator(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("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("queueUrl",cdk().requiredValidator)(properties.queueUrl)),errors.collect(cdk().propertyValidator("queueUrl",cdk().validateString)(properties.queueUrl)),errors.collect(cdk().propertyValidator("useBase64",cdk().validateBoolean)(properties.useBase64)),errors.wrap('supplied properties not correct for "SqsProperty"')}function convertCfnAlarmModelSqsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelSqsPropertyValidator(properties).assertSuccess(),{Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload),QueueUrl:cdk().stringToCloudFormation(properties.queueUrl),UseBase64:cdk().booleanToCloudFormation(properties.useBase64)}):properties}function CfnAlarmModelSqsPropertyFromCloudFormation(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("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("queueUrl","QueueUrl",properties.QueueUrl!=null?cfn_parse().FromCloudFormation.getString(properties.QueueUrl):void 0),ret.addPropertyResult("useBase64","UseBase64",properties.UseBase64!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UseBase64):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelFirehosePropertyValidator(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("deliveryStreamName",cdk().requiredValidator)(properties.deliveryStreamName)),errors.collect(cdk().propertyValidator("deliveryStreamName",cdk().validateString)(properties.deliveryStreamName)),errors.collect(cdk().propertyValidator("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("separator",cdk().validateString)(properties.separator)),errors.wrap('supplied properties not correct for "FirehoseProperty"')}function convertCfnAlarmModelFirehosePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelFirehosePropertyValidator(properties).assertSuccess(),{DeliveryStreamName:cdk().stringToCloudFormation(properties.deliveryStreamName),Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload),Separator:cdk().stringToCloudFormation(properties.separator)}):properties}function CfnAlarmModelFirehosePropertyFromCloudFormation(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("deliveryStreamName","DeliveryStreamName",properties.DeliveryStreamName!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryStreamName):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("separator","Separator",properties.Separator!=null?cfn_parse().FromCloudFormation.getString(properties.Separator):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelDynamoDBPropertyValidator(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("hashKeyField",cdk().requiredValidator)(properties.hashKeyField)),errors.collect(cdk().propertyValidator("hashKeyField",cdk().validateString)(properties.hashKeyField)),errors.collect(cdk().propertyValidator("hashKeyType",cdk().validateString)(properties.hashKeyType)),errors.collect(cdk().propertyValidator("hashKeyValue",cdk().requiredValidator)(properties.hashKeyValue)),errors.collect(cdk().propertyValidator("hashKeyValue",cdk().validateString)(properties.hashKeyValue)),errors.collect(cdk().propertyValidator("operation",cdk().validateString)(properties.operation)),errors.collect(cdk().propertyValidator("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("payloadField",cdk().validateString)(properties.payloadField)),errors.collect(cdk().propertyValidator("rangeKeyField",cdk().validateString)(properties.rangeKeyField)),errors.collect(cdk().propertyValidator("rangeKeyType",cdk().validateString)(properties.rangeKeyType)),errors.collect(cdk().propertyValidator("rangeKeyValue",cdk().validateString)(properties.rangeKeyValue)),errors.collect(cdk().propertyValidator("tableName",cdk().requiredValidator)(properties.tableName)),errors.collect(cdk().propertyValidator("tableName",cdk().validateString)(properties.tableName)),errors.wrap('supplied properties not correct for "DynamoDBProperty"')}function convertCfnAlarmModelDynamoDBPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelDynamoDBPropertyValidator(properties).assertSuccess(),{HashKeyField:cdk().stringToCloudFormation(properties.hashKeyField),HashKeyType:cdk().stringToCloudFormation(properties.hashKeyType),HashKeyValue:cdk().stringToCloudFormation(properties.hashKeyValue),Operation:cdk().stringToCloudFormation(properties.operation),Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload),PayloadField:cdk().stringToCloudFormation(properties.payloadField),RangeKeyField:cdk().stringToCloudFormation(properties.rangeKeyField),RangeKeyType:cdk().stringToCloudFormation(properties.rangeKeyType),RangeKeyValue:cdk().stringToCloudFormation(properties.rangeKeyValue),TableName:cdk().stringToCloudFormation(properties.tableName)}):properties}function CfnAlarmModelDynamoDBPropertyFromCloudFormation(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("hashKeyField","HashKeyField",properties.HashKeyField!=null?cfn_parse().FromCloudFormation.getString(properties.HashKeyField):void 0),ret.addPropertyResult("hashKeyType","HashKeyType",properties.HashKeyType!=null?cfn_parse().FromCloudFormation.getString(properties.HashKeyType):void 0),ret.addPropertyResult("hashKeyValue","HashKeyValue",properties.HashKeyValue!=null?cfn_parse().FromCloudFormation.getString(properties.HashKeyValue):void 0),ret.addPropertyResult("operation","Operation",properties.Operation!=null?cfn_parse().FromCloudFormation.getString(properties.Operation):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("payloadField","PayloadField",properties.PayloadField!=null?cfn_parse().FromCloudFormation.getString(properties.PayloadField):void 0),ret.addPropertyResult("rangeKeyField","RangeKeyField",properties.RangeKeyField!=null?cfn_parse().FromCloudFormation.getString(properties.RangeKeyField):void 0),ret.addPropertyResult("rangeKeyType","RangeKeyType",properties.RangeKeyType!=null?cfn_parse().FromCloudFormation.getString(properties.RangeKeyType):void 0),ret.addPropertyResult("rangeKeyValue","RangeKeyValue",properties.RangeKeyValue!=null?cfn_parse().FromCloudFormation.getString(properties.RangeKeyValue):void 0),ret.addPropertyResult("tableName","TableName",properties.TableName!=null?cfn_parse().FromCloudFormation.getString(properties.TableName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelIotTopicPublishPropertyValidator(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("mqttTopic",cdk().requiredValidator)(properties.mqttTopic)),errors.collect(cdk().propertyValidator("mqttTopic",cdk().validateString)(properties.mqttTopic)),errors.collect(cdk().propertyValidator("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),errors.wrap('supplied properties not correct for "IotTopicPublishProperty"')}function convertCfnAlarmModelIotTopicPublishPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelIotTopicPublishPropertyValidator(properties).assertSuccess(),{MqttTopic:cdk().stringToCloudFormation(properties.mqttTopic),Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload)}):properties}function CfnAlarmModelIotTopicPublishPropertyFromCloudFormation(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("mqttTopic","MqttTopic",properties.MqttTopic!=null?cfn_parse().FromCloudFormation.getString(properties.MqttTopic):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelSnsPropertyValidator(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("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),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 "SnsProperty"')}function convertCfnAlarmModelSnsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelSnsPropertyValidator(properties).assertSuccess(),{Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload),TargetArn:cdk().stringToCloudFormation(properties.targetArn)}):properties}function CfnAlarmModelSnsPropertyFromCloudFormation(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("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("targetArn","TargetArn",properties.TargetArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelLambdaPropertyValidator(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("functionArn",cdk().requiredValidator)(properties.functionArn)),errors.collect(cdk().propertyValidator("functionArn",cdk().validateString)(properties.functionArn)),errors.collect(cdk().propertyValidator("payload",CfnAlarmModelPayloadPropertyValidator)(properties.payload)),errors.wrap('supplied properties not correct for "LambdaProperty"')}function convertCfnAlarmModelLambdaPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelLambdaPropertyValidator(properties).assertSuccess(),{FunctionArn:cdk().stringToCloudFormation(properties.functionArn),Payload:convertCfnAlarmModelPayloadPropertyToCloudFormation(properties.payload)}):properties}function CfnAlarmModelLambdaPropertyFromCloudFormation(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("functionArn","FunctionArn",properties.FunctionArn!=null?cfn_parse().FromCloudFormation.getString(properties.FunctionArn):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnAlarmModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAlarmActionPropertyValidator(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("dynamoDb",CfnAlarmModelDynamoDBPropertyValidator)(properties.dynamoDb)),errors.collect(cdk().propertyValidator("dynamoDBv2",CfnAlarmModelDynamoDBv2PropertyValidator)(properties.dynamoDBv2)),errors.collect(cdk().propertyValidator("firehose",CfnAlarmModelFirehosePropertyValidator)(properties.firehose)),errors.collect(cdk().propertyValidator("iotEvents",CfnAlarmModelIotEventsPropertyValidator)(properties.iotEvents)),errors.collect(cdk().propertyValidator("iotSiteWise",CfnAlarmModelIotSiteWisePropertyValidator)(properties.iotSiteWise)),errors.collect(cdk().propertyValidator("iotTopicPublish",CfnAlarmModelIotTopicPublishPropertyValidator)(properties.iotTopicPublish)),errors.collect(cdk().propertyValidator("lambda",CfnAlarmModelLambdaPropertyValidator)(properties.lambda)),errors.collect(cdk().propertyValidator("sns",CfnAlarmModelSnsPropertyValidator)(properties.sns)),errors.collect(cdk().propertyValidator("sqs",CfnAlarmModelSqsPropertyValidator)(properties.sqs)),errors.wrap('supplied properties not correct for "AlarmActionProperty"')}function convertCfnAlarmModelAlarmActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAlarmActionPropertyValidator(properties).assertSuccess(),{DynamoDB:convertCfnAlarmModelDynamoDBPropertyToCloudFormation(properties.dynamoDb),DynamoDBv2:convertCfnAlarmModelDynamoDBv2PropertyToCloudFormation(properties.dynamoDBv2),Firehose:convertCfnAlarmModelFirehosePropertyToCloudFormation(properties.firehose),IotEvents:convertCfnAlarmModelIotEventsPropertyToCloudFormation(properties.iotEvents),IotSiteWise:convertCfnAlarmModelIotSiteWisePropertyToCloudFormation(properties.iotSiteWise),IotTopicPublish:convertCfnAlarmModelIotTopicPublishPropertyToCloudFormation(properties.iotTopicPublish),Lambda:convertCfnAlarmModelLambdaPropertyToCloudFormation(properties.lambda),Sns:convertCfnAlarmModelSnsPropertyToCloudFormation(properties.sns),Sqs:convertCfnAlarmModelSqsPropertyToCloudFormation(properties.sqs)}):properties}function CfnAlarmModelAlarmActionPropertyFromCloudFormation(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("dynamoDb","DynamoDB",properties.DynamoDB!=null?CfnAlarmModelDynamoDBPropertyFromCloudFormation(properties.DynamoDB):void 0),ret.addPropertyResult("dynamoDBv2","DynamoDBv2",properties.DynamoDBv2!=null?CfnAlarmModelDynamoDBv2PropertyFromCloudFormation(properties.DynamoDBv2):void 0),ret.addPropertyResult("firehose","Firehose",properties.Firehose!=null?CfnAlarmModelFirehosePropertyFromCloudFormation(properties.Firehose):void 0),ret.addPropertyResult("iotEvents","IotEvents",properties.IotEvents!=null?CfnAlarmModelIotEventsPropertyFromCloudFormation(properties.IotEvents):void 0),ret.addPropertyResult("iotSiteWise","IotSiteWise",properties.IotSiteWise!=null?CfnAlarmModelIotSiteWisePropertyFromCloudFormation(properties.IotSiteWise):void 0),ret.addPropertyResult("iotTopicPublish","IotTopicPublish",properties.IotTopicPublish!=null?CfnAlarmModelIotTopicPublishPropertyFromCloudFormation(properties.IotTopicPublish):void 0),ret.addPropertyResult("lambda","Lambda",properties.Lambda!=null?CfnAlarmModelLambdaPropertyFromCloudFormation(properties.Lambda):void 0),ret.addPropertyResult("sns","Sns",properties.Sns!=null?CfnAlarmModelSnsPropertyFromCloudFormation(properties.Sns):void 0),ret.addPropertyResult("sqs","Sqs",properties.Sqs!=null?CfnAlarmModelSqsPropertyFromCloudFormation(properties.Sqs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelAlarmEventActionsPropertyValidator(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("alarmActions",cdk().listValidator(CfnAlarmModelAlarmActionPropertyValidator))(properties.alarmActions)),errors.wrap('supplied properties not correct for "AlarmEventActionsProperty"')}function convertCfnAlarmModelAlarmEventActionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelAlarmEventActionsPropertyValidator(properties).assertSuccess(),{AlarmActions:cdk().listMapper(convertCfnAlarmModelAlarmActionPropertyToCloudFormation)(properties.alarmActions)}):properties}function CfnAlarmModelAlarmEventActionsPropertyFromCloudFormation(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("alarmActions","AlarmActions",properties.AlarmActions!=null?cfn_parse().FromCloudFormation.getArray(CfnAlarmModelAlarmActionPropertyFromCloudFormation)(properties.AlarmActions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAlarmModelPropsValidator(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("alarmCapabilities",CfnAlarmModelAlarmCapabilitiesPropertyValidator)(properties.alarmCapabilities)),errors.collect(cdk().propertyValidator("alarmEventActions",CfnAlarmModelAlarmEventActionsPropertyValidator)(properties.alarmEventActions)),errors.collect(cdk().propertyValidator("alarmModelDescription",cdk().validateString)(properties.alarmModelDescription)),errors.collect(cdk().propertyValidator("alarmModelName",cdk().validateString)(properties.alarmModelName)),errors.collect(cdk().propertyValidator("alarmRule",cdk().requiredValidator)(properties.alarmRule)),errors.collect(cdk().propertyValidator("alarmRule",CfnAlarmModelAlarmRulePropertyValidator)(properties.alarmRule)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("severity",cdk().validateNumber)(properties.severity)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnAlarmModelProps"')}function convertCfnAlarmModelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAlarmModelPropsValidator(properties).assertSuccess(),{AlarmCapabilities:convertCfnAlarmModelAlarmCapabilitiesPropertyToCloudFormation(properties.alarmCapabilities),AlarmEventActions:convertCfnAlarmModelAlarmEventActionsPropertyToCloudFormation(properties.alarmEventActions),AlarmModelDescription:cdk().stringToCloudFormation(properties.alarmModelDescription),AlarmModelName:cdk().stringToCloudFormation(properties.alarmModelName),AlarmRule:convertCfnAlarmModelAlarmRulePropertyToCloudFormation(properties.alarmRule),Key:cdk().stringToCloudFormation(properties.key),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Severity:cdk().numberToCloudFormation(properties.severity),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnAlarmModelPropsFromCloudFormation(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("alarmCapabilities","AlarmCapabilities",properties.AlarmCapabilities!=null?CfnAlarmModelAlarmCapabilitiesPropertyFromCloudFormation(properties.AlarmCapabilities):void 0),ret.addPropertyResult("alarmEventActions","AlarmEventActions",properties.AlarmEventActions!=null?CfnAlarmModelAlarmEventActionsPropertyFromCloudFormation(properties.AlarmEventActions):void 0),ret.addPropertyResult("alarmModelDescription","AlarmModelDescription",properties.AlarmModelDescription!=null?cfn_parse().FromCloudFormation.getString(properties.AlarmModelDescription):void 0),ret.addPropertyResult("alarmModelName","AlarmModelName",properties.AlarmModelName!=null?cfn_parse().FromCloudFormation.getString(properties.AlarmModelName):void 0),ret.addPropertyResult("alarmRule","AlarmRule",properties.AlarmRule!=null?CfnAlarmModelAlarmRulePropertyFromCloudFormation(properties.AlarmRule):void 0),ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("severity","Severity",properties.Severity!=null?cfn_parse().FromCloudFormation.getNumber(properties.Severity):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 CfnDetectorModel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotevents.CfnDetectorModel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTEvents::DetectorModel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDetectorModelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDetectorModel(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 isCfnDetectorModel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDetectorModel.CFN_RESOURCE_TYPE_NAME}static fromDetectorModelName(scope,id,detectorModelName){class Import extends cdk().Resource{detectorModelRef;constructor(scope2,id2,detectorModelName2){super(scope2,id2),this.detectorModelRef={detectorModelName:detectorModelName2}}}return new Import(scope,id,detectorModelName)}static arnForDetectorModel(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotevents_IDetectorModelRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDetectorModel),error}return new(cfn_parse()).TemplateString("arn:${Partition}:iotevents:${Region}:${Account}:detectorModel/${DetectorModelName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,DetectorModelName:resource.detectorModelRef.detectorModelName})}_detectorModelDefinition;_detectorModelDescription;_detectorModelName;_evaluationMethod;_key;_roleArn;tags;_tagsRaw;cfnPropertyNames={detectorModelDefinition:"DetectorModelDefinition",detectorModelDescription:"DetectorModelDescription",detectorModelName:"DetectorModelName",evaluationMethod:"EvaluationMethod",key:"Key",roleArn:"RoleArn",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnDetectorModel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotevents_CfnDetectorModelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDetectorModel),error}cdk().requireProperty(props,"detectorModelDefinition",this),cdk().requireProperty(props,"roleArn",this),this._detectorModelDefinition=props.detectorModelDefinition,this._detectorModelDescription=props.detectorModelDescription,this._detectorModelName=props.detectorModelName,this._evaluationMethod=props.evaluationMethod,this._key=props.key,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTEvents::DetectorModel",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get detectorModelRef(){return{detectorModelName:this.ref}}get detectorModelDefinition(){return this._detectorModelDefinition}set detectorModelDefinition(value){cdk().traceProperty(this.node,"DetectorModelDefinition"),this._detectorModelDefinition=value}get detectorModelDescription(){return this._detectorModelDescription}set detectorModelDescription(value){cdk().traceProperty(this.node,"DetectorModelDescription"),this._detectorModelDescription=value}get detectorModelName(){return this._detectorModelName}set detectorModelName(value){cdk().traceProperty(this.node,"DetectorModelName"),this._detectorModelName=value}get evaluationMethod(){return this._evaluationMethod}set evaluationMethod(value){cdk().traceProperty(this.node,"EvaluationMethod"),this._evaluationMethod=value}get key(){return this._key}set key(value){cdk().traceProperty(this.node,"Key"),this._key=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get cfnProperties(){return{detectorModelDefinition:this._detectorModelDefinition,detectorModelDescription:this._detectorModelDescription,detectorModelName:this._detectorModelName,evaluationMethod:this._evaluationMethod,key:this._key,roleArn:this._roleArn,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",CfnDetectorModel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDetectorModelPropsToCloudFormation(props)}}exports.CfnDetectorModel=CfnDetectorModel;function CfnDetectorModelPayloadPropertyValidator(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("contentExpression",cdk().requiredValidator)(properties.contentExpression)),errors.collect(cdk().propertyValidator("contentExpression",cdk().validateString)(properties.contentExpression)),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 "PayloadProperty"')}function convertCfnDetectorModelPayloadPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelPayloadPropertyValidator(properties).assertSuccess(),{ContentExpression:cdk().stringToCloudFormation(properties.contentExpression),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnDetectorModelPayloadPropertyFromCloudFormation(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("contentExpression","ContentExpression",properties.ContentExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ContentExpression):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelIotEventsPropertyValidator(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("inputName",cdk().requiredValidator)(properties.inputName)),errors.collect(cdk().propertyValidator("inputName",cdk().validateString)(properties.inputName)),errors.collect(cdk().propertyValidator("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),errors.wrap('supplied properties not correct for "IotEventsProperty"')}function convertCfnDetectorModelIotEventsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelIotEventsPropertyValidator(properties).assertSuccess(),{InputName:cdk().stringToCloudFormation(properties.inputName),Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload)}):properties}function CfnDetectorModelIotEventsPropertyFromCloudFormation(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("inputName","InputName",properties.InputName!=null?cfn_parse().FromCloudFormation.getString(properties.InputName):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelFirehosePropertyValidator(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("deliveryStreamName",cdk().requiredValidator)(properties.deliveryStreamName)),errors.collect(cdk().propertyValidator("deliveryStreamName",cdk().validateString)(properties.deliveryStreamName)),errors.collect(cdk().propertyValidator("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("separator",cdk().validateString)(properties.separator)),errors.wrap('supplied properties not correct for "FirehoseProperty"')}function convertCfnDetectorModelFirehosePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelFirehosePropertyValidator(properties).assertSuccess(),{DeliveryStreamName:cdk().stringToCloudFormation(properties.deliveryStreamName),Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload),Separator:cdk().stringToCloudFormation(properties.separator)}):properties}function CfnDetectorModelFirehosePropertyFromCloudFormation(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("deliveryStreamName","DeliveryStreamName",properties.DeliveryStreamName!=null?cfn_parse().FromCloudFormation.getString(properties.DeliveryStreamName):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("separator","Separator",properties.Separator!=null?cfn_parse().FromCloudFormation.getString(properties.Separator):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelDynamoDBPropertyValidator(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("hashKeyField",cdk().requiredValidator)(properties.hashKeyField)),errors.collect(cdk().propertyValidator("hashKeyField",cdk().validateString)(properties.hashKeyField)),errors.collect(cdk().propertyValidator("hashKeyType",cdk().validateString)(properties.hashKeyType)),errors.collect(cdk().propertyValidator("hashKeyValue",cdk().requiredValidator)(properties.hashKeyValue)),errors.collect(cdk().propertyValidator("hashKeyValue",cdk().validateString)(properties.hashKeyValue)),errors.collect(cdk().propertyValidator("operation",cdk().validateString)(properties.operation)),errors.collect(cdk().propertyValidator("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("payloadField",cdk().validateString)(properties.payloadField)),errors.collect(cdk().propertyValidator("rangeKeyField",cdk().validateString)(properties.rangeKeyField)),errors.collect(cdk().propertyValidator("rangeKeyType",cdk().validateString)(properties.rangeKeyType)),errors.collect(cdk().propertyValidator("rangeKeyValue",cdk().validateString)(properties.rangeKeyValue)),errors.collect(cdk().propertyValidator("tableName",cdk().requiredValidator)(properties.tableName)),errors.collect(cdk().propertyValidator("tableName",cdk().validateString)(properties.tableName)),errors.wrap('supplied properties not correct for "DynamoDBProperty"')}function convertCfnDetectorModelDynamoDBPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelDynamoDBPropertyValidator(properties).assertSuccess(),{HashKeyField:cdk().stringToCloudFormation(properties.hashKeyField),HashKeyType:cdk().stringToCloudFormation(properties.hashKeyType),HashKeyValue:cdk().stringToCloudFormation(properties.hashKeyValue),Operation:cdk().stringToCloudFormation(properties.operation),Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload),PayloadField:cdk().stringToCloudFormation(properties.payloadField),RangeKeyField:cdk().stringToCloudFormation(properties.rangeKeyField),RangeKeyType:cdk().stringToCloudFormation(properties.rangeKeyType),RangeKeyValue:cdk().stringToCloudFormation(properties.rangeKeyValue),TableName:cdk().stringToCloudFormation(properties.tableName)}):properties}function CfnDetectorModelDynamoDBPropertyFromCloudFormation(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("hashKeyField","HashKeyField",properties.HashKeyField!=null?cfn_parse().FromCloudFormation.getString(properties.HashKeyField):void 0),ret.addPropertyResult("hashKeyType","HashKeyType",properties.HashKeyType!=null?cfn_parse().FromCloudFormation.getString(properties.HashKeyType):void 0),ret.addPropertyResult("hashKeyValue","HashKeyValue",properties.HashKeyValue!=null?cfn_parse().FromCloudFormation.getString(properties.HashKeyValue):void 0),ret.addPropertyResult("operation","Operation",properties.Operation!=null?cfn_parse().FromCloudFormation.getString(properties.Operation):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("payloadField","PayloadField",properties.PayloadField!=null?cfn_parse().FromCloudFormation.getString(properties.PayloadField):void 0),ret.addPropertyResult("rangeKeyField","RangeKeyField",properties.RangeKeyField!=null?cfn_parse().FromCloudFormation.getString(properties.RangeKeyField):void 0),ret.addPropertyResult("rangeKeyType","RangeKeyType",properties.RangeKeyType!=null?cfn_parse().FromCloudFormation.getString(properties.RangeKeyType):void 0),ret.addPropertyResult("rangeKeyValue","RangeKeyValue",properties.RangeKeyValue!=null?cfn_parse().FromCloudFormation.getString(properties.RangeKeyValue):void 0),ret.addPropertyResult("tableName","TableName",properties.TableName!=null?cfn_parse().FromCloudFormation.getString(properties.TableName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelIotTopicPublishPropertyValidator(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("mqttTopic",cdk().requiredValidator)(properties.mqttTopic)),errors.collect(cdk().propertyValidator("mqttTopic",cdk().validateString)(properties.mqttTopic)),errors.collect(cdk().propertyValidator("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),errors.wrap('supplied properties not correct for "IotTopicPublishProperty"')}function convertCfnDetectorModelIotTopicPublishPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelIotTopicPublishPropertyValidator(properties).assertSuccess(),{MqttTopic:cdk().stringToCloudFormation(properties.mqttTopic),Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload)}):properties}function CfnDetectorModelIotTopicPublishPropertyFromCloudFormation(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("mqttTopic","MqttTopic",properties.MqttTopic!=null?cfn_parse().FromCloudFormation.getString(properties.MqttTopic):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelDynamoDBv2PropertyValidator(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("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("tableName",cdk().requiredValidator)(properties.tableName)),errors.collect(cdk().propertyValidator("tableName",cdk().validateString)(properties.tableName)),errors.wrap('supplied properties not correct for "DynamoDBv2Property"')}function convertCfnDetectorModelDynamoDBv2PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelDynamoDBv2PropertyValidator(properties).assertSuccess(),{Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload),TableName:cdk().stringToCloudFormation(properties.tableName)}):properties}function CfnDetectorModelDynamoDBv2PropertyFromCloudFormation(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("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("tableName","TableName",properties.TableName!=null?cfn_parse().FromCloudFormation.getString(properties.TableName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelAssetPropertyVariantPropertyValidator(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("booleanValue",cdk().validateString)(properties.booleanValue)),errors.collect(cdk().propertyValidator("doubleValue",cdk().validateString)(properties.doubleValue)),errors.collect(cdk().propertyValidator("integerValue",cdk().validateString)(properties.integerValue)),errors.collect(cdk().propertyValidator("stringValue",cdk().validateString)(properties.stringValue)),errors.wrap('supplied properties not correct for "AssetPropertyVariantProperty"')}function convertCfnDetectorModelAssetPropertyVariantPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelAssetPropertyVariantPropertyValidator(properties).assertSuccess(),{BooleanValue:cdk().stringToCloudFormation(properties.booleanValue),DoubleValue:cdk().stringToCloudFormation(properties.doubleValue),IntegerValue:cdk().stringToCloudFormation(properties.integerValue),StringValue:cdk().stringToCloudFormation(properties.stringValue)}):properties}function CfnDetectorModelAssetPropertyVariantPropertyFromCloudFormation(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("booleanValue","BooleanValue",properties.BooleanValue!=null?cfn_parse().FromCloudFormation.getString(properties.BooleanValue):void 0),ret.addPropertyResult("doubleValue","DoubleValue",properties.DoubleValue!=null?cfn_parse().FromCloudFormation.getString(properties.DoubleValue):void 0),ret.addPropertyResult("integerValue","IntegerValue",properties.IntegerValue!=null?cfn_parse().FromCloudFormation.getString(properties.IntegerValue):void 0),ret.addPropertyResult("stringValue","StringValue",properties.StringValue!=null?cfn_parse().FromCloudFormation.getString(properties.StringValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelAssetPropertyTimestampPropertyValidator(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("offsetInNanos",cdk().validateString)(properties.offsetInNanos)),errors.collect(cdk().propertyValidator("timeInSeconds",cdk().requiredValidator)(properties.timeInSeconds)),errors.collect(cdk().propertyValidator("timeInSeconds",cdk().validateString)(properties.timeInSeconds)),errors.wrap('supplied properties not correct for "AssetPropertyTimestampProperty"')}function convertCfnDetectorModelAssetPropertyTimestampPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelAssetPropertyTimestampPropertyValidator(properties).assertSuccess(),{OffsetInNanos:cdk().stringToCloudFormation(properties.offsetInNanos),TimeInSeconds:cdk().stringToCloudFormation(properties.timeInSeconds)}):properties}function CfnDetectorModelAssetPropertyTimestampPropertyFromCloudFormation(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("offsetInNanos","OffsetInNanos",properties.OffsetInNanos!=null?cfn_parse().FromCloudFormation.getString(properties.OffsetInNanos):void 0),ret.addPropertyResult("timeInSeconds","TimeInSeconds",properties.TimeInSeconds!=null?cfn_parse().FromCloudFormation.getString(properties.TimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelAssetPropertyValuePropertyValidator(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("quality",cdk().validateString)(properties.quality)),errors.collect(cdk().propertyValidator("timestamp",CfnDetectorModelAssetPropertyTimestampPropertyValidator)(properties.timestamp)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",CfnDetectorModelAssetPropertyVariantPropertyValidator)(properties.value)),errors.wrap('supplied properties not correct for "AssetPropertyValueProperty"')}function convertCfnDetectorModelAssetPropertyValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelAssetPropertyValuePropertyValidator(properties).assertSuccess(),{Quality:cdk().stringToCloudFormation(properties.quality),Timestamp:convertCfnDetectorModelAssetPropertyTimestampPropertyToCloudFormation(properties.timestamp),Value:convertCfnDetectorModelAssetPropertyVariantPropertyToCloudFormation(properties.value)}):properties}function CfnDetectorModelAssetPropertyValuePropertyFromCloudFormation(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("quality","Quality",properties.Quality!=null?cfn_parse().FromCloudFormation.getString(properties.Quality):void 0),ret.addPropertyResult("timestamp","Timestamp",properties.Timestamp!=null?CfnDetectorModelAssetPropertyTimestampPropertyFromCloudFormation(properties.Timestamp):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?CfnDetectorModelAssetPropertyVariantPropertyFromCloudFormation(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelIotSiteWisePropertyValidator(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("assetId",cdk().validateString)(properties.assetId)),errors.collect(cdk().propertyValidator("entryId",cdk().validateString)(properties.entryId)),errors.collect(cdk().propertyValidator("propertyAlias",cdk().validateString)(properties.propertyAlias)),errors.collect(cdk().propertyValidator("propertyId",cdk().validateString)(properties.propertyId)),errors.collect(cdk().propertyValidator("propertyValue",cdk().requiredValidator)(properties.propertyValue)),errors.collect(cdk().propertyValidator("propertyValue",CfnDetectorModelAssetPropertyValuePropertyValidator)(properties.propertyValue)),errors.wrap('supplied properties not correct for "IotSiteWiseProperty"')}function convertCfnDetectorModelIotSiteWisePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelIotSiteWisePropertyValidator(properties).assertSuccess(),{AssetId:cdk().stringToCloudFormation(properties.assetId),EntryId:cdk().stringToCloudFormation(properties.entryId),PropertyAlias:cdk().stringToCloudFormation(properties.propertyAlias),PropertyId:cdk().stringToCloudFormation(properties.propertyId),PropertyValue:convertCfnDetectorModelAssetPropertyValuePropertyToCloudFormation(properties.propertyValue)}):properties}function CfnDetectorModelIotSiteWisePropertyFromCloudFormation(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("assetId","AssetId",properties.AssetId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetId):void 0),ret.addPropertyResult("entryId","EntryId",properties.EntryId!=null?cfn_parse().FromCloudFormation.getString(properties.EntryId):void 0),ret.addPropertyResult("propertyAlias","PropertyAlias",properties.PropertyAlias!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyAlias):void 0),ret.addPropertyResult("propertyId","PropertyId",properties.PropertyId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyId):void 0),ret.addPropertyResult("propertyValue","PropertyValue",properties.PropertyValue!=null?CfnDetectorModelAssetPropertyValuePropertyFromCloudFormation(properties.PropertyValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelResetTimerPropertyValidator(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("timerName",cdk().requiredValidator)(properties.timerName)),errors.collect(cdk().propertyValidator("timerName",cdk().validateString)(properties.timerName)),errors.wrap('supplied properties not correct for "ResetTimerProperty"')}function convertCfnDetectorModelResetTimerPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelResetTimerPropertyValidator(properties).assertSuccess(),{TimerName:cdk().stringToCloudFormation(properties.timerName)}):properties}function CfnDetectorModelResetTimerPropertyFromCloudFormation(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("timerName","TimerName",properties.TimerName!=null?cfn_parse().FromCloudFormation.getString(properties.TimerName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelSqsPropertyValidator(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("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),errors.collect(cdk().propertyValidator("queueUrl",cdk().requiredValidator)(properties.queueUrl)),errors.collect(cdk().propertyValidator("queueUrl",cdk().validateString)(properties.queueUrl)),errors.collect(cdk().propertyValidator("useBase64",cdk().validateBoolean)(properties.useBase64)),errors.wrap('supplied properties not correct for "SqsProperty"')}function convertCfnDetectorModelSqsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelSqsPropertyValidator(properties).assertSuccess(),{Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload),QueueUrl:cdk().stringToCloudFormation(properties.queueUrl),UseBase64:cdk().booleanToCloudFormation(properties.useBase64)}):properties}function CfnDetectorModelSqsPropertyFromCloudFormation(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("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("queueUrl","QueueUrl",properties.QueueUrl!=null?cfn_parse().FromCloudFormation.getString(properties.QueueUrl):void 0),ret.addPropertyResult("useBase64","UseBase64",properties.UseBase64!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UseBase64):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelSetTimerPropertyValidator(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("durationExpression",cdk().validateString)(properties.durationExpression)),errors.collect(cdk().propertyValidator("seconds",cdk().validateNumber)(properties.seconds)),errors.collect(cdk().propertyValidator("timerName",cdk().requiredValidator)(properties.timerName)),errors.collect(cdk().propertyValidator("timerName",cdk().validateString)(properties.timerName)),errors.wrap('supplied properties not correct for "SetTimerProperty"')}function convertCfnDetectorModelSetTimerPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelSetTimerPropertyValidator(properties).assertSuccess(),{DurationExpression:cdk().stringToCloudFormation(properties.durationExpression),Seconds:cdk().numberToCloudFormation(properties.seconds),TimerName:cdk().stringToCloudFormation(properties.timerName)}):properties}function CfnDetectorModelSetTimerPropertyFromCloudFormation(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("durationExpression","DurationExpression",properties.DurationExpression!=null?cfn_parse().FromCloudFormation.getString(properties.DurationExpression):void 0),ret.addPropertyResult("seconds","Seconds",properties.Seconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.Seconds):void 0),ret.addPropertyResult("timerName","TimerName",properties.TimerName!=null?cfn_parse().FromCloudFormation.getString(properties.TimerName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelSnsPropertyValidator(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("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),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 "SnsProperty"')}function convertCfnDetectorModelSnsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelSnsPropertyValidator(properties).assertSuccess(),{Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload),TargetArn:cdk().stringToCloudFormation(properties.targetArn)}):properties}function CfnDetectorModelSnsPropertyFromCloudFormation(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("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addPropertyResult("targetArn","TargetArn",properties.TargetArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelClearTimerPropertyValidator(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("timerName",cdk().requiredValidator)(properties.timerName)),errors.collect(cdk().propertyValidator("timerName",cdk().validateString)(properties.timerName)),errors.wrap('supplied properties not correct for "ClearTimerProperty"')}function convertCfnDetectorModelClearTimerPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelClearTimerPropertyValidator(properties).assertSuccess(),{TimerName:cdk().stringToCloudFormation(properties.timerName)}):properties}function CfnDetectorModelClearTimerPropertyFromCloudFormation(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("timerName","TimerName",properties.TimerName!=null?cfn_parse().FromCloudFormation.getString(properties.TimerName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelLambdaPropertyValidator(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("functionArn",cdk().requiredValidator)(properties.functionArn)),errors.collect(cdk().propertyValidator("functionArn",cdk().validateString)(properties.functionArn)),errors.collect(cdk().propertyValidator("payload",CfnDetectorModelPayloadPropertyValidator)(properties.payload)),errors.wrap('supplied properties not correct for "LambdaProperty"')}function convertCfnDetectorModelLambdaPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelLambdaPropertyValidator(properties).assertSuccess(),{FunctionArn:cdk().stringToCloudFormation(properties.functionArn),Payload:convertCfnDetectorModelPayloadPropertyToCloudFormation(properties.payload)}):properties}function CfnDetectorModelLambdaPropertyFromCloudFormation(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("functionArn","FunctionArn",properties.FunctionArn!=null?cfn_parse().FromCloudFormation.getString(properties.FunctionArn):void 0),ret.addPropertyResult("payload","Payload",properties.Payload!=null?CfnDetectorModelPayloadPropertyFromCloudFormation(properties.Payload):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelSetVariablePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.collect(cdk().propertyValidator("variableName",cdk().requiredValidator)(properties.variableName)),errors.collect(cdk().propertyValidator("variableName",cdk().validateString)(properties.variableName)),errors.wrap('supplied properties not correct for "SetVariableProperty"')}function convertCfnDetectorModelSetVariablePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelSetVariablePropertyValidator(properties).assertSuccess(),{Value:cdk().stringToCloudFormation(properties.value),VariableName:cdk().stringToCloudFormation(properties.variableName)}):properties}function CfnDetectorModelSetVariablePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addPropertyResult("variableName","VariableName",properties.VariableName!=null?cfn_parse().FromCloudFormation.getString(properties.VariableName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelActionPropertyValidator(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("clearTimer",CfnDetectorModelClearTimerPropertyValidator)(properties.clearTimer)),errors.collect(cdk().propertyValidator("dynamoDb",CfnDetectorModelDynamoDBPropertyValidator)(properties.dynamoDb)),errors.collect(cdk().propertyValidator("dynamoDBv2",CfnDetectorModelDynamoDBv2PropertyValidator)(properties.dynamoDBv2)),errors.collect(cdk().propertyValidator("firehose",CfnDetectorModelFirehosePropertyValidator)(properties.firehose)),errors.collect(cdk().propertyValidator("iotEvents",CfnDetectorModelIotEventsPropertyValidator)(properties.iotEvents)),errors.collect(cdk().propertyValidator("iotSiteWise",CfnDetectorModelIotSiteWisePropertyValidator)(properties.iotSiteWise)),errors.collect(cdk().propertyValidator("iotTopicPublish",CfnDetectorModelIotTopicPublishPropertyValidator)(properties.iotTopicPublish)),errors.collect(cdk().propertyValidator("lambda",CfnDetectorModelLambdaPropertyValidator)(properties.lambda)),errors.collect(cdk().propertyValidator("resetTimer",CfnDetectorModelResetTimerPropertyValidator)(properties.resetTimer)),errors.collect(cdk().propertyValidator("setTimer",CfnDetectorModelSetTimerPropertyValidator)(properties.setTimer)),errors.collect(cdk().propertyValidator("setVariable",CfnDetectorModelSetVariablePropertyValidator)(properties.setVariable)),errors.collect(cdk().propertyValidator("sns",CfnDetectorModelSnsPropertyValidator)(properties.sns)),errors.collect(cdk().propertyValidator("sqs",CfnDetectorModelSqsPropertyValidator)(properties.sqs)),errors.wrap('supplied properties not correct for "ActionProperty"')}function convertCfnDetectorModelActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelActionPropertyValidator(properties).assertSuccess(),{ClearTimer:convertCfnDetectorModelClearTimerPropertyToCloudFormation(properties.clearTimer),DynamoDB:convertCfnDetectorModelDynamoDBPropertyToCloudFormation(properties.dynamoDb),DynamoDBv2:convertCfnDetectorModelDynamoDBv2PropertyToCloudFormation(properties.dynamoDBv2),Firehose:convertCfnDetectorModelFirehosePropertyToCloudFormation(properties.firehose),IotEvents:convertCfnDetectorModelIotEventsPropertyToCloudFormation(properties.iotEvents),IotSiteWise:convertCfnDetectorModelIotSiteWisePropertyToCloudFormation(properties.iotSiteWise),IotTopicPublish:convertCfnDetectorModelIotTopicPublishPropertyToCloudFormation(properties.iotTopicPublish),Lambda:convertCfnDetectorModelLambdaPropertyToCloudFormation(properties.lambda),ResetTimer:convertCfnDetectorModelResetTimerPropertyToCloudFormation(properties.resetTimer),SetTimer:convertCfnDetectorModelSetTimerPropertyToCloudFormation(properties.setTimer),SetVariable:convertCfnDetectorModelSetVariablePropertyToCloudFormation(properties.setVariable),Sns:convertCfnDetectorModelSnsPropertyToCloudFormation(properties.sns),Sqs:convertCfnDetectorModelSqsPropertyToCloudFormation(properties.sqs)}):properties}function CfnDetectorModelActionPropertyFromCloudFormation(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("clearTimer","ClearTimer",properties.ClearTimer!=null?CfnDetectorModelClearTimerPropertyFromCloudFormation(properties.ClearTimer):void 0),ret.addPropertyResult("dynamoDb","DynamoDB",properties.DynamoDB!=null?CfnDetectorModelDynamoDBPropertyFromCloudFormation(properties.DynamoDB):void 0),ret.addPropertyResult("dynamoDBv2","DynamoDBv2",properties.DynamoDBv2!=null?CfnDetectorModelDynamoDBv2PropertyFromCloudFormation(properties.DynamoDBv2):void 0),ret.addPropertyResult("firehose","Firehose",properties.Firehose!=null?CfnDetectorModelFirehosePropertyFromCloudFormation(properties.Firehose):void 0),ret.addPropertyResult("iotEvents","IotEvents",properties.IotEvents!=null?CfnDetectorModelIotEventsPropertyFromCloudFormation(properties.IotEvents):void 0),ret.addPropertyResult("iotSiteWise","IotSiteWise",properties.IotSiteWise!=null?CfnDetectorModelIotSiteWisePropertyFromCloudFormation(properties.IotSiteWise):void 0),ret.addPropertyResult("iotTopicPublish","IotTopicPublish",properties.IotTopicPublish!=null?CfnDetectorModelIotTopicPublishPropertyFromCloudFormation(properties.IotTopicPublish):void 0),ret.addPropertyResult("lambda","Lambda",properties.Lambda!=null?CfnDetectorModelLambdaPropertyFromCloudFormation(properties.Lambda):void 0),ret.addPropertyResult("resetTimer","ResetTimer",properties.ResetTimer!=null?CfnDetectorModelResetTimerPropertyFromCloudFormation(properties.ResetTimer):void 0),ret.addPropertyResult("setTimer","SetTimer",properties.SetTimer!=null?CfnDetectorModelSetTimerPropertyFromCloudFormation(properties.SetTimer):void 0),ret.addPropertyResult("setVariable","SetVariable",properties.SetVariable!=null?CfnDetectorModelSetVariablePropertyFromCloudFormation(properties.SetVariable):void 0),ret.addPropertyResult("sns","Sns",properties.Sns!=null?CfnDetectorModelSnsPropertyFromCloudFormation(properties.Sns):void 0),ret.addPropertyResult("sqs","Sqs",properties.Sqs!=null?CfnDetectorModelSqsPropertyFromCloudFormation(properties.Sqs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelEventPropertyValidator(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("actions",cdk().listValidator(CfnDetectorModelActionPropertyValidator))(properties.actions)),errors.collect(cdk().propertyValidator("condition",cdk().validateString)(properties.condition)),errors.collect(cdk().propertyValidator("eventName",cdk().requiredValidator)(properties.eventName)),errors.collect(cdk().propertyValidator("eventName",cdk().validateString)(properties.eventName)),errors.wrap('supplied properties not correct for "EventProperty"')}function convertCfnDetectorModelEventPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelEventPropertyValidator(properties).assertSuccess(),{Actions:cdk().listMapper(convertCfnDetectorModelActionPropertyToCloudFormation)(properties.actions),Condition:cdk().stringToCloudFormation(properties.condition),EventName:cdk().stringToCloudFormation(properties.eventName)}):properties}function CfnDetectorModelEventPropertyFromCloudFormation(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("actions","Actions",properties.Actions!=null?cfn_parse().FromCloudFormation.getArray(CfnDetectorModelActionPropertyFromCloudFormation)(properties.Actions):void 0),ret.addPropertyResult("condition","Condition",properties.Condition!=null?cfn_parse().FromCloudFormation.getString(properties.Condition):void 0),ret.addPropertyResult("eventName","EventName",properties.EventName!=null?cfn_parse().FromCloudFormation.getString(properties.EventName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelTransitionEventPropertyValidator(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("actions",cdk().listValidator(CfnDetectorModelActionPropertyValidator))(properties.actions)),errors.collect(cdk().propertyValidator("condition",cdk().requiredValidator)(properties.condition)),errors.collect(cdk().propertyValidator("condition",cdk().validateString)(properties.condition)),errors.collect(cdk().propertyValidator("eventName",cdk().requiredValidator)(properties.eventName)),errors.collect(cdk().propertyValidator("eventName",cdk().validateString)(properties.eventName)),errors.collect(cdk().propertyValidator("nextState",cdk().requiredValidator)(properties.nextState)),errors.collect(cdk().propertyValidator("nextState",cdk().validateString)(properties.nextState)),errors.wrap('supplied properties not correct for "TransitionEventProperty"')}function convertCfnDetectorModelTransitionEventPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelTransitionEventPropertyValidator(properties).assertSuccess(),{Actions:cdk().listMapper(convertCfnDetectorModelActionPropertyToCloudFormation)(properties.actions),Condition:cdk().stringToCloudFormation(properties.condition),EventName:cdk().stringToCloudFormation(properties.eventName),NextState:cdk().stringToCloudFormation(properties.nextState)}):properties}function CfnDetectorModelTransitionEventPropertyFromCloudFormation(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("actions","Actions",properties.Actions!=null?cfn_parse().FromCloudFormation.getArray(CfnDetectorModelActionPropertyFromCloudFormation)(properties.Actions):void 0),ret.addPropertyResult("condition","Condition",properties.Condition!=null?cfn_parse().FromCloudFormation.getString(properties.Condition):void 0),ret.addPropertyResult("eventName","EventName",properties.EventName!=null?cfn_parse().FromCloudFormation.getString(properties.EventName):void 0),ret.addPropertyResult("nextState","NextState",properties.NextState!=null?cfn_parse().FromCloudFormation.getString(properties.NextState):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelOnInputPropertyValidator(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("events",cdk().listValidator(CfnDetectorModelEventPropertyValidator))(properties.events)),errors.collect(cdk().propertyValidator("transitionEvents",cdk().listValidator(CfnDetectorModelTransitionEventPropertyValidator))(properties.transitionEvents)),errors.wrap('supplied properties not correct for "OnInputProperty"')}function convertCfnDetectorModelOnInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelOnInputPropertyValidator(properties).assertSuccess(),{Events:cdk().listMapper(convertCfnDetectorModelEventPropertyToCloudFormation)(properties.events),TransitionEvents:cdk().listMapper(convertCfnDetectorModelTransitionEventPropertyToCloudFormation)(properties.transitionEvents)}):properties}function CfnDetectorModelOnInputPropertyFromCloudFormation(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("events","Events",properties.Events!=null?cfn_parse().FromCloudFormation.getArray(CfnDetectorModelEventPropertyFromCloudFormation)(properties.Events):void 0),ret.addPropertyResult("transitionEvents","TransitionEvents",properties.TransitionEvents!=null?cfn_parse().FromCloudFormation.getArray(CfnDetectorModelTransitionEventPropertyFromCloudFormation)(properties.TransitionEvents):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelOnExitPropertyValidator(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("events",cdk().listValidator(CfnDetectorModelEventPropertyValidator))(properties.events)),errors.wrap('supplied properties not correct for "OnExitProperty"')}function convertCfnDetectorModelOnExitPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelOnExitPropertyValidator(properties).assertSuccess(),{Events:cdk().listMapper(convertCfnDetectorModelEventPropertyToCloudFormation)(properties.events)}):properties}function CfnDetectorModelOnExitPropertyFromCloudFormation(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("events","Events",properties.Events!=null?cfn_parse().FromCloudFormation.getArray(CfnDetectorModelEventPropertyFromCloudFormation)(properties.Events):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelOnEnterPropertyValidator(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("events",cdk().listValidator(CfnDetectorModelEventPropertyValidator))(properties.events)),errors.wrap('supplied properties not correct for "OnEnterProperty"')}function convertCfnDetectorModelOnEnterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelOnEnterPropertyValidator(properties).assertSuccess(),{Events:cdk().listMapper(convertCfnDetectorModelEventPropertyToCloudFormation)(properties.events)}):properties}function CfnDetectorModelOnEnterPropertyFromCloudFormation(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("events","Events",properties.Events!=null?cfn_parse().FromCloudFormation.getArray(CfnDetectorModelEventPropertyFromCloudFormation)(properties.Events):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelStatePropertyValidator(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("onEnter",CfnDetectorModelOnEnterPropertyValidator)(properties.onEnter)),errors.collect(cdk().propertyValidator("onExit",CfnDetectorModelOnExitPropertyValidator)(properties.onExit)),errors.collect(cdk().propertyValidator("onInput",CfnDetectorModelOnInputPropertyValidator)(properties.onInput)),errors.collect(cdk().propertyValidator("stateName",cdk().requiredValidator)(properties.stateName)),errors.collect(cdk().propertyValidator("stateName",cdk().validateString)(properties.stateName)),errors.wrap('supplied properties not correct for "StateProperty"')}function convertCfnDetectorModelStatePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelStatePropertyValidator(properties).assertSuccess(),{OnEnter:convertCfnDetectorModelOnEnterPropertyToCloudFormation(properties.onEnter),OnExit:convertCfnDetectorModelOnExitPropertyToCloudFormation(properties.onExit),OnInput:convertCfnDetectorModelOnInputPropertyToCloudFormation(properties.onInput),StateName:cdk().stringToCloudFormation(properties.stateName)}):properties}function CfnDetectorModelStatePropertyFromCloudFormation(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("onEnter","OnEnter",properties.OnEnter!=null?CfnDetectorModelOnEnterPropertyFromCloudFormation(properties.OnEnter):void 0),ret.addPropertyResult("onExit","OnExit",properties.OnExit!=null?CfnDetectorModelOnExitPropertyFromCloudFormation(properties.OnExit):void 0),ret.addPropertyResult("onInput","OnInput",properties.OnInput!=null?CfnDetectorModelOnInputPropertyFromCloudFormation(properties.OnInput):void 0),ret.addPropertyResult("stateName","StateName",properties.StateName!=null?cfn_parse().FromCloudFormation.getString(properties.StateName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelDetectorModelDefinitionPropertyValidator(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("initialStateName",cdk().requiredValidator)(properties.initialStateName)),errors.collect(cdk().propertyValidator("initialStateName",cdk().validateString)(properties.initialStateName)),errors.collect(cdk().propertyValidator("states",cdk().requiredValidator)(properties.states)),errors.collect(cdk().propertyValidator("states",cdk().listValidator(CfnDetectorModelStatePropertyValidator))(properties.states)),errors.wrap('supplied properties not correct for "DetectorModelDefinitionProperty"')}function convertCfnDetectorModelDetectorModelDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelDetectorModelDefinitionPropertyValidator(properties).assertSuccess(),{InitialStateName:cdk().stringToCloudFormation(properties.initialStateName),States:cdk().listMapper(convertCfnDetectorModelStatePropertyToCloudFormation)(properties.states)}):properties}function CfnDetectorModelDetectorModelDefinitionPropertyFromCloudFormation(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("initialStateName","InitialStateName",properties.InitialStateName!=null?cfn_parse().FromCloudFormation.getString(properties.InitialStateName):void 0),ret.addPropertyResult("states","States",properties.States!=null?cfn_parse().FromCloudFormation.getArray(CfnDetectorModelStatePropertyFromCloudFormation)(properties.States):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDetectorModelPropsValidator(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("detectorModelDefinition",cdk().requiredValidator)(properties.detectorModelDefinition)),errors.collect(cdk().propertyValidator("detectorModelDefinition",CfnDetectorModelDetectorModelDefinitionPropertyValidator)(properties.detectorModelDefinition)),errors.collect(cdk().propertyValidator("detectorModelDescription",cdk().validateString)(properties.detectorModelDescription)),errors.collect(cdk().propertyValidator("detectorModelName",cdk().validateString)(properties.detectorModelName)),errors.collect(cdk().propertyValidator("evaluationMethod",cdk().validateString)(properties.evaluationMethod)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDetectorModelProps"')}function convertCfnDetectorModelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDetectorModelPropsValidator(properties).assertSuccess(),{DetectorModelDefinition:convertCfnDetectorModelDetectorModelDefinitionPropertyToCloudFormation(properties.detectorModelDefinition),DetectorModelDescription:cdk().stringToCloudFormation(properties.detectorModelDescription),DetectorModelName:cdk().stringToCloudFormation(properties.detectorModelName),EvaluationMethod:cdk().stringToCloudFormation(properties.evaluationMethod),Key:cdk().stringToCloudFormation(properties.key),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDetectorModelPropsFromCloudFormation(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("detectorModelDefinition","DetectorModelDefinition",properties.DetectorModelDefinition!=null?CfnDetectorModelDetectorModelDefinitionPropertyFromCloudFormation(properties.DetectorModelDefinition):void 0),ret.addPropertyResult("detectorModelDescription","DetectorModelDescription",properties.DetectorModelDescription!=null?cfn_parse().FromCloudFormation.getString(properties.DetectorModelDescription):void 0),ret.addPropertyResult("detectorModelName","DetectorModelName",properties.DetectorModelName!=null?cfn_parse().FromCloudFormation.getString(properties.DetectorModelName):void 0),ret.addPropertyResult("evaluationMethod","EvaluationMethod",properties.EvaluationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.EvaluationMethod):void 0),ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnInput extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotevents.CfnInput",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTEvents::Input";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnInputPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnInput(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 isCfnInput(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnInput.CFN_RESOURCE_TYPE_NAME}static fromInputName(scope,id,inputName){class Import extends cdk().Resource{inputRef;constructor(scope2,id2,inputName2){super(scope2,id2),this.inputRef={inputName:inputName2}}}return new Import(scope,id,inputName)}static arnForInput(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotevents_IInputRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForInput),error}return new(cfn_parse()).TemplateString("arn:${Partition}:iotevents:${Region}:${Account}:input/${InputName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,InputName:resource.inputRef.inputName})}_inputDefinition;_inputDescription;_inputName;tags;_tagsRaw;cfnPropertyNames={inputDefinition:"InputDefinition",inputDescription:"InputDescription",inputName:"InputName",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnInput.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotevents_CfnInputProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnInput),error}cdk().requireProperty(props,"inputDefinition",this),this._inputDefinition=props.inputDefinition,this._inputDescription=props.inputDescription,this._inputName=props.inputName,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTEvents::Input",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get inputRef(){return{inputName:this.ref}}get inputDefinition(){return this._inputDefinition}set inputDefinition(value){cdk().traceProperty(this.node,"InputDefinition"),this._inputDefinition=value}get inputDescription(){return this._inputDescription}set inputDescription(value){cdk().traceProperty(this.node,"InputDescription"),this._inputDescription=value}get inputName(){return this._inputName}set inputName(value){cdk().traceProperty(this.node,"InputName"),this._inputName=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get cfnProperties(){return{inputDefinition:this._inputDefinition,inputDescription:this._inputDescription,inputName:this._inputName,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",CfnInput.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnInputPropsToCloudFormation(props)}}exports.CfnInput=CfnInput;function CfnInputAttributePropertyValidator(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("jsonPath",cdk().requiredValidator)(properties.jsonPath)),errors.collect(cdk().propertyValidator("jsonPath",cdk().validateString)(properties.jsonPath)),errors.wrap('supplied properties not correct for "AttributeProperty"')}function convertCfnInputAttributePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInputAttributePropertyValidator(properties).assertSuccess(),{JsonPath:cdk().stringToCloudFormation(properties.jsonPath)}):properties}function CfnInputAttributePropertyFromCloudFormation(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("jsonPath","JsonPath",properties.JsonPath!=null?cfn_parse().FromCloudFormation.getString(properties.JsonPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInputInputDefinitionPropertyValidator(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("attributes",cdk().requiredValidator)(properties.attributes)),errors.collect(cdk().propertyValidator("attributes",cdk().listValidator(CfnInputAttributePropertyValidator))(properties.attributes)),errors.wrap('supplied properties not correct for "InputDefinitionProperty"')}function convertCfnInputInputDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInputInputDefinitionPropertyValidator(properties).assertSuccess(),{Attributes:cdk().listMapper(convertCfnInputAttributePropertyToCloudFormation)(properties.attributes)}):properties}function CfnInputInputDefinitionPropertyFromCloudFormation(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("attributes","Attributes",properties.Attributes!=null?cfn_parse().FromCloudFormation.getArray(CfnInputAttributePropertyFromCloudFormation)(properties.Attributes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInputPropsValidator(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("inputDefinition",cdk().requiredValidator)(properties.inputDefinition)),errors.collect(cdk().propertyValidator("inputDefinition",CfnInputInputDefinitionPropertyValidator)(properties.inputDefinition)),errors.collect(cdk().propertyValidator("inputDescription",cdk().validateString)(properties.inputDescription)),errors.collect(cdk().propertyValidator("inputName",cdk().validateString)(properties.inputName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnInputProps"')}function convertCfnInputPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInputPropsValidator(properties).assertSuccess(),{InputDefinition:convertCfnInputInputDefinitionPropertyToCloudFormation(properties.inputDefinition),InputDescription:cdk().stringToCloudFormation(properties.inputDescription),InputName:cdk().stringToCloudFormation(properties.inputName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnInputPropsFromCloudFormation(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("inputDefinition","InputDefinition",properties.InputDefinition!=null?CfnInputInputDefinitionPropertyFromCloudFormation(properties.InputDefinition):void 0),ret.addPropertyResult("inputDescription","InputDescription",properties.InputDescription!=null?cfn_parse().FromCloudFormation.getString(properties.InputDescription):void 0),ret.addPropertyResult("inputName","InputName",properties.InputName!=null?cfn_parse().FromCloudFormation.getString(properties.InputName):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}