UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 178 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;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnConnectorDefinitionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("initialVersion",CfnConnectorDefinition_ConnectorDefinitionVersionPropertyValidator)(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 cfnConnectorDefinitionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnConnectorDefinitionPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),InitialVersion:cfnConnectorDefinitionConnectorDefinitionVersionPropertyToCloudFormation(properties.initialVersion),Tags:cdk.objectToCloudFormation(properties.tags)}):properties}function CfnConnectorDefinitionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("initialVersion","InitialVersion",properties.InitialVersion!=null?CfnConnectorDefinitionConnectorDefinitionVersionPropertyFromCloudFormation(properties.InitialVersion):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConnectorDefinition extends cdk.CfnResource{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.name=props.name,this.initialVersion=props.initialVersion,this.tags=new cdk.TagManager(cdk.TagType.MAP,"AWS::Greengrass::ConnectorDefinition",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectorDefinitionPropsFromCloudFormation(resourceProperties),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}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)}get cfnProperties(){return{name:this.name,initialVersion:this.initialVersion,tags:this.tags.renderTags()}}renderProperties(props){return cfnConnectorDefinitionPropsToCloudFormation(props)}}exports.CfnConnectorDefinition=CfnConnectorDefinition,_a=JSII_RTTI_SYMBOL_1,CfnConnectorDefinition[_a]={fqn:"aws-cdk-lib.aws_greengrass.CfnConnectorDefinition",version:"2.70.0"},CfnConnectorDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::ConnectorDefinition";function CfnConnectorDefinition_ConnectorPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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 cfnConnectorDefinitionConnectorPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnConnectorDefinition_ConnectorPropertyValidator(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??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("connectorArn","ConnectorArn",cfn_parse.FromCloudFormation.getString(properties.ConnectorArn)),ret.addPropertyResult("id","Id",cfn_parse.FromCloudFormation.getString(properties.Id)),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse.FromCloudFormation.getAny(properties.Parameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorDefinition_ConnectorDefinitionVersionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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(CfnConnectorDefinition_ConnectorPropertyValidator))(properties.connectors)),errors.wrap('supplied properties not correct for "ConnectorDefinitionVersionProperty"')}function cfnConnectorDefinitionConnectorDefinitionVersionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnConnectorDefinition_ConnectorDefinitionVersionPropertyValidator(properties).assertSuccess(),{Connectors:cdk.listMapper(cfnConnectorDefinitionConnectorPropertyToCloudFormation)(properties.connectors)}):properties}function CfnConnectorDefinitionConnectorDefinitionVersionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("connectors","Connectors",cfn_parse.FromCloudFormation.getArray(CfnConnectorDefinitionConnectorPropertyFromCloudFormation)(properties.Connectors)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorDefinitionVersionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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(CfnConnectorDefinitionVersion_ConnectorPropertyValidator))(properties.connectors)),errors.wrap('supplied properties not correct for "CfnConnectorDefinitionVersionProps"')}function cfnConnectorDefinitionVersionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnConnectorDefinitionVersionPropsValidator(properties).assertSuccess(),{ConnectorDefinitionId:cdk.stringToCloudFormation(properties.connectorDefinitionId),Connectors:cdk.listMapper(cfnConnectorDefinitionVersionConnectorPropertyToCloudFormation)(properties.connectors)}):properties}function CfnConnectorDefinitionVersionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("connectorDefinitionId","ConnectorDefinitionId",cfn_parse.FromCloudFormation.getString(properties.ConnectorDefinitionId)),ret.addPropertyResult("connectors","Connectors",cfn_parse.FromCloudFormation.getArray(CfnConnectorDefinitionVersionConnectorPropertyFromCloudFormation)(properties.Connectors)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConnectorDefinitionVersion extends cdk.CfnResource{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.connectorDefinitionId=props.connectorDefinitionId,this.connectors=props.connectors}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectorDefinitionVersionPropsFromCloudFormation(resourceProperties),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}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)}get cfnProperties(){return{connectorDefinitionId:this.connectorDefinitionId,connectors:this.connectors}}renderProperties(props){return cfnConnectorDefinitionVersionPropsToCloudFormation(props)}}exports.CfnConnectorDefinitionVersion=CfnConnectorDefinitionVersion,_b=JSII_RTTI_SYMBOL_1,CfnConnectorDefinitionVersion[_b]={fqn:"aws-cdk-lib.aws_greengrass.CfnConnectorDefinitionVersion",version:"2.70.0"},CfnConnectorDefinitionVersion.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::ConnectorDefinitionVersion";function CfnConnectorDefinitionVersion_ConnectorPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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 cfnConnectorDefinitionVersionConnectorPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnConnectorDefinitionVersion_ConnectorPropertyValidator(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??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("connectorArn","ConnectorArn",cfn_parse.FromCloudFormation.getString(properties.ConnectorArn)),ret.addPropertyResult("id","Id",cfn_parse.FromCloudFormation.getString(properties.Id)),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse.FromCloudFormation.getAny(properties.Parameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCoreDefinitionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("initialVersion",CfnCoreDefinition_CoreDefinitionVersionPropertyValidator)(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 cfnCoreDefinitionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCoreDefinitionPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),InitialVersion:cfnCoreDefinitionCoreDefinitionVersionPropertyToCloudFormation(properties.initialVersion),Tags:cdk.objectToCloudFormation(properties.tags)}):properties}function CfnCoreDefinitionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("initialVersion","InitialVersion",properties.InitialVersion!=null?CfnCoreDefinitionCoreDefinitionVersionPropertyFromCloudFormation(properties.InitialVersion):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCoreDefinition extends cdk.CfnResource{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.name=props.name,this.initialVersion=props.initialVersion,this.tags=new cdk.TagManager(cdk.TagType.MAP,"AWS::Greengrass::CoreDefinition",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCoreDefinitionPropsFromCloudFormation(resourceProperties),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}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)}get cfnProperties(){return{name:this.name,initialVersion:this.initialVersion,tags:this.tags.renderTags()}}renderProperties(props){return cfnCoreDefinitionPropsToCloudFormation(props)}}exports.CfnCoreDefinition=CfnCoreDefinition,_c=JSII_RTTI_SYMBOL_1,CfnCoreDefinition[_c]={fqn:"aws-cdk-lib.aws_greengrass.CfnCoreDefinition",version:"2.70.0"},CfnCoreDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::CoreDefinition";function CfnCoreDefinition_CorePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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 cfnCoreDefinitionCorePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCoreDefinition_CorePropertyValidator(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??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("certificateArn","CertificateArn",cfn_parse.FromCloudFormation.getString(properties.CertificateArn)),ret.addPropertyResult("id","Id",cfn_parse.FromCloudFormation.getString(properties.Id)),ret.addPropertyResult("syncShadow","SyncShadow",properties.SyncShadow!=null?cfn_parse.FromCloudFormation.getBoolean(properties.SyncShadow):void 0),ret.addPropertyResult("thingArn","ThingArn",cfn_parse.FromCloudFormation.getString(properties.ThingArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCoreDefinition_CoreDefinitionVersionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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(CfnCoreDefinition_CorePropertyValidator))(properties.cores)),errors.wrap('supplied properties not correct for "CoreDefinitionVersionProperty"')}function cfnCoreDefinitionCoreDefinitionVersionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCoreDefinition_CoreDefinitionVersionPropertyValidator(properties).assertSuccess(),{Cores:cdk.listMapper(cfnCoreDefinitionCorePropertyToCloudFormation)(properties.cores)}):properties}function CfnCoreDefinitionCoreDefinitionVersionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("cores","Cores",cfn_parse.FromCloudFormation.getArray(CfnCoreDefinitionCorePropertyFromCloudFormation)(properties.Cores)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCoreDefinitionVersionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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(CfnCoreDefinitionVersion_CorePropertyValidator))(properties.cores)),errors.wrap('supplied properties not correct for "CfnCoreDefinitionVersionProps"')}function cfnCoreDefinitionVersionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCoreDefinitionVersionPropsValidator(properties).assertSuccess(),{CoreDefinitionId:cdk.stringToCloudFormation(properties.coreDefinitionId),Cores:cdk.listMapper(cfnCoreDefinitionVersionCorePropertyToCloudFormation)(properties.cores)}):properties}function CfnCoreDefinitionVersionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("coreDefinitionId","CoreDefinitionId",cfn_parse.FromCloudFormation.getString(properties.CoreDefinitionId)),ret.addPropertyResult("cores","Cores",cfn_parse.FromCloudFormation.getArray(CfnCoreDefinitionVersionCorePropertyFromCloudFormation)(properties.Cores)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCoreDefinitionVersion extends cdk.CfnResource{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.coreDefinitionId=props.coreDefinitionId,this.cores=props.cores}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCoreDefinitionVersionPropsFromCloudFormation(resourceProperties),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}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)}get cfnProperties(){return{coreDefinitionId:this.coreDefinitionId,cores:this.cores}}renderProperties(props){return cfnCoreDefinitionVersionPropsToCloudFormation(props)}}exports.CfnCoreDefinitionVersion=CfnCoreDefinitionVersion,_d=JSII_RTTI_SYMBOL_1,CfnCoreDefinitionVersion[_d]={fqn:"aws-cdk-lib.aws_greengrass.CfnCoreDefinitionVersion",version:"2.70.0"},CfnCoreDefinitionVersion.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::CoreDefinitionVersion";function CfnCoreDefinitionVersion_CorePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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 cfnCoreDefinitionVersionCorePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCoreDefinitionVersion_CorePropertyValidator(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??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("certificateArn","CertificateArn",cfn_parse.FromCloudFormation.getString(properties.CertificateArn)),ret.addPropertyResult("id","Id",cfn_parse.FromCloudFormation.getString(properties.Id)),ret.addPropertyResult("syncShadow","SyncShadow",properties.SyncShadow!=null?cfn_parse.FromCloudFormation.getBoolean(properties.SyncShadow):void 0),ret.addPropertyResult("thingArn","ThingArn",cfn_parse.FromCloudFormation.getString(properties.ThingArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDeviceDefinitionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("initialVersion",CfnDeviceDefinition_DeviceDefinitionVersionPropertyValidator)(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 cfnDeviceDefinitionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDeviceDefinitionPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),InitialVersion:cfnDeviceDefinitionDeviceDefinitionVersionPropertyToCloudFormation(properties.initialVersion),Tags:cdk.objectToCloudFormation(properties.tags)}):properties}function CfnDeviceDefinitionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("initialVersion","InitialVersion",properties.InitialVersion!=null?CfnDeviceDefinitionDeviceDefinitionVersionPropertyFromCloudFormation(properties.InitialVersion):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDeviceDefinition extends cdk.CfnResource{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.name=props.name,this.initialVersion=props.initialVersion,this.tags=new cdk.TagManager(cdk.TagType.MAP,"AWS::Greengrass::DeviceDefinition",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeviceDefinitionPropsFromCloudFormation(resourceProperties),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}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)}get cfnProperties(){return{name:this.name,initialVersion:this.initialVersion,tags:this.tags.renderTags()}}renderProperties(props){return cfnDeviceDefinitionPropsToCloudFormation(props)}}exports.CfnDeviceDefinition=CfnDeviceDefinition,_e=JSII_RTTI_SYMBOL_1,CfnDeviceDefinition[_e]={fqn:"aws-cdk-lib.aws_greengrass.CfnDeviceDefinition",version:"2.70.0"},CfnDeviceDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::DeviceDefinition";function CfnDeviceDefinition_DevicePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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 cfnDeviceDefinitionDevicePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDeviceDefinition_DevicePropertyValidator(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??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("certificateArn","CertificateArn",cfn_parse.FromCloudFormation.getString(properties.CertificateArn)),ret.addPropertyResult("id","Id",cfn_parse.FromCloudFormation.getString(properties.Id)),ret.addPropertyResult("syncShadow","SyncShadow",properties.SyncShadow!=null?cfn_parse.FromCloudFormation.getBoolean(properties.SyncShadow):void 0),ret.addPropertyResult("thingArn","ThingArn",cfn_parse.FromCloudFormation.getString(properties.ThingArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDeviceDefinition_DeviceDefinitionVersionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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(CfnDeviceDefinition_DevicePropertyValidator))(properties.devices)),errors.wrap('supplied properties not correct for "DeviceDefinitionVersionProperty"')}function cfnDeviceDefinitionDeviceDefinitionVersionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDeviceDefinition_DeviceDefinitionVersionPropertyValidator(properties).assertSuccess(),{Devices:cdk.listMapper(cfnDeviceDefinitionDevicePropertyToCloudFormation)(properties.devices)}):properties}function CfnDeviceDefinitionDeviceDefinitionVersionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("devices","Devices",cfn_parse.FromCloudFormation.getArray(CfnDeviceDefinitionDevicePropertyFromCloudFormation)(properties.Devices)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDeviceDefinitionVersionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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(CfnDeviceDefinitionVersion_DevicePropertyValidator))(properties.devices)),errors.wrap('supplied properties not correct for "CfnDeviceDefinitionVersionProps"')}function cfnDeviceDefinitionVersionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDeviceDefinitionVersionPropsValidator(properties).assertSuccess(),{DeviceDefinitionId:cdk.stringToCloudFormation(properties.deviceDefinitionId),Devices:cdk.listMapper(cfnDeviceDefinitionVersionDevicePropertyToCloudFormation)(properties.devices)}):properties}function CfnDeviceDefinitionVersionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("deviceDefinitionId","DeviceDefinitionId",cfn_parse.FromCloudFormation.getString(properties.DeviceDefinitionId)),ret.addPropertyResult("devices","Devices",cfn_parse.FromCloudFormation.getArray(CfnDeviceDefinitionVersionDevicePropertyFromCloudFormation)(properties.Devices)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDeviceDefinitionVersion extends cdk.CfnResource{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.deviceDefinitionId=props.deviceDefinitionId,this.devices=props.devices}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeviceDefinitionVersionPropsFromCloudFormation(resourceProperties),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}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)}get cfnProperties(){return{deviceDefinitionId:this.deviceDefinitionId,devices:this.devices}}renderProperties(props){return cfnDeviceDefinitionVersionPropsToCloudFormation(props)}}exports.CfnDeviceDefinitionVersion=CfnDeviceDefinitionVersion,_f=JSII_RTTI_SYMBOL_1,CfnDeviceDefinitionVersion[_f]={fqn:"aws-cdk-lib.aws_greengrass.CfnDeviceDefinitionVersion",version:"2.70.0"},CfnDeviceDefinitionVersion.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::DeviceDefinitionVersion";function CfnDeviceDefinitionVersion_DevicePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&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 cfnDeviceDefinitionVersionDevicePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDeviceDefinitionVersion_DevicePropertyValidator(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??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("certificateArn","CertificateArn",cfn_parse.FromCloudFormation.getString(properties.CertificateArn)),ret.addPropertyResult("id","Id",cfn_parse.FromCloudFormation.getString(properties.Id)),ret.addPropertyResult("syncShadow","SyncShadow",properties.SyncShadow!=null?cfn_parse.FromCloudFormation.getBoolean(properties.SyncShadow):void 0),ret.addPropertyResult("thingArn","ThingArn",cfn_parse.FromCloudFormation.getString(properties.ThingArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFunctionDefinitionPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("initialVersion",CfnFunctionDefinition_FunctionDefinitionVersionPropertyValidator)(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 "CfnFunctionDefinitionProps"')}function cfnFunctionDefinitionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFunctionDefinitionPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),InitialVersion:cfnFunctionDefinitionFunctionDefinitionVersionPropertyToCloudFormation(properties.initialVersion),Tags:cdk.objectToCloudFormation(properties.tags)}):properties}function CfnFunctionDefinitionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("initialVersion","InitialVersion",properties.InitialVersion!=null?CfnFunctionDefinitionFunctionDefinitionVersionPropertyFromCloudFormation(properties.InitialVersion):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFunctionDefinition extends cdk.CfnResource{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.name=props.name,this.initialVersion=props.initialVersion,this.tags=new cdk.TagManager(cdk.TagType.MAP,"AWS::Greengrass::FunctionDefinition",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFunctionDefinitionPropsFromCloudFormation(resourceProperties),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}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)}get cfnProperties(){return{name:this.name,initialVersion:this.initialVersion,tags:this.tags.renderTags()}}renderProperties(props){return cfnFunctionDefinitionPropsToCloudFormation(props)}}exports.CfnFunctionDefinition=CfnFunctionDefinition,_g=JSII_RTTI_SYMBOL_1,CfnFunctionDefinition[_g]={fqn:"aws-cdk-lib.aws_greengrass.CfnFunctionDefinition",version:"2.70.0"},CfnFunctionDefinition.CFN_RESOURCE_TYPE_NAME="AWS::Greengrass::FunctionDefinition";function CfnFunctionDefinition_DefaultConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("execution",cdk.requiredValidator)(properties.execution)),errors.collect(cdk.propertyValidator("execution",CfnFunctionDefinition_ExecutionPropertyValidator)(properties.execution)),errors.wrap('supplied properties not correct for "DefaultConfigProperty"')}function cfnFunctionDefinitionDefaultConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFunctionDefinition_DefaultConfigPropertyValidator(properties).assertSuccess(),{Execution:cfnFunctionDefinitionExecutionPropertyToCloudFormation(properties.execution)}):properties}function CfnFunctionDefinitionDefaultConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("execution","Execution",CfnFunctionDefinitionExecutionPropertyFromCloudFormation(properties.Execution)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFunctionDefinition_EnvironmentPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("accessSysfs",cdk.validateBoolean)(properties.accessSysfs)),errors.collect(cdk.propertyValidator("execution",CfnFunctionDefinition_ExecutionPropertyValidator)(properties.execution)),errors.collect(cdk.propertyValidator("resourceAccessPolicies",cdk.listValidator(CfnFunctionDefinition_ResourceAccessPolicyPropertyValidator))(properties.resourceAccessPolicies)),errors.collect(cdk.propertyValidator("variables",cdk.validateObject)(properties.variables)),errors.wrap('supplied properties not correct for "EnvironmentProperty"')}function cfnFunctionDefinitionEnvironmentPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFunctionDefinition_EnvironmentPropertyValidator(properties).assertSuccess(),{AccessSysfs:cdk.booleanToCloudFormation(properties.accessSysfs),Execution:cfnFunctionDefinitionExecutionPropertyToCloudFormation(properties.execution),ResourceAccessPolicies:cdk.listMapper(cfnFunctionDefinitionResourceAccessPolicyPropertyToCloudFormation)(properties.resourceAccessPolicies),Variables:cdk.objectToCloudFormation(properties.variables)}):properties}function CfnFunctionDefinitionEnvironmentPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("accessSysfs","AccessSysfs",properties.AccessSysfs!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AccessSysfs):void 0),ret.addPropertyResult("execution","Execution",p