UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 196 kB
"use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k,_l,_m,_o,_p,_q,_r;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");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 _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}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 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,_a=JSII_RTTI_SYMBOL_1,CfnConnectorDefinition[_a]={fqn:"aws-cdk-lib.aws_greengrass.CfnConnectorDefinition",version:"2.185.0"},CfnConnectorDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::ConnectorDefinition";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 _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}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 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,_b=JSII_RTTI_SYMBOL_1,CfnConnectorDefinitionVersion[_b]={fqn:"aws-cdk-lib.aws_greengrass.CfnConnectorDefinitionVersion",version:"2.185.0"},CfnConnectorDefinitionVersion.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::ConnectorDefinitionVersion";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 _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}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 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,_c=JSII_RTTI_SYMBOL_1,CfnCoreDefinition[_c]={fqn:"aws-cdk-lib.aws_greengrass.CfnCoreDefinition",version:"2.185.0"},CfnCoreDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::CoreDefinition";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 _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}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 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,_d=JSII_RTTI_SYMBOL_1,CfnCoreDefinitionVersion[_d]={fqn:"aws-cdk-lib.aws_greengrass.CfnCoreDefinitionVersion",version:"2.185.0"},CfnCoreDefinitionVersion.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::CoreDefinitionVersion";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 _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}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 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,_e=JSII_RTTI_SYMBOL_1,CfnDeviceDefinition[_e]={fqn:"aws-cdk-lib.aws_greengrass.CfnDeviceDefinition",version:"2.185.0"},CfnDeviceDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::DeviceDefinition";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 _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}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 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,_f=JSII_RTTI_SYMBOL_1,CfnDeviceDefinitionVersion[_f]={fqn:"aws-cdk-lib.aws_greengrass.CfnDeviceDefinitionVersion",version:"2.185.0"},CfnDeviceDefinitionVersion.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::DeviceDefinitionVersion";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).assertSuccess(),{CertificateArn:cdk().stringToCloudFormation(properties.certificateArn),Id:cdk().stringToCloudFormation(properties.id),SyncShadow:cdk().booleanToCloudFormation(properties.syncShadow),ThingArn:cdk().stringToCloudFormation(properties.thingArn)}):properties}function CfnDeviceDefinitionVersionDevicePropertyFromCloudFormation(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 CfnDeviceDefinitionVersionPropsValidator(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("deviceDefinitionId",cdk().requiredValidator)(properties.deviceDefinitionId)),errors.collect(cdk().propertyValidator("deviceDefinitionId",cdk().validateString)(properties.deviceDefinitionId)),errors.collect(cdk().propertyValidator("devices",cdk().requiredValidator)(properties.devices)),errors.collect(cdk().propertyValidator("devices",cdk().listValidator(CfnDeviceDefinitionVersionDevicePropertyValidator))(properties.devices)),errors.wrap('supplied properties not correct for "CfnDeviceDefinitionVersionProps"')}function convertCfnDeviceDefinitionVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceDefinitionVersionPropsValidator(properties).assertSuccess(),{DeviceDefinitionId:cdk().stringToCloudFormation(properties.deviceDefinitionId),Devices:cdk().listMapper(convertCfnDeviceDefinitionVersionDevicePropertyToCloudFormation)(properties.devices)}):properties}function CfnDeviceDefinitionVersionPropsFromCloudFormation(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("deviceDefinitionId","DeviceDefinitionId",properties.DeviceDefinitionId!=null?cfn_parse().FromCloudFormation.getString(properties.DeviceDefinitionId):void 0),ret.addPropertyResult("devices","Devices",properties.Devices!=null?cfn_parse().FromCloudFormation.getArray(CfnDeviceDefinitionVersionDevicePropertyFromCloudFormation)(properties.Devices):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFunctionDefinition extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFunctionDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnFunctionDefinition(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:CfnFunctionDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_greengrass_CfnFunctionDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFunctionDefinition),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::FunctionDefinition",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}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",CfnFunctionDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnFunctionDefinitionPropsToCloudFormation(props)}}exports.CfnFunctionDefinition=CfnFunctionDefinition,_g=JSII_RTTI_SYMBOL_1,CfnFunctionDefinition[_g]={fqn:"aws-cdk-lib.aws_greengrass.CfnFunctionDefinition",version:"2.185.0"},CfnFunctionDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::Fu