2 lines
159 KiB
JavaScript
2 lines
159 KiB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnStateTemplate=exports.CfnVehicle=exports.CfnSignalCatalog=exports.CfnModelManifest=exports.CfnFleet=exports.CfnDecoderManifest=exports.CfnCampaign=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 CfnCampaign extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotfleetwise.CfnCampaign",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTFleetWise::Campaign";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCampaignPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnCampaign(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 isCfnCampaign(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnCampaign.CFN_RESOURCE_TYPE_NAME}static fromCampaignArn(scope,id,arn){class Import extends cdk().Resource{campaignRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotfleetwise:${Region}:${Account}:campaign/${CampaignName}").parse(arn2);this.campaignRef={campaignName:variables.CampaignName,campaignArn:arn2}}}return new Import(scope,id,arn)}static fromCampaignName(scope,id,campaignName){class Import extends cdk().Resource{campaignRef;constructor(scope2,id2,campaignName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotfleetwise:${Region}:${Account}:campaign/${CampaignName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,CampaignName:campaignName2});super(scope2,id2,{environmentFromArn:arn}),this.campaignRef={campaignName:campaignName2,campaignArn:arn}}}return new Import(scope,id,campaignName)}static arnForCampaign(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotfleetwise_ICampaignRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForCampaign),error}return resource.campaignRef.campaignArn}_action;_collectionScheme;_compression;_dataDestinationConfigs;_dataExtraDimensions;_dataPartitions;_description;_diagnosticsMode;_expiryTime;_name;_postTriggerCollectionDuration;_priority;_signalCatalogArn;_signalsToCollect;_signalsToFetch;_spoolingMode;_startTime;tags;_tagsRaw;_targetArn;cfnPropertyNames={action:"Action",collectionScheme:"CollectionScheme",compression:"Compression",dataDestinationConfigs:"DataDestinationConfigs",dataExtraDimensions:"DataExtraDimensions",dataPartitions:"DataPartitions",description:"Description",diagnosticsMode:"DiagnosticsMode",expiryTime:"ExpiryTime",name:"Name",postTriggerCollectionDuration:"PostTriggerCollectionDuration",priority:"Priority",signalCatalogArn:"SignalCatalogArn",signalsToCollect:"SignalsToCollect",signalsToFetch:"SignalsToFetch",spoolingMode:"SpoolingMode",startTime:"StartTime",tags:"Tags",targetArn:"TargetArn"};constructor(scope,id,props){super(scope,id,{type:CfnCampaign.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotfleetwise_CfnCampaignProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCampaign),error}cdk().requireProperty(props,"collectionScheme",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"signalCatalogArn",this),cdk().requireProperty(props,"targetArn",this),this._action=props.action,this._collectionScheme=props.collectionScheme,this._compression=props.compression,this._dataDestinationConfigs=props.dataDestinationConfigs,this._dataExtraDimensions=props.dataExtraDimensions,this._dataPartitions=props.dataPartitions,this._description=props.description,this._diagnosticsMode=props.diagnosticsMode,this._expiryTime=props.expiryTime,this._name=props.name,this._postTriggerCollectionDuration=props.postTriggerCollectionDuration,this._priority=props.priority,this._signalCatalogArn=props.signalCatalogArn,this._signalsToCollect=props.signalsToCollect,this._signalsToFetch=props.signalsToFetch,this._spoolingMode=props.spoolingMode,this._startTime=props.startTime,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTFleetWise::Campaign",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._targetArn=props.targetArn}get campaignRef(){return{campaignName:this.ref,campaignArn:this.attrArn}}get action(){return this._action}set action(value){cdk().traceProperty(this.node,"Action"),this._action=value}get collectionScheme(){return this._collectionScheme}set collectionScheme(value){cdk().traceProperty(this.node,"CollectionScheme"),this._collectionScheme=value}get compression(){return this._compression}set compression(value){cdk().traceProperty(this.node,"Compression"),this._compression=value}get dataDestinationConfigs(){return this._dataDestinationConfigs}set dataDestinationConfigs(value){cdk().traceProperty(this.node,"DataDestinationConfigs"),this._dataDestinationConfigs=value}get dataExtraDimensions(){return this._dataExtraDimensions}set dataExtraDimensions(value){cdk().traceProperty(this.node,"DataExtraDimensions"),this._dataExtraDimensions=value}get dataPartitions(){return this._dataPartitions}set dataPartitions(value){cdk().traceProperty(this.node,"DataPartitions"),this._dataPartitions=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get diagnosticsMode(){return this._diagnosticsMode}set diagnosticsMode(value){cdk().traceProperty(this.node,"DiagnosticsMode"),this._diagnosticsMode=value}get expiryTime(){return this._expiryTime}set expiryTime(value){cdk().traceProperty(this.node,"ExpiryTime"),this._expiryTime=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get postTriggerCollectionDuration(){return this._postTriggerCollectionDuration}set postTriggerCollectionDuration(value){cdk().traceProperty(this.node,"PostTriggerCollectionDuration"),this._postTriggerCollectionDuration=value}get priority(){return this._priority}set priority(value){cdk().traceProperty(this.node,"Priority"),this._priority=value}get signalCatalogArn(){return this._signalCatalogArn}set signalCatalogArn(value){cdk().traceProperty(this.node,"SignalCatalogArn"),this._signalCatalogArn=value}get signalsToCollect(){return this._signalsToCollect}set signalsToCollect(value){cdk().traceProperty(this.node,"SignalsToCollect"),this._signalsToCollect=value}get signalsToFetch(){return this._signalsToFetch}set signalsToFetch(value){cdk().traceProperty(this.node,"SignalsToFetch"),this._signalsToFetch=value}get spoolingMode(){return this._spoolingMode}set spoolingMode(value){cdk().traceProperty(this.node,"SpoolingMode"),this._spoolingMode=value}get startTime(){return this._startTime}set startTime(value){cdk().traceProperty(this.node,"StartTime"),this._startTime=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get targetArn(){return this._targetArn}set targetArn(value){cdk().traceProperty(this.node,"TargetArn"),this._targetArn=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModificationTime(){return cdk().Token.asString(this.getAtt("LastModificationTime",cdk().ResolutionTypeHint.STRING))}get attrStatus(){return cdk().Token.asString(this.getAtt("Status",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{action:this._action,collectionScheme:this._collectionScheme,compression:this._compression,dataDestinationConfigs:this._dataDestinationConfigs,dataExtraDimensions:this._dataExtraDimensions,dataPartitions:this._dataPartitions,description:this._description,diagnosticsMode:this._diagnosticsMode,expiryTime:this._expiryTime,name:this._name,postTriggerCollectionDuration:this._postTriggerCollectionDuration,priority:this._priority,signalCatalogArn:this._signalCatalogArn,signalsToCollect:this._signalsToCollect,signalsToFetch:this._signalsToFetch,spoolingMode:this._spoolingMode,startTime:this._startTime,tags:this.tags.renderTags(),targetArn:this._targetArn}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnCampaign.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnCampaignPropsToCloudFormation(props)}}exports.CfnCampaign=CfnCampaign;function CfnCampaignSignalInformationPropertyValidator(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("dataPartitionId",cdk().validateString)(properties.dataPartitionId)),errors.collect(cdk().propertyValidator("maxSampleCount",cdk().validateNumber)(properties.maxSampleCount)),errors.collect(cdk().propertyValidator("minimumSamplingIntervalMs",cdk().validateNumber)(properties.minimumSamplingIntervalMs)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "SignalInformationProperty"')}function convertCfnCampaignSignalInformationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignSignalInformationPropertyValidator(properties).assertSuccess(),{DataPartitionId:cdk().stringToCloudFormation(properties.dataPartitionId),MaxSampleCount:cdk().numberToCloudFormation(properties.maxSampleCount),MinimumSamplingIntervalMs:cdk().numberToCloudFormation(properties.minimumSamplingIntervalMs),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnCampaignSignalInformationPropertyFromCloudFormation(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("dataPartitionId","DataPartitionId",properties.DataPartitionId!=null?cfn_parse().FromCloudFormation.getString(properties.DataPartitionId):void 0),ret.addPropertyResult("maxSampleCount","MaxSampleCount",properties.MaxSampleCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxSampleCount):void 0),ret.addPropertyResult("minimumSamplingIntervalMs","MinimumSamplingIntervalMs",properties.MinimumSamplingIntervalMs!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinimumSamplingIntervalMs):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignS3ConfigPropertyValidator(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("bucketArn",cdk().requiredValidator)(properties.bucketArn)),errors.collect(cdk().propertyValidator("bucketArn",cdk().validateString)(properties.bucketArn)),errors.collect(cdk().propertyValidator("dataFormat",cdk().validateString)(properties.dataFormat)),errors.collect(cdk().propertyValidator("prefix",cdk().validateString)(properties.prefix)),errors.collect(cdk().propertyValidator("storageCompressionFormat",cdk().validateString)(properties.storageCompressionFormat)),errors.wrap('supplied properties not correct for "S3ConfigProperty"')}function convertCfnCampaignS3ConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignS3ConfigPropertyValidator(properties).assertSuccess(),{BucketArn:cdk().stringToCloudFormation(properties.bucketArn),DataFormat:cdk().stringToCloudFormation(properties.dataFormat),Prefix:cdk().stringToCloudFormation(properties.prefix),StorageCompressionFormat:cdk().stringToCloudFormation(properties.storageCompressionFormat)}):properties}function CfnCampaignS3ConfigPropertyFromCloudFormation(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("bucketArn","BucketArn",properties.BucketArn!=null?cfn_parse().FromCloudFormation.getString(properties.BucketArn):void 0),ret.addPropertyResult("dataFormat","DataFormat",properties.DataFormat!=null?cfn_parse().FromCloudFormation.getString(properties.DataFormat):void 0),ret.addPropertyResult("prefix","Prefix",properties.Prefix!=null?cfn_parse().FromCloudFormation.getString(properties.Prefix):void 0),ret.addPropertyResult("storageCompressionFormat","StorageCompressionFormat",properties.StorageCompressionFormat!=null?cfn_parse().FromCloudFormation.getString(properties.StorageCompressionFormat):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignTimestreamConfigPropertyValidator(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("executionRoleArn",cdk().requiredValidator)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().validateString)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("timestreamTableArn",cdk().requiredValidator)(properties.timestreamTableArn)),errors.collect(cdk().propertyValidator("timestreamTableArn",cdk().validateString)(properties.timestreamTableArn)),errors.wrap('supplied properties not correct for "TimestreamConfigProperty"')}function convertCfnCampaignTimestreamConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignTimestreamConfigPropertyValidator(properties).assertSuccess(),{ExecutionRoleArn:cdk().stringToCloudFormation(properties.executionRoleArn),TimestreamTableArn:cdk().stringToCloudFormation(properties.timestreamTableArn)}):properties}function CfnCampaignTimestreamConfigPropertyFromCloudFormation(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("executionRoleArn","ExecutionRoleArn",properties.ExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleArn):void 0),ret.addPropertyResult("timestreamTableArn","TimestreamTableArn",properties.TimestreamTableArn!=null?cfn_parse().FromCloudFormation.getString(properties.TimestreamTableArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignMqttTopicConfigPropertyValidator(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("executionRoleArn",cdk().requiredValidator)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().validateString)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("mqttTopicArn",cdk().requiredValidator)(properties.mqttTopicArn)),errors.collect(cdk().propertyValidator("mqttTopicArn",cdk().validateString)(properties.mqttTopicArn)),errors.wrap('supplied properties not correct for "MqttTopicConfigProperty"')}function convertCfnCampaignMqttTopicConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignMqttTopicConfigPropertyValidator(properties).assertSuccess(),{ExecutionRoleArn:cdk().stringToCloudFormation(properties.executionRoleArn),MqttTopicArn:cdk().stringToCloudFormation(properties.mqttTopicArn)}):properties}function CfnCampaignMqttTopicConfigPropertyFromCloudFormation(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("executionRoleArn","ExecutionRoleArn",properties.ExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleArn):void 0),ret.addPropertyResult("mqttTopicArn","MqttTopicArn",properties.MqttTopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.MqttTopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignDataDestinationConfigPropertyValidator(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("mqttTopicConfig",CfnCampaignMqttTopicConfigPropertyValidator)(properties.mqttTopicConfig)),errors.collect(cdk().propertyValidator("s3Config",CfnCampaignS3ConfigPropertyValidator)(properties.s3Config)),errors.collect(cdk().propertyValidator("timestreamConfig",CfnCampaignTimestreamConfigPropertyValidator)(properties.timestreamConfig)),errors.wrap('supplied properties not correct for "DataDestinationConfigProperty"')}function convertCfnCampaignDataDestinationConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignDataDestinationConfigPropertyValidator(properties).assertSuccess(),{MqttTopicConfig:convertCfnCampaignMqttTopicConfigPropertyToCloudFormation(properties.mqttTopicConfig),S3Config:convertCfnCampaignS3ConfigPropertyToCloudFormation(properties.s3Config),TimestreamConfig:convertCfnCampaignTimestreamConfigPropertyToCloudFormation(properties.timestreamConfig)}):properties}function CfnCampaignDataDestinationConfigPropertyFromCloudFormation(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("mqttTopicConfig","MqttTopicConfig",properties.MqttTopicConfig!=null?CfnCampaignMqttTopicConfigPropertyFromCloudFormation(properties.MqttTopicConfig):void 0),ret.addPropertyResult("s3Config","S3Config",properties.S3Config!=null?CfnCampaignS3ConfigPropertyFromCloudFormation(properties.S3Config):void 0),ret.addPropertyResult("timestreamConfig","TimestreamConfig",properties.TimestreamConfig!=null?CfnCampaignTimestreamConfigPropertyFromCloudFormation(properties.TimestreamConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignTimeBasedCollectionSchemePropertyValidator(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("periodMs",cdk().requiredValidator)(properties.periodMs)),errors.collect(cdk().propertyValidator("periodMs",cdk().validateNumber)(properties.periodMs)),errors.wrap('supplied properties not correct for "TimeBasedCollectionSchemeProperty"')}function convertCfnCampaignTimeBasedCollectionSchemePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignTimeBasedCollectionSchemePropertyValidator(properties).assertSuccess(),{PeriodMs:cdk().numberToCloudFormation(properties.periodMs)}):properties}function CfnCampaignTimeBasedCollectionSchemePropertyFromCloudFormation(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("periodMs","PeriodMs",properties.PeriodMs!=null?cfn_parse().FromCloudFormation.getNumber(properties.PeriodMs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignConditionBasedCollectionSchemePropertyValidator(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("conditionLanguageVersion",cdk().validateNumber)(properties.conditionLanguageVersion)),errors.collect(cdk().propertyValidator("expression",cdk().requiredValidator)(properties.expression)),errors.collect(cdk().propertyValidator("expression",cdk().validateString)(properties.expression)),errors.collect(cdk().propertyValidator("minimumTriggerIntervalMs",cdk().validateNumber)(properties.minimumTriggerIntervalMs)),errors.collect(cdk().propertyValidator("triggerMode",cdk().validateString)(properties.triggerMode)),errors.wrap('supplied properties not correct for "ConditionBasedCollectionSchemeProperty"')}function convertCfnCampaignConditionBasedCollectionSchemePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignConditionBasedCollectionSchemePropertyValidator(properties).assertSuccess(),{ConditionLanguageVersion:cdk().numberToCloudFormation(properties.conditionLanguageVersion),Expression:cdk().stringToCloudFormation(properties.expression),MinimumTriggerIntervalMs:cdk().numberToCloudFormation(properties.minimumTriggerIntervalMs),TriggerMode:cdk().stringToCloudFormation(properties.triggerMode)}):properties}function CfnCampaignConditionBasedCollectionSchemePropertyFromCloudFormation(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("conditionLanguageVersion","ConditionLanguageVersion",properties.ConditionLanguageVersion!=null?cfn_parse().FromCloudFormation.getNumber(properties.ConditionLanguageVersion):void 0),ret.addPropertyResult("expression","Expression",properties.Expression!=null?cfn_parse().FromCloudFormation.getString(properties.Expression):void 0),ret.addPropertyResult("minimumTriggerIntervalMs","MinimumTriggerIntervalMs",properties.MinimumTriggerIntervalMs!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinimumTriggerIntervalMs):void 0),ret.addPropertyResult("triggerMode","TriggerMode",properties.TriggerMode!=null?cfn_parse().FromCloudFormation.getString(properties.TriggerMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignCollectionSchemePropertyValidator(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("conditionBasedCollectionScheme",CfnCampaignConditionBasedCollectionSchemePropertyValidator)(properties.conditionBasedCollectionScheme)),errors.collect(cdk().propertyValidator("timeBasedCollectionScheme",CfnCampaignTimeBasedCollectionSchemePropertyValidator)(properties.timeBasedCollectionScheme)),errors.wrap('supplied properties not correct for "CollectionSchemeProperty"')}function convertCfnCampaignCollectionSchemePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignCollectionSchemePropertyValidator(properties).assertSuccess(),{ConditionBasedCollectionScheme:convertCfnCampaignConditionBasedCollectionSchemePropertyToCloudFormation(properties.conditionBasedCollectionScheme),TimeBasedCollectionScheme:convertCfnCampaignTimeBasedCollectionSchemePropertyToCloudFormation(properties.timeBasedCollectionScheme)}):properties}function CfnCampaignCollectionSchemePropertyFromCloudFormation(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("conditionBasedCollectionScheme","ConditionBasedCollectionScheme",properties.ConditionBasedCollectionScheme!=null?CfnCampaignConditionBasedCollectionSchemePropertyFromCloudFormation(properties.ConditionBasedCollectionScheme):void 0),ret.addPropertyResult("timeBasedCollectionScheme","TimeBasedCollectionScheme",properties.TimeBasedCollectionScheme!=null?CfnCampaignTimeBasedCollectionSchemePropertyFromCloudFormation(properties.TimeBasedCollectionScheme):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignTimeBasedSignalFetchConfigPropertyValidator(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("executionFrequencyMs",cdk().requiredValidator)(properties.executionFrequencyMs)),errors.collect(cdk().propertyValidator("executionFrequencyMs",cdk().validateNumber)(properties.executionFrequencyMs)),errors.wrap('supplied properties not correct for "TimeBasedSignalFetchConfigProperty"')}function convertCfnCampaignTimeBasedSignalFetchConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignTimeBasedSignalFetchConfigPropertyValidator(properties).assertSuccess(),{ExecutionFrequencyMs:cdk().numberToCloudFormation(properties.executionFrequencyMs)}):properties}function CfnCampaignTimeBasedSignalFetchConfigPropertyFromCloudFormation(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("executionFrequencyMs","ExecutionFrequencyMs",properties.ExecutionFrequencyMs!=null?cfn_parse().FromCloudFormation.getNumber(properties.ExecutionFrequencyMs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignConditionBasedSignalFetchConfigPropertyValidator(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("conditionExpression",cdk().requiredValidator)(properties.conditionExpression)),errors.collect(cdk().propertyValidator("conditionExpression",cdk().validateString)(properties.conditionExpression)),errors.collect(cdk().propertyValidator("triggerMode",cdk().requiredValidator)(properties.triggerMode)),errors.collect(cdk().propertyValidator("triggerMode",cdk().validateString)(properties.triggerMode)),errors.wrap('supplied properties not correct for "ConditionBasedSignalFetchConfigProperty"')}function convertCfnCampaignConditionBasedSignalFetchConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignConditionBasedSignalFetchConfigPropertyValidator(properties).assertSuccess(),{ConditionExpression:cdk().stringToCloudFormation(properties.conditionExpression),TriggerMode:cdk().stringToCloudFormation(properties.triggerMode)}):properties}function CfnCampaignConditionBasedSignalFetchConfigPropertyFromCloudFormation(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("conditionExpression","ConditionExpression",properties.ConditionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ConditionExpression):void 0),ret.addPropertyResult("triggerMode","TriggerMode",properties.TriggerMode!=null?cfn_parse().FromCloudFormation.getString(properties.TriggerMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignSignalFetchConfigPropertyValidator(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("conditionBased",CfnCampaignConditionBasedSignalFetchConfigPropertyValidator)(properties.conditionBased)),errors.collect(cdk().propertyValidator("timeBased",CfnCampaignTimeBasedSignalFetchConfigPropertyValidator)(properties.timeBased)),errors.wrap('supplied properties not correct for "SignalFetchConfigProperty"')}function convertCfnCampaignSignalFetchConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignSignalFetchConfigPropertyValidator(properties).assertSuccess(),{ConditionBased:convertCfnCampaignConditionBasedSignalFetchConfigPropertyToCloudFormation(properties.conditionBased),TimeBased:convertCfnCampaignTimeBasedSignalFetchConfigPropertyToCloudFormation(properties.timeBased)}):properties}function CfnCampaignSignalFetchConfigPropertyFromCloudFormation(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("conditionBased","ConditionBased",properties.ConditionBased!=null?CfnCampaignConditionBasedSignalFetchConfigPropertyFromCloudFormation(properties.ConditionBased):void 0),ret.addPropertyResult("timeBased","TimeBased",properties.TimeBased!=null?CfnCampaignTimeBasedSignalFetchConfigPropertyFromCloudFormation(properties.TimeBased):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignSignalFetchInformationPropertyValidator(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().requiredValidator)(properties.actions)),errors.collect(cdk().propertyValidator("actions",cdk().listValidator(cdk().validateString))(properties.actions)),errors.collect(cdk().propertyValidator("conditionLanguageVersion",cdk().validateNumber)(properties.conditionLanguageVersion)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("signalFetchConfig",cdk().requiredValidator)(properties.signalFetchConfig)),errors.collect(cdk().propertyValidator("signalFetchConfig",CfnCampaignSignalFetchConfigPropertyValidator)(properties.signalFetchConfig)),errors.wrap('supplied properties not correct for "SignalFetchInformationProperty"')}function convertCfnCampaignSignalFetchInformationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignSignalFetchInformationPropertyValidator(properties).assertSuccess(),{Actions:cdk().listMapper(cdk().stringToCloudFormation)(properties.actions),ConditionLanguageVersion:cdk().numberToCloudFormation(properties.conditionLanguageVersion),FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName),SignalFetchConfig:convertCfnCampaignSignalFetchConfigPropertyToCloudFormation(properties.signalFetchConfig)}):properties}function CfnCampaignSignalFetchInformationPropertyFromCloudFormation(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(cfn_parse().FromCloudFormation.getString)(properties.Actions):void 0),ret.addPropertyResult("conditionLanguageVersion","ConditionLanguageVersion",properties.ConditionLanguageVersion!=null?cfn_parse().FromCloudFormation.getNumber(properties.ConditionLanguageVersion):void 0),ret.addPropertyResult("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addPropertyResult("signalFetchConfig","SignalFetchConfig",properties.SignalFetchConfig!=null?CfnCampaignSignalFetchConfigPropertyFromCloudFormation(properties.SignalFetchConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignStorageMaximumSizePropertyValidator(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("unit",cdk().requiredValidator)(properties.unit)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "StorageMaximumSizeProperty"')}function convertCfnCampaignStorageMaximumSizePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignStorageMaximumSizePropertyValidator(properties).assertSuccess(),{Unit:cdk().stringToCloudFormation(properties.unit),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnCampaignStorageMaximumSizePropertyFromCloudFormation(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("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignStorageMinimumTimeToLivePropertyValidator(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("unit",cdk().requiredValidator)(properties.unit)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "StorageMinimumTimeToLiveProperty"')}function convertCfnCampaignStorageMinimumTimeToLivePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignStorageMinimumTimeToLivePropertyValidator(properties).assertSuccess(),{Unit:cdk().stringToCloudFormation(properties.unit),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnCampaignStorageMinimumTimeToLivePropertyFromCloudFormation(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("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignDataPartitionStorageOptionsPropertyValidator(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("maximumSize",cdk().requiredValidator)(properties.maximumSize)),errors.collect(cdk().propertyValidator("maximumSize",CfnCampaignStorageMaximumSizePropertyValidator)(properties.maximumSize)),errors.collect(cdk().propertyValidator("minimumTimeToLive",cdk().requiredValidator)(properties.minimumTimeToLive)),errors.collect(cdk().propertyValidator("minimumTimeToLive",CfnCampaignStorageMinimumTimeToLivePropertyValidator)(properties.minimumTimeToLive)),errors.collect(cdk().propertyValidator("storageLocation",cdk().requiredValidator)(properties.storageLocation)),errors.collect(cdk().propertyValidator("storageLocation",cdk().validateString)(properties.storageLocation)),errors.wrap('supplied properties not correct for "DataPartitionStorageOptionsProperty"')}function convertCfnCampaignDataPartitionStorageOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignDataPartitionStorageOptionsPropertyValidator(properties).assertSuccess(),{MaximumSize:convertCfnCampaignStorageMaximumSizePropertyToCloudFormation(properties.maximumSize),MinimumTimeToLive:convertCfnCampaignStorageMinimumTimeToLivePropertyToCloudFormation(properties.minimumTimeToLive),StorageLocation:cdk().stringToCloudFormation(properties.storageLocation)}):properties}function CfnCampaignDataPartitionStorageOptionsPropertyFromCloudFormation(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("maximumSize","MaximumSize",properties.MaximumSize!=null?CfnCampaignStorageMaximumSizePropertyFromCloudFormation(properties.MaximumSize):void 0),ret.addPropertyResult("minimumTimeToLive","MinimumTimeToLive",properties.MinimumTimeToLive!=null?CfnCampaignStorageMinimumTimeToLivePropertyFromCloudFormation(properties.MinimumTimeToLive):void 0),ret.addPropertyResult("storageLocation","StorageLocation",properties.StorageLocation!=null?cfn_parse().FromCloudFormation.getString(properties.StorageLocation):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignDataPartitionUploadOptionsPropertyValidator(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("conditionLanguageVersion",cdk().validateNumber)(properties.conditionLanguageVersion)),errors.collect(cdk().propertyValidator("expression",cdk().requiredValidator)(properties.expression)),errors.collect(cdk().propertyValidator("expression",cdk().validateString)(properties.expression)),errors.wrap('supplied properties not correct for "DataPartitionUploadOptionsProperty"')}function convertCfnCampaignDataPartitionUploadOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignDataPartitionUploadOptionsPropertyValidator(properties).assertSuccess(),{ConditionLanguageVersion:cdk().numberToCloudFormation(properties.conditionLanguageVersion),Expression:cdk().stringToCloudFormation(properties.expression)}):properties}function CfnCampaignDataPartitionUploadOptionsPropertyFromCloudFormation(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("conditionLanguageVersion","ConditionLanguageVersion",properties.ConditionLanguageVersion!=null?cfn_parse().FromCloudFormation.getNumber(properties.ConditionLanguageVersion):void 0),ret.addPropertyResult("expression","Expression",properties.Expression!=null?cfn_parse().FromCloudFormation.getString(properties.Expression):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignDataPartitionPropertyValidator(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("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("storageOptions",cdk().requiredValidator)(properties.storageOptions)),errors.collect(cdk().propertyValidator("storageOptions",CfnCampaignDataPartitionStorageOptionsPropertyValidator)(properties.storageOptions)),errors.collect(cdk().propertyValidator("uploadOptions",CfnCampaignDataPartitionUploadOptionsPropertyValidator)(properties.uploadOptions)),errors.wrap('supplied properties not correct for "DataPartitionProperty"')}function convertCfnCampaignDataPartitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignDataPartitionPropertyValidator(properties).assertSuccess(),{Id:cdk().stringToCloudFormation(properties.id),StorageOptions:convertCfnCampaignDataPartitionStorageOptionsPropertyToCloudFormation(properties.storageOptions),UploadOptions:convertCfnCampaignDataPartitionUploadOptionsPropertyToCloudFormation(properties.uploadOptions)}):properties}function CfnCampaignDataPartitionPropertyFromCloudFormation(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("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("storageOptions","StorageOptions",properties.StorageOptions!=null?CfnCampaignDataPartitionStorageOptionsPropertyFromCloudFormation(properties.StorageOptions):void 0),ret.addPropertyResult("uploadOptions","UploadOptions",properties.UploadOptions!=null?CfnCampaignDataPartitionUploadOptionsPropertyFromCloudFormation(properties.UploadOptions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCampaignPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),errors.collect(cdk().propertyValidator("collectionScheme",cdk().requiredValidator)(properties.collectionScheme)),errors.collect(cdk().propertyValidator("collectionScheme",CfnCampaignCollectionSchemePropertyValidator)(properties.collectionScheme)),errors.collect(cdk().propertyValidator("compression",cdk().validateString)(properties.compression)),errors.collect(cdk().propertyValidator("dataDestinationConfigs",cdk().listValidator(CfnCampaignDataDestinationConfigPropertyValidator))(properties.dataDestinationConfigs)),errors.collect(cdk().propertyValidator("dataExtraDimensions",cdk().listValidator(cdk().validateString))(properties.dataExtraDimensions)),errors.collect(cdk().propertyValidator("dataPartitions",cdk().listValidator(CfnCampaignDataPartitionPropertyValidator))(properties.dataPartitions)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("diagnosticsMode",cdk().validateString)(properties.diagnosticsMode)),errors.collect(cdk().propertyValidator("expiryTime",cdk().validateString)(properties.expiryTime)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("postTriggerCollectionDuration",cdk().validateNumber)(properties.postTriggerCollectionDuration)),errors.collect(cdk().propertyValidator("priority",cdk().validateNumber)(properties.priority)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().requiredValidator)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().validateString)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("signalsToCollect",cdk().listValidator(CfnCampaignSignalInformationPropertyValidator))(properties.signalsToCollect)),errors.collect(cdk().propertyValidator("signalsToFetch",cdk().listValidator(CfnCampaignSignalFetchInformationPropertyValidator))(properties.signalsToFetch)),errors.collect(cdk().propertyValidator("spoolingMode",cdk().validateString)(properties.spoolingMode)),errors.collect(cdk().propertyValidator("startTime",cdk().validateString)(properties.startTime)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("targetArn",cdk().requiredValidator)(properties.targetArn)),errors.collect(cdk().propertyValidator("targetArn",cdk().validateString)(properties.targetArn)),errors.wrap('supplied properties not correct for "CfnCampaignProps"')}function convertCfnCampaignPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCampaignPropsValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),CollectionScheme:convertCfnCampaignCollectionSchemePropertyToCloudFormation(properties.collectionScheme),Compression:cdk().stringToCloudFormation(properties.compression),DataDestinationConfigs:cdk().listMapper(convertCfnCampaignDataDestinationConfigPropertyToCloudFormation)(properties.dataDestinationConfigs),DataExtraDimensions:cdk().listMapper(cdk().stringToCloudFormation)(properties.dataExtraDimensions),DataPartitions:cdk().listMapper(convertCfnCampaignDataPartitionPropertyToCloudFormation)(properties.dataPartitions),Description:cdk().stringToCloudFormation(properties.description),DiagnosticsMode:cdk().stringToCloudFormation(properties.diagnosticsMode),ExpiryTime:cdk().stringToCloudFormation(properties.expiryTime),Name:cdk().stringToCloudFormation(properties.name),PostTriggerCollectionDuration:cdk().numberToCloudFormation(properties.postTriggerCollectionDuration),Priority:cdk().numberToCloudFormation(properties.priority),SignalCatalogArn:cdk().stringToCloudFormation(properties.signalCatalogArn),SignalsToCollect:cdk().listMapper(convertCfnCampaignSignalInformationPropertyToCloudFormation)(properties.signalsToCollect),SignalsToFetch:cdk().listMapper(convertCfnCampaignSignalFetchInformationPropertyToCloudFormation)(properties.signalsToFetch),SpoolingMode:cdk().stringToCloudFormation(properties.spoolingMode),StartTime:cdk().stringToCloudFormation(properties.startTime),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TargetArn:cdk().stringToCloudFormation(properties.targetArn)}):properties}function CfnCampaignPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?cfn_parse().FromCloudFormation.getString(properties.Action):void 0),ret.addPropertyResult("collectionScheme","CollectionScheme",properties.CollectionScheme!=null?CfnCampaignCollectionSchemePropertyFromCloudFormation(properties.CollectionScheme):void 0),ret.addPropertyResult("compression","Compression",properties.Compression!=null?cfn_parse().FromCloudFormation.getString(properties.Compression):void 0),ret.addPropertyResult("dataDestinationConfigs","DataDestinationConfigs",properties.DataDestinationConfigs!=null?cfn_parse().FromCloudFormation.getArray(CfnCampaignDataDestinationConfigPropertyFromCloudFormation)(properties.DataDestinationConfigs):void 0),ret.addPropertyResult("dataExtraDimensions","DataExtraDimensions",properties.DataExtraDimensions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.DataExtraDimensions):void 0),ret.addPropertyResult("dataPartitions","DataPartitions",properties.DataPartitions!=null?cfn_parse().FromCloudFormation.getArray(CfnCampaignDataPartitionPropertyFromCloudFormation)(properties.DataPartitions):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("diagnosticsMode","DiagnosticsMode",properties.DiagnosticsMode!=null?cfn_parse().FromCloudFormation.getString(properties.DiagnosticsMode):void 0),ret.addPropertyResult("expiryTime","ExpiryTime",properties.ExpiryTime!=null?cfn_parse().FromCloudFormation.getString(properties.ExpiryTime):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("postTriggerCollectionDuration","PostTriggerCollectionDuration",properties.PostTriggerCollectionDuration!=null?cfn_parse().FromCloudFormation.getNumber(properties.PostTriggerCollectionDuration):void 0),ret.addPropertyResult("priority","Priority",properties.Priority!=null?cfn_parse().FromCloudFormation.getNumber(properties.Priority):void 0),ret.addPropertyResult("signalCatalogArn","SignalCatalogArn",properties.SignalCatalogArn!=null?cfn_parse().FromCloudFormation.getString(properties.SignalCatalogArn):void 0),ret.addPropertyResult("signalsToCollect","SignalsToCollect",properties.SignalsToCollect!=null?cfn_parse().FromCloudFormation.getArray(CfnCampaignSignalInformationPropertyFromCloudFormation)(properties.SignalsToCollect):void 0),ret.addPropertyResult("signalsToFetch","SignalsToFetch",properties.SignalsToFetch!=null?cfn_parse().FromCloudFormation.getArray(CfnCampaignSignalFetchInformationPropertyFromCloudFormation)(properties.SignalsToFetch):void 0),ret.addPropertyResult("spoolingMode","SpoolingMode",properties.SpoolingMode!=null?cfn_parse().FromCloudFormation.getString(properties.SpoolingMode):void 0),ret.addPropertyResult("startTime","StartTime",properties.StartTime!=null?cfn_parse().FromCloudFormation.getString(properties.StartTime):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("targetArn","TargetArn",properties.TargetArn!=null?cfn_parse().FromCloudFormation.getString(properties.TargetArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDecoderManifest extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotfleetwise.CfnDecoderManifest",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTFleetWise::DecoderManifest";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDecoderManifestPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDecoderManifest(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 isCfnDecoderManifest(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDecoderManifest.CFN_RESOURCE_TYPE_NAME}static arnForDecoderManifest(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotfleetwise_IDecoderManifestRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDecoderManifest),error}return resource.decoderManifestRef.decoderManifestArn}_defaultForUnmappedSignals;_description;_modelManifestArn;_name;_networkInterfaces;_signalDecoders;_status;tags;_tagsRaw;cfnPropertyNames={defaultForUnmappedSignals:"DefaultForUnmappedSignals",description:"Description",modelManifestArn:"ModelManifestArn",name:"Name",networkInterfaces:"NetworkInterfaces",signalDecoders:"SignalDecoders",status:"Status",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnDecoderManifest.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotfleetwise_CfnDecoderManifestProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDecoderManifest),error}cdk().requireProperty(props,"modelManifestArn",this),cdk().requireProperty(props,"name",this),this._defaultForUnmappedSignals=props.defaultForUnmappedSignals,this._description=props.description,this._modelManifestArn=props.modelManifestArn,this._name=props.name,this._networkInterfaces=props.networkInterfaces,this._signalDecoders=props.signalDecoders,this._status=props.status,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTFleetWise::DecoderManifest",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get decoderManifestRef(){return{decoderManifestName:this.ref,decoderManifestArn:this.attrArn}}get defaultForUnmappedSignals(){return this._defaultForUnmappedSignals}set defaultForUnmappedSignals(value){cdk().traceProperty(this.node,"DefaultForUnmappedSignals"),this._defaultForUnmappedSignals=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get modelManifestArn(){return this._modelManifestArn}set modelManifestArn(value){cdk().traceProperty(this.node,"ModelManifestArn"),this._modelManifestArn=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get networkInterfaces(){return this._networkInterfaces}set networkInterfaces(value){cdk().traceProperty(this.node,"NetworkInterfaces"),this._networkInterfaces=value}get signalDecoders(){return this._signalDecoders}set signalDecoders(value){cdk().traceProperty(this.node,"SignalDecoders"),this._signalDecoders=value}get status(){return this._status}set status(value){cdk().traceProperty(this.node,"Status"),this._status=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModificationTime(){return cdk().Token.asString(this.getAtt("LastModificationTime",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{defaultForUnmappedSignals:this._defaultForUnmappedSignals,description:this._description,modelManifestArn:this._modelManifestArn,name:this._name,networkInterfaces:this._networkInterfaces,signalDecoders:this._signalDecoders,status:this._status,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",CfnDecoderManifest.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDecoderManifestPropsToCloudFormation(props)}}exports.CfnDecoderManifest=CfnDecoderManifest;function CfnDecoderManifestCanSignalPropertyValidator(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("factor",cdk().requiredValidator)(properties.factor)),errors.collect(cdk().propertyValidator("factor",cdk().validateString)(properties.factor)),errors.collect(cdk().propertyValidator("isBigEndian",cdk().requiredValidator)(properties.isBigEndian)),errors.collect(cdk().propertyValidator("isBigEndian",cdk().validateString)(properties.isBigEndian)),errors.collect(cdk().propertyValidator("isSigned",cdk().requiredValidator)(properties.isSigned)),errors.collect(cdk().propertyValidator("isSigned",cdk().validateString)(properties.isSigned)),errors.collect(cdk().propertyValidator("length",cdk().requiredValidator)(properties.length)),errors.collect(cdk().propertyValidator("length",cdk().validateString)(properties.length)),errors.collect(cdk().propertyValidator("messageId",cdk().requiredValidator)(properties.messageId)),errors.collect(cdk().propertyValidator("messageId",cdk().validateString)(properties.messageId)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("offset",cdk().requiredValidator)(properties.offset)),errors.collect(cdk().propertyValidator("offset",cdk().validateString)(properties.offset)),errors.collect(cdk().propertyValidator("signalValueType",cdk().validateString)(properties.signalValueType)),errors.collect(cdk().propertyValidator("startBit",cdk().requiredValidator)(properties.startBit)),errors.collect(cdk().propertyValidator("startBit",cdk().validateString)(properties.startBit)),errors.wrap('supplied properties not correct for "CanSignalProperty"')}function convertCfnDecoderManifestCanSignalPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestCanSignalPropertyValidator(properties).assertSuccess(),{Factor:cdk().stringToCloudFormation(properties.factor),IsBigEndian:cdk().stringToCloudFormation(properties.isBigEndian),IsSigned:cdk().stringToCloudFormation(properties.isSigned),Length:cdk().stringToCloudFormation(properties.length),MessageId:cdk().stringToCloudFormation(properties.messageId),Name:cdk().stringToCloudFormation(properties.name),Offset:cdk().stringToCloudFormation(properties.offset),SignalValueType:cdk().stringToCloudFormation(properties.signalValueType),StartBit:cdk().stringToCloudFormation(properties.startBit)}):properties}function CfnDecoderManifestCanSignalPropertyFromCloudFormation(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("factor","Factor",properties.Factor!=null?cfn_parse().FromCloudFormation.getString(properties.Factor):void 0),ret.addPropertyResult("isBigEndian","IsBigEndian",properties.IsBigEndian!=null?cfn_parse().FromCloudFormation.getString(properties.IsBigEndian):void 0),ret.addPropertyResult("isSigned","IsSigned",properties.IsSigned!=null?cfn_parse().FromCloudFormation.getString(properties.IsSigned):void 0),ret.addPropertyResult("length","Length",properties.Length!=null?cfn_parse().FromCloudFormation.getString(properties.Length):void 0),ret.addPropertyResult("messageId","MessageId",properties.MessageId!=null?cfn_parse().FromCloudFormation.getString(properties.MessageId):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("offset","Offset",properties.Offset!=null?cfn_parse().FromCloudFormation.getString(properties.Offset):void 0),ret.addPropertyResult("signalValueType","SignalValueType",properties.SignalValueType!=null?cfn_parse().FromCloudFormation.getString(properties.SignalValueType):void 0),ret.addPropertyResult("startBit","StartBit",properties.StartBit!=null?cfn_parse().FromCloudFormation.getString(properties.StartBit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestCanSignalDecoderPropertyValidator(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("canSignal",cdk().requiredValidator)(properties.canSignal)),errors.collect(cdk().propertyValidator("canSignal",CfnDecoderManifestCanSignalPropertyValidator)(properties.canSignal)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("interfaceId",cdk().requiredValidator)(properties.interfaceId)),errors.collect(cdk().propertyValidator("interfaceId",cdk().validateString)(properties.interfaceId)),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 "CanSignalDecoderProperty"')}function convertCfnDecoderManifestCanSignalDecoderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestCanSignalDecoderPropertyValidator(properties).assertSuccess(),{CanSignal:convertCfnDecoderManifestCanSignalPropertyToCloudFormation(properties.canSignal),FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName),InterfaceId:cdk().stringToCloudFormation(properties.interfaceId),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnDecoderManifestCanSignalDecoderPropertyFromCloudFormation(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("canSignal","CanSignal",properties.CanSignal!=null?CfnDecoderManifestCanSignalPropertyFromCloudFormation(properties.CanSignal):void 0),ret.addPropertyResult("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addPropertyResult("interfaceId","InterfaceId",properties.InterfaceId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceId):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestObdSignalPropertyValidator(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("bitMaskLength",cdk().validateString)(properties.bitMaskLength)),errors.collect(cdk().propertyValidator("bitRightShift",cdk().validateString)(properties.bitRightShift)),errors.collect(cdk().propertyValidator("byteLength",cdk().requiredValidator)(properties.byteLength)),errors.collect(cdk().propertyValidator("byteLength",cdk().validateString)(properties.byteLength)),errors.collect(cdk().propertyValidator("isSigned",cdk().unionValidator(cdk().validateString,cdk().validateBoolean))(properties.isSigned)),errors.collect(cdk().propertyValidator("offset",cdk().requiredValidator)(properties.offset)),errors.collect(cdk().propertyValidator("offset",cdk().validateString)(properties.offset)),errors.collect(cdk().propertyValidator("pid",cdk().requiredValidator)(properties.pid)),errors.collect(cdk().propertyValidator("pid",cdk().validateString)(properties.pid)),errors.collect(cdk().propertyValidator("pidResponseLength",cdk().requiredValidator)(properties.pidResponseLength)),errors.collect(cdk().propertyValidator("pidResponseLength",cdk().validateString)(properties.pidResponseLength)),errors.collect(cdk().propertyValidator("scaling",cdk().requiredValidator)(properties.scaling)),errors.collect(cdk().propertyValidator("scaling",cdk().validateString)(properties.scaling)),errors.collect(cdk().propertyValidator("serviceMode",cdk().requiredValidator)(properties.serviceMode)),errors.collect(cdk().propertyValidator("serviceMode",cdk().validateString)(properties.serviceMode)),errors.collect(cdk().propertyValidator("signalValueType",cdk().validateString)(properties.signalValueType)),errors.collect(cdk().propertyValidator("startByte",cdk().requiredValidator)(properties.startByte)),errors.collect(cdk().propertyValidator("startByte",cdk().validateString)(properties.startByte)),errors.wrap('supplied properties not correct for "ObdSignalProperty"')}function convertCfnDecoderManifestObdSignalPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestObdSignalPropertyValidator(properties).assertSuccess(),{BitMaskLength:cdk().stringToCloudFormation(properties.bitMaskLength),BitRightShift:cdk().stringToCloudFormation(properties.bitRightShift),ByteLength:cdk().stringToCloudFormation(properties.byteLength),IsSigned:cdk().unionMapper([cdk().validateString,cdk().validateBoolean],[cdk().stringToCloudFormation,cdk().booleanToCloudFormation])(properties.isSigned),Offset:cdk().stringToCloudFormation(properties.offset),Pid:cdk().stringToCloudFormation(properties.pid),PidResponseLength:cdk().stringToCloudFormation(properties.pidResponseLength),Scaling:cdk().stringToCloudFormation(properties.scaling),ServiceMode:cdk().stringToCloudFormation(properties.serviceMode),SignalValueType:cdk().stringToCloudFormation(properties.signalValueType),StartByte:cdk().stringToCloudFormation(properties.startByte)}):properties}function CfnDecoderManifestObdSignalPropertyFromCloudFormation(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("bitMaskLength","BitMaskLength",properties.BitMaskLength!=null?cfn_parse().FromCloudFormation.getString(properties.BitMaskLength):void 0),ret.addPropertyResult("bitRightShift","BitRightShift",properties.BitRightShift!=null?cfn_parse().FromCloudFormation.getString(properties.BitRightShift):void 0),ret.addPropertyResult("byteLength","ByteLength",properties.ByteLength!=null?cfn_parse().FromCloudFormation.getString(properties.ByteLength):void 0),ret.addPropertyResult("isSigned","IsSigned",properties.IsSigned!=null?cfn_parse().FromCloudFormation.getTypeUnion([cdk().validateString,cdk().validateBoolean],[cfn_parse().FromCloudFormation.getString,cfn_parse().FromCloudFormation.getBoolean])(properties.IsSigned):void 0),ret.addPropertyResult("offset","Offset",properties.Offset!=null?cfn_parse().FromCloudFormation.getString(properties.Offset):void 0),ret.addPropertyResult("pid","Pid",properties.Pid!=null?cfn_parse().FromCloudFormation.getString(properties.Pid):void 0),ret.addPropertyResult("pidResponseLength","PidResponseLength",properties.PidResponseLength!=null?cfn_parse().FromCloudFormation.getString(properties.PidResponseLength):void 0),ret.addPropertyResult("scaling","Scaling",properties.Scaling!=null?cfn_parse().FromCloudFormation.getString(properties.Scaling):void 0),ret.addPropertyResult("serviceMode","ServiceMode",properties.ServiceMode!=null?cfn_parse().FromCloudFormation.getString(properties.ServiceMode):void 0),ret.addPropertyResult("signalValueType","SignalValueType",properties.SignalValueType!=null?cfn_parse().FromCloudFormation.getString(properties.SignalValueType):void 0),ret.addPropertyResult("startByte","StartByte",properties.StartByte!=null?cfn_parse().FromCloudFormation.getString(properties.StartByte):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestObdSignalDecoderPropertyValidator(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("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("interfaceId",cdk().requiredValidator)(properties.interfaceId)),errors.collect(cdk().propertyValidator("interfaceId",cdk().validateString)(properties.interfaceId)),errors.collect(cdk().propertyValidator("obdSignal",cdk().requiredValidator)(properties.obdSignal)),errors.collect(cdk().propertyValidator("obdSignal",CfnDecoderManifestObdSignalPropertyValidator)(properties.obdSignal)),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 "ObdSignalDecoderProperty"')}function convertCfnDecoderManifestObdSignalDecoderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestObdSignalDecoderPropertyValidator(properties).assertSuccess(),{FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName),InterfaceId:cdk().stringToCloudFormation(properties.interfaceId),ObdSignal:convertCfnDecoderManifestObdSignalPropertyToCloudFormation(properties.obdSignal),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnDecoderManifestObdSignalDecoderPropertyFromCloudFormation(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("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addPropertyResult("interfaceId","InterfaceId",properties.InterfaceId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceId):void 0),ret.addPropertyResult("obdSignal","ObdSignal",properties.ObdSignal!=null?CfnDecoderManifestObdSignalPropertyFromCloudFormation(properties.ObdSignal):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestSignalDecodersItemsPropertyValidator(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("canSignal",CfnDecoderManifestCanSignalPropertyValidator)(properties.canSignal)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("interfaceId",cdk().requiredValidator)(properties.interfaceId)),errors.collect(cdk().propertyValidator("interfaceId",cdk().validateString)(properties.interfaceId)),errors.collect(cdk().propertyValidator("obdSignal",CfnDecoderManifestObdSignalPropertyValidator)(properties.obdSignal)),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 "SignalDecodersItemsProperty"')}function convertCfnDecoderManifestSignalDecodersItemsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestSignalDecodersItemsPropertyValidator(properties).assertSuccess(),{CanSignal:convertCfnDecoderManifestCanSignalPropertyToCloudFormation(properties.canSignal),FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName),InterfaceId:cdk().stringToCloudFormation(properties.interfaceId),ObdSignal:convertCfnDecoderManifestObdSignalPropertyToCloudFormation(properties.obdSignal),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnDecoderManifestSignalDecodersItemsPropertyFromCloudFormation(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("canSignal","CanSignal",properties.CanSignal!=null?CfnDecoderManifestCanSignalPropertyFromCloudFormation(properties.CanSignal):void 0),ret.addPropertyResult("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addPropertyResult("interfaceId","InterfaceId",properties.InterfaceId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceId):void 0),ret.addPropertyResult("obdSignal","ObdSignal",properties.ObdSignal!=null?CfnDecoderManifestObdSignalPropertyFromCloudFormation(properties.ObdSignal):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestCanInterfacePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("protocolName",cdk().validateString)(properties.protocolName)),errors.collect(cdk().propertyValidator("protocolVersion",cdk().validateString)(properties.protocolVersion)),errors.wrap('supplied properties not correct for "CanInterfaceProperty"')}function convertCfnDecoderManifestCanInterfacePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestCanInterfacePropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),ProtocolName:cdk().stringToCloudFormation(properties.protocolName),ProtocolVersion:cdk().stringToCloudFormation(properties.protocolVersion)}):properties}function CfnDecoderManifestCanInterfacePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("protocolName","ProtocolName",properties.ProtocolName!=null?cfn_parse().FromCloudFormation.getString(properties.ProtocolName):void 0),ret.addPropertyResult("protocolVersion","ProtocolVersion",properties.ProtocolVersion!=null?cfn_parse().FromCloudFormation.getString(properties.ProtocolVersion):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestCanNetworkInterfacePropertyValidator(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("canInterface",cdk().requiredValidator)(properties.canInterface)),errors.collect(cdk().propertyValidator("canInterface",CfnDecoderManifestCanInterfacePropertyValidator)(properties.canInterface)),errors.collect(cdk().propertyValidator("interfaceId",cdk().requiredValidator)(properties.interfaceId)),errors.collect(cdk().propertyValidator("interfaceId",cdk().validateString)(properties.interfaceId)),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 "CanNetworkInterfaceProperty"')}function convertCfnDecoderManifestCanNetworkInterfacePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestCanNetworkInterfacePropertyValidator(properties).assertSuccess(),{CanInterface:convertCfnDecoderManifestCanInterfacePropertyToCloudFormation(properties.canInterface),InterfaceId:cdk().stringToCloudFormation(properties.interfaceId),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnDecoderManifestCanNetworkInterfacePropertyFromCloudFormation(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("canInterface","CanInterface",properties.CanInterface!=null?CfnDecoderManifestCanInterfacePropertyFromCloudFormation(properties.CanInterface):void 0),ret.addPropertyResult("interfaceId","InterfaceId",properties.InterfaceId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceId):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestObdInterfacePropertyValidator(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("dtcRequestIntervalSeconds",cdk().validateString)(properties.dtcRequestIntervalSeconds)),errors.collect(cdk().propertyValidator("hasTransmissionEcu",cdk().validateString)(properties.hasTransmissionEcu)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("obdStandard",cdk().validateString)(properties.obdStandard)),errors.collect(cdk().propertyValidator("pidRequestIntervalSeconds",cdk().validateString)(properties.pidRequestIntervalSeconds)),errors.collect(cdk().propertyValidator("requestMessageId",cdk().requiredValidator)(properties.requestMessageId)),errors.collect(cdk().propertyValidator("requestMessageId",cdk().validateString)(properties.requestMessageId)),errors.collect(cdk().propertyValidator("useExtendedIds",cdk().validateString)(properties.useExtendedIds)),errors.wrap('supplied properties not correct for "ObdInterfaceProperty"')}function convertCfnDecoderManifestObdInterfacePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestObdInterfacePropertyValidator(properties).assertSuccess(),{DtcRequestIntervalSeconds:cdk().stringToCloudFormation(properties.dtcRequestIntervalSeconds),HasTransmissionEcu:cdk().stringToCloudFormation(properties.hasTransmissionEcu),Name:cdk().stringToCloudFormation(properties.name),ObdStandard:cdk().stringToCloudFormation(properties.obdStandard),PidRequestIntervalSeconds:cdk().stringToCloudFormation(properties.pidRequestIntervalSeconds),RequestMessageId:cdk().stringToCloudFormation(properties.requestMessageId),UseExtendedIds:cdk().stringToCloudFormation(properties.useExtendedIds)}):properties}function CfnDecoderManifestObdInterfacePropertyFromCloudFormation(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("dtcRequestIntervalSeconds","DtcRequestIntervalSeconds",properties.DtcRequestIntervalSeconds!=null?cfn_parse().FromCloudFormation.getString(properties.DtcRequestIntervalSeconds):void 0),ret.addPropertyResult("hasTransmissionEcu","HasTransmissionEcu",properties.HasTransmissionEcu!=null?cfn_parse().FromCloudFormation.getString(properties.HasTransmissionEcu):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("obdStandard","ObdStandard",properties.ObdStandard!=null?cfn_parse().FromCloudFormation.getString(properties.ObdStandard):void 0),ret.addPropertyResult("pidRequestIntervalSeconds","PidRequestIntervalSeconds",properties.PidRequestIntervalSeconds!=null?cfn_parse().FromCloudFormation.getString(properties.PidRequestIntervalSeconds):void 0),ret.addPropertyResult("requestMessageId","RequestMessageId",properties.RequestMessageId!=null?cfn_parse().FromCloudFormation.getString(properties.RequestMessageId):void 0),ret.addPropertyResult("useExtendedIds","UseExtendedIds",properties.UseExtendedIds!=null?cfn_parse().FromCloudFormation.getString(properties.UseExtendedIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestObdNetworkInterfacePropertyValidator(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("interfaceId",cdk().requiredValidator)(properties.interfaceId)),errors.collect(cdk().propertyValidator("interfaceId",cdk().validateString)(properties.interfaceId)),errors.collect(cdk().propertyValidator("obdInterface",cdk().requiredValidator)(properties.obdInterface)),errors.collect(cdk().propertyValidator("obdInterface",CfnDecoderManifestObdInterfacePropertyValidator)(properties.obdInterface)),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 "ObdNetworkInterfaceProperty"')}function convertCfnDecoderManifestObdNetworkInterfacePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestObdNetworkInterfacePropertyValidator(properties).assertSuccess(),{InterfaceId:cdk().stringToCloudFormation(properties.interfaceId),ObdInterface:convertCfnDecoderManifestObdInterfacePropertyToCloudFormation(properties.obdInterface),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnDecoderManifestObdNetworkInterfacePropertyFromCloudFormation(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("interfaceId","InterfaceId",properties.InterfaceId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceId):void 0),ret.addPropertyResult("obdInterface","ObdInterface",properties.ObdInterface!=null?CfnDecoderManifestObdInterfacePropertyFromCloudFormation(properties.ObdInterface):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestNetworkInterfacesItemsPropertyValidator(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("canInterface",CfnDecoderManifestCanInterfacePropertyValidator)(properties.canInterface)),errors.collect(cdk().propertyValidator("interfaceId",cdk().requiredValidator)(properties.interfaceId)),errors.collect(cdk().propertyValidator("interfaceId",cdk().validateString)(properties.interfaceId)),errors.collect(cdk().propertyValidator("obdInterface",CfnDecoderManifestObdInterfacePropertyValidator)(properties.obdInterface)),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 "NetworkInterfacesItemsProperty"')}function convertCfnDecoderManifestNetworkInterfacesItemsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestNetworkInterfacesItemsPropertyValidator(properties).assertSuccess(),{CanInterface:convertCfnDecoderManifestCanInterfacePropertyToCloudFormation(properties.canInterface),InterfaceId:cdk().stringToCloudFormation(properties.interfaceId),ObdInterface:convertCfnDecoderManifestObdInterfacePropertyToCloudFormation(properties.obdInterface),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnDecoderManifestNetworkInterfacesItemsPropertyFromCloudFormation(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("canInterface","CanInterface",properties.CanInterface!=null?CfnDecoderManifestCanInterfacePropertyFromCloudFormation(properties.CanInterface):void 0),ret.addPropertyResult("interfaceId","InterfaceId",properties.InterfaceId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceId):void 0),ret.addPropertyResult("obdInterface","ObdInterface",properties.ObdInterface!=null?CfnDecoderManifestObdInterfacePropertyFromCloudFormation(properties.ObdInterface):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDecoderManifestPropsValidator(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("defaultForUnmappedSignals",cdk().validateString)(properties.defaultForUnmappedSignals)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("modelManifestArn",cdk().requiredValidator)(properties.modelManifestArn)),errors.collect(cdk().propertyValidator("modelManifestArn",cdk().validateString)(properties.modelManifestArn)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("networkInterfaces",cdk().listValidator(CfnDecoderManifestNetworkInterfacesItemsPropertyValidator))(properties.networkInterfaces)),errors.collect(cdk().propertyValidator("signalDecoders",cdk().listValidator(CfnDecoderManifestSignalDecodersItemsPropertyValidator))(properties.signalDecoders)),errors.collect(cdk().propertyValidator("status",cdk().validateString)(properties.status)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDecoderManifestProps"')}function convertCfnDecoderManifestPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDecoderManifestPropsValidator(properties).assertSuccess(),{DefaultForUnmappedSignals:cdk().stringToCloudFormation(properties.defaultForUnmappedSignals),Description:cdk().stringToCloudFormation(properties.description),ModelManifestArn:cdk().stringToCloudFormation(properties.modelManifestArn),Name:cdk().stringToCloudFormation(properties.name),NetworkInterfaces:cdk().listMapper(convertCfnDecoderManifestNetworkInterfacesItemsPropertyToCloudFormation)(properties.networkInterfaces),SignalDecoders:cdk().listMapper(convertCfnDecoderManifestSignalDecodersItemsPropertyToCloudFormation)(properties.signalDecoders),Status:cdk().stringToCloudFormation(properties.status),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDecoderManifestPropsFromCloudFormation(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("defaultForUnmappedSignals","DefaultForUnmappedSignals",properties.DefaultForUnmappedSignals!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultForUnmappedSignals):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("modelManifestArn","ModelManifestArn",properties.ModelManifestArn!=null?cfn_parse().FromCloudFormation.getString(properties.ModelManifestArn):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("networkInterfaces","NetworkInterfaces",properties.NetworkInterfaces!=null?cfn_parse().FromCloudFormation.getArray(CfnDecoderManifestNetworkInterfacesItemsPropertyFromCloudFormation)(properties.NetworkInterfaces):void 0),ret.addPropertyResult("signalDecoders","SignalDecoders",properties.SignalDecoders!=null?cfn_parse().FromCloudFormation.getArray(CfnDecoderManifestSignalDecodersItemsPropertyFromCloudFormation)(properties.SignalDecoders):void 0),ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse().FromCloudFormation.getString(properties.Status):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 CfnFleet extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotfleetwise.CfnFleet",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTFleetWise::Fleet";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFleetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnFleet(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 isCfnFleet(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnFleet.CFN_RESOURCE_TYPE_NAME}static fromFleetArn(scope,id,arn){class Import extends cdk().Resource{fleetRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotfleetwise:${Region}:${Account}:fleet/${FleetId}").parse(arn2);this.fleetRef={fleetId:variables.FleetId,fleetArn:arn2}}}return new Import(scope,id,arn)}static fromFleetId(scope,id,fleetId){class Import extends cdk().Resource{fleetRef;constructor(scope2,id2,fleetId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotfleetwise:${Region}:${Account}:fleet/${FleetId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,FleetId:fleetId2});super(scope2,id2,{environmentFromArn:arn}),this.fleetRef={fleetId:fleetId2,fleetArn:arn}}}return new Import(scope,id,fleetId)}static arnForFleet(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotfleetwise_IFleetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForFleet),error}return resource.fleetRef.fleetArn}_description;_id;_signalCatalogArn;tags;_tagsRaw;cfnPropertyNames={description:"Description",id:"Id",signalCatalogArn:"SignalCatalogArn",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnFleet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotfleetwise_CfnFleetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFleet),error}cdk().requireProperty(props,"id",this),cdk().requireProperty(props,"signalCatalogArn",this),this._description=props.description,this._id=props.id,this._signalCatalogArn=props.signalCatalogArn,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTFleetWise::Fleet",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get fleetRef(){return{fleetId:this.ref,fleetArn:this.attrArn}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get id(){return this._id}set id(value){cdk().traceProperty(this.node,"Id"),this._id=value}get signalCatalogArn(){return this._signalCatalogArn}set signalCatalogArn(value){cdk().traceProperty(this.node,"SignalCatalogArn"),this._signalCatalogArn=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModificationTime(){return cdk().Token.asString(this.getAtt("LastModificationTime",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{description:this._description,id:this._id,signalCatalogArn:this._signalCatalogArn,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",CfnFleet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnFleetPropsToCloudFormation(props)}}exports.CfnFleet=CfnFleet;function CfnFleetPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().requiredValidator)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().validateString)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnFleetProps"')}function convertCfnFleetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFleetPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),Id:cdk().stringToCloudFormation(properties.id),SignalCatalogArn:cdk().stringToCloudFormation(properties.signalCatalogArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnFleetPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("signalCatalogArn","SignalCatalogArn",properties.SignalCatalogArn!=null?cfn_parse().FromCloudFormation.getString(properties.SignalCatalogArn):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 CfnModelManifest extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotfleetwise.CfnModelManifest",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTFleetWise::ModelManifest";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelManifestPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModelManifest(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 isCfnModelManifest(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModelManifest.CFN_RESOURCE_TYPE_NAME}static arnForModelManifest(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotfleetwise_IModelManifestRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForModelManifest),error}return resource.modelManifestRef.modelManifestArn}_description;_name;_nodes;_signalCatalogArn;_status;tags;_tagsRaw;cfnPropertyNames={description:"Description",name:"Name",nodes:"Nodes",signalCatalogArn:"SignalCatalogArn",status:"Status",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnModelManifest.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotfleetwise_CfnModelManifestProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModelManifest),error}cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"signalCatalogArn",this),this._description=props.description,this._name=props.name,this._nodes=props.nodes,this._signalCatalogArn=props.signalCatalogArn,this._status=props.status,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTFleetWise::ModelManifest",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get modelManifestRef(){return{modelManifestName:this.ref,modelManifestArn:this.attrArn}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get nodes(){return this._nodes}set nodes(value){cdk().traceProperty(this.node,"Nodes"),this._nodes=value}get signalCatalogArn(){return this._signalCatalogArn}set signalCatalogArn(value){cdk().traceProperty(this.node,"SignalCatalogArn"),this._signalCatalogArn=value}get status(){return this._status}set status(value){cdk().traceProperty(this.node,"Status"),this._status=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModificationTime(){return cdk().Token.asString(this.getAtt("LastModificationTime",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{description:this._description,name:this._name,nodes:this._nodes,signalCatalogArn:this._signalCatalogArn,status:this._status,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",CfnModelManifest.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelManifestPropsToCloudFormation(props)}}exports.CfnModelManifest=CfnModelManifest;function CfnModelManifestPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("nodes",cdk().listValidator(cdk().validateString))(properties.nodes)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().requiredValidator)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().validateString)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("status",cdk().validateString)(properties.status)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnModelManifestProps"')}function convertCfnModelManifestPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelManifestPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),Nodes:cdk().listMapper(cdk().stringToCloudFormation)(properties.nodes),SignalCatalogArn:cdk().stringToCloudFormation(properties.signalCatalogArn),Status:cdk().stringToCloudFormation(properties.status),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnModelManifestPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("nodes","Nodes",properties.Nodes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Nodes):void 0),ret.addPropertyResult("signalCatalogArn","SignalCatalogArn",properties.SignalCatalogArn!=null?cfn_parse().FromCloudFormation.getString(properties.SignalCatalogArn):void 0),ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse().FromCloudFormation.getString(properties.Status):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 CfnSignalCatalog extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotfleetwise.CfnSignalCatalog",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTFleetWise::SignalCatalog";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSignalCatalogPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnSignalCatalog(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 isCfnSignalCatalog(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnSignalCatalog.CFN_RESOURCE_TYPE_NAME}static arnForSignalCatalog(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotfleetwise_ISignalCatalogRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForSignalCatalog),error}return resource.signalCatalogRef.signalCatalogArn}_description;_name;_nodeCounts;_nodes;tags;_tagsRaw;cfnPropertyNames={description:"Description",name:"Name",nodeCounts:"NodeCounts",nodes:"Nodes",tags:"Tags"};constructor(scope,id,props={}){super(scope,id,{type:CfnSignalCatalog.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotfleetwise_CfnSignalCatalogProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSignalCatalog),error}this._description=props.description,this._name=props.name,this._nodeCounts=props.nodeCounts,this._nodes=props.nodes,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTFleetWise::SignalCatalog",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get signalCatalogRef(){return{signalCatalogName:this.ref,signalCatalogArn:this.attrArn}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get nodeCounts(){return this._nodeCounts}set nodeCounts(value){cdk().traceProperty(this.node,"NodeCounts"),this._nodeCounts=value}get nodes(){return this._nodes}set nodes(value){cdk().traceProperty(this.node,"Nodes"),this._nodes=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModificationTime(){return cdk().Token.asString(this.getAtt("LastModificationTime",cdk().ResolutionTypeHint.STRING))}get attrNodeCountsTotalActuators(){return this.getAtt("NodeCounts.TotalActuators",cdk().ResolutionTypeHint.NUMBER)}get attrNodeCountsTotalAttributes(){return this.getAtt("NodeCounts.TotalAttributes",cdk().ResolutionTypeHint.NUMBER)}get attrNodeCountsTotalBranches(){return this.getAtt("NodeCounts.TotalBranches",cdk().ResolutionTypeHint.NUMBER)}get attrNodeCountsTotalNodes(){return this.getAtt("NodeCounts.TotalNodes",cdk().ResolutionTypeHint.NUMBER)}get attrNodeCountsTotalSensors(){return this.getAtt("NodeCounts.TotalSensors",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{description:this._description,name:this._name,nodeCounts:this._nodeCounts,nodes:this._nodes,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",CfnSignalCatalog.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnSignalCatalogPropsToCloudFormation(props)}}exports.CfnSignalCatalog=CfnSignalCatalog;function CfnSignalCatalogNodeCountsPropertyValidator(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("totalActuators",cdk().validateNumber)(properties.totalActuators)),errors.collect(cdk().propertyValidator("totalAttributes",cdk().validateNumber)(properties.totalAttributes)),errors.collect(cdk().propertyValidator("totalBranches",cdk().validateNumber)(properties.totalBranches)),errors.collect(cdk().propertyValidator("totalNodes",cdk().validateNumber)(properties.totalNodes)),errors.collect(cdk().propertyValidator("totalSensors",cdk().validateNumber)(properties.totalSensors)),errors.wrap('supplied properties not correct for "NodeCountsProperty"')}function convertCfnSignalCatalogNodeCountsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSignalCatalogNodeCountsPropertyValidator(properties).assertSuccess(),{TotalActuators:cdk().numberToCloudFormation(properties.totalActuators),TotalAttributes:cdk().numberToCloudFormation(properties.totalAttributes),TotalBranches:cdk().numberToCloudFormation(properties.totalBranches),TotalNodes:cdk().numberToCloudFormation(properties.totalNodes),TotalSensors:cdk().numberToCloudFormation(properties.totalSensors)}):properties}function CfnSignalCatalogNodeCountsPropertyFromCloudFormation(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("totalActuators","TotalActuators",properties.TotalActuators!=null?cfn_parse().FromCloudFormation.getNumber(properties.TotalActuators):void 0),ret.addPropertyResult("totalAttributes","TotalAttributes",properties.TotalAttributes!=null?cfn_parse().FromCloudFormation.getNumber(properties.TotalAttributes):void 0),ret.addPropertyResult("totalBranches","TotalBranches",properties.TotalBranches!=null?cfn_parse().FromCloudFormation.getNumber(properties.TotalBranches):void 0),ret.addPropertyResult("totalNodes","TotalNodes",properties.TotalNodes!=null?cfn_parse().FromCloudFormation.getNumber(properties.TotalNodes):void 0),ret.addPropertyResult("totalSensors","TotalSensors",properties.TotalSensors!=null?cfn_parse().FromCloudFormation.getNumber(properties.TotalSensors):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSignalCatalogAttributePropertyValidator(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("allowedValues",cdk().listValidator(cdk().validateString))(properties.allowedValues)),errors.collect(cdk().propertyValidator("assignedValue",cdk().validateString)(properties.assignedValue)),errors.collect(cdk().propertyValidator("dataType",cdk().requiredValidator)(properties.dataType)),errors.collect(cdk().propertyValidator("dataType",cdk().validateString)(properties.dataType)),errors.collect(cdk().propertyValidator("defaultValue",cdk().validateString)(properties.defaultValue)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("max",cdk().validateNumber)(properties.max)),errors.collect(cdk().propertyValidator("min",cdk().validateNumber)(properties.min)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.wrap('supplied properties not correct for "AttributeProperty"')}function convertCfnSignalCatalogAttributePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSignalCatalogAttributePropertyValidator(properties).assertSuccess(),{AllowedValues:cdk().listMapper(cdk().stringToCloudFormation)(properties.allowedValues),AssignedValue:cdk().stringToCloudFormation(properties.assignedValue),DataType:cdk().stringToCloudFormation(properties.dataType),DefaultValue:cdk().stringToCloudFormation(properties.defaultValue),Description:cdk().stringToCloudFormation(properties.description),FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName),Max:cdk().numberToCloudFormation(properties.max),Min:cdk().numberToCloudFormation(properties.min),Unit:cdk().stringToCloudFormation(properties.unit)}):properties}function CfnSignalCatalogAttributePropertyFromCloudFormation(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("allowedValues","AllowedValues",properties.AllowedValues!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AllowedValues):void 0),ret.addPropertyResult("assignedValue","AssignedValue",properties.AssignedValue!=null?cfn_parse().FromCloudFormation.getString(properties.AssignedValue):void 0),ret.addPropertyResult("dataType","DataType",properties.DataType!=null?cfn_parse().FromCloudFormation.getString(properties.DataType):void 0),ret.addPropertyResult("defaultValue","DefaultValue",properties.DefaultValue!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultValue):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addPropertyResult("max","Max",properties.Max!=null?cfn_parse().FromCloudFormation.getNumber(properties.Max):void 0),ret.addPropertyResult("min","Min",properties.Min!=null?cfn_parse().FromCloudFormation.getNumber(properties.Min):void 0),ret.addPropertyResult("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSignalCatalogBranchPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.wrap('supplied properties not correct for "BranchProperty"')}function convertCfnSignalCatalogBranchPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSignalCatalogBranchPropertyValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName)}):properties}function CfnSignalCatalogBranchPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSignalCatalogSensorPropertyValidator(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("allowedValues",cdk().listValidator(cdk().validateString))(properties.allowedValues)),errors.collect(cdk().propertyValidator("dataType",cdk().requiredValidator)(properties.dataType)),errors.collect(cdk().propertyValidator("dataType",cdk().validateString)(properties.dataType)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("max",cdk().validateNumber)(properties.max)),errors.collect(cdk().propertyValidator("min",cdk().validateNumber)(properties.min)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.wrap('supplied properties not correct for "SensorProperty"')}function convertCfnSignalCatalogSensorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSignalCatalogSensorPropertyValidator(properties).assertSuccess(),{AllowedValues:cdk().listMapper(cdk().stringToCloudFormation)(properties.allowedValues),DataType:cdk().stringToCloudFormation(properties.dataType),Description:cdk().stringToCloudFormation(properties.description),FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName),Max:cdk().numberToCloudFormation(properties.max),Min:cdk().numberToCloudFormation(properties.min),Unit:cdk().stringToCloudFormation(properties.unit)}):properties}function CfnSignalCatalogSensorPropertyFromCloudFormation(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("allowedValues","AllowedValues",properties.AllowedValues!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AllowedValues):void 0),ret.addPropertyResult("dataType","DataType",properties.DataType!=null?cfn_parse().FromCloudFormation.getString(properties.DataType):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addPropertyResult("max","Max",properties.Max!=null?cfn_parse().FromCloudFormation.getNumber(properties.Max):void 0),ret.addPropertyResult("min","Min",properties.Min!=null?cfn_parse().FromCloudFormation.getNumber(properties.Min):void 0),ret.addPropertyResult("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSignalCatalogActuatorPropertyValidator(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("allowedValues",cdk().listValidator(cdk().validateString))(properties.allowedValues)),errors.collect(cdk().propertyValidator("assignedValue",cdk().validateString)(properties.assignedValue)),errors.collect(cdk().propertyValidator("dataType",cdk().requiredValidator)(properties.dataType)),errors.collect(cdk().propertyValidator("dataType",cdk().validateString)(properties.dataType)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().requiredValidator)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("fullyQualifiedName",cdk().validateString)(properties.fullyQualifiedName)),errors.collect(cdk().propertyValidator("max",cdk().validateNumber)(properties.max)),errors.collect(cdk().propertyValidator("min",cdk().validateNumber)(properties.min)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.wrap('supplied properties not correct for "ActuatorProperty"')}function convertCfnSignalCatalogActuatorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSignalCatalogActuatorPropertyValidator(properties).assertSuccess(),{AllowedValues:cdk().listMapper(cdk().stringToCloudFormation)(properties.allowedValues),AssignedValue:cdk().stringToCloudFormation(properties.assignedValue),DataType:cdk().stringToCloudFormation(properties.dataType),Description:cdk().stringToCloudFormation(properties.description),FullyQualifiedName:cdk().stringToCloudFormation(properties.fullyQualifiedName),Max:cdk().numberToCloudFormation(properties.max),Min:cdk().numberToCloudFormation(properties.min),Unit:cdk().stringToCloudFormation(properties.unit)}):properties}function CfnSignalCatalogActuatorPropertyFromCloudFormation(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("allowedValues","AllowedValues",properties.AllowedValues!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AllowedValues):void 0),ret.addPropertyResult("assignedValue","AssignedValue",properties.AssignedValue!=null?cfn_parse().FromCloudFormation.getString(properties.AssignedValue):void 0),ret.addPropertyResult("dataType","DataType",properties.DataType!=null?cfn_parse().FromCloudFormation.getString(properties.DataType):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("fullyQualifiedName","FullyQualifiedName",properties.FullyQualifiedName!=null?cfn_parse().FromCloudFormation.getString(properties.FullyQualifiedName):void 0),ret.addPropertyResult("max","Max",properties.Max!=null?cfn_parse().FromCloudFormation.getNumber(properties.Max):void 0),ret.addPropertyResult("min","Min",properties.Min!=null?cfn_parse().FromCloudFormation.getNumber(properties.Min):void 0),ret.addPropertyResult("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSignalCatalogNodePropertyValidator(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("actuator",CfnSignalCatalogActuatorPropertyValidator)(properties.actuator)),errors.collect(cdk().propertyValidator("attribute",CfnSignalCatalogAttributePropertyValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("branch",CfnSignalCatalogBranchPropertyValidator)(properties.branch)),errors.collect(cdk().propertyValidator("sensor",CfnSignalCatalogSensorPropertyValidator)(properties.sensor)),errors.wrap('supplied properties not correct for "NodeProperty"')}function convertCfnSignalCatalogNodePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSignalCatalogNodePropertyValidator(properties).assertSuccess(),{Actuator:convertCfnSignalCatalogActuatorPropertyToCloudFormation(properties.actuator),Attribute:convertCfnSignalCatalogAttributePropertyToCloudFormation(properties.attribute),Branch:convertCfnSignalCatalogBranchPropertyToCloudFormation(properties.branch),Sensor:convertCfnSignalCatalogSensorPropertyToCloudFormation(properties.sensor)}):properties}function CfnSignalCatalogNodePropertyFromCloudFormation(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("actuator","Actuator",properties.Actuator!=null?CfnSignalCatalogActuatorPropertyFromCloudFormation(properties.Actuator):void 0),ret.addPropertyResult("attribute","Attribute",properties.Attribute!=null?CfnSignalCatalogAttributePropertyFromCloudFormation(properties.Attribute):void 0),ret.addPropertyResult("branch","Branch",properties.Branch!=null?CfnSignalCatalogBranchPropertyFromCloudFormation(properties.Branch):void 0),ret.addPropertyResult("sensor","Sensor",properties.Sensor!=null?CfnSignalCatalogSensorPropertyFromCloudFormation(properties.Sensor):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSignalCatalogPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("nodeCounts",CfnSignalCatalogNodeCountsPropertyValidator)(properties.nodeCounts)),errors.collect(cdk().propertyValidator("nodes",cdk().listValidator(CfnSignalCatalogNodePropertyValidator))(properties.nodes)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnSignalCatalogProps"')}function convertCfnSignalCatalogPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSignalCatalogPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),NodeCounts:convertCfnSignalCatalogNodeCountsPropertyToCloudFormation(properties.nodeCounts),Nodes:cdk().listMapper(convertCfnSignalCatalogNodePropertyToCloudFormation)(properties.nodes),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnSignalCatalogPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("nodeCounts","NodeCounts",properties.NodeCounts!=null?CfnSignalCatalogNodeCountsPropertyFromCloudFormation(properties.NodeCounts):void 0),ret.addPropertyResult("nodes","Nodes",properties.Nodes!=null?cfn_parse().FromCloudFormation.getArray(CfnSignalCatalogNodePropertyFromCloudFormation)(properties.Nodes):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 CfnVehicle extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotfleetwise.CfnVehicle",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTFleetWise::Vehicle";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnVehiclePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnVehicle(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 isCfnVehicle(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnVehicle.CFN_RESOURCE_TYPE_NAME}static arnForVehicle(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotfleetwise_IVehicleRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForVehicle),error}return resource.vehicleRef.vehicleArn}_associationBehavior;_attributes;_decoderManifestArn;_modelManifestArn;_name;_stateTemplates;tags;_tagsRaw;cfnPropertyNames={associationBehavior:"AssociationBehavior",attributes:"Attributes",decoderManifestArn:"DecoderManifestArn",modelManifestArn:"ModelManifestArn",name:"Name",stateTemplates:"StateTemplates",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnVehicle.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotfleetwise_CfnVehicleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnVehicle),error}cdk().requireProperty(props,"decoderManifestArn",this),cdk().requireProperty(props,"modelManifestArn",this),cdk().requireProperty(props,"name",this),this._associationBehavior=props.associationBehavior,this._attributes=props.attributes,this._decoderManifestArn=props.decoderManifestArn,this._modelManifestArn=props.modelManifestArn,this._name=props.name,this._stateTemplates=props.stateTemplates,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTFleetWise::Vehicle",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get vehicleRef(){return{vehicleName:this.ref,vehicleArn:this.attrArn}}get associationBehavior(){return this._associationBehavior}set associationBehavior(value){cdk().traceProperty(this.node,"AssociationBehavior"),this._associationBehavior=value}get attributes(){return this._attributes}set attributes(value){cdk().traceProperty(this.node,"Attributes"),this._attributes=value}get decoderManifestArn(){return this._decoderManifestArn}set decoderManifestArn(value){cdk().traceProperty(this.node,"DecoderManifestArn"),this._decoderManifestArn=value}get modelManifestArn(){return this._modelManifestArn}set modelManifestArn(value){cdk().traceProperty(this.node,"ModelManifestArn"),this._modelManifestArn=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get stateTemplates(){return this._stateTemplates}set stateTemplates(value){cdk().traceProperty(this.node,"StateTemplates"),this._stateTemplates=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModificationTime(){return cdk().Token.asString(this.getAtt("LastModificationTime",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{associationBehavior:this._associationBehavior,attributes:this._attributes,decoderManifestArn:this._decoderManifestArn,modelManifestArn:this._modelManifestArn,name:this._name,stateTemplates:this._stateTemplates,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",CfnVehicle.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnVehiclePropsToCloudFormation(props)}}exports.CfnVehicle=CfnVehicle;function CfnVehicleTimePeriodPropertyValidator(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("unit",cdk().requiredValidator)(properties.unit)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "TimePeriodProperty"')}function convertCfnVehicleTimePeriodPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVehicleTimePeriodPropertyValidator(properties).assertSuccess(),{Unit:cdk().stringToCloudFormation(properties.unit),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnVehicleTimePeriodPropertyFromCloudFormation(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("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnVehiclePeriodicStateTemplateUpdateStrategyPropertyValidator(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("stateTemplateUpdateRate",cdk().requiredValidator)(properties.stateTemplateUpdateRate)),errors.collect(cdk().propertyValidator("stateTemplateUpdateRate",CfnVehicleTimePeriodPropertyValidator)(properties.stateTemplateUpdateRate)),errors.wrap('supplied properties not correct for "PeriodicStateTemplateUpdateStrategyProperty"')}function convertCfnVehiclePeriodicStateTemplateUpdateStrategyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVehiclePeriodicStateTemplateUpdateStrategyPropertyValidator(properties).assertSuccess(),{StateTemplateUpdateRate:convertCfnVehicleTimePeriodPropertyToCloudFormation(properties.stateTemplateUpdateRate)}):properties}function CfnVehiclePeriodicStateTemplateUpdateStrategyPropertyFromCloudFormation(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("stateTemplateUpdateRate","StateTemplateUpdateRate",properties.StateTemplateUpdateRate!=null?CfnVehicleTimePeriodPropertyFromCloudFormation(properties.StateTemplateUpdateRate):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnVehicleStateTemplateUpdateStrategyPropertyValidator(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("onChange",cdk().validateObject)(properties.onChange)),errors.collect(cdk().propertyValidator("periodic",CfnVehiclePeriodicStateTemplateUpdateStrategyPropertyValidator)(properties.periodic)),errors.wrap('supplied properties not correct for "StateTemplateUpdateStrategyProperty"')}function convertCfnVehicleStateTemplateUpdateStrategyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVehicleStateTemplateUpdateStrategyPropertyValidator(properties).assertSuccess(),{OnChange:cdk().objectToCloudFormation(properties.onChange),Periodic:convertCfnVehiclePeriodicStateTemplateUpdateStrategyPropertyToCloudFormation(properties.periodic)}):properties}function CfnVehicleStateTemplateUpdateStrategyPropertyFromCloudFormation(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("onChange","OnChange",properties.OnChange!=null?cfn_parse().FromCloudFormation.getAny(properties.OnChange):void 0),ret.addPropertyResult("periodic","Periodic",properties.Periodic!=null?CfnVehiclePeriodicStateTemplateUpdateStrategyPropertyFromCloudFormation(properties.Periodic):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnVehicleStateTemplateAssociationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("identifier",cdk().requiredValidator)(properties.identifier)),errors.collect(cdk().propertyValidator("identifier",cdk().validateString)(properties.identifier)),errors.collect(cdk().propertyValidator("stateTemplateUpdateStrategy",cdk().requiredValidator)(properties.stateTemplateUpdateStrategy)),errors.collect(cdk().propertyValidator("stateTemplateUpdateStrategy",CfnVehicleStateTemplateUpdateStrategyPropertyValidator)(properties.stateTemplateUpdateStrategy)),errors.wrap('supplied properties not correct for "StateTemplateAssociationProperty"')}function convertCfnVehicleStateTemplateAssociationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVehicleStateTemplateAssociationPropertyValidator(properties).assertSuccess(),{Identifier:cdk().stringToCloudFormation(properties.identifier),StateTemplateUpdateStrategy:convertCfnVehicleStateTemplateUpdateStrategyPropertyToCloudFormation(properties.stateTemplateUpdateStrategy)}):properties}function CfnVehicleStateTemplateAssociationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("identifier","Identifier",properties.Identifier!=null?cfn_parse().FromCloudFormation.getString(properties.Identifier):void 0),ret.addPropertyResult("stateTemplateUpdateStrategy","StateTemplateUpdateStrategy",properties.StateTemplateUpdateStrategy!=null?CfnVehicleStateTemplateUpdateStrategyPropertyFromCloudFormation(properties.StateTemplateUpdateStrategy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnVehiclePropsValidator(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("associationBehavior",cdk().validateString)(properties.associationBehavior)),errors.collect(cdk().propertyValidator("attributes",cdk().hashValidator(cdk().validateString))(properties.attributes)),errors.collect(cdk().propertyValidator("decoderManifestArn",cdk().requiredValidator)(properties.decoderManifestArn)),errors.collect(cdk().propertyValidator("decoderManifestArn",cdk().validateString)(properties.decoderManifestArn)),errors.collect(cdk().propertyValidator("modelManifestArn",cdk().requiredValidator)(properties.modelManifestArn)),errors.collect(cdk().propertyValidator("modelManifestArn",cdk().validateString)(properties.modelManifestArn)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("stateTemplates",cdk().listValidator(CfnVehicleStateTemplateAssociationPropertyValidator))(properties.stateTemplates)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnVehicleProps"')}function convertCfnVehiclePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVehiclePropsValidator(properties).assertSuccess(),{AssociationBehavior:cdk().stringToCloudFormation(properties.associationBehavior),Attributes:cdk().hashMapper(cdk().stringToCloudFormation)(properties.attributes),DecoderManifestArn:cdk().stringToCloudFormation(properties.decoderManifestArn),ModelManifestArn:cdk().stringToCloudFormation(properties.modelManifestArn),Name:cdk().stringToCloudFormation(properties.name),StateTemplates:cdk().listMapper(convertCfnVehicleStateTemplateAssociationPropertyToCloudFormation)(properties.stateTemplates),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnVehiclePropsFromCloudFormation(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("associationBehavior","AssociationBehavior",properties.AssociationBehavior!=null?cfn_parse().FromCloudFormation.getString(properties.AssociationBehavior):void 0),ret.addPropertyResult("attributes","Attributes",properties.Attributes!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Attributes):void 0),ret.addPropertyResult("decoderManifestArn","DecoderManifestArn",properties.DecoderManifestArn!=null?cfn_parse().FromCloudFormation.getString(properties.DecoderManifestArn):void 0),ret.addPropertyResult("modelManifestArn","ModelManifestArn",properties.ModelManifestArn!=null?cfn_parse().FromCloudFormation.getString(properties.ModelManifestArn):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("stateTemplates","StateTemplates",properties.StateTemplates!=null?cfn_parse().FromCloudFormation.getArray(CfnVehicleStateTemplateAssociationPropertyFromCloudFormation)(properties.StateTemplates):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 CfnStateTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotfleetwise.CfnStateTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTFleetWise::StateTemplate";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnStateTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnStateTemplate(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 isCfnStateTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnStateTemplate.CFN_RESOURCE_TYPE_NAME}static arnForStateTemplate(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotfleetwise_IStateTemplateRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForStateTemplate),error}return resource.stateTemplateRef.stateTemplateArn}cdkTagManager;_dataExtraDimensions;_description;_metadataExtraDimensions;_name;_signalCatalogArn;_stateTemplateProperties;_tags;cfnPropertyNames={tags:"Tags",dataExtraDimensions:"DataExtraDimensions",description:"Description",metadataExtraDimensions:"MetadataExtraDimensions",name:"Name",signalCatalogArn:"SignalCatalogArn",stateTemplateProperties:"StateTemplateProperties"};constructor(scope,id,props){super(scope,id,{type:CfnStateTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotfleetwise_CfnStateTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnStateTemplate),error}cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"signalCatalogArn",this),cdk().requireProperty(props,"stateTemplateProperties",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTFleetWise::StateTemplate",void 0,{tagPropertyName:"tags"}),this._dataExtraDimensions=props.dataExtraDimensions,this._description=props.description,this._metadataExtraDimensions=props.metadataExtraDimensions,this._name=props.name,this._signalCatalogArn=props.signalCatalogArn,this._stateTemplateProperties=props.stateTemplateProperties,this._tags=props.tags}get stateTemplateRef(){return{stateTemplateName:this.ref,stateTemplateArn:this.attrArn}}get dataExtraDimensions(){return this._dataExtraDimensions}set dataExtraDimensions(value){cdk().traceProperty(this.node,"DataExtraDimensions"),this._dataExtraDimensions=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get metadataExtraDimensions(){return this._metadataExtraDimensions}set metadataExtraDimensions(value){cdk().traceProperty(this.node,"MetadataExtraDimensions"),this._metadataExtraDimensions=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get signalCatalogArn(){return this._signalCatalogArn}set signalCatalogArn(value){cdk().traceProperty(this.node,"SignalCatalogArn"),this._signalCatalogArn=value}get stateTemplateProperties(){return this._stateTemplateProperties}set stateTemplateProperties(value){cdk().traceProperty(this.node,"StateTemplateProperties"),this._stateTemplateProperties=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrLastModificationTime(){return cdk().Token.asString(this.getAtt("LastModificationTime",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),dataExtraDimensions:this._dataExtraDimensions,description:this._description,metadataExtraDimensions:this._metadataExtraDimensions,name:this._name,signalCatalogArn:this._signalCatalogArn,stateTemplateProperties:this._stateTemplateProperties}}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",CfnStateTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnStateTemplatePropsToCloudFormation(props)}}exports.CfnStateTemplate=CfnStateTemplate;function CfnStateTemplatePropsValidator(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("dataExtraDimensions",cdk().listValidator(cdk().validateString))(properties.dataExtraDimensions)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("metadataExtraDimensions",cdk().listValidator(cdk().validateString))(properties.metadataExtraDimensions)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().requiredValidator)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("signalCatalogArn",cdk().validateString)(properties.signalCatalogArn)),errors.collect(cdk().propertyValidator("stateTemplateProperties",cdk().requiredValidator)(properties.stateTemplateProperties)),errors.collect(cdk().propertyValidator("stateTemplateProperties",cdk().listValidator(cdk().validateString))(properties.stateTemplateProperties)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnStateTemplateProps"')}function convertCfnStateTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnStateTemplatePropsValidator(properties).assertSuccess(),{DataExtraDimensions:cdk().listMapper(cdk().stringToCloudFormation)(properties.dataExtraDimensions),Description:cdk().stringToCloudFormation(properties.description),MetadataExtraDimensions:cdk().listMapper(cdk().stringToCloudFormation)(properties.metadataExtraDimensions),Name:cdk().stringToCloudFormation(properties.name),SignalCatalogArn:cdk().stringToCloudFormation(properties.signalCatalogArn),StateTemplateProperties:cdk().listMapper(cdk().stringToCloudFormation)(properties.stateTemplateProperties),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnStateTemplatePropsFromCloudFormation(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("dataExtraDimensions","DataExtraDimensions",properties.DataExtraDimensions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.DataExtraDimensions):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("metadataExtraDimensions","MetadataExtraDimensions",properties.MetadataExtraDimensions!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.MetadataExtraDimensions):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("signalCatalogArn","SignalCatalogArn",properties.SignalCatalogArn!=null?cfn_parse().FromCloudFormation.getString(properties.SignalCatalogArn):void 0),ret.addPropertyResult("stateTemplateProperties","StateTemplateProperties",properties.StateTemplateProperties!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.StateTemplateProperties):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}
|