aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
2 lines • 88.2 kB
JavaScript
"use strict";var _a,_b,_c,_d,_e,_f,_g;Object.defineProperty(exports,"__esModule",{value:!0}),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");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp};class CfnAccessPolicy extends cdk().CfnResource{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 Error("Unexpected IResolvable");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}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.attrAccessPolicyArn=cdk().Token.asString(this.getAtt("AccessPolicyArn",cdk().ResolutionTypeHint.STRING)),this.attrAccessPolicyId=cdk().Token.asString(this.getAtt("AccessPolicyId",cdk().ResolutionTypeHint.STRING)),this.accessPolicyIdentity=props.accessPolicyIdentity,this.accessPolicyPermission=props.accessPolicyPermission,this.accessPolicyResource=props.accessPolicyResource}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:props",this.cfnProperties)}renderProperties(props){return convertCfnAccessPolicyPropsToCloudFormation(props)}}exports.CfnAccessPolicy=CfnAccessPolicy,_a=JSII_RTTI_SYMBOL_1,CfnAccessPolicy[_a]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnAccessPolicy",version:"2.130.0"},CfnAccessPolicy.CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::AccessPolicy";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 _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAssetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");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}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.attrAssetArn=cdk().Token.asString(this.getAtt("AssetArn",cdk().ResolutionTypeHint.STRING)),this.attrAssetId=cdk().Token.asString(this.getAtt("AssetId",cdk().ResolutionTypeHint.STRING)),this.assetDescription=props.assetDescription,this.assetHierarchies=props.assetHierarchies,this.assetModelId=props.assetModelId,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 cfnProperties(){return{assetDescription:this.assetDescription,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:props",this.cfnProperties)}renderProperties(props){return convertCfnAssetPropsToCloudFormation(props)}}exports.CfnAsset=CfnAsset,_b=JSII_RTTI_SYMBOL_1,CfnAsset[_b]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnAsset",version:"2.130.0"},CfnAsset.CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Asset";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("logicalId",cdk().requiredValidator)(properties.logicalId)),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),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("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("logicalId",cdk().requiredValidator)(properties.logicalId)),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),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("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("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),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("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 _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAssetModelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");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}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.attrAssetModelArn=cdk().Token.asString(this.getAtt("AssetModelArn",cdk().ResolutionTypeHint.STRING)),this.attrAssetModelId=cdk().Token.asString(this.getAtt("AssetModelId",cdk().ResolutionTypeHint.STRING)),this.assetModelCompositeModels=props.assetModelCompositeModels,this.assetModelDescription=props.assetModelDescription,this.assetModelHierarchies=props.assetModelHierarchies,this.assetModelName=props.assetModelName,this.assetModelProperties=props.assetModelProperties,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::AssetModel",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{assetModelCompositeModels:this.assetModelCompositeModels,assetModelDescription:this.assetModelDescription,assetModelHierarchies:this.assetModelHierarchies,assetModelName:this.assetModelName,assetModelProperties:this.assetModelProperties,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:props",this.cfnProperties)}renderProperties(props){return convertCfnAssetModelPropsToCloudFormation(props)}}exports.CfnAssetModel=CfnAssetModel,_c=JSII_RTTI_SYMBOL_1,CfnAssetModel[_c]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnAssetModel",version:"2.130.0"},CfnAssetModel.CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::AssetModel";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 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("hierarchyLogicalId",cdk().validateString)(properties.hierarchyLogicalId)),errors.collect(cdk().propertyValidator("propertyLogicalId",cdk().requiredValidator)(properties.propertyLogicalId)),errors.collect(cdk().propertyValidator("propertyLogicalId",cdk().validateString)(properties.propertyLogicalId)),errors.wrap('supplied properties not correct for "VariableValueProperty"')}function convertCfnAssetModelVariableValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssetModelVariableValuePropertyValidator(properties).assertSuccess(),{HierarchyLogicalId:cdk().stringToCloudFormation(properties.hierarchyLogicalId),PropertyLogicalId:cdk().stringToCloudFormation(properties.propertyLogicalId)}):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("hierarchyLogicalId","HierarchyLogicalId",properties.HierarchyLogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.HierarchyLogicalId):void 0),ret.addPropertyResult("propertyLogicalId","PropertyLogicalId",properties.PropertyLogicalId!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyLogicalId):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("logicalId",cdk().requiredValidator)(properties.logicalId)),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),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("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("compositeModelProperties",cdk().listValidator(CfnAssetModelAssetModelPropertyPropertyValidator))(properties.compositeModelProperties)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("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(),{CompositeModelProperties:cdk().listMapper(convertCfnAssetModelAssetModelPropertyPropertyToCloudFormation)(properties.compositeModelProperties),Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),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("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("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function 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("logicalId",cdk().requiredValidator)(properties.logicalId)),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),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("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 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("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("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),AssetModelHierarchies:cdk().listMapper(convertCfnAssetModelAssetModelHierarchyPropertyToCloudFormation)(properties.assetModelHierarchies),AssetModelName:cdk().stringToCloudFormation(properties.assetModelName),AssetModelProperties:cdk().listMapper(convertCfnAssetModelAssetModelPropertyPropertyToCloudFormation)(properties.assetModelProperties),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("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("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 _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDashboardPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");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}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.attrDashboardArn=cdk().Token.asString(this.getAtt("DashboardArn",cdk().ResolutionTypeHint.STRING)),this.attrDashboardId=cdk().Token.asString(this.getAtt("DashboardId",cdk().ResolutionTypeHint.STRING)),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 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:props",this.cfnProperties)}renderProperties(props){return convertCfnDashboardPropsToCloudFormation(props)}}exports.CfnDashboard=CfnDashboard,_d=JSII_RTTI_SYMBOL_1,CfnDashboard[_d]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnDashboard",version:"2.130.0"},CfnDashboard.CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Dashboard";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 _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnGatewayPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");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}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.attrGatewayId=cdk().Token.asString(this.getAtt("GatewayId",cdk().ResolutionTypeHint.STRING)),this.gatewayCapabilitySummaries=props.gatewayCapabilitySummaries,this.gatewayName=props.gatewayName,this.gatewayPlatform=props.gatewayPlatform,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Gateway",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{gatewayCapabilitySummaries:this.gatewayCapabilitySummaries,gatewayName:this.gatewayName,gatewayPlatform:this.gatewayPlatform,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:props",this.cfnProperties)}renderProperties(props){return convertCfnGatewayPropsToCloudFormation(props)}}exports.CfnGateway=CfnGateway,_e=JSII_RTTI_SYMBOL_1,CfnGateway[_e]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnGateway",version:"2.130.0"},CfnGateway.CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Gateway";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("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(),{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("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 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.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)}):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.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("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),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("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 _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPortalPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");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}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.attrPortalArn=cdk().Token.asString(this.getAtt("PortalArn",cdk().ResolutionTypeHint.STRING)),this.attrPortalClientId=cdk().Token.asString(this.getAtt("PortalClientId",cdk().ResolutionTypeHint.STRING)),this.attrPortalId=cdk().Token.asString(this.getAtt("PortalId",cdk().ResolutionTypeHint.STRING)),this.attrPortalStartUrl=cdk().Token.asString(this.getAtt("PortalStartUrl",cdk().ResolutionTypeHint.STRING)),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.roleArn=props.roleArn,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::IoTSiteWise::Portal",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{alarms:this.alarms,notificationSenderEmail:this.notificationSenderEmail,portalAuthMode:this.portalAuthMode,portalContactEmail:this.portalContactEmail,portalDescription:this.portalDescription,portalName:this.portalName,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:props",this.cfnProperties)}renderProperties(props){return convertCfnPortalPropsToCloudFormation(props)}}exports.CfnPortal=CfnPortal,_f=JSII_RTTI_SYMBOL_1,CfnPortal[_f]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnPortal",version:"2.130.0"},CfnPortal.CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Portal";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 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("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),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("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 _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnProjectPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new Error("Unexpected IResolvable");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}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.attrProjectArn=cdk().Token.asString(this.getAtt("ProjectArn",cdk().ResolutionTypeHint.STRING)),this.attrProjectId=cdk().Token.asString(this.getAtt("ProjectId",cdk().ResolutionTypeHint.STRING)),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 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:props",this.cfnProperties)}renderProperties(props){return convertCfnProjectPropsToCloudFormation(props)}}exports.CfnProject=CfnProject,_g=JSII_RTTI_SYMBOL_1,CfnProject[_g]={fqn:"aws-cdk-lib.aws_iotsitewise.CfnProject",version:"2.130.0"},CfnProject.CFN_RESOURCE_TYPE_NAME="AWS::IoTSiteWise::Project";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}