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

2 lines
158 KiB
JavaScript

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnDataset=exports.CfnComputationModel=exports.CfnProject=exports.CfnPortal=exports.CfnGateway=exports.CfnDashboard=exports.CfnAssetModel=exports.CfnAsset=exports.CfnAccessPolicy=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 CfnAccessPolicy extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnAccessPolicy",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::AccessPolicy";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAccessPolicyPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAccessPolicy(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 isCfnAccessPolicy(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAccessPolicy.CFN_RESOURCE_TYPE_NAME}static fromAccessPolicyArn(scope,id,arn){class Import extends cdk().Resource{accessPolicyRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:access-policy/${AccessPolicyId}").parse(arn2);this.accessPolicyRef={accessPolicyId:variables.AccessPolicyId,accessPolicyArn:arn2}}}return new Import(scope,id,arn)}static fromAccessPolicyId(scope,id,accessPolicyId){class Import extends cdk().Resource{accessPolicyRef;constructor(scope2,id2,accessPolicyId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:access-policy/${AccessPolicyId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AccessPolicyId:accessPolicyId2});super(scope2,id2,{environmentFromArn:arn}),this.accessPolicyRef={accessPolicyId:accessPolicyId2,accessPolicyArn:arn}}}return new Import(scope,id,accessPolicyId)}static arnForAccessPolicy(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IAccessPolicyRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAccessPolicy),error}return resource.accessPolicyRef.accessPolicyArn}_accessPolicyIdentity;_accessPolicyPermission;_accessPolicyResource;cfnPropertyNames={accessPolicyIdentity:"AccessPolicyIdentity",accessPolicyPermission:"AccessPolicyPermission",accessPolicyResource:"AccessPolicyResource"};constructor(scope,id,props){super(scope,id,{type:CfnAccessPolicy.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnAccessPolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAccessPolicy),error}cdk().requireProperty(props,"accessPolicyIdentity",this),cdk().requireProperty(props,"accessPolicyPermission",this),cdk().requireProperty(props,"accessPolicyResource",this),this._accessPolicyIdentity=props.accessPolicyIdentity,this._accessPolicyPermission=props.accessPolicyPermission,this._accessPolicyResource=props.accessPolicyResource}get accessPolicyRef(){return{accessPolicyId:this.ref,accessPolicyArn:this.attrAccessPolicyArn}}get accessPolicyIdentity(){return this._accessPolicyIdentity}set accessPolicyIdentity(value){cdk().traceProperty(this.node,"AccessPolicyIdentity"),this._accessPolicyIdentity=value}get accessPolicyPermission(){return this._accessPolicyPermission}set accessPolicyPermission(value){cdk().traceProperty(this.node,"AccessPolicyPermission"),this._accessPolicyPermission=value}get accessPolicyResource(){return this._accessPolicyResource}set accessPolicyResource(value){cdk().traceProperty(this.node,"AccessPolicyResource"),this._accessPolicyResource=value}get attrAccessPolicyArn(){return cdk().Token.asString(this.getAtt("AccessPolicyArn",cdk().ResolutionTypeHint.STRING))}get attrAccessPolicyId(){return cdk().Token.asString(this.getAtt("AccessPolicyId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{accessPolicyIdentity:this._accessPolicyIdentity,accessPolicyPermission:this._accessPolicyPermission,accessPolicyResource:this._accessPolicyResource}}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",CfnAccessPolicy.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAccessPolicyPropsToCloudFormation(props)}}exports.CfnAccessPolicy=CfnAccessPolicy;function CfnAccessPolicyProjectPropertyValidator(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().validateString)(properties.id)),errors.wrap('supplied properties not correct for "ProjectProperty"')}function convertCfnAccessPolicyProjectPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyProjectPropertyValidator(properties).assertSuccess(),{id:cdk().stringToCloudFormation(properties.id)}):properties}function CfnAccessPolicyProjectPropertyFromCloudFormation(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.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPolicyPortalPropertyValidator(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().validateString)(properties.id)),errors.wrap('supplied properties not correct for "PortalProperty"')}function convertCfnAccessPolicyPortalPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyPortalPropertyValidator(properties).assertSuccess(),{id:cdk().stringToCloudFormation(properties.id)}):properties}function CfnAccessPolicyPortalPropertyFromCloudFormation(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.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPolicyAccessPolicyResourcePropertyValidator(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("portal",CfnAccessPolicyPortalPropertyValidator)(properties.portal)),errors.collect(cdk().propertyValidator("project",CfnAccessPolicyProjectPropertyValidator)(properties.project)),errors.wrap('supplied properties not correct for "AccessPolicyResourceProperty"')}function convertCfnAccessPolicyAccessPolicyResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyAccessPolicyResourcePropertyValidator(properties).assertSuccess(),{Portal:convertCfnAccessPolicyPortalPropertyToCloudFormation(properties.portal),Project:convertCfnAccessPolicyProjectPropertyToCloudFormation(properties.project)}):properties}function CfnAccessPolicyAccessPolicyResourcePropertyFromCloudFormation(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("portal","Portal",properties.Portal!=null?CfnAccessPolicyPortalPropertyFromCloudFormation(properties.Portal):void 0),ret.addPropertyResult("project","Project",properties.Project!=null?CfnAccessPolicyProjectPropertyFromCloudFormation(properties.Project):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPolicyUserPropertyValidator(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().validateString)(properties.id)),errors.wrap('supplied properties not correct for "UserProperty"')}function convertCfnAccessPolicyUserPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyUserPropertyValidator(properties).assertSuccess(),{id:cdk().stringToCloudFormation(properties.id)}):properties}function CfnAccessPolicyUserPropertyFromCloudFormation(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.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPolicyIamUserPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("arn",cdk().validateString)(properties.arn)),errors.wrap('supplied properties not correct for "IamUserProperty"')}function convertCfnAccessPolicyIamUserPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyIamUserPropertyValidator(properties).assertSuccess(),{arn:cdk().stringToCloudFormation(properties.arn)}):properties}function CfnAccessPolicyIamUserPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","arn",properties.arn!=null?cfn_parse().FromCloudFormation.getString(properties.arn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPolicyIamRolePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("arn",cdk().validateString)(properties.arn)),errors.wrap('supplied properties not correct for "IamRoleProperty"')}function convertCfnAccessPolicyIamRolePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyIamRolePropertyValidator(properties).assertSuccess(),{arn:cdk().stringToCloudFormation(properties.arn)}):properties}function CfnAccessPolicyIamRolePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","arn",properties.arn!=null?cfn_parse().FromCloudFormation.getString(properties.arn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPolicyAccessPolicyIdentityPropertyValidator(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("iamRole",CfnAccessPolicyIamRolePropertyValidator)(properties.iamRole)),errors.collect(cdk().propertyValidator("iamUser",CfnAccessPolicyIamUserPropertyValidator)(properties.iamUser)),errors.collect(cdk().propertyValidator("user",CfnAccessPolicyUserPropertyValidator)(properties.user)),errors.wrap('supplied properties not correct for "AccessPolicyIdentityProperty"')}function convertCfnAccessPolicyAccessPolicyIdentityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyAccessPolicyIdentityPropertyValidator(properties).assertSuccess(),{IamRole:convertCfnAccessPolicyIamRolePropertyToCloudFormation(properties.iamRole),IamUser:convertCfnAccessPolicyIamUserPropertyToCloudFormation(properties.iamUser),User:convertCfnAccessPolicyUserPropertyToCloudFormation(properties.user)}):properties}function CfnAccessPolicyAccessPolicyIdentityPropertyFromCloudFormation(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("iamRole","IamRole",properties.IamRole!=null?CfnAccessPolicyIamRolePropertyFromCloudFormation(properties.IamRole):void 0),ret.addPropertyResult("iamUser","IamUser",properties.IamUser!=null?CfnAccessPolicyIamUserPropertyFromCloudFormation(properties.IamUser):void 0),ret.addPropertyResult("user","User",properties.User!=null?CfnAccessPolicyUserPropertyFromCloudFormation(properties.User):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPolicyPropsValidator(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("accessPolicyIdentity",cdk().requiredValidator)(properties.accessPolicyIdentity)),errors.collect(cdk().propertyValidator("accessPolicyIdentity",CfnAccessPolicyAccessPolicyIdentityPropertyValidator)(properties.accessPolicyIdentity)),errors.collect(cdk().propertyValidator("accessPolicyPermission",cdk().requiredValidator)(properties.accessPolicyPermission)),errors.collect(cdk().propertyValidator("accessPolicyPermission",cdk().validateString)(properties.accessPolicyPermission)),errors.collect(cdk().propertyValidator("accessPolicyResource",cdk().requiredValidator)(properties.accessPolicyResource)),errors.collect(cdk().propertyValidator("accessPolicyResource",CfnAccessPolicyAccessPolicyResourcePropertyValidator)(properties.accessPolicyResource)),errors.wrap('supplied properties not correct for "CfnAccessPolicyProps"')}function convertCfnAccessPolicyPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAccessPolicyPropsValidator(properties).assertSuccess(),{AccessPolicyIdentity:convertCfnAccessPolicyAccessPolicyIdentityPropertyToCloudFormation(properties.accessPolicyIdentity),AccessPolicyPermission:cdk().stringToCloudFormation(properties.accessPolicyPermission),AccessPolicyResource:convertCfnAccessPolicyAccessPolicyResourcePropertyToCloudFormation(properties.accessPolicyResource)}):properties}function CfnAccessPolicyPropsFromCloudFormation(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("accessPolicyIdentity","AccessPolicyIdentity",properties.AccessPolicyIdentity!=null?CfnAccessPolicyAccessPolicyIdentityPropertyFromCloudFormation(properties.AccessPolicyIdentity):void 0),ret.addPropertyResult("accessPolicyPermission","AccessPolicyPermission",properties.AccessPolicyPermission!=null?cfn_parse().FromCloudFormation.getString(properties.AccessPolicyPermission):void 0),ret.addPropertyResult("accessPolicyResource","AccessPolicyResource",properties.AccessPolicyResource!=null?CfnAccessPolicyAccessPolicyResourcePropertyFromCloudFormation(properties.AccessPolicyResource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAsset extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnAsset",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Asset";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAssetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAsset(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 isCfnAsset(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAsset.CFN_RESOURCE_TYPE_NAME}static fromAssetArn(scope,id,arn){class Import extends cdk().Resource{assetRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:asset/${AssetId}").parse(arn2);this.assetRef={assetId:variables.AssetId,assetArn:arn2}}}return new Import(scope,id,arn)}static fromAssetId(scope,id,assetId){class Import extends cdk().Resource{assetRef;constructor(scope2,id2,assetId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:asset/${AssetId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AssetId:assetId2});super(scope2,id2,{environmentFromArn:arn}),this.assetRef={assetId:assetId2,assetArn:arn}}}return new Import(scope,id,assetId)}static arnForAsset(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IAssetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAsset),error}return resource.assetRef.assetArn}_assetDescription;_assetExternalId;_assetHierarchies;_assetModelId;_assetName;_assetProperties;tags;_tagsRaw;cfnPropertyNames={assetDescription:"AssetDescription",assetExternalId:"AssetExternalId",assetHierarchies:"AssetHierarchies",assetModelId:"AssetModelId",assetName:"AssetName",assetProperties:"AssetProperties",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnAsset.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnAssetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAsset),error}cdk().requireProperty(props,"assetModelId",this),cdk().requireProperty(props,"assetName",this),this._assetDescription=props.assetDescription,this._assetExternalId=props.assetExternalId,this._assetHierarchies=props.assetHierarchies,this._assetModelId=cdk().getRefProperty(props.assetModelId?.assetModelRef,"assetModelId")??cdk().ensureStringOrUndefined(props.assetModelId,"assetModelId","iotsitewise.IAssetModelRef | string"),this._assetName=props.assetName,this._assetProperties=props.assetProperties,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Asset",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get assetRef(){return{assetId:this.ref,assetArn:this.attrAssetArn}}get assetDescription(){return this._assetDescription}set assetDescription(value){cdk().traceProperty(this.node,"AssetDescription"),this._assetDescription=value}get assetExternalId(){return this._assetExternalId}set assetExternalId(value){cdk().traceProperty(this.node,"AssetExternalId"),this._assetExternalId=value}get assetHierarchies(){return this._assetHierarchies}set assetHierarchies(value){cdk().traceProperty(this.node,"AssetHierarchies"),this._assetHierarchies=value}get assetModelId(){return this._assetModelId}set assetModelId(value){cdk().traceProperty(this.node,"AssetModelId"),this._assetModelId=value}get assetName(){return this._assetName}set assetName(value){cdk().traceProperty(this.node,"AssetName"),this._assetName=value}get assetProperties(){return this._assetProperties}set assetProperties(value){cdk().traceProperty(this.node,"AssetProperties"),this._assetProperties=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrAssetArn(){return cdk().Token.asString(this.getAtt("AssetArn",cdk().ResolutionTypeHint.STRING))}get attrAssetId(){return cdk().Token.asString(this.getAtt("AssetId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{assetDescription:this._assetDescription,assetExternalId:this._assetExternalId,assetHierarchies:this._assetHierarchies,assetModelId:this._assetModelId,assetName:this._assetName,assetProperties:this._assetProperties,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",CfnAsset.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAssetPropsToCloudFormation(props)}}exports.CfnAsset=CfnAsset;function CfnAssetAssetPropertyPropertyValidator(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("alias",cdk().validateString)(properties.alias)),errors.collect(cdk().propertyValidator("externalId",cdk().validateString)(properties.externalId)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("logicalId",cdk().validateString)(properties.logicalId)),errors.collect(cdk().propertyValidator("notificationState",cdk().validateString)(properties.notificationState)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.wrap('supplied properties not correct for "AssetPropertyProperty"')}function convertCfnAssetAssetPropertyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetAssetPropertyPropertyValidator(properties).assertSuccess(),{Alias:cdk().stringToCloudFormation(properties.alias),ExternalId:cdk().stringToCloudFormation(properties.externalId),Id:cdk().stringToCloudFormation(properties.id),LogicalId:cdk().stringToCloudFormation(properties.logicalId),NotificationState:cdk().stringToCloudFormation(properties.notificationState),Unit:cdk().stringToCloudFormation(properties.unit)}):properties}function CfnAssetAssetPropertyPropertyFromCloudFormation(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("alias","Alias",properties.Alias!=null?cfn_parse().FromCloudFormation.getString(properties.Alias):void 0),ret.addPropertyResult("externalId","ExternalId",properties.ExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.ExternalId):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("logicalId","LogicalId",properties.LogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.LogicalId):void 0),ret.addPropertyResult("notificationState","NotificationState",properties.NotificationState!=null?cfn_parse().FromCloudFormation.getString(properties.NotificationState):void 0),ret.addPropertyResult("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetAssetHierarchyPropertyValidator(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("childAssetId",cdk().requiredValidator)(properties.childAssetId)),errors.collect(cdk().propertyValidator("childAssetId",cdk().validateString)(properties.childAssetId)),errors.collect(cdk().propertyValidator("externalId",cdk().validateString)(properties.externalId)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("logicalId",cdk().validateString)(properties.logicalId)),errors.wrap('supplied properties not correct for "AssetHierarchyProperty"')}function convertCfnAssetAssetHierarchyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetAssetHierarchyPropertyValidator(properties).assertSuccess(),{ChildAssetId:cdk().stringToCloudFormation(properties.childAssetId),ExternalId:cdk().stringToCloudFormation(properties.externalId),Id:cdk().stringToCloudFormation(properties.id),LogicalId:cdk().stringToCloudFormation(properties.logicalId)}):properties}function CfnAssetAssetHierarchyPropertyFromCloudFormation(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("childAssetId","ChildAssetId",properties.ChildAssetId!=null?cfn_parse().FromCloudFormation.getString(properties.ChildAssetId):void 0),ret.addPropertyResult("externalId","ExternalId",properties.ExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.ExternalId):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("logicalId","LogicalId",properties.LogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.LogicalId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetPropsValidator(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("assetDescription",cdk().validateString)(properties.assetDescription)),errors.collect(cdk().propertyValidator("assetExternalId",cdk().validateString)(properties.assetExternalId)),errors.collect(cdk().propertyValidator("assetHierarchies",cdk().listValidator(CfnAssetAssetHierarchyPropertyValidator))(properties.assetHierarchies)),errors.collect(cdk().propertyValidator("assetModelId",cdk().requiredValidator)(properties.assetModelId)),errors.collect(cdk().propertyValidator("assetModelId",cdk().validateString)(properties.assetModelId)),errors.collect(cdk().propertyValidator("assetName",cdk().requiredValidator)(properties.assetName)),errors.collect(cdk().propertyValidator("assetName",cdk().validateString)(properties.assetName)),errors.collect(cdk().propertyValidator("assetProperties",cdk().listValidator(CfnAssetAssetPropertyPropertyValidator))(properties.assetProperties)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnAssetProps"')}function convertCfnAssetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetPropsValidator(properties).assertSuccess(),{AssetDescription:cdk().stringToCloudFormation(properties.assetDescription),AssetExternalId:cdk().stringToCloudFormation(properties.assetExternalId),AssetHierarchies:cdk().listMapper(convertCfnAssetAssetHierarchyPropertyToCloudFormation)(properties.assetHierarchies),AssetModelId:cdk().stringToCloudFormation(properties.assetModelId),AssetName:cdk().stringToCloudFormation(properties.assetName),AssetProperties:cdk().listMapper(convertCfnAssetAssetPropertyPropertyToCloudFormation)(properties.assetProperties),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnAssetPropsFromCloudFormation(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("assetDescription","AssetDescription",properties.AssetDescription!=null?cfn_parse().FromCloudFormation.getString(properties.AssetDescription):void 0),ret.addPropertyResult("assetExternalId","AssetExternalId",properties.AssetExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetExternalId):void 0),ret.addPropertyResult("assetHierarchies","AssetHierarchies",properties.AssetHierarchies!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetAssetHierarchyPropertyFromCloudFormation)(properties.AssetHierarchies):void 0),ret.addPropertyResult("assetModelId","AssetModelId",properties.AssetModelId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelId):void 0),ret.addPropertyResult("assetName","AssetName",properties.AssetName!=null?cfn_parse().FromCloudFormation.getString(properties.AssetName):void 0),ret.addPropertyResult("assetProperties","AssetProperties",properties.AssetProperties!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetAssetPropertyPropertyFromCloudFormation)(properties.AssetProperties):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 CfnAssetModel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnAssetModel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::AssetModel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAssetModelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAssetModel(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 isCfnAssetModel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAssetModel.CFN_RESOURCE_TYPE_NAME}static fromAssetModelArn(scope,id,arn){class Import extends cdk().Resource{assetModelRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:asset-model/${AssetModelId}").parse(arn2);this.assetModelRef={assetModelId:variables.AssetModelId,assetModelArn:arn2}}}return new Import(scope,id,arn)}static fromAssetModelId(scope,id,assetModelId){class Import extends cdk().Resource{assetModelRef;constructor(scope2,id2,assetModelId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:asset-model/${AssetModelId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AssetModelId:assetModelId2});super(scope2,id2,{environmentFromArn:arn}),this.assetModelRef={assetModelId:assetModelId2,assetModelArn:arn}}}return new Import(scope,id,assetModelId)}static arnForAssetModel(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IAssetModelRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAssetModel),error}return resource.assetModelRef.assetModelArn}_assetModelCompositeModels;_assetModelDescription;_assetModelExternalId;_assetModelHierarchies;_assetModelName;_assetModelProperties;_assetModelType;_enforcedAssetModelInterfaceRelationships;tags;_tagsRaw;cfnPropertyNames={assetModelCompositeModels:"AssetModelCompositeModels",assetModelDescription:"AssetModelDescription",assetModelExternalId:"AssetModelExternalId",assetModelHierarchies:"AssetModelHierarchies",assetModelName:"AssetModelName",assetModelProperties:"AssetModelProperties",assetModelType:"AssetModelType",enforcedAssetModelInterfaceRelationships:"EnforcedAssetModelInterfaceRelationships",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnAssetModel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnAssetModelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAssetModel),error}cdk().requireProperty(props,"assetModelName",this),this._assetModelCompositeModels=props.assetModelCompositeModels,this._assetModelDescription=props.assetModelDescription,this._assetModelExternalId=props.assetModelExternalId,this._assetModelHierarchies=props.assetModelHierarchies,this._assetModelName=props.assetModelName,this._assetModelProperties=props.assetModelProperties,this._assetModelType=props.assetModelType,this._enforcedAssetModelInterfaceRelationships=props.enforcedAssetModelInterfaceRelationships,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::AssetModel",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get assetModelRef(){return{assetModelId:this.ref,assetModelArn:this.attrAssetModelArn}}get assetModelCompositeModels(){return this._assetModelCompositeModels}set assetModelCompositeModels(value){cdk().traceProperty(this.node,"AssetModelCompositeModels"),this._assetModelCompositeModels=value}get assetModelDescription(){return this._assetModelDescription}set assetModelDescription(value){cdk().traceProperty(this.node,"AssetModelDescription"),this._assetModelDescription=value}get assetModelExternalId(){return this._assetModelExternalId}set assetModelExternalId(value){cdk().traceProperty(this.node,"AssetModelExternalId"),this._assetModelExternalId=value}get assetModelHierarchies(){return this._assetModelHierarchies}set assetModelHierarchies(value){cdk().traceProperty(this.node,"AssetModelHierarchies"),this._assetModelHierarchies=value}get assetModelName(){return this._assetModelName}set assetModelName(value){cdk().traceProperty(this.node,"AssetModelName"),this._assetModelName=value}get assetModelProperties(){return this._assetModelProperties}set assetModelProperties(value){cdk().traceProperty(this.node,"AssetModelProperties"),this._assetModelProperties=value}get assetModelType(){return this._assetModelType}set assetModelType(value){cdk().traceProperty(this.node,"AssetModelType"),this._assetModelType=value}get enforcedAssetModelInterfaceRelationships(){return this._enforcedAssetModelInterfaceRelationships}set enforcedAssetModelInterfaceRelationships(value){cdk().traceProperty(this.node,"EnforcedAssetModelInterfaceRelationships"),this._enforcedAssetModelInterfaceRelationships=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrAssetModelArn(){return cdk().Token.asString(this.getAtt("AssetModelArn",cdk().ResolutionTypeHint.STRING))}get attrAssetModelId(){return cdk().Token.asString(this.getAtt("AssetModelId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{assetModelCompositeModels:this._assetModelCompositeModels,assetModelDescription:this._assetModelDescription,assetModelExternalId:this._assetModelExternalId,assetModelHierarchies:this._assetModelHierarchies,assetModelName:this._assetModelName,assetModelProperties:this._assetModelProperties,assetModelType:this._assetModelType,enforcedAssetModelInterfaceRelationships:this._enforcedAssetModelInterfaceRelationships,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",CfnAssetModel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAssetModelPropsToCloudFormation(props)}}exports.CfnAssetModel=CfnAssetModel;function CfnAssetModelAttributePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("defaultValue",cdk().validateString)(properties.defaultValue)),errors.wrap('supplied properties not correct for "AttributeProperty"')}function convertCfnAssetModelAttributePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelAttributePropertyValidator(properties).assertSuccess(),{DefaultValue:cdk().stringToCloudFormation(properties.defaultValue)}):properties}function CfnAssetModelAttributePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("defaultValue","DefaultValue",properties.DefaultValue!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelPropertyPathDefinitionPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "PropertyPathDefinitionProperty"')}function convertCfnAssetModelPropertyPathDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelPropertyPathDefinitionPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnAssetModelPropertyPathDefinitionPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelVariableValuePropertyValidator(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("hierarchyExternalId",cdk().validateString)(properties.hierarchyExternalId)),errors.collect(cdk().propertyValidator("hierarchyId",cdk().validateString)(properties.hierarchyId)),errors.collect(cdk().propertyValidator("hierarchyLogicalId",cdk().validateString)(properties.hierarchyLogicalId)),errors.collect(cdk().propertyValidator("propertyExternalId",cdk().validateString)(properties.propertyExternalId)),errors.collect(cdk().propertyValidator("propertyId",cdk().validateString)(properties.propertyId)),errors.collect(cdk().propertyValidator("propertyLogicalId",cdk().validateString)(properties.propertyLogicalId)),errors.collect(cdk().propertyValidator("propertyPath",cdk().listValidator(CfnAssetModelPropertyPathDefinitionPropertyValidator))(properties.propertyPath)),errors.wrap('supplied properties not correct for "VariableValueProperty"')}function convertCfnAssetModelVariableValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelVariableValuePropertyValidator(properties).assertSuccess(),{HierarchyExternalId:cdk().stringToCloudFormation(properties.hierarchyExternalId),HierarchyId:cdk().stringToCloudFormation(properties.hierarchyId),HierarchyLogicalId:cdk().stringToCloudFormation(properties.hierarchyLogicalId),PropertyExternalId:cdk().stringToCloudFormation(properties.propertyExternalId),PropertyId:cdk().stringToCloudFormation(properties.propertyId),PropertyLogicalId:cdk().stringToCloudFormation(properties.propertyLogicalId),PropertyPath:cdk().listMapper(convertCfnAssetModelPropertyPathDefinitionPropertyToCloudFormation)(properties.propertyPath)}):properties}function CfnAssetModelVariableValuePropertyFromCloudFormation(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("hierarchyExternalId","HierarchyExternalId",properties.HierarchyExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.HierarchyExternalId):void 0),ret.addPropertyResult("hierarchyId","HierarchyId",properties.HierarchyId!=null?cfn_parse().FromCloudFormation.getString(properties.HierarchyId):void 0),ret.addPropertyResult("hierarchyLogicalId","HierarchyLogicalId",properties.HierarchyLogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.HierarchyLogicalId):void 0),ret.addPropertyResult("propertyExternalId","PropertyExternalId",properties.PropertyExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyExternalId):void 0),ret.addPropertyResult("propertyId","PropertyId",properties.PropertyId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyId):void 0),ret.addPropertyResult("propertyLogicalId","PropertyLogicalId",properties.PropertyLogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyLogicalId):void 0),ret.addPropertyResult("propertyPath","PropertyPath",properties.PropertyPath!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelPropertyPathDefinitionPropertyFromCloudFormation)(properties.PropertyPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelExpressionVariablePropertyValidator(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("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",CfnAssetModelVariableValuePropertyValidator)(properties.value)),errors.wrap('supplied properties not correct for "ExpressionVariableProperty"')}function convertCfnAssetModelExpressionVariablePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelExpressionVariablePropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Value:convertCfnAssetModelVariableValuePropertyToCloudFormation(properties.value)}):properties}function CfnAssetModelExpressionVariablePropertyFromCloudFormation(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("value","Value",properties.Value!=null?CfnAssetModelVariableValuePropertyFromCloudFormation(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelTumblingWindowPropertyValidator(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("interval",cdk().requiredValidator)(properties.interval)),errors.collect(cdk().propertyValidator("interval",cdk().validateString)(properties.interval)),errors.collect(cdk().propertyValidator("offset",cdk().validateString)(properties.offset)),errors.wrap('supplied properties not correct for "TumblingWindowProperty"')}function convertCfnAssetModelTumblingWindowPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelTumblingWindowPropertyValidator(properties).assertSuccess(),{Interval:cdk().stringToCloudFormation(properties.interval),Offset:cdk().stringToCloudFormation(properties.offset)}):properties}function CfnAssetModelTumblingWindowPropertyFromCloudFormation(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("interval","Interval",properties.Interval!=null?cfn_parse().FromCloudFormation.getString(properties.Interval):void 0),ret.addPropertyResult("offset","Offset",properties.Offset!=null?cfn_parse().FromCloudFormation.getString(properties.Offset):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelMetricWindowPropertyValidator(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("tumbling",CfnAssetModelTumblingWindowPropertyValidator)(properties.tumbling)),errors.wrap('supplied properties not correct for "MetricWindowProperty"')}function convertCfnAssetModelMetricWindowPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelMetricWindowPropertyValidator(properties).assertSuccess(),{Tumbling:convertCfnAssetModelTumblingWindowPropertyToCloudFormation(properties.tumbling)}):properties}function CfnAssetModelMetricWindowPropertyFromCloudFormation(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("tumbling","Tumbling",properties.Tumbling!=null?CfnAssetModelTumblingWindowPropertyFromCloudFormation(properties.Tumbling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelMetricPropertyValidator(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("expression",cdk().requiredValidator)(properties.expression)),errors.collect(cdk().propertyValidator("expression",cdk().validateString)(properties.expression)),errors.collect(cdk().propertyValidator("variables",cdk().requiredValidator)(properties.variables)),errors.collect(cdk().propertyValidator("variables",cdk().listValidator(CfnAssetModelExpressionVariablePropertyValidator))(properties.variables)),errors.collect(cdk().propertyValidator("window",cdk().requiredValidator)(properties.window)),errors.collect(cdk().propertyValidator("window",CfnAssetModelMetricWindowPropertyValidator)(properties.window)),errors.wrap('supplied properties not correct for "MetricProperty"')}function convertCfnAssetModelMetricPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelMetricPropertyValidator(properties).assertSuccess(),{Expression:cdk().stringToCloudFormation(properties.expression),Variables:cdk().listMapper(convertCfnAssetModelExpressionVariablePropertyToCloudFormation)(properties.variables),Window:convertCfnAssetModelMetricWindowPropertyToCloudFormation(properties.window)}):properties}function CfnAssetModelMetricPropertyFromCloudFormation(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("expression","Expression",properties.Expression!=null?cfn_parse().FromCloudFormation.getString(properties.Expression):void 0),ret.addPropertyResult("variables","Variables",properties.Variables!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelExpressionVariablePropertyFromCloudFormation)(properties.Variables):void 0),ret.addPropertyResult("window","Window",properties.Window!=null?CfnAssetModelMetricWindowPropertyFromCloudFormation(properties.Window):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelTransformPropertyValidator(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("expression",cdk().requiredValidator)(properties.expression)),errors.collect(cdk().propertyValidator("expression",cdk().validateString)(properties.expression)),errors.collect(cdk().propertyValidator("variables",cdk().requiredValidator)(properties.variables)),errors.collect(cdk().propertyValidator("variables",cdk().listValidator(CfnAssetModelExpressionVariablePropertyValidator))(properties.variables)),errors.wrap('supplied properties not correct for "TransformProperty"')}function convertCfnAssetModelTransformPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelTransformPropertyValidator(properties).assertSuccess(),{Expression:cdk().stringToCloudFormation(properties.expression),Variables:cdk().listMapper(convertCfnAssetModelExpressionVariablePropertyToCloudFormation)(properties.variables)}):properties}function CfnAssetModelTransformPropertyFromCloudFormation(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("expression","Expression",properties.Expression!=null?cfn_parse().FromCloudFormation.getString(properties.Expression):void 0),ret.addPropertyResult("variables","Variables",properties.Variables!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelExpressionVariablePropertyFromCloudFormation)(properties.Variables):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelPropertyTypePropertyValidator(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("attribute",CfnAssetModelAttributePropertyValidator)(properties.attribute)),errors.collect(cdk().propertyValidator("metric",CfnAssetModelMetricPropertyValidator)(properties.metric)),errors.collect(cdk().propertyValidator("transform",CfnAssetModelTransformPropertyValidator)(properties.transform)),errors.collect(cdk().propertyValidator("typeName",cdk().requiredValidator)(properties.typeName)),errors.collect(cdk().propertyValidator("typeName",cdk().validateString)(properties.typeName)),errors.wrap('supplied properties not correct for "PropertyTypeProperty"')}function convertCfnAssetModelPropertyTypePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelPropertyTypePropertyValidator(properties).assertSuccess(),{Attribute:convertCfnAssetModelAttributePropertyToCloudFormation(properties.attribute),Metric:convertCfnAssetModelMetricPropertyToCloudFormation(properties.metric),Transform:convertCfnAssetModelTransformPropertyToCloudFormation(properties.transform),TypeName:cdk().stringToCloudFormation(properties.typeName)}):properties}function CfnAssetModelPropertyTypePropertyFromCloudFormation(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("attribute","Attribute",properties.Attribute!=null?CfnAssetModelAttributePropertyFromCloudFormation(properties.Attribute):void 0),ret.addPropertyResult("metric","Metric",properties.Metric!=null?CfnAssetModelMetricPropertyFromCloudFormation(properties.Metric):void 0),ret.addPropertyResult("transform","Transform",properties.Transform!=null?CfnAssetModelTransformPropertyFromCloudFormation(properties.Transform):void 0),ret.addPropertyResult("typeName","TypeName",properties.TypeName!=null?cfn_parse().FromCloudFormation.getString(properties.TypeName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelAssetModelPropertyPropertyValidator(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("dataType",cdk().requiredValidator)(properties.dataType)),errors.collect(cdk().propertyValidator("dataType",cdk().validateString)(properties.dataType)),errors.collect(cdk().propertyValidator("dataTypeSpec",cdk().validateString)(properties.dataTypeSpec)),errors.collect(cdk().propertyValidator("externalId",cdk().validateString)(properties.externalId)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("logicalId",cdk().validateString)(properties.logicalId)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",CfnAssetModelPropertyTypePropertyValidator)(properties.type)),errors.collect(cdk().propertyValidator("unit",cdk().validateString)(properties.unit)),errors.wrap('supplied properties not correct for "AssetModelPropertyProperty"')}function convertCfnAssetModelAssetModelPropertyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelAssetModelPropertyPropertyValidator(properties).assertSuccess(),{DataType:cdk().stringToCloudFormation(properties.dataType),DataTypeSpec:cdk().stringToCloudFormation(properties.dataTypeSpec),ExternalId:cdk().stringToCloudFormation(properties.externalId),Id:cdk().stringToCloudFormation(properties.id),LogicalId:cdk().stringToCloudFormation(properties.logicalId),Name:cdk().stringToCloudFormation(properties.name),Type:convertCfnAssetModelPropertyTypePropertyToCloudFormation(properties.type),Unit:cdk().stringToCloudFormation(properties.unit)}):properties}function CfnAssetModelAssetModelPropertyPropertyFromCloudFormation(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("dataType","DataType",properties.DataType!=null?cfn_parse().FromCloudFormation.getString(properties.DataType):void 0),ret.addPropertyResult("dataTypeSpec","DataTypeSpec",properties.DataTypeSpec!=null?cfn_parse().FromCloudFormation.getString(properties.DataTypeSpec):void 0),ret.addPropertyResult("externalId","ExternalId",properties.ExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.ExternalId):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("logicalId","LogicalId",properties.LogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.LogicalId):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?CfnAssetModelPropertyTypePropertyFromCloudFormation(properties.Type):void 0),ret.addPropertyResult("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelAssetModelCompositeModelPropertyValidator(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("composedAssetModelId",cdk().validateString)(properties.composedAssetModelId)),errors.collect(cdk().propertyValidator("compositeModelProperties",cdk().listValidator(CfnAssetModelAssetModelPropertyPropertyValidator))(properties.compositeModelProperties)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("externalId",cdk().validateString)(properties.externalId)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("parentAssetModelCompositeModelExternalId",cdk().validateString)(properties.parentAssetModelCompositeModelExternalId)),errors.collect(cdk().propertyValidator("path",cdk().listValidator(cdk().validateString))(properties.path)),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 "AssetModelCompositeModelProperty"')}function convertCfnAssetModelAssetModelCompositeModelPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelAssetModelCompositeModelPropertyValidator(properties).assertSuccess(),{ComposedAssetModelId:cdk().stringToCloudFormation(properties.composedAssetModelId),CompositeModelProperties:cdk().listMapper(convertCfnAssetModelAssetModelPropertyPropertyToCloudFormation)(properties.compositeModelProperties),Description:cdk().stringToCloudFormation(properties.description),ExternalId:cdk().stringToCloudFormation(properties.externalId),Id:cdk().stringToCloudFormation(properties.id),Name:cdk().stringToCloudFormation(properties.name),ParentAssetModelCompositeModelExternalId:cdk().stringToCloudFormation(properties.parentAssetModelCompositeModelExternalId),Path:cdk().listMapper(cdk().stringToCloudFormation)(properties.path),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAssetModelAssetModelCompositeModelPropertyFromCloudFormation(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("composedAssetModelId","ComposedAssetModelId",properties.ComposedAssetModelId!=null?cfn_parse().FromCloudFormation.getString(properties.ComposedAssetModelId):void 0),ret.addPropertyResult("compositeModelProperties","CompositeModelProperties",properties.CompositeModelProperties!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelAssetModelPropertyPropertyFromCloudFormation)(properties.CompositeModelProperties):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("externalId","ExternalId",properties.ExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.ExternalId):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("parentAssetModelCompositeModelExternalId","ParentAssetModelCompositeModelExternalId",properties.ParentAssetModelCompositeModelExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.ParentAssetModelCompositeModelExternalId):void 0),ret.addPropertyResult("path","Path",properties.Path!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Path):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelAssetModelHierarchyPropertyValidator(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("childAssetModelId",cdk().requiredValidator)(properties.childAssetModelId)),errors.collect(cdk().propertyValidator("childAssetModelId",cdk().validateString)(properties.childAssetModelId)),errors.collect(cdk().propertyValidator("externalId",cdk().validateString)(properties.externalId)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("logicalId",cdk().validateString)(properties.logicalId)),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 "AssetModelHierarchyProperty"')}function convertCfnAssetModelAssetModelHierarchyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelAssetModelHierarchyPropertyValidator(properties).assertSuccess(),{ChildAssetModelId:cdk().stringToCloudFormation(properties.childAssetModelId),ExternalId:cdk().stringToCloudFormation(properties.externalId),Id:cdk().stringToCloudFormation(properties.id),LogicalId:cdk().stringToCloudFormation(properties.logicalId),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnAssetModelAssetModelHierarchyPropertyFromCloudFormation(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("childAssetModelId","ChildAssetModelId",properties.ChildAssetModelId!=null?cfn_parse().FromCloudFormation.getString(properties.ChildAssetModelId):void 0),ret.addPropertyResult("externalId","ExternalId",properties.ExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.ExternalId):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("logicalId","LogicalId",properties.LogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.LogicalId):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelEnforcedAssetModelInterfacePropertyMappingPropertyValidator(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("assetModelPropertyExternalId",cdk().validateString)(properties.assetModelPropertyExternalId)),errors.collect(cdk().propertyValidator("assetModelPropertyLogicalId",cdk().validateString)(properties.assetModelPropertyLogicalId)),errors.collect(cdk().propertyValidator("interfaceAssetModelPropertyExternalId",cdk().requiredValidator)(properties.interfaceAssetModelPropertyExternalId)),errors.collect(cdk().propertyValidator("interfaceAssetModelPropertyExternalId",cdk().validateString)(properties.interfaceAssetModelPropertyExternalId)),errors.wrap('supplied properties not correct for "EnforcedAssetModelInterfacePropertyMappingProperty"')}function convertCfnAssetModelEnforcedAssetModelInterfacePropertyMappingPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelEnforcedAssetModelInterfacePropertyMappingPropertyValidator(properties).assertSuccess(),{AssetModelPropertyExternalId:cdk().stringToCloudFormation(properties.assetModelPropertyExternalId),AssetModelPropertyLogicalId:cdk().stringToCloudFormation(properties.assetModelPropertyLogicalId),InterfaceAssetModelPropertyExternalId:cdk().stringToCloudFormation(properties.interfaceAssetModelPropertyExternalId)}):properties}function CfnAssetModelEnforcedAssetModelInterfacePropertyMappingPropertyFromCloudFormation(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("assetModelPropertyExternalId","AssetModelPropertyExternalId",properties.AssetModelPropertyExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelPropertyExternalId):void 0),ret.addPropertyResult("assetModelPropertyLogicalId","AssetModelPropertyLogicalId",properties.AssetModelPropertyLogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelPropertyLogicalId):void 0),ret.addPropertyResult("interfaceAssetModelPropertyExternalId","InterfaceAssetModelPropertyExternalId",properties.InterfaceAssetModelPropertyExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceAssetModelPropertyExternalId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelEnforcedAssetModelInterfaceRelationshipPropertyValidator(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("interfaceAssetModelId",cdk().validateString)(properties.interfaceAssetModelId)),errors.collect(cdk().propertyValidator("propertyMappings",cdk().listValidator(CfnAssetModelEnforcedAssetModelInterfacePropertyMappingPropertyValidator))(properties.propertyMappings)),errors.wrap('supplied properties not correct for "EnforcedAssetModelInterfaceRelationshipProperty"')}function convertCfnAssetModelEnforcedAssetModelInterfaceRelationshipPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelEnforcedAssetModelInterfaceRelationshipPropertyValidator(properties).assertSuccess(),{InterfaceAssetModelId:cdk().stringToCloudFormation(properties.interfaceAssetModelId),PropertyMappings:cdk().listMapper(convertCfnAssetModelEnforcedAssetModelInterfacePropertyMappingPropertyToCloudFormation)(properties.propertyMappings)}):properties}function CfnAssetModelEnforcedAssetModelInterfaceRelationshipPropertyFromCloudFormation(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("interfaceAssetModelId","InterfaceAssetModelId",properties.InterfaceAssetModelId!=null?cfn_parse().FromCloudFormation.getString(properties.InterfaceAssetModelId):void 0),ret.addPropertyResult("propertyMappings","PropertyMappings",properties.PropertyMappings!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelEnforcedAssetModelInterfacePropertyMappingPropertyFromCloudFormation)(properties.PropertyMappings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssetModelPropsValidator(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("assetModelCompositeModels",cdk().listValidator(CfnAssetModelAssetModelCompositeModelPropertyValidator))(properties.assetModelCompositeModels)),errors.collect(cdk().propertyValidator("assetModelDescription",cdk().validateString)(properties.assetModelDescription)),errors.collect(cdk().propertyValidator("assetModelExternalId",cdk().validateString)(properties.assetModelExternalId)),errors.collect(cdk().propertyValidator("assetModelHierarchies",cdk().listValidator(CfnAssetModelAssetModelHierarchyPropertyValidator))(properties.assetModelHierarchies)),errors.collect(cdk().propertyValidator("assetModelName",cdk().requiredValidator)(properties.assetModelName)),errors.collect(cdk().propertyValidator("assetModelName",cdk().validateString)(properties.assetModelName)),errors.collect(cdk().propertyValidator("assetModelProperties",cdk().listValidator(CfnAssetModelAssetModelPropertyPropertyValidator))(properties.assetModelProperties)),errors.collect(cdk().propertyValidator("assetModelType",cdk().validateString)(properties.assetModelType)),errors.collect(cdk().propertyValidator("enforcedAssetModelInterfaceRelationships",cdk().listValidator(CfnAssetModelEnforcedAssetModelInterfaceRelationshipPropertyValidator))(properties.enforcedAssetModelInterfaceRelationships)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnAssetModelProps"')}function convertCfnAssetModelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelPropsValidator(properties).assertSuccess(),{AssetModelCompositeModels:cdk().listMapper(convertCfnAssetModelAssetModelCompositeModelPropertyToCloudFormation)(properties.assetModelCompositeModels),AssetModelDescription:cdk().stringToCloudFormation(properties.assetModelDescription),AssetModelExternalId:cdk().stringToCloudFormation(properties.assetModelExternalId),AssetModelHierarchies:cdk().listMapper(convertCfnAssetModelAssetModelHierarchyPropertyToCloudFormation)(properties.assetModelHierarchies),AssetModelName:cdk().stringToCloudFormation(properties.assetModelName),AssetModelProperties:cdk().listMapper(convertCfnAssetModelAssetModelPropertyPropertyToCloudFormation)(properties.assetModelProperties),AssetModelType:cdk().stringToCloudFormation(properties.assetModelType),EnforcedAssetModelInterfaceRelationships:cdk().listMapper(convertCfnAssetModelEnforcedAssetModelInterfaceRelationshipPropertyToCloudFormation)(properties.enforcedAssetModelInterfaceRelationships),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnAssetModelPropsFromCloudFormation(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("assetModelCompositeModels","AssetModelCompositeModels",properties.AssetModelCompositeModels!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelAssetModelCompositeModelPropertyFromCloudFormation)(properties.AssetModelCompositeModels):void 0),ret.addPropertyResult("assetModelDescription","AssetModelDescription",properties.AssetModelDescription!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelDescription):void 0),ret.addPropertyResult("assetModelExternalId","AssetModelExternalId",properties.AssetModelExternalId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelExternalId):void 0),ret.addPropertyResult("assetModelHierarchies","AssetModelHierarchies",properties.AssetModelHierarchies!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelAssetModelHierarchyPropertyFromCloudFormation)(properties.AssetModelHierarchies):void 0),ret.addPropertyResult("assetModelName","AssetModelName",properties.AssetModelName!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelName):void 0),ret.addPropertyResult("assetModelProperties","AssetModelProperties",properties.AssetModelProperties!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelAssetModelPropertyPropertyFromCloudFormation)(properties.AssetModelProperties):void 0),ret.addPropertyResult("assetModelType","AssetModelType",properties.AssetModelType!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelType):void 0),ret.addPropertyResult("enforcedAssetModelInterfaceRelationships","EnforcedAssetModelInterfaceRelationships",properties.EnforcedAssetModelInterfaceRelationships!=null?cfn_parse().FromCloudFormation.getArray(CfnAssetModelEnforcedAssetModelInterfaceRelationshipPropertyFromCloudFormation)(properties.EnforcedAssetModelInterfaceRelationships):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 CfnDashboard extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnDashboard",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Dashboard";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDashboardPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDashboard(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 isCfnDashboard(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDashboard.CFN_RESOURCE_TYPE_NAME}static fromDashboardArn(scope,id,arn){class Import extends cdk().Resource{dashboardRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:dashboard/${DashboardId}").parse(arn2);this.dashboardRef={dashboardId:variables.DashboardId,dashboardArn:arn2}}}return new Import(scope,id,arn)}static fromDashboardId(scope,id,dashboardId){class Import extends cdk().Resource{dashboardRef;constructor(scope2,id2,dashboardId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:dashboard/${DashboardId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DashboardId:dashboardId2});super(scope2,id2,{environmentFromArn:arn}),this.dashboardRef={dashboardId:dashboardId2,dashboardArn:arn}}}return new Import(scope,id,dashboardId)}static arnForDashboard(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IDashboardRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDashboard),error}return resource.dashboardRef.dashboardArn}_dashboardDefinition;_dashboardDescription;_dashboardName;_projectId;tags;_tagsRaw;cfnPropertyNames={dashboardDefinition:"DashboardDefinition",dashboardDescription:"DashboardDescription",dashboardName:"DashboardName",projectId:"ProjectId",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnDashboard.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnDashboardProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDashboard),error}cdk().requireProperty(props,"dashboardDefinition",this),cdk().requireProperty(props,"dashboardDescription",this),cdk().requireProperty(props,"dashboardName",this),this._dashboardDefinition=props.dashboardDefinition,this._dashboardDescription=props.dashboardDescription,this._dashboardName=props.dashboardName,this._projectId=props.projectId,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Dashboard",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get dashboardRef(){return{dashboardId:this.ref,dashboardArn:this.attrDashboardArn}}get dashboardDefinition(){return this._dashboardDefinition}set dashboardDefinition(value){cdk().traceProperty(this.node,"DashboardDefinition"),this._dashboardDefinition=value}get dashboardDescription(){return this._dashboardDescription}set dashboardDescription(value){cdk().traceProperty(this.node,"DashboardDescription"),this._dashboardDescription=value}get dashboardName(){return this._dashboardName}set dashboardName(value){cdk().traceProperty(this.node,"DashboardName"),this._dashboardName=value}get projectId(){return this._projectId}set projectId(value){cdk().traceProperty(this.node,"ProjectId"),this._projectId=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrDashboardArn(){return cdk().Token.asString(this.getAtt("DashboardArn",cdk().ResolutionTypeHint.STRING))}get attrDashboardId(){return cdk().Token.asString(this.getAtt("DashboardId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{dashboardDefinition:this._dashboardDefinition,dashboardDescription:this._dashboardDescription,dashboardName:this._dashboardName,projectId:this._projectId,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",CfnDashboard.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDashboardPropsToCloudFormation(props)}}exports.CfnDashboard=CfnDashboard;function CfnDashboardPropsValidator(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("dashboardDefinition",cdk().requiredValidator)(properties.dashboardDefinition)),errors.collect(cdk().propertyValidator("dashboardDefinition",cdk().validateString)(properties.dashboardDefinition)),errors.collect(cdk().propertyValidator("dashboardDescription",cdk().requiredValidator)(properties.dashboardDescription)),errors.collect(cdk().propertyValidator("dashboardDescription",cdk().validateString)(properties.dashboardDescription)),errors.collect(cdk().propertyValidator("dashboardName",cdk().requiredValidator)(properties.dashboardName)),errors.collect(cdk().propertyValidator("dashboardName",cdk().validateString)(properties.dashboardName)),errors.collect(cdk().propertyValidator("projectId",cdk().validateString)(properties.projectId)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDashboardProps"')}function convertCfnDashboardPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDashboardPropsValidator(properties).assertSuccess(),{DashboardDefinition:cdk().stringToCloudFormation(properties.dashboardDefinition),DashboardDescription:cdk().stringToCloudFormation(properties.dashboardDescription),DashboardName:cdk().stringToCloudFormation(properties.dashboardName),ProjectId:cdk().stringToCloudFormation(properties.projectId),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDashboardPropsFromCloudFormation(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("dashboardDefinition","DashboardDefinition",properties.DashboardDefinition!=null?cfn_parse().FromCloudFormation.getString(properties.DashboardDefinition):void 0),ret.addPropertyResult("dashboardDescription","DashboardDescription",properties.DashboardDescription!=null?cfn_parse().FromCloudFormation.getString(properties.DashboardDescription):void 0),ret.addPropertyResult("dashboardName","DashboardName",properties.DashboardName!=null?cfn_parse().FromCloudFormation.getString(properties.DashboardName):void 0),ret.addPropertyResult("projectId","ProjectId",properties.ProjectId!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectId):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 CfnGateway extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnGateway",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Gateway";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnGatewayPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnGateway(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 isCfnGateway(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnGateway.CFN_RESOURCE_TYPE_NAME}static fromGatewayId(scope,id,gatewayId){class Import extends cdk().Resource{gatewayRef;constructor(scope2,id2,gatewayId2){super(scope2,id2),this.gatewayRef={gatewayId:gatewayId2}}}return new Import(scope,id,gatewayId)}static arnForGateway(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IGatewayRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForGateway),error}return new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:gateway/${GatewayId}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,GatewayId:resource.gatewayRef.gatewayId})}_gatewayCapabilitySummaries;_gatewayName;_gatewayPlatform;_gatewayVersion;tags;_tagsRaw;cfnPropertyNames={gatewayCapabilitySummaries:"GatewayCapabilitySummaries",gatewayName:"GatewayName",gatewayPlatform:"GatewayPlatform",gatewayVersion:"GatewayVersion",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnGateway.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnGatewayProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnGateway),error}cdk().requireProperty(props,"gatewayName",this),cdk().requireProperty(props,"gatewayPlatform",this),this._gatewayCapabilitySummaries=props.gatewayCapabilitySummaries,this._gatewayName=props.gatewayName,this._gatewayPlatform=props.gatewayPlatform,this._gatewayVersion=props.gatewayVersion,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Gateway",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get gatewayRef(){return{gatewayId:this.ref}}get gatewayCapabilitySummaries(){return this._gatewayCapabilitySummaries}set gatewayCapabilitySummaries(value){cdk().traceProperty(this.node,"GatewayCapabilitySummaries"),this._gatewayCapabilitySummaries=value}get gatewayName(){return this._gatewayName}set gatewayName(value){cdk().traceProperty(this.node,"GatewayName"),this._gatewayName=value}get gatewayPlatform(){return this._gatewayPlatform}set gatewayPlatform(value){cdk().traceProperty(this.node,"GatewayPlatform"),this._gatewayPlatform=value}get gatewayVersion(){return this._gatewayVersion}set gatewayVersion(value){cdk().traceProperty(this.node,"GatewayVersion"),this._gatewayVersion=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrGatewayId(){return cdk().Token.asString(this.getAtt("GatewayId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{gatewayCapabilitySummaries:this._gatewayCapabilitySummaries,gatewayName:this._gatewayName,gatewayPlatform:this._gatewayPlatform,gatewayVersion:this._gatewayVersion,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",CfnGateway.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnGatewayPropsToCloudFormation(props)}}exports.CfnGateway=CfnGateway;function CfnGatewayGatewayCapabilitySummaryPropertyValidator(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("capabilityConfiguration",cdk().validateString)(properties.capabilityConfiguration)),errors.collect(cdk().propertyValidator("capabilityNamespace",cdk().requiredValidator)(properties.capabilityNamespace)),errors.collect(cdk().propertyValidator("capabilityNamespace",cdk().validateString)(properties.capabilityNamespace)),errors.wrap('supplied properties not correct for "GatewayCapabilitySummaryProperty"')}function convertCfnGatewayGatewayCapabilitySummaryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGatewayGatewayCapabilitySummaryPropertyValidator(properties).assertSuccess(),{CapabilityConfiguration:cdk().stringToCloudFormation(properties.capabilityConfiguration),CapabilityNamespace:cdk().stringToCloudFormation(properties.capabilityNamespace)}):properties}function CfnGatewayGatewayCapabilitySummaryPropertyFromCloudFormation(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("capabilityConfiguration","CapabilityConfiguration",properties.CapabilityConfiguration!=null?cfn_parse().FromCloudFormation.getString(properties.CapabilityConfiguration):void 0),ret.addPropertyResult("capabilityNamespace","CapabilityNamespace",properties.CapabilityNamespace!=null?cfn_parse().FromCloudFormation.getString(properties.CapabilityNamespace):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnGatewayGreengrassV2PropertyValidator(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("coreDeviceOperatingSystem",cdk().validateString)(properties.coreDeviceOperatingSystem)),errors.collect(cdk().propertyValidator("coreDeviceThingName",cdk().requiredValidator)(properties.coreDeviceThingName)),errors.collect(cdk().propertyValidator("coreDeviceThingName",cdk().validateString)(properties.coreDeviceThingName)),errors.wrap('supplied properties not correct for "GreengrassV2Property"')}function convertCfnGatewayGreengrassV2PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGatewayGreengrassV2PropertyValidator(properties).assertSuccess(),{CoreDeviceOperatingSystem:cdk().stringToCloudFormation(properties.coreDeviceOperatingSystem),CoreDeviceThingName:cdk().stringToCloudFormation(properties.coreDeviceThingName)}):properties}function CfnGatewayGreengrassV2PropertyFromCloudFormation(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("coreDeviceOperatingSystem","CoreDeviceOperatingSystem",properties.CoreDeviceOperatingSystem!=null?cfn_parse().FromCloudFormation.getString(properties.CoreDeviceOperatingSystem):void 0),ret.addPropertyResult("coreDeviceThingName","CoreDeviceThingName",properties.CoreDeviceThingName!=null?cfn_parse().FromCloudFormation.getString(properties.CoreDeviceThingName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnGatewayGreengrassPropertyValidator(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("groupArn",cdk().requiredValidator)(properties.groupArn)),errors.collect(cdk().propertyValidator("groupArn",cdk().validateString)(properties.groupArn)),errors.wrap('supplied properties not correct for "GreengrassProperty"')}function convertCfnGatewayGreengrassPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGatewayGreengrassPropertyValidator(properties).assertSuccess(),{GroupArn:cdk().stringToCloudFormation(properties.groupArn)}):properties}function CfnGatewayGreengrassPropertyFromCloudFormation(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("groupArn","GroupArn",properties.GroupArn!=null?cfn_parse().FromCloudFormation.getString(properties.GroupArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnGatewaySiemensIEPropertyValidator(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("iotCoreThingName",cdk().requiredValidator)(properties.iotCoreThingName)),errors.collect(cdk().propertyValidator("iotCoreThingName",cdk().validateString)(properties.iotCoreThingName)),errors.wrap('supplied properties not correct for "SiemensIEProperty"')}function convertCfnGatewaySiemensIEPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGatewaySiemensIEPropertyValidator(properties).assertSuccess(),{IotCoreThingName:cdk().stringToCloudFormation(properties.iotCoreThingName)}):properties}function CfnGatewaySiemensIEPropertyFromCloudFormation(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("iotCoreThingName","IotCoreThingName",properties.IotCoreThingName!=null?cfn_parse().FromCloudFormation.getString(properties.IotCoreThingName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnGatewayGatewayPlatformPropertyValidator(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("greengrass",CfnGatewayGreengrassPropertyValidator)(properties.greengrass)),errors.collect(cdk().propertyValidator("greengrassV2",CfnGatewayGreengrassV2PropertyValidator)(properties.greengrassV2)),errors.collect(cdk().propertyValidator("siemensIe",CfnGatewaySiemensIEPropertyValidator)(properties.siemensIe)),errors.wrap('supplied properties not correct for "GatewayPlatformProperty"')}function convertCfnGatewayGatewayPlatformPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGatewayGatewayPlatformPropertyValidator(properties).assertSuccess(),{Greengrass:convertCfnGatewayGreengrassPropertyToCloudFormation(properties.greengrass),GreengrassV2:convertCfnGatewayGreengrassV2PropertyToCloudFormation(properties.greengrassV2),SiemensIE:convertCfnGatewaySiemensIEPropertyToCloudFormation(properties.siemensIe)}):properties}function CfnGatewayGatewayPlatformPropertyFromCloudFormation(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("greengrass","Greengrass",properties.Greengrass!=null?CfnGatewayGreengrassPropertyFromCloudFormation(properties.Greengrass):void 0),ret.addPropertyResult("greengrassV2","GreengrassV2",properties.GreengrassV2!=null?CfnGatewayGreengrassV2PropertyFromCloudFormation(properties.GreengrassV2):void 0),ret.addPropertyResult("siemensIe","SiemensIE",properties.SiemensIE!=null?CfnGatewaySiemensIEPropertyFromCloudFormation(properties.SiemensIE):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnGatewayPropsValidator(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("gatewayCapabilitySummaries",cdk().listValidator(CfnGatewayGatewayCapabilitySummaryPropertyValidator))(properties.gatewayCapabilitySummaries)),errors.collect(cdk().propertyValidator("gatewayName",cdk().requiredValidator)(properties.gatewayName)),errors.collect(cdk().propertyValidator("gatewayName",cdk().validateString)(properties.gatewayName)),errors.collect(cdk().propertyValidator("gatewayPlatform",cdk().requiredValidator)(properties.gatewayPlatform)),errors.collect(cdk().propertyValidator("gatewayPlatform",CfnGatewayGatewayPlatformPropertyValidator)(properties.gatewayPlatform)),errors.collect(cdk().propertyValidator("gatewayVersion",cdk().validateString)(properties.gatewayVersion)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnGatewayProps"')}function convertCfnGatewayPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnGatewayPropsValidator(properties).assertSuccess(),{GatewayCapabilitySummaries:cdk().listMapper(convertCfnGatewayGatewayCapabilitySummaryPropertyToCloudFormation)(properties.gatewayCapabilitySummaries),GatewayName:cdk().stringToCloudFormation(properties.gatewayName),GatewayPlatform:convertCfnGatewayGatewayPlatformPropertyToCloudFormation(properties.gatewayPlatform),GatewayVersion:cdk().stringToCloudFormation(properties.gatewayVersion),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnGatewayPropsFromCloudFormation(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("gatewayCapabilitySummaries","GatewayCapabilitySummaries",properties.GatewayCapabilitySummaries!=null?cfn_parse().FromCloudFormation.getArray(CfnGatewayGatewayCapabilitySummaryPropertyFromCloudFormation)(properties.GatewayCapabilitySummaries):void 0),ret.addPropertyResult("gatewayName","GatewayName",properties.GatewayName!=null?cfn_parse().FromCloudFormation.getString(properties.GatewayName):void 0),ret.addPropertyResult("gatewayPlatform","GatewayPlatform",properties.GatewayPlatform!=null?CfnGatewayGatewayPlatformPropertyFromCloudFormation(properties.GatewayPlatform):void 0),ret.addPropertyResult("gatewayVersion","GatewayVersion",properties.GatewayVersion!=null?cfn_parse().FromCloudFormation.getString(properties.GatewayVersion):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 CfnPortal extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnPortal",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Portal";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPortalPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnPortal(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 isCfnPortal(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnPortal.CFN_RESOURCE_TYPE_NAME}static fromPortalArn(scope,id,arn){class Import extends cdk().Resource{portalRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:portal/${PortalId}").parse(arn2);this.portalRef={portalId:variables.PortalId,portalArn:arn2}}}return new Import(scope,id,arn)}static fromPortalId(scope,id,portalId){class Import extends cdk().Resource{portalRef;constructor(scope2,id2,portalId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:portal/${PortalId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,PortalId:portalId2});super(scope2,id2,{environmentFromArn:arn}),this.portalRef={portalId:portalId2,portalArn:arn}}}return new Import(scope,id,portalId)}static arnForPortal(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IPortalRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForPortal),error}return resource.portalRef.portalArn}_alarms;_notificationSenderEmail;_portalAuthMode;_portalContactEmail;_portalDescription;_portalName;_portalType;_portalTypeConfiguration;_roleArn;tags;_tagsRaw;cfnPropertyNames={alarms:"Alarms",notificationSenderEmail:"NotificationSenderEmail",portalAuthMode:"PortalAuthMode",portalContactEmail:"PortalContactEmail",portalDescription:"PortalDescription",portalName:"PortalName",portalType:"PortalType",portalTypeConfiguration:"PortalTypeConfiguration",roleArn:"RoleArn",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnPortal.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnPortalProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnPortal),error}cdk().requireProperty(props,"portalContactEmail",this),cdk().requireProperty(props,"portalName",this),cdk().requireProperty(props,"roleArn",this),this._alarms=props.alarms,this._notificationSenderEmail=props.notificationSenderEmail,this._portalAuthMode=props.portalAuthMode,this._portalContactEmail=props.portalContactEmail,this._portalDescription=props.portalDescription,this._portalName=props.portalName,this._portalType=props.portalType,this._portalTypeConfiguration=props.portalTypeConfiguration,this._roleArn=props.roleArn,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Portal",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get portalRef(){return{portalId:this.ref,portalArn:this.attrPortalArn}}get alarms(){return this._alarms}set alarms(value){cdk().traceProperty(this.node,"Alarms"),this._alarms=value}get notificationSenderEmail(){return this._notificationSenderEmail}set notificationSenderEmail(value){cdk().traceProperty(this.node,"NotificationSenderEmail"),this._notificationSenderEmail=value}get portalAuthMode(){return this._portalAuthMode}set portalAuthMode(value){cdk().traceProperty(this.node,"PortalAuthMode"),this._portalAuthMode=value}get portalContactEmail(){return this._portalContactEmail}set portalContactEmail(value){cdk().traceProperty(this.node,"PortalContactEmail"),this._portalContactEmail=value}get portalDescription(){return this._portalDescription}set portalDescription(value){cdk().traceProperty(this.node,"PortalDescription"),this._portalDescription=value}get portalName(){return this._portalName}set portalName(value){cdk().traceProperty(this.node,"PortalName"),this._portalName=value}get portalType(){return this._portalType}set portalType(value){cdk().traceProperty(this.node,"PortalType"),this._portalType=value}get portalTypeConfiguration(){return this._portalTypeConfiguration}set portalTypeConfiguration(value){cdk().traceProperty(this.node,"PortalTypeConfiguration"),this._portalTypeConfiguration=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrPortalArn(){return cdk().Token.asString(this.getAtt("PortalArn",cdk().ResolutionTypeHint.STRING))}get attrPortalClientId(){return cdk().Token.asString(this.getAtt("PortalClientId",cdk().ResolutionTypeHint.STRING))}get attrPortalId(){return cdk().Token.asString(this.getAtt("PortalId",cdk().ResolutionTypeHint.STRING))}get attrPortalStartUrl(){return cdk().Token.asString(this.getAtt("PortalStartUrl",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{alarms:this._alarms,notificationSenderEmail:this._notificationSenderEmail,portalAuthMode:this._portalAuthMode,portalContactEmail:this._portalContactEmail,portalDescription:this._portalDescription,portalName:this._portalName,portalType:this._portalType,portalTypeConfiguration:this._portalTypeConfiguration,roleArn:this._roleArn,tags:this.tags.renderTags()}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnPortal.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnPortalPropsToCloudFormation(props)}}exports.CfnPortal=CfnPortal;function CfnPortalAlarmsPropertyValidator(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("alarmRoleArn",cdk().validateString)(properties.alarmRoleArn)),errors.collect(cdk().propertyValidator("notificationLambdaArn",cdk().validateString)(properties.notificationLambdaArn)),errors.wrap('supplied properties not correct for "AlarmsProperty"')}function convertCfnPortalAlarmsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPortalAlarmsPropertyValidator(properties).assertSuccess(),{AlarmRoleArn:cdk().stringToCloudFormation(properties.alarmRoleArn),NotificationLambdaArn:cdk().stringToCloudFormation(properties.notificationLambdaArn)}):properties}function CfnPortalAlarmsPropertyFromCloudFormation(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("alarmRoleArn","AlarmRoleArn",properties.AlarmRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.AlarmRoleArn):void 0),ret.addPropertyResult("notificationLambdaArn","NotificationLambdaArn",properties.NotificationLambdaArn!=null?cfn_parse().FromCloudFormation.getString(properties.NotificationLambdaArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPortalPortalTypeEntryPropertyValidator(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("portalTools",cdk().requiredValidator)(properties.portalTools)),errors.collect(cdk().propertyValidator("portalTools",cdk().listValidator(cdk().validateString))(properties.portalTools)),errors.wrap('supplied properties not correct for "PortalTypeEntryProperty"')}function convertCfnPortalPortalTypeEntryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPortalPortalTypeEntryPropertyValidator(properties).assertSuccess(),{PortalTools:cdk().listMapper(cdk().stringToCloudFormation)(properties.portalTools)}):properties}function CfnPortalPortalTypeEntryPropertyFromCloudFormation(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("portalTools","PortalTools",properties.PortalTools!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.PortalTools):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPortalPropsValidator(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("alarms",cdk().validateObject)(properties.alarms)),errors.collect(cdk().propertyValidator("notificationSenderEmail",cdk().validateString)(properties.notificationSenderEmail)),errors.collect(cdk().propertyValidator("portalAuthMode",cdk().validateString)(properties.portalAuthMode)),errors.collect(cdk().propertyValidator("portalContactEmail",cdk().requiredValidator)(properties.portalContactEmail)),errors.collect(cdk().propertyValidator("portalContactEmail",cdk().validateString)(properties.portalContactEmail)),errors.collect(cdk().propertyValidator("portalDescription",cdk().validateString)(properties.portalDescription)),errors.collect(cdk().propertyValidator("portalName",cdk().requiredValidator)(properties.portalName)),errors.collect(cdk().propertyValidator("portalName",cdk().validateString)(properties.portalName)),errors.collect(cdk().propertyValidator("portalType",cdk().validateString)(properties.portalType)),errors.collect(cdk().propertyValidator("portalTypeConfiguration",cdk().hashValidator(CfnPortalPortalTypeEntryPropertyValidator))(properties.portalTypeConfiguration)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnPortalProps"')}function convertCfnPortalPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPortalPropsValidator(properties).assertSuccess(),{Alarms:cdk().objectToCloudFormation(properties.alarms),NotificationSenderEmail:cdk().stringToCloudFormation(properties.notificationSenderEmail),PortalAuthMode:cdk().stringToCloudFormation(properties.portalAuthMode),PortalContactEmail:cdk().stringToCloudFormation(properties.portalContactEmail),PortalDescription:cdk().stringToCloudFormation(properties.portalDescription),PortalName:cdk().stringToCloudFormation(properties.portalName),PortalType:cdk().stringToCloudFormation(properties.portalType),PortalTypeConfiguration:cdk().hashMapper(convertCfnPortalPortalTypeEntryPropertyToCloudFormation)(properties.portalTypeConfiguration),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnPortalPropsFromCloudFormation(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("alarms","Alarms",properties.Alarms!=null?cfn_parse().FromCloudFormation.getAny(properties.Alarms):void 0),ret.addPropertyResult("notificationSenderEmail","NotificationSenderEmail",properties.NotificationSenderEmail!=null?cfn_parse().FromCloudFormation.getString(properties.NotificationSenderEmail):void 0),ret.addPropertyResult("portalAuthMode","PortalAuthMode",properties.PortalAuthMode!=null?cfn_parse().FromCloudFormation.getString(properties.PortalAuthMode):void 0),ret.addPropertyResult("portalContactEmail","PortalContactEmail",properties.PortalContactEmail!=null?cfn_parse().FromCloudFormation.getString(properties.PortalContactEmail):void 0),ret.addPropertyResult("portalDescription","PortalDescription",properties.PortalDescription!=null?cfn_parse().FromCloudFormation.getString(properties.PortalDescription):void 0),ret.addPropertyResult("portalName","PortalName",properties.PortalName!=null?cfn_parse().FromCloudFormation.getString(properties.PortalName):void 0),ret.addPropertyResult("portalType","PortalType",properties.PortalType!=null?cfn_parse().FromCloudFormation.getString(properties.PortalType):void 0),ret.addPropertyResult("portalTypeConfiguration","PortalTypeConfiguration",properties.PortalTypeConfiguration!=null?cfn_parse().FromCloudFormation.getMap(CfnPortalPortalTypeEntryPropertyFromCloudFormation)(properties.PortalTypeConfiguration):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnProject extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnProject",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Project";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnProjectPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnProject(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 isCfnProject(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnProject.CFN_RESOURCE_TYPE_NAME}static fromProjectArn(scope,id,arn){class Import extends cdk().Resource{projectRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:project/${ProjectId}").parse(arn2);this.projectRef={projectId:variables.ProjectId,projectArn:arn2}}}return new Import(scope,id,arn)}static fromProjectId(scope,id,projectId){class Import extends cdk().Resource{projectRef;constructor(scope2,id2,projectId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:project/${ProjectId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ProjectId:projectId2});super(scope2,id2,{environmentFromArn:arn}),this.projectRef={projectId:projectId2,projectArn:arn}}}return new Import(scope,id,projectId)}static arnForProject(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IProjectRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForProject),error}return resource.projectRef.projectArn}_assetIds;_portalId;_projectDescription;_projectName;tags;_tagsRaw;cfnPropertyNames={assetIds:"AssetIds",portalId:"PortalId",projectDescription:"ProjectDescription",projectName:"ProjectName",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnProject.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnProjectProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnProject),error}cdk().requireProperty(props,"portalId",this),cdk().requireProperty(props,"projectName",this),this._assetIds=props.assetIds,this._portalId=props.portalId,this._projectDescription=props.projectDescription,this._projectName=props.projectName,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Project",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get projectRef(){return{projectId:this.ref,projectArn:this.attrProjectArn}}get assetIds(){return this._assetIds}set assetIds(value){cdk().traceProperty(this.node,"AssetIds"),this._assetIds=value}get portalId(){return this._portalId}set portalId(value){cdk().traceProperty(this.node,"PortalId"),this._portalId=value}get projectDescription(){return this._projectDescription}set projectDescription(value){cdk().traceProperty(this.node,"ProjectDescription"),this._projectDescription=value}get projectName(){return this._projectName}set projectName(value){cdk().traceProperty(this.node,"ProjectName"),this._projectName=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrProjectArn(){return cdk().Token.asString(this.getAtt("ProjectArn",cdk().ResolutionTypeHint.STRING))}get attrProjectId(){return cdk().Token.asString(this.getAtt("ProjectId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{assetIds:this._assetIds,portalId:this._portalId,projectDescription:this._projectDescription,projectName:this._projectName,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",CfnProject.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnProjectPropsToCloudFormation(props)}}exports.CfnProject=CfnProject;function CfnProjectPropsValidator(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("assetIds",cdk().listValidator(cdk().validateString))(properties.assetIds)),errors.collect(cdk().propertyValidator("portalId",cdk().requiredValidator)(properties.portalId)),errors.collect(cdk().propertyValidator("portalId",cdk().validateString)(properties.portalId)),errors.collect(cdk().propertyValidator("projectDescription",cdk().validateString)(properties.projectDescription)),errors.collect(cdk().propertyValidator("projectName",cdk().requiredValidator)(properties.projectName)),errors.collect(cdk().propertyValidator("projectName",cdk().validateString)(properties.projectName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnProjectProps"')}function convertCfnProjectPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectPropsValidator(properties).assertSuccess(),{AssetIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.assetIds),PortalId:cdk().stringToCloudFormation(properties.portalId),ProjectDescription:cdk().stringToCloudFormation(properties.projectDescription),ProjectName:cdk().stringToCloudFormation(properties.projectName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnProjectPropsFromCloudFormation(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("assetIds","AssetIds",properties.AssetIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AssetIds):void 0),ret.addPropertyResult("portalId","PortalId",properties.PortalId!=null?cfn_parse().FromCloudFormation.getString(properties.PortalId):void 0),ret.addPropertyResult("projectDescription","ProjectDescription",properties.ProjectDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectDescription):void 0),ret.addPropertyResult("projectName","ProjectName",properties.ProjectName!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectName):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 CfnComputationModel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnComputationModel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::ComputationModel";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnComputationModelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnComputationModel(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 isCfnComputationModel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnComputationModel.CFN_RESOURCE_TYPE_NAME}static fromComputationModelArn(scope,id,arn){class Import extends cdk().Resource{computationModelRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:computation-model/${ComputationModelId}").parse(arn2);this.computationModelRef={computationModelId:variables.ComputationModelId,computationModelArn:arn2}}}return new Import(scope,id,arn)}static fromComputationModelId(scope,id,computationModelId){class Import extends cdk().Resource{computationModelRef;constructor(scope2,id2,computationModelId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:computation-model/${ComputationModelId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ComputationModelId:computationModelId2});super(scope2,id2,{environmentFromArn:arn}),this.computationModelRef={computationModelId:computationModelId2,computationModelArn:arn}}}return new Import(scope,id,computationModelId)}static arnForComputationModel(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IComputationModelRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForComputationModel),error}return resource.computationModelRef.computationModelArn}cdkTagManager;_computationModelConfiguration;_computationModelDataBinding;_computationModelDescription;_computationModelName;_tags;cfnPropertyNames={tags:"Tags",computationModelConfiguration:"ComputationModelConfiguration",computationModelDataBinding:"ComputationModelDataBinding",computationModelDescription:"ComputationModelDescription",computationModelName:"ComputationModelName"};constructor(scope,id,props){super(scope,id,{type:CfnComputationModel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnComputationModelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnComputationModel),error}cdk().requireProperty(props,"computationModelConfiguration",this),cdk().requireProperty(props,"computationModelDataBinding",this),cdk().requireProperty(props,"computationModelName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::ComputationModel",void 0,{tagPropertyName:"tags"}),this._computationModelConfiguration=props.computationModelConfiguration,this._computationModelDataBinding=props.computationModelDataBinding,this._computationModelDescription=props.computationModelDescription,this._computationModelName=props.computationModelName,this._tags=props.tags}get computationModelRef(){return{computationModelId:this.ref,computationModelArn:this.attrComputationModelArn}}get computationModelConfiguration(){return this._computationModelConfiguration}set computationModelConfiguration(value){cdk().traceProperty(this.node,"ComputationModelConfiguration"),this._computationModelConfiguration=value}get computationModelDataBinding(){return this._computationModelDataBinding}set computationModelDataBinding(value){cdk().traceProperty(this.node,"ComputationModelDataBinding"),this._computationModelDataBinding=value}get computationModelDescription(){return this._computationModelDescription}set computationModelDescription(value){cdk().traceProperty(this.node,"ComputationModelDescription"),this._computationModelDescription=value}get computationModelName(){return this._computationModelName}set computationModelName(value){cdk().traceProperty(this.node,"ComputationModelName"),this._computationModelName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrComputationModelArn(){return cdk().Token.asString(this.getAtt("ComputationModelArn",cdk().ResolutionTypeHint.STRING))}get attrComputationModelId(){return cdk().Token.asString(this.getAtt("ComputationModelId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),computationModelConfiguration:this._computationModelConfiguration,computationModelDataBinding:this._computationModelDataBinding,computationModelDescription:this._computationModelDescription,computationModelName:this._computationModelName}}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",CfnComputationModel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnComputationModelPropsToCloudFormation(props)}}exports.CfnComputationModel=CfnComputationModel;function CfnComputationModelAnomalyDetectionComputationModelConfigurationPropertyValidator(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("inputProperties",cdk().requiredValidator)(properties.inputProperties)),errors.collect(cdk().propertyValidator("inputProperties",cdk().validateString)(properties.inputProperties)),errors.collect(cdk().propertyValidator("resultProperty",cdk().requiredValidator)(properties.resultProperty)),errors.collect(cdk().propertyValidator("resultProperty",cdk().validateString)(properties.resultProperty)),errors.wrap('supplied properties not correct for "AnomalyDetectionComputationModelConfigurationProperty"')}function convertCfnComputationModelAnomalyDetectionComputationModelConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnComputationModelAnomalyDetectionComputationModelConfigurationPropertyValidator(properties).assertSuccess(),{InputProperties:cdk().stringToCloudFormation(properties.inputProperties),ResultProperty:cdk().stringToCloudFormation(properties.resultProperty)}):properties}function CfnComputationModelAnomalyDetectionComputationModelConfigurationPropertyFromCloudFormation(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("inputProperties","InputProperties",properties.InputProperties!=null?cfn_parse().FromCloudFormation.getString(properties.InputProperties):void 0),ret.addPropertyResult("resultProperty","ResultProperty",properties.ResultProperty!=null?cfn_parse().FromCloudFormation.getString(properties.ResultProperty):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnComputationModelComputationModelConfigurationPropertyValidator(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("anomalyDetection",CfnComputationModelAnomalyDetectionComputationModelConfigurationPropertyValidator)(properties.anomalyDetection)),errors.wrap('supplied properties not correct for "ComputationModelConfigurationProperty"')}function convertCfnComputationModelComputationModelConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnComputationModelComputationModelConfigurationPropertyValidator(properties).assertSuccess(),{AnomalyDetection:convertCfnComputationModelAnomalyDetectionComputationModelConfigurationPropertyToCloudFormation(properties.anomalyDetection)}):properties}function CfnComputationModelComputationModelConfigurationPropertyFromCloudFormation(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("anomalyDetection","AnomalyDetection",properties.AnomalyDetection!=null?CfnComputationModelAnomalyDetectionComputationModelConfigurationPropertyFromCloudFormation(properties.AnomalyDetection):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnComputationModelAssetModelPropertyBindingValuePropertyValidator(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("assetModelId",cdk().requiredValidator)(properties.assetModelId)),errors.collect(cdk().propertyValidator("assetModelId",cdk().validateString)(properties.assetModelId)),errors.collect(cdk().propertyValidator("propertyId",cdk().requiredValidator)(properties.propertyId)),errors.collect(cdk().propertyValidator("propertyId",cdk().validateString)(properties.propertyId)),errors.wrap('supplied properties not correct for "AssetModelPropertyBindingValueProperty"')}function convertCfnComputationModelAssetModelPropertyBindingValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnComputationModelAssetModelPropertyBindingValuePropertyValidator(properties).assertSuccess(),{AssetModelId:cdk().stringToCloudFormation(properties.assetModelId),PropertyId:cdk().stringToCloudFormation(properties.propertyId)}):properties}function CfnComputationModelAssetModelPropertyBindingValuePropertyFromCloudFormation(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("assetModelId","AssetModelId",properties.AssetModelId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetModelId):void 0),ret.addPropertyResult("propertyId","PropertyId",properties.PropertyId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnComputationModelAssetPropertyBindingValuePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("assetId",cdk().requiredValidator)(properties.assetId)),errors.collect(cdk().propertyValidator("assetId",cdk().validateString)(properties.assetId)),errors.collect(cdk().propertyValidator("propertyId",cdk().requiredValidator)(properties.propertyId)),errors.collect(cdk().propertyValidator("propertyId",cdk().validateString)(properties.propertyId)),errors.wrap('supplied properties not correct for "AssetPropertyBindingValueProperty"')}function convertCfnComputationModelAssetPropertyBindingValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnComputationModelAssetPropertyBindingValuePropertyValidator(properties).assertSuccess(),{AssetId:cdk().stringToCloudFormation(properties.assetId),PropertyId:cdk().stringToCloudFormation(properties.propertyId)}):properties}function CfnComputationModelAssetPropertyBindingValuePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("assetId","AssetId",properties.AssetId!=null?cfn_parse().FromCloudFormation.getString(properties.AssetId):void 0),ret.addPropertyResult("propertyId","PropertyId",properties.PropertyId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnComputationModelComputationModelDataBindingValuePropertyValidator(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("assetModelProperty",CfnComputationModelAssetModelPropertyBindingValuePropertyValidator)(properties.assetModelProperty)),errors.collect(cdk().propertyValidator("assetProperty",CfnComputationModelAssetPropertyBindingValuePropertyValidator)(properties.assetProperty)),errors.collect(cdk().propertyValidator("list",cdk().listValidator(CfnComputationModelComputationModelDataBindingValuePropertyValidator))(properties.list)),errors.wrap('supplied properties not correct for "ComputationModelDataBindingValueProperty"')}function convertCfnComputationModelComputationModelDataBindingValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnComputationModelComputationModelDataBindingValuePropertyValidator(properties).assertSuccess(),{AssetModelProperty:convertCfnComputationModelAssetModelPropertyBindingValuePropertyToCloudFormation(properties.assetModelProperty),AssetProperty:convertCfnComputationModelAssetPropertyBindingValuePropertyToCloudFormation(properties.assetProperty),List:cdk().listMapper(convertCfnComputationModelComputationModelDataBindingValuePropertyToCloudFormation)(properties.list)}):properties}function CfnComputationModelComputationModelDataBindingValuePropertyFromCloudFormation(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("assetModelProperty","AssetModelProperty",properties.AssetModelProperty!=null?CfnComputationModelAssetModelPropertyBindingValuePropertyFromCloudFormation(properties.AssetModelProperty):void 0),ret.addPropertyResult("assetProperty","AssetProperty",properties.AssetProperty!=null?CfnComputationModelAssetPropertyBindingValuePropertyFromCloudFormation(properties.AssetProperty):void 0),ret.addPropertyResult("list","List",properties.List!=null?cfn_parse().FromCloudFormation.getArray(CfnComputationModelComputationModelDataBindingValuePropertyFromCloudFormation)(properties.List):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnComputationModelPropsValidator(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("computationModelConfiguration",cdk().requiredValidator)(properties.computationModelConfiguration)),errors.collect(cdk().propertyValidator("computationModelConfiguration",CfnComputationModelComputationModelConfigurationPropertyValidator)(properties.computationModelConfiguration)),errors.collect(cdk().propertyValidator("computationModelDataBinding",cdk().requiredValidator)(properties.computationModelDataBinding)),errors.collect(cdk().propertyValidator("computationModelDataBinding",cdk().hashValidator(CfnComputationModelComputationModelDataBindingValuePropertyValidator))(properties.computationModelDataBinding)),errors.collect(cdk().propertyValidator("computationModelDescription",cdk().validateString)(properties.computationModelDescription)),errors.collect(cdk().propertyValidator("computationModelName",cdk().requiredValidator)(properties.computationModelName)),errors.collect(cdk().propertyValidator("computationModelName",cdk().validateString)(properties.computationModelName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnComputationModelProps"')}function convertCfnComputationModelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnComputationModelPropsValidator(properties).assertSuccess(),{ComputationModelConfiguration:convertCfnComputationModelComputationModelConfigurationPropertyToCloudFormation(properties.computationModelConfiguration),ComputationModelDataBinding:cdk().hashMapper(convertCfnComputationModelComputationModelDataBindingValuePropertyToCloudFormation)(properties.computationModelDataBinding),ComputationModelDescription:cdk().stringToCloudFormation(properties.computationModelDescription),ComputationModelName:cdk().stringToCloudFormation(properties.computationModelName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnComputationModelPropsFromCloudFormation(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("computationModelConfiguration","ComputationModelConfiguration",properties.ComputationModelConfiguration!=null?CfnComputationModelComputationModelConfigurationPropertyFromCloudFormation(properties.ComputationModelConfiguration):void 0),ret.addPropertyResult("computationModelDataBinding","ComputationModelDataBinding",properties.ComputationModelDataBinding!=null?cfn_parse().FromCloudFormation.getMap(CfnComputationModelComputationModelDataBindingValuePropertyFromCloudFormation)(properties.ComputationModelDataBinding):void 0),ret.addPropertyResult("computationModelDescription","ComputationModelDescription",properties.ComputationModelDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ComputationModelDescription):void 0),ret.addPropertyResult("computationModelName","ComputationModelName",properties.ComputationModelName!=null?cfn_parse().FromCloudFormation.getString(properties.ComputationModelName):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 CfnDataset extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnDataset",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Dataset";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDatasetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDataset(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 isCfnDataset(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDataset.CFN_RESOURCE_TYPE_NAME}static fromDatasetArn(scope,id,arn){class Import extends cdk().Resource{datasetRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:dataset/${DatasetId}").parse(arn2);this.datasetRef={datasetId:variables.DatasetId,datasetArn:arn2}}}return new Import(scope,id,arn)}static fromDatasetId(scope,id,datasetId){class Import extends cdk().Resource{datasetRef;constructor(scope2,id2,datasetId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:iotsitewise:${Region}:${Account}:dataset/${DatasetId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DatasetId:datasetId2});super(scope2,id2,{environmentFromArn:arn}),this.datasetRef={datasetId:datasetId2,datasetArn:arn}}}return new Import(scope,id,datasetId)}static arnForDataset(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_iotsitewise_IDatasetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDataset),error}return resource.datasetRef.datasetArn}cdkTagManager;_datasetDescription;_datasetName;_datasetSource;_tags;cfnPropertyNames={tags:"Tags",datasetDescription:"DatasetDescription",datasetName:"DatasetName",datasetSource:"DatasetSource"};constructor(scope,id,props){super(scope,id,{type:CfnDataset.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_iotsitewise_CfnDatasetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDataset),error}cdk().requireProperty(props,"datasetName",this),cdk().requireProperty(props,"datasetSource",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Dataset",void 0,{tagPropertyName:"tags"}),this._datasetDescription=props.datasetDescription,this._datasetName=props.datasetName,this._datasetSource=props.datasetSource,this._tags=props.tags}get datasetRef(){return{datasetId:this.ref,datasetArn:this.attrDatasetArn}}get datasetDescription(){return this._datasetDescription}set datasetDescription(value){cdk().traceProperty(this.node,"DatasetDescription"),this._datasetDescription=value}get datasetName(){return this._datasetName}set datasetName(value){cdk().traceProperty(this.node,"DatasetName"),this._datasetName=value}get datasetSource(){return this._datasetSource}set datasetSource(value){cdk().traceProperty(this.node,"DatasetSource"),this._datasetSource=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrDatasetArn(){return cdk().Token.asString(this.getAtt("DatasetArn",cdk().ResolutionTypeHint.STRING))}get attrDatasetId(){return cdk().Token.asString(this.getAtt("DatasetId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),datasetDescription:this._datasetDescription,datasetName:this._datasetName,datasetSource:this._datasetSource}}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",CfnDataset.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDatasetPropsToCloudFormation(props)}}exports.CfnDataset=CfnDataset;function CfnDatasetKendraSourceDetailPropertyValidator(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("knowledgeBaseArn",cdk().requiredValidator)(properties.knowledgeBaseArn)),errors.collect(cdk().propertyValidator("knowledgeBaseArn",cdk().validateString)(properties.knowledgeBaseArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "KendraSourceDetailProperty"')}function convertCfnDatasetKendraSourceDetailPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDatasetKendraSourceDetailPropertyValidator(properties).assertSuccess(),{KnowledgeBaseArn:cdk().stringToCloudFormation(properties.knowledgeBaseArn),RoleArn:cdk().stringToCloudFormation(properties.roleArn)}):properties}function CfnDatasetKendraSourceDetailPropertyFromCloudFormation(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("knowledgeBaseArn","KnowledgeBaseArn",properties.KnowledgeBaseArn!=null?cfn_parse().FromCloudFormation.getString(properties.KnowledgeBaseArn):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDatasetSourceDetailPropertyValidator(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("kendra",CfnDatasetKendraSourceDetailPropertyValidator)(properties.kendra)),errors.wrap('supplied properties not correct for "SourceDetailProperty"')}function convertCfnDatasetSourceDetailPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDatasetSourceDetailPropertyValidator(properties).assertSuccess(),{Kendra:convertCfnDatasetKendraSourceDetailPropertyToCloudFormation(properties.kendra)}):properties}function CfnDatasetSourceDetailPropertyFromCloudFormation(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("kendra","Kendra",properties.Kendra!=null?CfnDatasetKendraSourceDetailPropertyFromCloudFormation(properties.Kendra):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDatasetDatasetSourcePropertyValidator(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("sourceDetail",CfnDatasetSourceDetailPropertyValidator)(properties.sourceDetail)),errors.collect(cdk().propertyValidator("sourceFormat",cdk().requiredValidator)(properties.sourceFormat)),errors.collect(cdk().propertyValidator("sourceFormat",cdk().validateString)(properties.sourceFormat)),errors.collect(cdk().propertyValidator("sourceType",cdk().requiredValidator)(properties.sourceType)),errors.collect(cdk().propertyValidator("sourceType",cdk().validateString)(properties.sourceType)),errors.wrap('supplied properties not correct for "DatasetSourceProperty"')}function convertCfnDatasetDatasetSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDatasetDatasetSourcePropertyValidator(properties).assertSuccess(),{SourceDetail:convertCfnDatasetSourceDetailPropertyToCloudFormation(properties.sourceDetail),SourceFormat:cdk().stringToCloudFormation(properties.sourceFormat),SourceType:cdk().stringToCloudFormation(properties.sourceType)}):properties}function CfnDatasetDatasetSourcePropertyFromCloudFormation(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("sourceDetail","SourceDetail",properties.SourceDetail!=null?CfnDatasetSourceDetailPropertyFromCloudFormation(properties.SourceDetail):void 0),ret.addPropertyResult("sourceFormat","SourceFormat",properties.SourceFormat!=null?cfn_parse().FromCloudFormation.getString(properties.SourceFormat):void 0),ret.addPropertyResult("sourceType","SourceType",properties.SourceType!=null?cfn_parse().FromCloudFormation.getString(properties.SourceType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDatasetPropsValidator(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("datasetDescription",cdk().validateString)(properties.datasetDescription)),errors.collect(cdk().propertyValidator("datasetName",cdk().requiredValidator)(properties.datasetName)),errors.collect(cdk().propertyValidator("datasetName",cdk().validateString)(properties.datasetName)),errors.collect(cdk().propertyValidator("datasetSource",cdk().requiredValidator)(properties.datasetSource)),errors.collect(cdk().propertyValidator("datasetSource",CfnDatasetDatasetSourcePropertyValidator)(properties.datasetSource)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDatasetProps"')}function convertCfnDatasetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDatasetPropsValidator(properties).assertSuccess(),{DatasetDescription:cdk().stringToCloudFormation(properties.datasetDescription),DatasetName:cdk().stringToCloudFormation(properties.datasetName),DatasetSource:convertCfnDatasetDatasetSourcePropertyToCloudFormation(properties.datasetSource),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDatasetPropsFromCloudFormation(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("datasetDescription","DatasetDescription",properties.DatasetDescription!=null?cfn_parse().FromCloudFormation.getString(properties.DatasetDescription):void 0),ret.addPropertyResult("datasetName","DatasetName",properties.DatasetName!=null?cfn_parse().FromCloudFormation.getString(properties.DatasetName):void 0),ret.addPropertyResult("datasetSource","DatasetSource",properties.DatasetSource!=null?CfnDatasetDatasetSourcePropertyFromCloudFormation(properties.DatasetSource):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}