aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1 lines • 95.6 kB
JavaScript
"use strict";var _a,_b,_c,_d,_e,_f,_g;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnVolume=exports.CfnUserProfile=exports.CfnStack=exports.CfnLayer=exports.CfnInstance=exports.CfnElasticLoadBalancerAttachment=exports.CfnApp=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 CfnAppPropsValidator(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("appSource",CfnApp_SourcePropertyValidator)(properties.appSource)),errors.collect(cdk.propertyValidator("attributes",cdk.hashValidator(cdk.validateString))(properties.attributes)),errors.collect(cdk.propertyValidator("dataSources",cdk.listValidator(CfnApp_DataSourcePropertyValidator))(properties.dataSources)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("domains",cdk.listValidator(cdk.validateString))(properties.domains)),errors.collect(cdk.propertyValidator("enableSsl",cdk.validateBoolean)(properties.enableSsl)),errors.collect(cdk.propertyValidator("environment",cdk.listValidator(CfnApp_EnvironmentVariablePropertyValidator))(properties.environment)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("shortname",cdk.validateString)(properties.shortname)),errors.collect(cdk.propertyValidator("sslConfiguration",CfnApp_SslConfigurationPropertyValidator)(properties.sslConfiguration)),errors.collect(cdk.propertyValidator("stackId",cdk.requiredValidator)(properties.stackId)),errors.collect(cdk.propertyValidator("stackId",cdk.validateString)(properties.stackId)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "CfnAppProps"')}function cfnAppPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAppPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),StackId:cdk.stringToCloudFormation(properties.stackId),Type:cdk.stringToCloudFormation(properties.type),AppSource:cfnAppSourcePropertyToCloudFormation(properties.appSource),Attributes:cdk.hashMapper(cdk.stringToCloudFormation)(properties.attributes),DataSources:cdk.listMapper(cfnAppDataSourcePropertyToCloudFormation)(properties.dataSources),Description:cdk.stringToCloudFormation(properties.description),Domains:cdk.listMapper(cdk.stringToCloudFormation)(properties.domains),EnableSsl:cdk.booleanToCloudFormation(properties.enableSsl),Environment:cdk.listMapper(cfnAppEnvironmentVariablePropertyToCloudFormation)(properties.environment),Shortname:cdk.stringToCloudFormation(properties.shortname),SslConfiguration:cfnAppSslConfigurationPropertyToCloudFormation(properties.sslConfiguration)}):properties}function CfnAppPropsFromCloudFormation(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("stackId","StackId",cfn_parse.FromCloudFormation.getString(properties.StackId)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addPropertyResult("appSource","AppSource",properties.AppSource!=null?CfnAppSourcePropertyFromCloudFormation(properties.AppSource):void 0),ret.addPropertyResult("attributes","Attributes",properties.Attributes!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Attributes):void 0),ret.addPropertyResult("dataSources","DataSources",properties.DataSources!=null?cfn_parse.FromCloudFormation.getArray(CfnAppDataSourcePropertyFromCloudFormation)(properties.DataSources):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("domains","Domains",properties.Domains!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Domains):void 0),ret.addPropertyResult("enableSsl","EnableSsl",properties.EnableSsl!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnableSsl):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse.FromCloudFormation.getArray(CfnAppEnvironmentVariablePropertyFromCloudFormation)(properties.Environment):void 0),ret.addPropertyResult("shortname","Shortname",properties.Shortname!=null?cfn_parse.FromCloudFormation.getString(properties.Shortname):void 0),ret.addPropertyResult("sslConfiguration","SslConfiguration",properties.SslConfiguration!=null?CfnAppSslConfigurationPropertyFromCloudFormation(properties.SslConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApp extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnApp.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_opsworks_CfnAppProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApp),error}cdk.requireProperty(props,"name",this),cdk.requireProperty(props,"stackId",this),cdk.requireProperty(props,"type",this),this.name=props.name,this.stackId=props.stackId,this.type=props.type,this.appSource=props.appSource,this.attributes=props.attributes,this.dataSources=props.dataSources,this.description=props.description,this.domains=props.domains,this.enableSsl=props.enableSsl,this.environment=props.environment,this.shortname=props.shortname,this.sslConfiguration=props.sslConfiguration}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAppPropsFromCloudFormation(resourceProperties),ret=new CfnApp(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",CfnApp.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{name:this.name,stackId:this.stackId,type:this.type,appSource:this.appSource,attributes:this.attributes,dataSources:this.dataSources,description:this.description,domains:this.domains,enableSsl:this.enableSsl,environment:this.environment,shortname:this.shortname,sslConfiguration:this.sslConfiguration}}renderProperties(props){return cfnAppPropsToCloudFormation(props)}}exports.CfnApp=CfnApp,_a=JSII_RTTI_SYMBOL_1,CfnApp[_a]={fqn:"aws-cdk-lib.aws_opsworks.CfnApp",version:"2.70.0"},CfnApp.CFN_RESOURCE_TYPE_NAME="AWS::OpsWorks::App";function CfnApp_DataSourcePropertyValidator(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("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("databaseName",cdk.validateString)(properties.databaseName)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "DataSourceProperty"')}function cfnAppDataSourcePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnApp_DataSourcePropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),DatabaseName:cdk.stringToCloudFormation(properties.databaseName),Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnAppDataSourcePropertyFromCloudFormation(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("arn","Arn",properties.Arn!=null?cfn_parse.FromCloudFormation.getString(properties.Arn):void 0),ret.addPropertyResult("databaseName","DatabaseName",properties.DatabaseName!=null?cfn_parse.FromCloudFormation.getString(properties.DatabaseName):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse.FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApp_EnvironmentVariablePropertyValidator(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("key",cdk.requiredValidator)(properties.key)),errors.collect(cdk.propertyValidator("key",cdk.validateString)(properties.key)),errors.collect(cdk.propertyValidator("secure",cdk.validateBoolean)(properties.secure)),errors.collect(cdk.propertyValidator("value",cdk.requiredValidator)(properties.value)),errors.collect(cdk.propertyValidator("value",cdk.validateString)(properties.value)),errors.wrap('supplied properties not correct for "EnvironmentVariableProperty"')}function cfnAppEnvironmentVariablePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnApp_EnvironmentVariablePropertyValidator(properties).assertSuccess(),{Key:cdk.stringToCloudFormation(properties.key),Secure:cdk.booleanToCloudFormation(properties.secure),Value:cdk.stringToCloudFormation(properties.value)}):properties}function CfnAppEnvironmentVariablePropertyFromCloudFormation(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("key","Key",cfn_parse.FromCloudFormation.getString(properties.Key)),ret.addPropertyResult("secure","Secure",properties.Secure!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Secure):void 0),ret.addPropertyResult("value","Value",cfn_parse.FromCloudFormation.getString(properties.Value)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApp_SourcePropertyValidator(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("password",cdk.validateString)(properties.password)),errors.collect(cdk.propertyValidator("revision",cdk.validateString)(properties.revision)),errors.collect(cdk.propertyValidator("sshKey",cdk.validateString)(properties.sshKey)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.collect(cdk.propertyValidator("url",cdk.validateString)(properties.url)),errors.collect(cdk.propertyValidator("username",cdk.validateString)(properties.username)),errors.wrap('supplied properties not correct for "SourceProperty"')}function cfnAppSourcePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnApp_SourcePropertyValidator(properties).assertSuccess(),{Password:cdk.stringToCloudFormation(properties.password),Revision:cdk.stringToCloudFormation(properties.revision),SshKey:cdk.stringToCloudFormation(properties.sshKey),Type:cdk.stringToCloudFormation(properties.type),Url:cdk.stringToCloudFormation(properties.url),Username:cdk.stringToCloudFormation(properties.username)}):properties}function CfnAppSourcePropertyFromCloudFormation(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("password","Password",properties.Password!=null?cfn_parse.FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("revision","Revision",properties.Revision!=null?cfn_parse.FromCloudFormation.getString(properties.Revision):void 0),ret.addPropertyResult("sshKey","SshKey",properties.SshKey!=null?cfn_parse.FromCloudFormation.getString(properties.SshKey):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse.FromCloudFormation.getString(properties.Type):void 0),ret.addPropertyResult("url","Url",properties.Url!=null?cfn_parse.FromCloudFormation.getString(properties.Url):void 0),ret.addPropertyResult("username","Username",properties.Username!=null?cfn_parse.FromCloudFormation.getString(properties.Username):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApp_SslConfigurationPropertyValidator(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("certificate",cdk.validateString)(properties.certificate)),errors.collect(cdk.propertyValidator("chain",cdk.validateString)(properties.chain)),errors.collect(cdk.propertyValidator("privateKey",cdk.validateString)(properties.privateKey)),errors.wrap('supplied properties not correct for "SslConfigurationProperty"')}function cfnAppSslConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnApp_SslConfigurationPropertyValidator(properties).assertSuccess(),{Certificate:cdk.stringToCloudFormation(properties.certificate),Chain:cdk.stringToCloudFormation(properties.chain),PrivateKey:cdk.stringToCloudFormation(properties.privateKey)}):properties}function CfnAppSslConfigurationPropertyFromCloudFormation(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("certificate","Certificate",properties.Certificate!=null?cfn_parse.FromCloudFormation.getString(properties.Certificate):void 0),ret.addPropertyResult("chain","Chain",properties.Chain!=null?cfn_parse.FromCloudFormation.getString(properties.Chain):void 0),ret.addPropertyResult("privateKey","PrivateKey",properties.PrivateKey!=null?cfn_parse.FromCloudFormation.getString(properties.PrivateKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnElasticLoadBalancerAttachmentPropsValidator(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("elasticLoadBalancerName",cdk.requiredValidator)(properties.elasticLoadBalancerName)),errors.collect(cdk.propertyValidator("elasticLoadBalancerName",cdk.validateString)(properties.elasticLoadBalancerName)),errors.collect(cdk.propertyValidator("layerId",cdk.requiredValidator)(properties.layerId)),errors.collect(cdk.propertyValidator("layerId",cdk.validateString)(properties.layerId)),errors.wrap('supplied properties not correct for "CfnElasticLoadBalancerAttachmentProps"')}function cfnElasticLoadBalancerAttachmentPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnElasticLoadBalancerAttachmentPropsValidator(properties).assertSuccess(),{ElasticLoadBalancerName:cdk.stringToCloudFormation(properties.elasticLoadBalancerName),LayerId:cdk.stringToCloudFormation(properties.layerId)}):properties}function CfnElasticLoadBalancerAttachmentPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("elasticLoadBalancerName","ElasticLoadBalancerName",cfn_parse.FromCloudFormation.getString(properties.ElasticLoadBalancerName)),ret.addPropertyResult("layerId","LayerId",cfn_parse.FromCloudFormation.getString(properties.LayerId)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnElasticLoadBalancerAttachment extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnElasticLoadBalancerAttachment.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_opsworks_CfnElasticLoadBalancerAttachmentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnElasticLoadBalancerAttachment),error}cdk.requireProperty(props,"elasticLoadBalancerName",this),cdk.requireProperty(props,"layerId",this),this.elasticLoadBalancerName=props.elasticLoadBalancerName,this.layerId=props.layerId}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnElasticLoadBalancerAttachmentPropsFromCloudFormation(resourceProperties),ret=new CfnElasticLoadBalancerAttachment(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",CfnElasticLoadBalancerAttachment.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{elasticLoadBalancerName:this.elasticLoadBalancerName,layerId:this.layerId}}renderProperties(props){return cfnElasticLoadBalancerAttachmentPropsToCloudFormation(props)}}exports.CfnElasticLoadBalancerAttachment=CfnElasticLoadBalancerAttachment,_b=JSII_RTTI_SYMBOL_1,CfnElasticLoadBalancerAttachment[_b]={fqn:"aws-cdk-lib.aws_opsworks.CfnElasticLoadBalancerAttachment",version:"2.70.0"},CfnElasticLoadBalancerAttachment.CFN_RESOURCE_TYPE_NAME="AWS::OpsWorks::ElasticLoadBalancerAttachment";function CfnInstancePropsValidator(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("agentVersion",cdk.validateString)(properties.agentVersion)),errors.collect(cdk.propertyValidator("amiId",cdk.validateString)(properties.amiId)),errors.collect(cdk.propertyValidator("architecture",cdk.validateString)(properties.architecture)),errors.collect(cdk.propertyValidator("autoScalingType",cdk.validateString)(properties.autoScalingType)),errors.collect(cdk.propertyValidator("availabilityZone",cdk.validateString)(properties.availabilityZone)),errors.collect(cdk.propertyValidator("blockDeviceMappings",cdk.listValidator(CfnInstance_BlockDeviceMappingPropertyValidator))(properties.blockDeviceMappings)),errors.collect(cdk.propertyValidator("ebsOptimized",cdk.validateBoolean)(properties.ebsOptimized)),errors.collect(cdk.propertyValidator("elasticIps",cdk.listValidator(cdk.validateString))(properties.elasticIps)),errors.collect(cdk.propertyValidator("hostname",cdk.validateString)(properties.hostname)),errors.collect(cdk.propertyValidator("installUpdatesOnBoot",cdk.validateBoolean)(properties.installUpdatesOnBoot)),errors.collect(cdk.propertyValidator("instanceType",cdk.requiredValidator)(properties.instanceType)),errors.collect(cdk.propertyValidator("instanceType",cdk.validateString)(properties.instanceType)),errors.collect(cdk.propertyValidator("layerIds",cdk.requiredValidator)(properties.layerIds)),errors.collect(cdk.propertyValidator("layerIds",cdk.listValidator(cdk.validateString))(properties.layerIds)),errors.collect(cdk.propertyValidator("os",cdk.validateString)(properties.os)),errors.collect(cdk.propertyValidator("rootDeviceType",cdk.validateString)(properties.rootDeviceType)),errors.collect(cdk.propertyValidator("sshKeyName",cdk.validateString)(properties.sshKeyName)),errors.collect(cdk.propertyValidator("stackId",cdk.requiredValidator)(properties.stackId)),errors.collect(cdk.propertyValidator("stackId",cdk.validateString)(properties.stackId)),errors.collect(cdk.propertyValidator("subnetId",cdk.validateString)(properties.subnetId)),errors.collect(cdk.propertyValidator("tenancy",cdk.validateString)(properties.tenancy)),errors.collect(cdk.propertyValidator("timeBasedAutoScaling",CfnInstance_TimeBasedAutoScalingPropertyValidator)(properties.timeBasedAutoScaling)),errors.collect(cdk.propertyValidator("virtualizationType",cdk.validateString)(properties.virtualizationType)),errors.collect(cdk.propertyValidator("volumes",cdk.listValidator(cdk.validateString))(properties.volumes)),errors.wrap('supplied properties not correct for "CfnInstanceProps"')}function cfnInstancePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnInstancePropsValidator(properties).assertSuccess(),{InstanceType:cdk.stringToCloudFormation(properties.instanceType),LayerIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.layerIds),StackId:cdk.stringToCloudFormation(properties.stackId),AgentVersion:cdk.stringToCloudFormation(properties.agentVersion),AmiId:cdk.stringToCloudFormation(properties.amiId),Architecture:cdk.stringToCloudFormation(properties.architecture),AutoScalingType:cdk.stringToCloudFormation(properties.autoScalingType),AvailabilityZone:cdk.stringToCloudFormation(properties.availabilityZone),BlockDeviceMappings:cdk.listMapper(cfnInstanceBlockDeviceMappingPropertyToCloudFormation)(properties.blockDeviceMappings),EbsOptimized:cdk.booleanToCloudFormation(properties.ebsOptimized),ElasticIps:cdk.listMapper(cdk.stringToCloudFormation)(properties.elasticIps),Hostname:cdk.stringToCloudFormation(properties.hostname),InstallUpdatesOnBoot:cdk.booleanToCloudFormation(properties.installUpdatesOnBoot),Os:cdk.stringToCloudFormation(properties.os),RootDeviceType:cdk.stringToCloudFormation(properties.rootDeviceType),SshKeyName:cdk.stringToCloudFormation(properties.sshKeyName),SubnetId:cdk.stringToCloudFormation(properties.subnetId),Tenancy:cdk.stringToCloudFormation(properties.tenancy),TimeBasedAutoScaling:cfnInstanceTimeBasedAutoScalingPropertyToCloudFormation(properties.timeBasedAutoScaling),VirtualizationType:cdk.stringToCloudFormation(properties.virtualizationType),Volumes:cdk.listMapper(cdk.stringToCloudFormation)(properties.volumes)}):properties}function CfnInstancePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceType","InstanceType",cfn_parse.FromCloudFormation.getString(properties.InstanceType)),ret.addPropertyResult("layerIds","LayerIds",cfn_parse.FromCloudFormation.getStringArray(properties.LayerIds)),ret.addPropertyResult("stackId","StackId",cfn_parse.FromCloudFormation.getString(properties.StackId)),ret.addPropertyResult("agentVersion","AgentVersion",properties.AgentVersion!=null?cfn_parse.FromCloudFormation.getString(properties.AgentVersion):void 0),ret.addPropertyResult("amiId","AmiId",properties.AmiId!=null?cfn_parse.FromCloudFormation.getString(properties.AmiId):void 0),ret.addPropertyResult("architecture","Architecture",properties.Architecture!=null?cfn_parse.FromCloudFormation.getString(properties.Architecture):void 0),ret.addPropertyResult("autoScalingType","AutoScalingType",properties.AutoScalingType!=null?cfn_parse.FromCloudFormation.getString(properties.AutoScalingType):void 0),ret.addPropertyResult("availabilityZone","AvailabilityZone",properties.AvailabilityZone!=null?cfn_parse.FromCloudFormation.getString(properties.AvailabilityZone):void 0),ret.addPropertyResult("blockDeviceMappings","BlockDeviceMappings",properties.BlockDeviceMappings!=null?cfn_parse.FromCloudFormation.getArray(CfnInstanceBlockDeviceMappingPropertyFromCloudFormation)(properties.BlockDeviceMappings):void 0),ret.addPropertyResult("ebsOptimized","EbsOptimized",properties.EbsOptimized!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EbsOptimized):void 0),ret.addPropertyResult("elasticIps","ElasticIps",properties.ElasticIps!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ElasticIps):void 0),ret.addPropertyResult("hostname","Hostname",properties.Hostname!=null?cfn_parse.FromCloudFormation.getString(properties.Hostname):void 0),ret.addPropertyResult("installUpdatesOnBoot","InstallUpdatesOnBoot",properties.InstallUpdatesOnBoot!=null?cfn_parse.FromCloudFormation.getBoolean(properties.InstallUpdatesOnBoot):void 0),ret.addPropertyResult("os","Os",properties.Os!=null?cfn_parse.FromCloudFormation.getString(properties.Os):void 0),ret.addPropertyResult("rootDeviceType","RootDeviceType",properties.RootDeviceType!=null?cfn_parse.FromCloudFormation.getString(properties.RootDeviceType):void 0),ret.addPropertyResult("sshKeyName","SshKeyName",properties.SshKeyName!=null?cfn_parse.FromCloudFormation.getString(properties.SshKeyName):void 0),ret.addPropertyResult("subnetId","SubnetId",properties.SubnetId!=null?cfn_parse.FromCloudFormation.getString(properties.SubnetId):void 0),ret.addPropertyResult("tenancy","Tenancy",properties.Tenancy!=null?cfn_parse.FromCloudFormation.getString(properties.Tenancy):void 0),ret.addPropertyResult("timeBasedAutoScaling","TimeBasedAutoScaling",properties.TimeBasedAutoScaling!=null?CfnInstanceTimeBasedAutoScalingPropertyFromCloudFormation(properties.TimeBasedAutoScaling):void 0),ret.addPropertyResult("virtualizationType","VirtualizationType",properties.VirtualizationType!=null?cfn_parse.FromCloudFormation.getString(properties.VirtualizationType):void 0),ret.addPropertyResult("volumes","Volumes",properties.Volumes!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Volumes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnInstance extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnInstance.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_opsworks_CfnInstanceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnInstance),error}cdk.requireProperty(props,"instanceType",this),cdk.requireProperty(props,"layerIds",this),cdk.requireProperty(props,"stackId",this),this.attrAvailabilityZone=cdk.Token.asString(this.getAtt("AvailabilityZone",cdk.ResolutionTypeHint.STRING)),this.attrPrivateDnsName=cdk.Token.asString(this.getAtt("PrivateDnsName",cdk.ResolutionTypeHint.STRING)),this.attrPrivateIp=cdk.Token.asString(this.getAtt("PrivateIp",cdk.ResolutionTypeHint.STRING)),this.attrPublicDnsName=cdk.Token.asString(this.getAtt("PublicDnsName",cdk.ResolutionTypeHint.STRING)),this.attrPublicIp=cdk.Token.asString(this.getAtt("PublicIp",cdk.ResolutionTypeHint.STRING)),this.instanceType=props.instanceType,this.layerIds=props.layerIds,this.stackId=props.stackId,this.agentVersion=props.agentVersion,this.amiId=props.amiId,this.architecture=props.architecture,this.autoScalingType=props.autoScalingType,this.availabilityZone=props.availabilityZone,this.blockDeviceMappings=props.blockDeviceMappings,this.ebsOptimized=props.ebsOptimized,this.elasticIps=props.elasticIps,this.hostname=props.hostname,this.installUpdatesOnBoot=props.installUpdatesOnBoot,this.os=props.os,this.rootDeviceType=props.rootDeviceType,this.sshKeyName=props.sshKeyName,this.subnetId=props.subnetId,this.tenancy=props.tenancy,this.timeBasedAutoScaling=props.timeBasedAutoScaling,this.virtualizationType=props.virtualizationType,this.volumes=props.volumes}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnInstancePropsFromCloudFormation(resourceProperties),ret=new CfnInstance(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",CfnInstance.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{instanceType:this.instanceType,layerIds:this.layerIds,stackId:this.stackId,agentVersion:this.agentVersion,amiId:this.amiId,architecture:this.architecture,autoScalingType:this.autoScalingType,availabilityZone:this.availabilityZone,blockDeviceMappings:this.blockDeviceMappings,ebsOptimized:this.ebsOptimized,elasticIps:this.elasticIps,hostname:this.hostname,installUpdatesOnBoot:this.installUpdatesOnBoot,os:this.os,rootDeviceType:this.rootDeviceType,sshKeyName:this.sshKeyName,subnetId:this.subnetId,tenancy:this.tenancy,timeBasedAutoScaling:this.timeBasedAutoScaling,virtualizationType:this.virtualizationType,volumes:this.volumes}}renderProperties(props){return cfnInstancePropsToCloudFormation(props)}}exports.CfnInstance=CfnInstance,_c=JSII_RTTI_SYMBOL_1,CfnInstance[_c]={fqn:"aws-cdk-lib.aws_opsworks.CfnInstance",version:"2.70.0"},CfnInstance.CFN_RESOURCE_TYPE_NAME="AWS::OpsWorks::Instance";function CfnInstance_BlockDeviceMappingPropertyValidator(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("deviceName",cdk.validateString)(properties.deviceName)),errors.collect(cdk.propertyValidator("ebs",CfnInstance_EbsBlockDevicePropertyValidator)(properties.ebs)),errors.collect(cdk.propertyValidator("noDevice",cdk.validateString)(properties.noDevice)),errors.collect(cdk.propertyValidator("virtualName",cdk.validateString)(properties.virtualName)),errors.wrap('supplied properties not correct for "BlockDeviceMappingProperty"')}function cfnInstanceBlockDeviceMappingPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnInstance_BlockDeviceMappingPropertyValidator(properties).assertSuccess(),{DeviceName:cdk.stringToCloudFormation(properties.deviceName),Ebs:cfnInstanceEbsBlockDevicePropertyToCloudFormation(properties.ebs),NoDevice:cdk.stringToCloudFormation(properties.noDevice),VirtualName:cdk.stringToCloudFormation(properties.virtualName)}):properties}function CfnInstanceBlockDeviceMappingPropertyFromCloudFormation(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("deviceName","DeviceName",properties.DeviceName!=null?cfn_parse.FromCloudFormation.getString(properties.DeviceName):void 0),ret.addPropertyResult("ebs","Ebs",properties.Ebs!=null?CfnInstanceEbsBlockDevicePropertyFromCloudFormation(properties.Ebs):void 0),ret.addPropertyResult("noDevice","NoDevice",properties.NoDevice!=null?cfn_parse.FromCloudFormation.getString(properties.NoDevice):void 0),ret.addPropertyResult("virtualName","VirtualName",properties.VirtualName!=null?cfn_parse.FromCloudFormation.getString(properties.VirtualName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInstance_EbsBlockDevicePropertyValidator(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("deleteOnTermination",cdk.validateBoolean)(properties.deleteOnTermination)),errors.collect(cdk.propertyValidator("iops",cdk.validateNumber)(properties.iops)),errors.collect(cdk.propertyValidator("snapshotId",cdk.validateString)(properties.snapshotId)),errors.collect(cdk.propertyValidator("volumeSize",cdk.validateNumber)(properties.volumeSize)),errors.collect(cdk.propertyValidator("volumeType",cdk.validateString)(properties.volumeType)),errors.wrap('supplied properties not correct for "EbsBlockDeviceProperty"')}function cfnInstanceEbsBlockDevicePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnInstance_EbsBlockDevicePropertyValidator(properties).assertSuccess(),{DeleteOnTermination:cdk.booleanToCloudFormation(properties.deleteOnTermination),Iops:cdk.numberToCloudFormation(properties.iops),SnapshotId:cdk.stringToCloudFormation(properties.snapshotId),VolumeSize:cdk.numberToCloudFormation(properties.volumeSize),VolumeType:cdk.stringToCloudFormation(properties.volumeType)}):properties}function CfnInstanceEbsBlockDevicePropertyFromCloudFormation(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("deleteOnTermination","DeleteOnTermination",properties.DeleteOnTermination!=null?cfn_parse.FromCloudFormation.getBoolean(properties.DeleteOnTermination):void 0),ret.addPropertyResult("iops","Iops",properties.Iops!=null?cfn_parse.FromCloudFormation.getNumber(properties.Iops):void 0),ret.addPropertyResult("snapshotId","SnapshotId",properties.SnapshotId!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotId):void 0),ret.addPropertyResult("volumeSize","VolumeSize",properties.VolumeSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.VolumeSize):void 0),ret.addPropertyResult("volumeType","VolumeType",properties.VolumeType!=null?cfn_parse.FromCloudFormation.getString(properties.VolumeType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInstance_TimeBasedAutoScalingPropertyValidator(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("friday",cdk.hashValidator(cdk.validateString))(properties.friday)),errors.collect(cdk.propertyValidator("monday",cdk.hashValidator(cdk.validateString))(properties.monday)),errors.collect(cdk.propertyValidator("saturday",cdk.hashValidator(cdk.validateString))(properties.saturday)),errors.collect(cdk.propertyValidator("sunday",cdk.hashValidator(cdk.validateString))(properties.sunday)),errors.collect(cdk.propertyValidator("thursday",cdk.hashValidator(cdk.validateString))(properties.thursday)),errors.collect(cdk.propertyValidator("tuesday",cdk.hashValidator(cdk.validateString))(properties.tuesday)),errors.collect(cdk.propertyValidator("wednesday",cdk.hashValidator(cdk.validateString))(properties.wednesday)),errors.wrap('supplied properties not correct for "TimeBasedAutoScalingProperty"')}function cfnInstanceTimeBasedAutoScalingPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnInstance_TimeBasedAutoScalingPropertyValidator(properties).assertSuccess(),{Friday:cdk.hashMapper(cdk.stringToCloudFormation)(properties.friday),Monday:cdk.hashMapper(cdk.stringToCloudFormation)(properties.monday),Saturday:cdk.hashMapper(cdk.stringToCloudFormation)(properties.saturday),Sunday:cdk.hashMapper(cdk.stringToCloudFormation)(properties.sunday),Thursday:cdk.hashMapper(cdk.stringToCloudFormation)(properties.thursday),Tuesday:cdk.hashMapper(cdk.stringToCloudFormation)(properties.tuesday),Wednesday:cdk.hashMapper(cdk.stringToCloudFormation)(properties.wednesday)}):properties}function CfnInstanceTimeBasedAutoScalingPropertyFromCloudFormation(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("friday","Friday",properties.Friday!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Friday):void 0),ret.addPropertyResult("monday","Monday",properties.Monday!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Monday):void 0),ret.addPropertyResult("saturday","Saturday",properties.Saturday!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Saturday):void 0),ret.addPropertyResult("sunday","Sunday",properties.Sunday!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Sunday):void 0),ret.addPropertyResult("thursday","Thursday",properties.Thursday!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Thursday):void 0),ret.addPropertyResult("tuesday","Tuesday",properties.Tuesday!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Tuesday):void 0),ret.addPropertyResult("wednesday","Wednesday",properties.Wednesday!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Wednesday):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnLayerPropsValidator(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("attributes",cdk.hashValidator(cdk.validateString))(properties.attributes)),errors.collect(cdk.propertyValidator("autoAssignElasticIps",cdk.requiredValidator)(properties.autoAssignElasticIps)),errors.collect(cdk.propertyValidator("autoAssignElasticIps",cdk.validateBoolean)(properties.autoAssignElasticIps)),errors.collect(cdk.propertyValidator("autoAssignPublicIps",cdk.requiredValidator)(properties.autoAssignPublicIps)),errors.collect(cdk.propertyValidator("autoAssignPublicIps",cdk.validateBoolean)(properties.autoAssignPublicIps)),errors.collect(cdk.propertyValidator("customInstanceProfileArn",cdk.validateString)(properties.customInstanceProfileArn)),errors.collect(cdk.propertyValidator("customJson",cdk.validateObject)(properties.customJson)),errors.collect(cdk.propertyValidator("customRecipes",CfnLayer_RecipesPropertyValidator)(properties.customRecipes)),errors.collect(cdk.propertyValidator("customSecurityGroupIds",cdk.listValidator(cdk.validateString))(properties.customSecurityGroupIds)),errors.collect(cdk.propertyValidator("enableAutoHealing",cdk.requiredValidator)(properties.enableAutoHealing)),errors.collect(cdk.propertyValidator("enableAutoHealing",cdk.validateBoolean)(properties.enableAutoHealing)),errors.collect(cdk.propertyValidator("installUpdatesOnBoot",cdk.validateBoolean)(properties.installUpdatesOnBoot)),errors.collect(cdk.propertyValidator("lifecycleEventConfiguration",CfnLayer_LifecycleEventConfigurationPropertyValidator)(properties.lifecycleEventConfiguration)),errors.collect(cdk.propertyValidator("loadBasedAutoScaling",CfnLayer_LoadBasedAutoScalingPropertyValidator)(properties.loadBasedAutoScaling)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("packages",cdk.listValidator(cdk.validateString))(properties.packages)),errors.collect(cdk.propertyValidator("shortname",cdk.requiredValidator)(properties.shortname)),errors.collect(cdk.propertyValidator("shortname",cdk.validateString)(properties.shortname)),errors.collect(cdk.propertyValidator("stackId",cdk.requiredValidator)(properties.stackId)),errors.collect(cdk.propertyValidator("stackId",cdk.validateString)(properties.stackId)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.collect(cdk.propertyValidator("useEbsOptimizedInstances",cdk.validateBoolean)(properties.useEbsOptimizedInstances)),errors.collect(cdk.propertyValidator("volumeConfigurations",cdk.listValidator(CfnLayer_VolumeConfigurationPropertyValidator))(properties.volumeConfigurations)),errors.wrap('supplied properties not correct for "CfnLayerProps"')}function cfnLayerPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnLayerPropsValidator(properties).assertSuccess(),{AutoAssignElasticIps:cdk.booleanToCloudFormation(properties.autoAssignElasticIps),AutoAssignPublicIps:cdk.booleanToCloudFormation(properties.autoAssignPublicIps),EnableAutoHealing:cdk.booleanToCloudFormation(properties.enableAutoHealing),Name:cdk.stringToCloudFormation(properties.name),Shortname:cdk.stringToCloudFormation(properties.shortname),StackId:cdk.stringToCloudFormation(properties.stackId),Type:cdk.stringToCloudFormation(properties.type),Attributes:cdk.hashMapper(cdk.stringToCloudFormation)(properties.attributes),CustomInstanceProfileArn:cdk.stringToCloudFormation(properties.customInstanceProfileArn),CustomJson:cdk.objectToCloudFormation(properties.customJson),CustomRecipes:cfnLayerRecipesPropertyToCloudFormation(properties.customRecipes),CustomSecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.customSecurityGroupIds),InstallUpdatesOnBoot:cdk.booleanToCloudFormation(properties.installUpdatesOnBoot),LifecycleEventConfiguration:cfnLayerLifecycleEventConfigurationPropertyToCloudFormation(properties.lifecycleEventConfiguration),LoadBasedAutoScaling:cfnLayerLoadBasedAutoScalingPropertyToCloudFormation(properties.loadBasedAutoScaling),Packages:cdk.listMapper(cdk.stringToCloudFormation)(properties.packages),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),UseEbsOptimizedInstances:cdk.booleanToCloudFormation(properties.useEbsOptimizedInstances),VolumeConfigurations:cdk.listMapper(cfnLayerVolumeConfigurationPropertyToCloudFormation)(properties.volumeConfigurations)}):properties}function CfnLayerPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("autoAssignElasticIps","AutoAssignElasticIps",cfn_parse.FromCloudFormation.getBoolean(properties.AutoAssignElasticIps)),ret.addPropertyResult("autoAssignPublicIps","AutoAssignPublicIps",cfn_parse.FromCloudFormation.getBoolean(properties.AutoAssignPublicIps)),ret.addPropertyResult("enableAutoHealing","EnableAutoHealing",cfn_parse.FromCloudFormation.getBoolean(properties.EnableAutoHealing)),ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("shortname","Shortname",cfn_parse.FromCloudFormation.getString(properties.Shortname)),ret.addPropertyResult("stackId","StackId",cfn_parse.FromCloudFormation.getString(properties.StackId)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addPropertyResult("attributes","Attributes",properties.Attributes!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Attributes):void 0),ret.addPropertyResult("customInstanceProfileArn","CustomInstanceProfileArn",properties.CustomInstanceProfileArn!=null?cfn_parse.FromCloudFormation.getString(properties.CustomInstanceProfileArn):void 0),ret.addPropertyResult("customJson","CustomJson",properties.CustomJson!=null?cfn_parse.FromCloudFormation.getAny(properties.CustomJson):void 0),ret.addPropertyResult("customRecipes","CustomRecipes",properties.CustomRecipes!=null?CfnLayerRecipesPropertyFromCloudFormation(properties.CustomRecipes):void 0),ret.addPropertyResult("customSecurityGroupIds","CustomSecurityGroupIds",properties.CustomSecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.CustomSecurityGroupIds):void 0),ret.addPropertyResult("installUpdatesOnBoot","InstallUpdatesOnBoot",properties.InstallUpdatesOnBoot!=null?cfn_parse.FromCloudFormation.getBoolean(properties.InstallUpdatesOnBoot):void 0),ret.addPropertyResult("lifecycleEventConfiguration","LifecycleEventConfiguration",properties.LifecycleEventConfiguration!=null?CfnLayerLifecycleEventConfigurationPropertyFromCloudFormation(properties.LifecycleEventConfiguration):void 0),ret.addPropertyResult("loadBasedAutoScaling","LoadBasedAutoScaling",properties.LoadBasedAutoScaling!=null?CfnLayerLoadBasedAutoScalingPropertyFromCloudFormation(properties.LoadBasedAutoScaling):void 0),ret.addPropertyResult("packages","Packages",properties.Packages!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Packages):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("useEbsOptimizedInstances","UseEbsOptimizedInstances",properties.UseEbsOptimizedInstances!=null?cfn_parse.FromCloudFormation.getBoolean(properties.UseEbsOptimizedInstances):void 0),ret.addPropertyResult("volumeConfigurations","VolumeConfigurations",properties.VolumeConfigurations!=null?cfn_parse.FromCloudFormation.getArray(CfnLayerVolumeConfigurationPropertyFromCloudFormation)(properties.VolumeConfigurations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnLayer extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnLayer.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_opsworks_CfnLayerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLayer),error}cdk.requireProperty(props,"autoAssignElasticIps",this),cdk.requireProperty(props,"autoAssignPublicIps",this),cdk.requireProperty(props,"enableAutoHealing",this),cdk.requireProperty(props,"name",this),cdk.requireProperty(props,"shortname",this),cdk.requireProperty(props,"stackId",this),cdk.requireProperty(props,"type",this),this.autoAssignElasticIps=props.autoAssignElasticIps,this.autoAssignPublicIps=props.autoAssignPublicIps,this.enableAutoHealing=props.enableAutoHealing,this.name=props.name,this.shortname=props.shortname,this.stackId=props.stackId,this.type=props.type,this.attributes=props.attributes,this.customInstanceProfileArn=props.customInstanceProfileArn,this.customJson=props.customJson,this.customRecipes=props.customRecipes,this.customSecurityGroupIds=props.customSecurityGroupIds,this.installUpdatesOnBoot=props.installUpdatesOnBoot,this.lifecycleEventConfiguration=props.lifecycleEventConfiguration,this.loadBasedAutoScaling=props.loadBasedAutoScaling,this.packages=props.packages,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::OpsWorks::Layer",props.tags,{tagPropertyName:"tags"}),this.useEbsOptimizedInstances=props.useEbsOptimizedInstances,this.volumeConfigurations=props.volumeConfigurations}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLayerPropsFromCloudFormation(resourceProperties),ret=new CfnLayer(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",CfnLayer.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{autoAssignElasticIps:this.autoAssignElasticIps,autoAssignPublicIps:this.autoAssignPublicIps,enableAutoHealing:this.enableAutoHealing,name:this.name,shortname:this.shortname,stackId:this.stackId,type:this.type,attributes:this.attributes,customInstanceProfileArn:this.customInstanceProfileArn,customJson:this.customJson,custo