UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 212 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnSubscriptionDefinitionVersion=exports.CfnSubscriptionDefinition=exports.CfnResourceDefinitionVersion=exports.CfnResourceDefinition=exports.CfnLoggerDefinitionVersion=exports.CfnLoggerDefinition=exports.CfnGroupVersion=exports.CfnGroup=exports.CfnFunctionDefinitionVersion=exports.CfnFunctionDefinition=exports.CfnDeviceDefinitionVersion=exports.CfnDeviceDefinition=exports.CfnCoreDefinitionVersion=exports.CfnCoreDefinition=exports.CfnConnectorDefinitionVersion=exports.CfnConnectorDefinition=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 CfnConnectorDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_greengrass.CfnConnectorDefinition",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::ConnectorDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectorDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnConnectorDefinition(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 isCfnConnectorDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConnectorDefinition.CFN_RESOURCE_TYPE_NAME}static fromConnectorDefinitionArn(scope,id,arn){class Import extends cdk().Resource{connectorDefinitionRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/connectors/${ConnectorDefinitionId}").parse(arn2);this.connectorDefinitionRef={connectorDefinitionId:variables.ConnectorDefinitionId,connectorDefinitionArn:arn2}}}return new Import(scope,id,arn)}static fromConnectorDefinitionId(scope,id,connectorDefinitionId){class Import extends cdk().Resource{connectorDefinitionRef;constructor(scope2,id2,connectorDefinitionId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/connectors/${ConnectorDefinitionId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ConnectorDefinitionId:connectorDefinitionId2});super(scope2,id2,{environmentFromArn:arn}),this.connectorDefinitionRef={connectorDefinitionId:connectorDefinitionId2,connectorDefinitionArn:arn}}}return new Import(scope,id,connectorDefinitionId)}static arnForConnectorDefinition(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_greengrass_IConnectorDefinitionRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForConnectorDefinition),error}return resource.connectorDefinitionRef.connectorDefinitionArn}attrArn;attrId;attrLatestVersionArn;attrName;initialVersion;name;tags;tagsRaw;constructor(scope,id,props){super(scope,id,{type:CfnConnectorDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_greengrass_CfnConnectorDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConnectorDefinition),error}cdk().requireProperty(props,"name",this),this.attrArn=cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING)),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.attrLatestVersionArn=cdk().Token.asString(this.getAtt("LatestVersionArn",cdk().ResolutionTypeHint.STRING)),this.attrName=cdk().Token.asString(this.getAtt("Name",cdk().ResolutionTypeHint.STRING)),this.initialVersion=props.initialVersion,this.name=props.name,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Greengrass::ConnectorDefinition",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get connectorDefinitionRef(){return{connectorDefinitionId:this.ref,connectorDefinitionArn:this.attrArn}}get cfnProperties(){return{initialVersion:this.initialVersion,name:this.name,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",CfnConnectorDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConnectorDefinitionPropsToCloudFormation(props)}}exports.CfnConnectorDefinition=CfnConnectorDefinition;function CfnConnectorDefinitionConnectorPropertyValidator(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("connectorArn",cdk().requiredValidator)(properties.connectorArn)),errors.collect(cdk().propertyValidator("connectorArn",cdk().validateString)(properties.connectorArn)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("parameters",cdk().validateObject)(properties.parameters)),errors.wrap('supplied properties not correct for "ConnectorProperty"')}function convertCfnConnectorDefinitionConnectorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorDefinitionConnectorPropertyValidator(properties).assertSuccess(),{ConnectorArn:cdk().stringToCloudFormation(properties.connectorArn),Id:cdk().stringToCloudFormation(properties.id),Parameters:cdk().objectToCloudFormation(properties.parameters)}):properties}function CfnConnectorDefinitionConnectorPropertyFromCloudFormation(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("connectorArn","ConnectorArn",properties.ConnectorArn!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorArn):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse().FromCloudFormation.getAny(properties.Parameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorDefinitionConnectorDefinitionVersionPropertyValidator(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("connectors",cdk().requiredValidator)(properties.connectors)),errors.collect(cdk().propertyValidator("connectors",cdk().listValidator(CfnConnectorDefinitionConnectorPropertyValidator))(properties.connectors)),errors.wrap('supplied properties not correct for "ConnectorDefinitionVersionProperty"')}function convertCfnConnectorDefinitionConnectorDefinitionVersionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorDefinitionConnectorDefinitionVersionPropertyValidator(properties).assertSuccess(),{Connectors:cdk().listMapper(convertCfnConnectorDefinitionConnectorPropertyToCloudFormation)(properties.connectors)}):properties}function CfnConnectorDefinitionConnectorDefinitionVersionPropertyFromCloudFormation(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("connectors","Connectors",properties.Connectors!=null?cfn_parse().FromCloudFormation.getArray(CfnConnectorDefinitionConnectorPropertyFromCloudFormation)(properties.Connectors):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorDefinitionPropsValidator(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("initialVersion",CfnConnectorDefinitionConnectorDefinitionVersionPropertyValidator)(properties.initialVersion)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.wrap('supplied properties not correct for "CfnConnectorDefinitionProps"')}function convertCfnConnectorDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorDefinitionPropsValidator(properties).assertSuccess(),{InitialVersion:convertCfnConnectorDefinitionConnectorDefinitionVersionPropertyToCloudFormation(properties.initialVersion),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().objectToCloudFormation(properties.tags)}):properties}function CfnConnectorDefinitionPropsFromCloudFormation(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("initialVersion","InitialVersion",properties.InitialVersion!=null?CfnConnectorDefinitionConnectorDefinitionVersionPropertyFromCloudFormation(properties.InitialVersion):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConnectorDefinitionVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_greengrass.CfnConnectorDefinitionVersion",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::ConnectorDefinitionVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectorDefinitionVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnConnectorDefinitionVersion(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 isCfnConnectorDefinitionVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConnectorDefinitionVersion.CFN_RESOURCE_TYPE_NAME}attrId;connectorDefinitionId;connectors;constructor(scope,id,props){super(scope,id,{type:CfnConnectorDefinitionVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_greengrass_CfnConnectorDefinitionVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConnectorDefinitionVersion),error}cdk().requireProperty(props,"connectorDefinitionId",this),cdk().requireProperty(props,"connectors",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.connectorDefinitionId=props.connectorDefinitionId,this.connectors=props.connectors}get connectorDefinitionVersionRef(){return{connectorDefinitionVersionId:this.ref}}get cfnProperties(){return{connectorDefinitionId:this.connectorDefinitionId,connectors:this.connectors}}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",CfnConnectorDefinitionVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConnectorDefinitionVersionPropsToCloudFormation(props)}}exports.CfnConnectorDefinitionVersion=CfnConnectorDefinitionVersion;function CfnConnectorDefinitionVersionConnectorPropertyValidator(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("connectorArn",cdk().requiredValidator)(properties.connectorArn)),errors.collect(cdk().propertyValidator("connectorArn",cdk().validateString)(properties.connectorArn)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("parameters",cdk().validateObject)(properties.parameters)),errors.wrap('supplied properties not correct for "ConnectorProperty"')}function convertCfnConnectorDefinitionVersionConnectorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorDefinitionVersionConnectorPropertyValidator(properties).assertSuccess(),{ConnectorArn:cdk().stringToCloudFormation(properties.connectorArn),Id:cdk().stringToCloudFormation(properties.id),Parameters:cdk().objectToCloudFormation(properties.parameters)}):properties}function CfnConnectorDefinitionVersionConnectorPropertyFromCloudFormation(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("connectorArn","ConnectorArn",properties.ConnectorArn!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorArn):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse().FromCloudFormation.getAny(properties.Parameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorDefinitionVersionPropsValidator(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("connectorDefinitionId",cdk().requiredValidator)(properties.connectorDefinitionId)),errors.collect(cdk().propertyValidator("connectorDefinitionId",cdk().validateString)(properties.connectorDefinitionId)),errors.collect(cdk().propertyValidator("connectors",cdk().requiredValidator)(properties.connectors)),errors.collect(cdk().propertyValidator("connectors",cdk().listValidator(CfnConnectorDefinitionVersionConnectorPropertyValidator))(properties.connectors)),errors.wrap('supplied properties not correct for "CfnConnectorDefinitionVersionProps"')}function convertCfnConnectorDefinitionVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorDefinitionVersionPropsValidator(properties).assertSuccess(),{ConnectorDefinitionId:cdk().stringToCloudFormation(properties.connectorDefinitionId),Connectors:cdk().listMapper(convertCfnConnectorDefinitionVersionConnectorPropertyToCloudFormation)(properties.connectors)}):properties}function CfnConnectorDefinitionVersionPropsFromCloudFormation(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("connectorDefinitionId","ConnectorDefinitionId",properties.ConnectorDefinitionId!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorDefinitionId):void 0),ret.addPropertyResult("connectors","Connectors",properties.Connectors!=null?cfn_parse().FromCloudFormation.getArray(CfnConnectorDefinitionVersionConnectorPropertyFromCloudFormation)(properties.Connectors):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCoreDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_greengrass.CfnCoreDefinition",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::CoreDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCoreDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnCoreDefinition(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 isCfnCoreDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnCoreDefinition.CFN_RESOURCE_TYPE_NAME}static fromCoreDefinitionArn(scope,id,arn){class Import extends cdk().Resource{coreDefinitionRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/cores/${CoreDefinitionId}").parse(arn2);this.coreDefinitionRef={coreDefinitionId:variables.CoreDefinitionId,coreDefinitionArn:arn2}}}return new Import(scope,id,arn)}static fromCoreDefinitionId(scope,id,coreDefinitionId){class Import extends cdk().Resource{coreDefinitionRef;constructor(scope2,id2,coreDefinitionId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/cores/${CoreDefinitionId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,CoreDefinitionId:coreDefinitionId2});super(scope2,id2,{environmentFromArn:arn}),this.coreDefinitionRef={coreDefinitionId:coreDefinitionId2,coreDefinitionArn:arn}}}return new Import(scope,id,coreDefinitionId)}static arnForCoreDefinition(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_greengrass_ICoreDefinitionRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForCoreDefinition),error}return resource.coreDefinitionRef.coreDefinitionArn}attrArn;attrId;attrLatestVersionArn;attrName;initialVersion;name;tags;tagsRaw;constructor(scope,id,props){super(scope,id,{type:CfnCoreDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_greengrass_CfnCoreDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCoreDefinition),error}cdk().requireProperty(props,"name",this),this.attrArn=cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING)),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.attrLatestVersionArn=cdk().Token.asString(this.getAtt("LatestVersionArn",cdk().ResolutionTypeHint.STRING)),this.attrName=cdk().Token.asString(this.getAtt("Name",cdk().ResolutionTypeHint.STRING)),this.initialVersion=props.initialVersion,this.name=props.name,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Greengrass::CoreDefinition",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get coreDefinitionRef(){return{coreDefinitionId:this.ref,coreDefinitionArn:this.attrArn}}get cfnProperties(){return{initialVersion:this.initialVersion,name:this.name,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",CfnCoreDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnCoreDefinitionPropsToCloudFormation(props)}}exports.CfnCoreDefinition=CfnCoreDefinition;function CfnCoreDefinitionCorePropertyValidator(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("certificateArn",cdk().requiredValidator)(properties.certificateArn)),errors.collect(cdk().propertyValidator("certificateArn",cdk().validateString)(properties.certificateArn)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("syncShadow",cdk().validateBoolean)(properties.syncShadow)),errors.collect(cdk().propertyValidator("thingArn",cdk().requiredValidator)(properties.thingArn)),errors.collect(cdk().propertyValidator("thingArn",cdk().validateString)(properties.thingArn)),errors.wrap('supplied properties not correct for "CoreProperty"')}function convertCfnCoreDefinitionCorePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCoreDefinitionCorePropertyValidator(properties).assertSuccess(),{CertificateArn:cdk().stringToCloudFormation(properties.certificateArn),Id:cdk().stringToCloudFormation(properties.id),SyncShadow:cdk().booleanToCloudFormation(properties.syncShadow),ThingArn:cdk().stringToCloudFormation(properties.thingArn)}):properties}function CfnCoreDefinitionCorePropertyFromCloudFormation(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("certificateArn","CertificateArn",properties.CertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateArn):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("syncShadow","SyncShadow",properties.SyncShadow!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SyncShadow):void 0),ret.addPropertyResult("thingArn","ThingArn",properties.ThingArn!=null?cfn_parse().FromCloudFormation.getString(properties.ThingArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCoreDefinitionCoreDefinitionVersionPropertyValidator(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("cores",cdk().requiredValidator)(properties.cores)),errors.collect(cdk().propertyValidator("cores",cdk().listValidator(CfnCoreDefinitionCorePropertyValidator))(properties.cores)),errors.wrap('supplied properties not correct for "CoreDefinitionVersionProperty"')}function convertCfnCoreDefinitionCoreDefinitionVersionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCoreDefinitionCoreDefinitionVersionPropertyValidator(properties).assertSuccess(),{Cores:cdk().listMapper(convertCfnCoreDefinitionCorePropertyToCloudFormation)(properties.cores)}):properties}function CfnCoreDefinitionCoreDefinitionVersionPropertyFromCloudFormation(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("cores","Cores",properties.Cores!=null?cfn_parse().FromCloudFormation.getArray(CfnCoreDefinitionCorePropertyFromCloudFormation)(properties.Cores):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCoreDefinitionPropsValidator(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("initialVersion",CfnCoreDefinitionCoreDefinitionVersionPropertyValidator)(properties.initialVersion)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.wrap('supplied properties not correct for "CfnCoreDefinitionProps"')}function convertCfnCoreDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCoreDefinitionPropsValidator(properties).assertSuccess(),{InitialVersion:convertCfnCoreDefinitionCoreDefinitionVersionPropertyToCloudFormation(properties.initialVersion),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().objectToCloudFormation(properties.tags)}):properties}function CfnCoreDefinitionPropsFromCloudFormation(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("initialVersion","InitialVersion",properties.InitialVersion!=null?CfnCoreDefinitionCoreDefinitionVersionPropertyFromCloudFormation(properties.InitialVersion):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCoreDefinitionVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_greengrass.CfnCoreDefinitionVersion",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::CoreDefinitionVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCoreDefinitionVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnCoreDefinitionVersion(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 isCfnCoreDefinitionVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnCoreDefinitionVersion.CFN_RESOURCE_TYPE_NAME}attrId;coreDefinitionId;cores;constructor(scope,id,props){super(scope,id,{type:CfnCoreDefinitionVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_greengrass_CfnCoreDefinitionVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCoreDefinitionVersion),error}cdk().requireProperty(props,"coreDefinitionId",this),cdk().requireProperty(props,"cores",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.coreDefinitionId=props.coreDefinitionId,this.cores=props.cores}get coreDefinitionVersionRef(){return{coreDefinitionVersionId:this.ref}}get cfnProperties(){return{coreDefinitionId:this.coreDefinitionId,cores:this.cores}}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",CfnCoreDefinitionVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnCoreDefinitionVersionPropsToCloudFormation(props)}}exports.CfnCoreDefinitionVersion=CfnCoreDefinitionVersion;function CfnCoreDefinitionVersionCorePropertyValidator(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("certificateArn",cdk().requiredValidator)(properties.certificateArn)),errors.collect(cdk().propertyValidator("certificateArn",cdk().validateString)(properties.certificateArn)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("syncShadow",cdk().validateBoolean)(properties.syncShadow)),errors.collect(cdk().propertyValidator("thingArn",cdk().requiredValidator)(properties.thingArn)),errors.collect(cdk().propertyValidator("thingArn",cdk().validateString)(properties.thingArn)),errors.wrap('supplied properties not correct for "CoreProperty"')}function convertCfnCoreDefinitionVersionCorePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCoreDefinitionVersionCorePropertyValidator(properties).assertSuccess(),{CertificateArn:cdk().stringToCloudFormation(properties.certificateArn),Id:cdk().stringToCloudFormation(properties.id),SyncShadow:cdk().booleanToCloudFormation(properties.syncShadow),ThingArn:cdk().stringToCloudFormation(properties.thingArn)}):properties}function CfnCoreDefinitionVersionCorePropertyFromCloudFormation(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("certificateArn","CertificateArn",properties.CertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateArn):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("syncShadow","SyncShadow",properties.SyncShadow!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SyncShadow):void 0),ret.addPropertyResult("thingArn","ThingArn",properties.ThingArn!=null?cfn_parse().FromCloudFormation.getString(properties.ThingArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCoreDefinitionVersionPropsValidator(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("coreDefinitionId",cdk().requiredValidator)(properties.coreDefinitionId)),errors.collect(cdk().propertyValidator("coreDefinitionId",cdk().validateString)(properties.coreDefinitionId)),errors.collect(cdk().propertyValidator("cores",cdk().requiredValidator)(properties.cores)),errors.collect(cdk().propertyValidator("cores",cdk().listValidator(CfnCoreDefinitionVersionCorePropertyValidator))(properties.cores)),errors.wrap('supplied properties not correct for "CfnCoreDefinitionVersionProps"')}function convertCfnCoreDefinitionVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCoreDefinitionVersionPropsValidator(properties).assertSuccess(),{CoreDefinitionId:cdk().stringToCloudFormation(properties.coreDefinitionId),Cores:cdk().listMapper(convertCfnCoreDefinitionVersionCorePropertyToCloudFormation)(properties.cores)}):properties}function CfnCoreDefinitionVersionPropsFromCloudFormation(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("coreDefinitionId","CoreDefinitionId",properties.CoreDefinitionId!=null?cfn_parse().FromCloudFormation.getString(properties.CoreDefinitionId):void 0),ret.addPropertyResult("cores","Cores",properties.Cores!=null?cfn_parse().FromCloudFormation.getArray(CfnCoreDefinitionVersionCorePropertyFromCloudFormation)(properties.Cores):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDeviceDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_greengrass.CfnDeviceDefinition",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::DeviceDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeviceDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnDeviceDefinition(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 isCfnDeviceDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDeviceDefinition.CFN_RESOURCE_TYPE_NAME}static fromDeviceDefinitionArn(scope,id,arn){class Import extends cdk().Resource{deviceDefinitionRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/devices/${DeviceDefinitionId}").parse(arn2);this.deviceDefinitionRef={deviceDefinitionId:variables.DeviceDefinitionId,deviceDefinitionArn:arn2}}}return new Import(scope,id,arn)}static fromDeviceDefinitionId(scope,id,deviceDefinitionId){class Import extends cdk().Resource{deviceDefinitionRef;constructor(scope2,id2,deviceDefinitionId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:greengrass:${Region}:${Account}:/greengrass/definition/devices/${DeviceDefinitionId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DeviceDefinitionId:deviceDefinitionId2});super(scope2,id2,{environmentFromArn:arn}),this.deviceDefinitionRef={deviceDefinitionId:deviceDefinitionId2,deviceDefinitionArn:arn}}}return new Import(scope,id,deviceDefinitionId)}static arnForDeviceDefinition(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_greengrass_IDeviceDefinitionRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDeviceDefinition),error}return resource.deviceDefinitionRef.deviceDefinitionArn}attrArn;attrId;attrLatestVersionArn;attrName;initialVersion;name;tags;tagsRaw;constructor(scope,id,props){super(scope,id,{type:CfnDeviceDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_greengrass_CfnDeviceDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDeviceDefinition),error}cdk().requireProperty(props,"name",this),this.attrArn=cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING)),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.attrLatestVersionArn=cdk().Token.asString(this.getAtt("LatestVersionArn",cdk().ResolutionTypeHint.STRING)),this.attrName=cdk().Token.asString(this.getAtt("Name",cdk().ResolutionTypeHint.STRING)),this.initialVersion=props.initialVersion,this.name=props.name,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Greengrass::DeviceDefinition",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get deviceDefinitionRef(){return{deviceDefinitionId:this.ref,deviceDefinitionArn:this.attrArn}}get cfnProperties(){return{initialVersion:this.initialVersion,name:this.name,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",CfnDeviceDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDeviceDefinitionPropsToCloudFormation(props)}}exports.CfnDeviceDefinition=CfnDeviceDefinition;function CfnDeviceDefinitionDevicePropertyValidator(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("certificateArn",cdk().requiredValidator)(properties.certificateArn)),errors.collect(cdk().propertyValidator("certificateArn",cdk().validateString)(properties.certificateArn)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("syncShadow",cdk().validateBoolean)(properties.syncShadow)),errors.collect(cdk().propertyValidator("thingArn",cdk().requiredValidator)(properties.thingArn)),errors.collect(cdk().propertyValidator("thingArn",cdk().validateString)(properties.thingArn)),errors.wrap('supplied properties not correct for "DeviceProperty"')}function convertCfnDeviceDefinitionDevicePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceDefinitionDevicePropertyValidator(properties).assertSuccess(),{CertificateArn:cdk().stringToCloudFormation(properties.certificateArn),Id:cdk().stringToCloudFormation(properties.id),SyncShadow:cdk().booleanToCloudFormation(properties.syncShadow),ThingArn:cdk().stringToCloudFormation(properties.thingArn)}):properties}function CfnDeviceDefinitionDevicePropertyFromCloudFormation(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("certificateArn","CertificateArn",properties.CertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateArn):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse().FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("syncShadow","SyncShadow",properties.SyncShadow!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SyncShadow):void 0),ret.addPropertyResult("thingArn","ThingArn",properties.ThingArn!=null?cfn_parse().FromCloudFormation.getString(properties.ThingArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDeviceDefinitionDeviceDefinitionVersionPropertyValidator(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("devices",cdk().requiredValidator)(properties.devices)),errors.collect(cdk().propertyValidator("devices",cdk().listValidator(CfnDeviceDefinitionDevicePropertyValidator))(properties.devices)),errors.wrap('supplied properties not correct for "DeviceDefinitionVersionProperty"')}function convertCfnDeviceDefinitionDeviceDefinitionVersionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceDefinitionDeviceDefinitionVersionPropertyValidator(properties).assertSuccess(),{Devices:cdk().listMapper(convertCfnDeviceDefinitionDevicePropertyToCloudFormation)(properties.devices)}):properties}function CfnDeviceDefinitionDeviceDefinitionVersionPropertyFromCloudFormation(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("devices","Devices",properties.Devices!=null?cfn_parse().FromCloudFormation.getArray(CfnDeviceDefinitionDevicePropertyFromCloudFormation)(properties.Devices):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDeviceDefinitionPropsValidator(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("initialVersion",CfnDeviceDefinitionDeviceDefinitionVersionPropertyValidator)(properties.initialVersion)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.wrap('supplied properties not correct for "CfnDeviceDefinitionProps"')}function convertCfnDeviceDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceDefinitionPropsValidator(properties).assertSuccess(),{InitialVersion:convertCfnDeviceDefinitionDeviceDefinitionVersionPropertyToCloudFormation(properties.initialVersion),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().objectToCloudFormation(properties.tags)}):properties}function CfnDeviceDefinitionPropsFromCloudFormation(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("initialVersion","InitialVersion",properties.InitialVersion!=null?CfnDeviceDefinitionDeviceDefinitionVersionPropertyFromCloudFormation(properties.InitialVersion):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDeviceDefinitionVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_greengrass.CfnDeviceDefinitionVersion",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::DeviceDefinitionVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeviceDefinitionVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnDeviceDefinitionVersion(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 isCfnDeviceDefinitionVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDeviceDefinitionVersion.CFN_RESOURCE_TYPE_NAME}attrId;deviceDefinitionId;devices;constructor(scope,id,props){super(scope,id,{type:CfnDeviceDefinitionVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_greengrass_CfnDeviceDefinitionVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDeviceDefinitionVersion),error}cdk().requireProperty(props,"deviceDefinitionId",this),cdk().requireProperty(props,"devices",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.deviceDefinitionId=props.deviceDefinitionId,this.devices=props.devices}get deviceDefinitionVersionRef(){return{deviceDefinitionVersionId:this.ref}}get cfnProperties(){return{deviceDefinitionId:this.deviceDefinitionId,devices:this.devices}}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",CfnDeviceDefinitionVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDeviceDefinitionVersionPropsToCloudFormation(props)}}exports.CfnDeviceDefinitionVersion=CfnDeviceDefinitionVersion;function CfnDeviceDefinitionVersionDevicePropertyValidator(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("certificateArn",cdk().requiredValidator)(properties.certificateArn)),errors.collect(cdk().propertyValidator("certificateArn",cdk().validateString)(properties.certificateArn)),errors.collect(cdk().propertyValidator("id",cdk().requiredValidator)(properties.id)),errors.collect(cdk().propertyValidator("id",cdk().validateString)(properties.id)),errors.collect(cdk().propertyValidator("syncShadow",cdk().validateBoolean)(properties.syncShadow)),errors.collect(cdk().propertyValidator("thingArn",cdk().requiredValidator)(properties.thingArn)),errors.collect(cdk().propertyValidator("thingArn",cdk().validateString)(properties.thingArn)),errors.wrap('supplied properties not correct for "DeviceProperty"')}function convertCfnDeviceDefinitionVersionDevicePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceDefinitionVersionDevicePropertyValidator(properties).assertSuc