UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 130 kB
"use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k,_l;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnStaticIp=exports.CfnLoadBalancerTlsCertificate=exports.CfnLoadBalancer=exports.CfnInstance=exports.CfnDistribution=exports.CfnDisk=exports.CfnDatabase=exports.CfnContainer=exports.CfnCertificate=exports.CfnBucket=exports.CfnAlarm=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 CfnAlarmPropsValidator(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("alarmName",cdk.requiredValidator)(properties.alarmName)),errors.collect(cdk.propertyValidator("alarmName",cdk.validateString)(properties.alarmName)),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.requiredValidator)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.validateString)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("contactProtocols",cdk.listValidator(cdk.validateString))(properties.contactProtocols)),errors.collect(cdk.propertyValidator("datapointsToAlarm",cdk.validateNumber)(properties.datapointsToAlarm)),errors.collect(cdk.propertyValidator("evaluationPeriods",cdk.requiredValidator)(properties.evaluationPeriods)),errors.collect(cdk.propertyValidator("evaluationPeriods",cdk.validateNumber)(properties.evaluationPeriods)),errors.collect(cdk.propertyValidator("metricName",cdk.requiredValidator)(properties.metricName)),errors.collect(cdk.propertyValidator("metricName",cdk.validateString)(properties.metricName)),errors.collect(cdk.propertyValidator("monitoredResourceName",cdk.requiredValidator)(properties.monitoredResourceName)),errors.collect(cdk.propertyValidator("monitoredResourceName",cdk.validateString)(properties.monitoredResourceName)),errors.collect(cdk.propertyValidator("notificationEnabled",cdk.validateBoolean)(properties.notificationEnabled)),errors.collect(cdk.propertyValidator("notificationTriggers",cdk.listValidator(cdk.validateString))(properties.notificationTriggers)),errors.collect(cdk.propertyValidator("threshold",cdk.requiredValidator)(properties.threshold)),errors.collect(cdk.propertyValidator("threshold",cdk.validateNumber)(properties.threshold)),errors.collect(cdk.propertyValidator("treatMissingData",cdk.validateString)(properties.treatMissingData)),errors.wrap('supplied properties not correct for "CfnAlarmProps"')}function cfnAlarmPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAlarmPropsValidator(properties).assertSuccess(),{AlarmName:cdk.stringToCloudFormation(properties.alarmName),ComparisonOperator:cdk.stringToCloudFormation(properties.comparisonOperator),EvaluationPeriods:cdk.numberToCloudFormation(properties.evaluationPeriods),MetricName:cdk.stringToCloudFormation(properties.metricName),MonitoredResourceName:cdk.stringToCloudFormation(properties.monitoredResourceName),Threshold:cdk.numberToCloudFormation(properties.threshold),ContactProtocols:cdk.listMapper(cdk.stringToCloudFormation)(properties.contactProtocols),DatapointsToAlarm:cdk.numberToCloudFormation(properties.datapointsToAlarm),NotificationEnabled:cdk.booleanToCloudFormation(properties.notificationEnabled),NotificationTriggers:cdk.listMapper(cdk.stringToCloudFormation)(properties.notificationTriggers),TreatMissingData:cdk.stringToCloudFormation(properties.treatMissingData)}):properties}function CfnAlarmPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("alarmName","AlarmName",cfn_parse.FromCloudFormation.getString(properties.AlarmName)),ret.addPropertyResult("comparisonOperator","ComparisonOperator",cfn_parse.FromCloudFormation.getString(properties.ComparisonOperator)),ret.addPropertyResult("evaluationPeriods","EvaluationPeriods",cfn_parse.FromCloudFormation.getNumber(properties.EvaluationPeriods)),ret.addPropertyResult("metricName","MetricName",cfn_parse.FromCloudFormation.getString(properties.MetricName)),ret.addPropertyResult("monitoredResourceName","MonitoredResourceName",cfn_parse.FromCloudFormation.getString(properties.MonitoredResourceName)),ret.addPropertyResult("threshold","Threshold",cfn_parse.FromCloudFormation.getNumber(properties.Threshold)),ret.addPropertyResult("contactProtocols","ContactProtocols",properties.ContactProtocols!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ContactProtocols):void 0),ret.addPropertyResult("datapointsToAlarm","DatapointsToAlarm",properties.DatapointsToAlarm!=null?cfn_parse.FromCloudFormation.getNumber(properties.DatapointsToAlarm):void 0),ret.addPropertyResult("notificationEnabled","NotificationEnabled",properties.NotificationEnabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.NotificationEnabled):void 0),ret.addPropertyResult("notificationTriggers","NotificationTriggers",properties.NotificationTriggers!=null?cfn_parse.FromCloudFormation.getStringArray(properties.NotificationTriggers):void 0),ret.addPropertyResult("treatMissingData","TreatMissingData",properties.TreatMissingData!=null?cfn_parse.FromCloudFormation.getString(properties.TreatMissingData):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAlarm extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnAlarm.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_lightsail_CfnAlarmProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAlarm),error}cdk.requireProperty(props,"alarmName",this),cdk.requireProperty(props,"comparisonOperator",this),cdk.requireProperty(props,"evaluationPeriods",this),cdk.requireProperty(props,"metricName",this),cdk.requireProperty(props,"monitoredResourceName",this),cdk.requireProperty(props,"threshold",this),this.attrAlarmArn=cdk.Token.asString(this.getAtt("AlarmArn",cdk.ResolutionTypeHint.STRING)),this.attrState=cdk.Token.asString(this.getAtt("State",cdk.ResolutionTypeHint.STRING)),this.alarmName=props.alarmName,this.comparisonOperator=props.comparisonOperator,this.evaluationPeriods=props.evaluationPeriods,this.metricName=props.metricName,this.monitoredResourceName=props.monitoredResourceName,this.threshold=props.threshold,this.contactProtocols=props.contactProtocols,this.datapointsToAlarm=props.datapointsToAlarm,this.notificationEnabled=props.notificationEnabled,this.notificationTriggers=props.notificationTriggers,this.treatMissingData=props.treatMissingData}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAlarmPropsFromCloudFormation(resourceProperties),ret=new CfnAlarm(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",CfnAlarm.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{alarmName:this.alarmName,comparisonOperator:this.comparisonOperator,evaluationPeriods:this.evaluationPeriods,metricName:this.metricName,monitoredResourceName:this.monitoredResourceName,threshold:this.threshold,contactProtocols:this.contactProtocols,datapointsToAlarm:this.datapointsToAlarm,notificationEnabled:this.notificationEnabled,notificationTriggers:this.notificationTriggers,treatMissingData:this.treatMissingData}}renderProperties(props){return cfnAlarmPropsToCloudFormation(props)}}exports.CfnAlarm=CfnAlarm,_a=JSII_RTTI_SYMBOL_1,CfnAlarm[_a]={fqn:"aws-cdk-lib.aws_lightsail.CfnAlarm",version:"2.70.0"},CfnAlarm.CFN_RESOURCE_TYPE_NAME="AWS::Lightsail::Alarm";function CfnBucketPropsValidator(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("accessRules",CfnBucket_AccessRulesPropertyValidator)(properties.accessRules)),errors.collect(cdk.propertyValidator("bucketName",cdk.requiredValidator)(properties.bucketName)),errors.collect(cdk.propertyValidator("bucketName",cdk.validateString)(properties.bucketName)),errors.collect(cdk.propertyValidator("bundleId",cdk.requiredValidator)(properties.bundleId)),errors.collect(cdk.propertyValidator("bundleId",cdk.validateString)(properties.bundleId)),errors.collect(cdk.propertyValidator("objectVersioning",cdk.validateBoolean)(properties.objectVersioning)),errors.collect(cdk.propertyValidator("readOnlyAccessAccounts",cdk.listValidator(cdk.validateString))(properties.readOnlyAccessAccounts)),errors.collect(cdk.propertyValidator("resourcesReceivingAccess",cdk.listValidator(cdk.validateString))(properties.resourcesReceivingAccess)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnBucketProps"')}function cfnBucketPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucketPropsValidator(properties).assertSuccess(),{BucketName:cdk.stringToCloudFormation(properties.bucketName),BundleId:cdk.stringToCloudFormation(properties.bundleId),AccessRules:cfnBucketAccessRulesPropertyToCloudFormation(properties.accessRules),ObjectVersioning:cdk.booleanToCloudFormation(properties.objectVersioning),ReadOnlyAccessAccounts:cdk.listMapper(cdk.stringToCloudFormation)(properties.readOnlyAccessAccounts),ResourcesReceivingAccess:cdk.listMapper(cdk.stringToCloudFormation)(properties.resourcesReceivingAccess),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnBucketPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketName","BucketName",cfn_parse.FromCloudFormation.getString(properties.BucketName)),ret.addPropertyResult("bundleId","BundleId",cfn_parse.FromCloudFormation.getString(properties.BundleId)),ret.addPropertyResult("accessRules","AccessRules",properties.AccessRules!=null?CfnBucketAccessRulesPropertyFromCloudFormation(properties.AccessRules):void 0),ret.addPropertyResult("objectVersioning","ObjectVersioning",properties.ObjectVersioning!=null?cfn_parse.FromCloudFormation.getBoolean(properties.ObjectVersioning):void 0),ret.addPropertyResult("readOnlyAccessAccounts","ReadOnlyAccessAccounts",properties.ReadOnlyAccessAccounts!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ReadOnlyAccessAccounts):void 0),ret.addPropertyResult("resourcesReceivingAccess","ResourcesReceivingAccess",properties.ResourcesReceivingAccess!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ResourcesReceivingAccess):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBucket extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnBucket.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_lightsail_CfnBucketProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBucket),error}cdk.requireProperty(props,"bucketName",this),cdk.requireProperty(props,"bundleId",this),this.attrAbleToUpdateBundle=this.getAtt("AbleToUpdateBundle",cdk.ResolutionTypeHint.STRING),this.attrBucketArn=cdk.Token.asString(this.getAtt("BucketArn",cdk.ResolutionTypeHint.STRING)),this.attrUrl=cdk.Token.asString(this.getAtt("Url",cdk.ResolutionTypeHint.STRING)),this.bucketName=props.bucketName,this.bundleId=props.bundleId,this.accessRules=props.accessRules,this.objectVersioning=props.objectVersioning,this.readOnlyAccessAccounts=props.readOnlyAccessAccounts,this.resourcesReceivingAccess=props.resourcesReceivingAccess,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Lightsail::Bucket",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBucketPropsFromCloudFormation(resourceProperties),ret=new CfnBucket(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",CfnBucket.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{bucketName:this.bucketName,bundleId:this.bundleId,accessRules:this.accessRules,objectVersioning:this.objectVersioning,readOnlyAccessAccounts:this.readOnlyAccessAccounts,resourcesReceivingAccess:this.resourcesReceivingAccess,tags:this.tags.renderTags()}}renderProperties(props){return cfnBucketPropsToCloudFormation(props)}}exports.CfnBucket=CfnBucket,_b=JSII_RTTI_SYMBOL_1,CfnBucket[_b]={fqn:"aws-cdk-lib.aws_lightsail.CfnBucket",version:"2.70.0"},CfnBucket.CFN_RESOURCE_TYPE_NAME="AWS::Lightsail::Bucket";function CfnBucket_AccessRulesPropertyValidator(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("allowPublicOverrides",cdk.validateBoolean)(properties.allowPublicOverrides)),errors.collect(cdk.propertyValidator("objectAccess",cdk.validateString)(properties.objectAccess)),errors.wrap('supplied properties not correct for "AccessRulesProperty"')}function cfnBucketAccessRulesPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_AccessRulesPropertyValidator(properties).assertSuccess(),{AllowPublicOverrides:cdk.booleanToCloudFormation(properties.allowPublicOverrides),GetObject:cdk.stringToCloudFormation(properties.objectAccess)}):properties}function CfnBucketAccessRulesPropertyFromCloudFormation(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("allowPublicOverrides","AllowPublicOverrides",properties.AllowPublicOverrides!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AllowPublicOverrides):void 0),ret.addPropertyResult("objectAccess","GetObject",properties.GetObject!=null?cfn_parse.FromCloudFormation.getString(properties.GetObject):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificatePropsValidator(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("certificateName",cdk.requiredValidator)(properties.certificateName)),errors.collect(cdk.propertyValidator("certificateName",cdk.validateString)(properties.certificateName)),errors.collect(cdk.propertyValidator("domainName",cdk.requiredValidator)(properties.domainName)),errors.collect(cdk.propertyValidator("domainName",cdk.validateString)(properties.domainName)),errors.collect(cdk.propertyValidator("subjectAlternativeNames",cdk.listValidator(cdk.validateString))(properties.subjectAlternativeNames)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnCertificateProps"')}function cfnCertificatePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificatePropsValidator(properties).assertSuccess(),{CertificateName:cdk.stringToCloudFormation(properties.certificateName),DomainName:cdk.stringToCloudFormation(properties.domainName),SubjectAlternativeNames:cdk.listMapper(cdk.stringToCloudFormation)(properties.subjectAlternativeNames),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnCertificatePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("certificateName","CertificateName",cfn_parse.FromCloudFormation.getString(properties.CertificateName)),ret.addPropertyResult("domainName","DomainName",cfn_parse.FromCloudFormation.getString(properties.DomainName)),ret.addPropertyResult("subjectAlternativeNames","SubjectAlternativeNames",properties.SubjectAlternativeNames!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SubjectAlternativeNames):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCertificate extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCertificate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_lightsail_CfnCertificateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCertificate),error}cdk.requireProperty(props,"certificateName",this),cdk.requireProperty(props,"domainName",this),this.attrCertificateArn=cdk.Token.asString(this.getAtt("CertificateArn",cdk.ResolutionTypeHint.STRING)),this.attrStatus=cdk.Token.asString(this.getAtt("Status",cdk.ResolutionTypeHint.STRING)),this.certificateName=props.certificateName,this.domainName=props.domainName,this.subjectAlternativeNames=props.subjectAlternativeNames,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Lightsail::Certificate",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCertificatePropsFromCloudFormation(resourceProperties),ret=new CfnCertificate(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",CfnCertificate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{certificateName:this.certificateName,domainName:this.domainName,subjectAlternativeNames:this.subjectAlternativeNames,tags:this.tags.renderTags()}}renderProperties(props){return cfnCertificatePropsToCloudFormation(props)}}exports.CfnCertificate=CfnCertificate,_c=JSII_RTTI_SYMBOL_1,CfnCertificate[_c]={fqn:"aws-cdk-lib.aws_lightsail.CfnCertificate",version:"2.70.0"},CfnCertificate.CFN_RESOURCE_TYPE_NAME="AWS::Lightsail::Certificate";function CfnContainerPropsValidator(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("containerServiceDeployment",CfnContainer_ContainerServiceDeploymentPropertyValidator)(properties.containerServiceDeployment)),errors.collect(cdk.propertyValidator("isDisabled",cdk.validateBoolean)(properties.isDisabled)),errors.collect(cdk.propertyValidator("power",cdk.requiredValidator)(properties.power)),errors.collect(cdk.propertyValidator("power",cdk.validateString)(properties.power)),errors.collect(cdk.propertyValidator("publicDomainNames",cdk.listValidator(CfnContainer_PublicDomainNamePropertyValidator))(properties.publicDomainNames)),errors.collect(cdk.propertyValidator("scale",cdk.requiredValidator)(properties.scale)),errors.collect(cdk.propertyValidator("scale",cdk.validateNumber)(properties.scale)),errors.collect(cdk.propertyValidator("serviceName",cdk.requiredValidator)(properties.serviceName)),errors.collect(cdk.propertyValidator("serviceName",cdk.validateString)(properties.serviceName)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnContainerProps"')}function cfnContainerPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainerPropsValidator(properties).assertSuccess(),{Power:cdk.stringToCloudFormation(properties.power),Scale:cdk.numberToCloudFormation(properties.scale),ServiceName:cdk.stringToCloudFormation(properties.serviceName),ContainerServiceDeployment:cfnContainerContainerServiceDeploymentPropertyToCloudFormation(properties.containerServiceDeployment),IsDisabled:cdk.booleanToCloudFormation(properties.isDisabled),PublicDomainNames:cdk.listMapper(cfnContainerPublicDomainNamePropertyToCloudFormation)(properties.publicDomainNames),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnContainerPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("power","Power",cfn_parse.FromCloudFormation.getString(properties.Power)),ret.addPropertyResult("scale","Scale",cfn_parse.FromCloudFormation.getNumber(properties.Scale)),ret.addPropertyResult("serviceName","ServiceName",cfn_parse.FromCloudFormation.getString(properties.ServiceName)),ret.addPropertyResult("containerServiceDeployment","ContainerServiceDeployment",properties.ContainerServiceDeployment!=null?CfnContainerContainerServiceDeploymentPropertyFromCloudFormation(properties.ContainerServiceDeployment):void 0),ret.addPropertyResult("isDisabled","IsDisabled",properties.IsDisabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.IsDisabled):void 0),ret.addPropertyResult("publicDomainNames","PublicDomainNames",properties.PublicDomainNames!=null?cfn_parse.FromCloudFormation.getArray(CfnContainerPublicDomainNamePropertyFromCloudFormation)(properties.PublicDomainNames):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnContainer extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnContainer.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_lightsail_CfnContainerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnContainer),error}cdk.requireProperty(props,"power",this),cdk.requireProperty(props,"scale",this),cdk.requireProperty(props,"serviceName",this),this.attrContainerArn=cdk.Token.asString(this.getAtt("ContainerArn",cdk.ResolutionTypeHint.STRING)),this.attrUrl=cdk.Token.asString(this.getAtt("Url",cdk.ResolutionTypeHint.STRING)),this.power=props.power,this.scale=props.scale,this.serviceName=props.serviceName,this.containerServiceDeployment=props.containerServiceDeployment,this.isDisabled=props.isDisabled,this.publicDomainNames=props.publicDomainNames,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Lightsail::Container",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnContainerPropsFromCloudFormation(resourceProperties),ret=new CfnContainer(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",CfnContainer.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{power:this.power,scale:this.scale,serviceName:this.serviceName,containerServiceDeployment:this.containerServiceDeployment,isDisabled:this.isDisabled,publicDomainNames:this.publicDomainNames,tags:this.tags.renderTags()}}renderProperties(props){return cfnContainerPropsToCloudFormation(props)}}exports.CfnContainer=CfnContainer,_d=JSII_RTTI_SYMBOL_1,CfnContainer[_d]={fqn:"aws-cdk-lib.aws_lightsail.CfnContainer",version:"2.70.0"},CfnContainer.CFN_RESOURCE_TYPE_NAME="AWS::Lightsail::Container";function CfnContainer_ContainerPropertyValidator(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("command",cdk.listValidator(cdk.validateString))(properties.command)),errors.collect(cdk.propertyValidator("containerName",cdk.validateString)(properties.containerName)),errors.collect(cdk.propertyValidator("environment",cdk.listValidator(CfnContainer_EnvironmentVariablePropertyValidator))(properties.environment)),errors.collect(cdk.propertyValidator("image",cdk.validateString)(properties.image)),errors.collect(cdk.propertyValidator("ports",cdk.listValidator(CfnContainer_PortInfoPropertyValidator))(properties.ports)),errors.wrap('supplied properties not correct for "ContainerProperty"')}function cfnContainerContainerPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainer_ContainerPropertyValidator(properties).assertSuccess(),{Command:cdk.listMapper(cdk.stringToCloudFormation)(properties.command),ContainerName:cdk.stringToCloudFormation(properties.containerName),Environment:cdk.listMapper(cfnContainerEnvironmentVariablePropertyToCloudFormation)(properties.environment),Image:cdk.stringToCloudFormation(properties.image),Ports:cdk.listMapper(cfnContainerPortInfoPropertyToCloudFormation)(properties.ports)}):properties}function CfnContainerContainerPropertyFromCloudFormation(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("command","Command",properties.Command!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Command):void 0),ret.addPropertyResult("containerName","ContainerName",properties.ContainerName!=null?cfn_parse.FromCloudFormation.getString(properties.ContainerName):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse.FromCloudFormation.getArray(CfnContainerEnvironmentVariablePropertyFromCloudFormation)(properties.Environment):void 0),ret.addPropertyResult("image","Image",properties.Image!=null?cfn_parse.FromCloudFormation.getString(properties.Image):void 0),ret.addPropertyResult("ports","Ports",properties.Ports!=null?cfn_parse.FromCloudFormation.getArray(CfnContainerPortInfoPropertyFromCloudFormation)(properties.Ports):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnContainer_ContainerServiceDeploymentPropertyValidator(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("containers",cdk.listValidator(CfnContainer_ContainerPropertyValidator))(properties.containers)),errors.collect(cdk.propertyValidator("publicEndpoint",CfnContainer_PublicEndpointPropertyValidator)(properties.publicEndpoint)),errors.wrap('supplied properties not correct for "ContainerServiceDeploymentProperty"')}function cfnContainerContainerServiceDeploymentPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainer_ContainerServiceDeploymentPropertyValidator(properties).assertSuccess(),{Containers:cdk.listMapper(cfnContainerContainerPropertyToCloudFormation)(properties.containers),PublicEndpoint:cfnContainerPublicEndpointPropertyToCloudFormation(properties.publicEndpoint)}):properties}function CfnContainerContainerServiceDeploymentPropertyFromCloudFormation(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("containers","Containers",properties.Containers!=null?cfn_parse.FromCloudFormation.getArray(CfnContainerContainerPropertyFromCloudFormation)(properties.Containers):void 0),ret.addPropertyResult("publicEndpoint","PublicEndpoint",properties.PublicEndpoint!=null?CfnContainerPublicEndpointPropertyFromCloudFormation(properties.PublicEndpoint):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnContainer_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("value",cdk.validateString)(properties.value)),errors.collect(cdk.propertyValidator("variable",cdk.validateString)(properties.variable)),errors.wrap('supplied properties not correct for "EnvironmentVariableProperty"')}function cfnContainerEnvironmentVariablePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainer_EnvironmentVariablePropertyValidator(properties).assertSuccess(),{Value:cdk.stringToCloudFormation(properties.value),Variable:cdk.stringToCloudFormation(properties.variable)}):properties}function CfnContainerEnvironmentVariablePropertyFromCloudFormation(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("value","Value",properties.Value!=null?cfn_parse.FromCloudFormation.getString(properties.Value):void 0),ret.addPropertyResult("variable","Variable",properties.Variable!=null?cfn_parse.FromCloudFormation.getString(properties.Variable):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnContainer_HealthCheckConfigPropertyValidator(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("healthyThreshold",cdk.validateNumber)(properties.healthyThreshold)),errors.collect(cdk.propertyValidator("intervalSeconds",cdk.validateNumber)(properties.intervalSeconds)),errors.collect(cdk.propertyValidator("path",cdk.validateString)(properties.path)),errors.collect(cdk.propertyValidator("successCodes",cdk.validateString)(properties.successCodes)),errors.collect(cdk.propertyValidator("timeoutSeconds",cdk.validateNumber)(properties.timeoutSeconds)),errors.collect(cdk.propertyValidator("unhealthyThreshold",cdk.validateNumber)(properties.unhealthyThreshold)),errors.wrap('supplied properties not correct for "HealthCheckConfigProperty"')}function cfnContainerHealthCheckConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainer_HealthCheckConfigPropertyValidator(properties).assertSuccess(),{HealthyThreshold:cdk.numberToCloudFormation(properties.healthyThreshold),IntervalSeconds:cdk.numberToCloudFormation(properties.intervalSeconds),Path:cdk.stringToCloudFormation(properties.path),SuccessCodes:cdk.stringToCloudFormation(properties.successCodes),TimeoutSeconds:cdk.numberToCloudFormation(properties.timeoutSeconds),UnhealthyThreshold:cdk.numberToCloudFormation(properties.unhealthyThreshold)}):properties}function CfnContainerHealthCheckConfigPropertyFromCloudFormation(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("healthyThreshold","HealthyThreshold",properties.HealthyThreshold!=null?cfn_parse.FromCloudFormation.getNumber(properties.HealthyThreshold):void 0),ret.addPropertyResult("intervalSeconds","IntervalSeconds",properties.IntervalSeconds!=null?cfn_parse.FromCloudFormation.getNumber(properties.IntervalSeconds):void 0),ret.addPropertyResult("path","Path",properties.Path!=null?cfn_parse.FromCloudFormation.getString(properties.Path):void 0),ret.addPropertyResult("successCodes","SuccessCodes",properties.SuccessCodes!=null?cfn_parse.FromCloudFormation.getString(properties.SuccessCodes):void 0),ret.addPropertyResult("timeoutSeconds","TimeoutSeconds",properties.TimeoutSeconds!=null?cfn_parse.FromCloudFormation.getNumber(properties.TimeoutSeconds):void 0),ret.addPropertyResult("unhealthyThreshold","UnhealthyThreshold",properties.UnhealthyThreshold!=null?cfn_parse.FromCloudFormation.getNumber(properties.UnhealthyThreshold):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnContainer_PortInfoPropertyValidator(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("port",cdk.validateString)(properties.port)),errors.collect(cdk.propertyValidator("protocol",cdk.validateString)(properties.protocol)),errors.wrap('supplied properties not correct for "PortInfoProperty"')}function cfnContainerPortInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainer_PortInfoPropertyValidator(properties).assertSuccess(),{Port:cdk.stringToCloudFormation(properties.port),Protocol:cdk.stringToCloudFormation(properties.protocol)}):properties}function CfnContainerPortInfoPropertyFromCloudFormation(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("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getString(properties.Port):void 0),ret.addPropertyResult("protocol","Protocol",properties.Protocol!=null?cfn_parse.FromCloudFormation.getString(properties.Protocol):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnContainer_PublicDomainNamePropertyValidator(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("certificateName",cdk.validateString)(properties.certificateName)),errors.collect(cdk.propertyValidator("domainNames",cdk.listValidator(cdk.validateString))(properties.domainNames)),errors.wrap('supplied properties not correct for "PublicDomainNameProperty"')}function cfnContainerPublicDomainNamePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainer_PublicDomainNamePropertyValidator(properties).assertSuccess(),{CertificateName:cdk.stringToCloudFormation(properties.certificateName),DomainNames:cdk.listMapper(cdk.stringToCloudFormation)(properties.domainNames)}):properties}function CfnContainerPublicDomainNamePropertyFromCloudFormation(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("certificateName","CertificateName",properties.CertificateName!=null?cfn_parse.FromCloudFormation.getString(properties.CertificateName):void 0),ret.addPropertyResult("domainNames","DomainNames",properties.DomainNames!=null?cfn_parse.FromCloudFormation.getStringArray(properties.DomainNames):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnContainer_PublicEndpointPropertyValidator(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("containerName",cdk.validateString)(properties.containerName)),errors.collect(cdk.propertyValidator("containerPort",cdk.validateNumber)(properties.containerPort)),errors.collect(cdk.propertyValidator("healthCheckConfig",CfnContainer_HealthCheckConfigPropertyValidator)(properties.healthCheckConfig)),errors.wrap('supplied properties not correct for "PublicEndpointProperty"')}function cfnContainerPublicEndpointPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnContainer_PublicEndpointPropertyValidator(properties).assertSuccess(),{ContainerName:cdk.stringToCloudFormation(properties.containerName),ContainerPort:cdk.numberToCloudFormation(properties.containerPort),HealthCheckConfig:cfnContainerHealthCheckConfigPropertyToCloudFormation(properties.healthCheckConfig)}):properties}function CfnContainerPublicEndpointPropertyFromCloudFormation(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("containerName","ContainerName",properties.ContainerName!=null?cfn_parse.FromCloudFormation.getString(properties.ContainerName):void 0),ret.addPropertyResult("containerPort","ContainerPort",properties.ContainerPort!=null?cfn_parse.FromCloudFormation.getNumber(properties.ContainerPort):void 0),ret.addPropertyResult("healthCheckConfig","HealthCheckConfig",properties.HealthCheckConfig!=null?CfnContainerHealthCheckConfigPropertyFromCloudFormation(properties.HealthCheckConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDatabasePropsValidator(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("availabilityZone",cdk.validateString)(properties.availabilityZone)),errors.collect(cdk.propertyValidator("backupRetention",cdk.validateBoolean)(properties.backupRetention)),errors.collect(cdk.propertyValidator("caCertificateIdentifier",cdk.validateString)(properties.caCertificateIdentifier)),errors.collect(cdk.propertyValidator("masterDatabaseName",cdk.requiredValidator)(properties.masterDatabaseName)),errors.collect(cdk.propertyValidator("masterDatabaseName",cdk.validateString)(properties.masterDatabaseName)),errors.collect(cdk.propertyValidator("masterUserPassword",cdk.validateString)(properties.masterUserPassword)),errors.collect(cdk.propertyValidator("masterUsername",cdk.requiredValidator)(properties.masterUsername)),errors.collect(cdk.propertyValidator("masterUsername",cdk.validateString)(properties.masterUsername)),errors.collect(cdk.propertyValidator("preferredBackupWindow",cdk.validateString)(properties.preferredBackupWindow)),errors.collect(cdk.propertyValidator("preferredMaintenanceWindow",cdk.validateString)(properties.preferredMaintenanceWindow)),errors.collect(cdk.propertyValidator("publiclyAccessible",cdk.validateBoolean)(properties.publiclyAccessible)),errors.collect(cdk.propertyValidator("relationalDatabaseBlueprintId",cdk.requiredValidator)(properties.relationalDatabaseBlueprintId)),errors.collect(cdk.propertyValidator("relationalDatabaseBlueprintId",cdk.validateString)(properties.relationalDatabaseBlueprintId)),errors.collect(cdk.propertyValidator("relationalDatabaseBundleId",cdk.requiredValidator)(properties.relationalDatabaseBundleId)),errors.collect(cdk.propertyValidator("relationalDatabaseBundleId",cdk.validateString)(properties.relationalDatabaseBundleId)),errors.collect(cdk.propertyValidator("relationalDatabaseName",cdk.requiredValidator)(properties.relationalDatabaseName)),errors.collect(cdk.propertyValidator("relationalDatabaseName",cdk.validateString)(properties.relationalDatabaseName)),errors.collect(cdk.propertyValidator("relationalDatabaseParameters",cdk.listValidator(CfnDatabase_RelationalDatabaseParameterPropertyValidator))(properties.relationalDatabaseParameters)),errors.collect(cdk.propertyValidator("rotateMasterUserPassword",cdk.validateBoolean)(properties.rotateMasterUserPassword)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDatabaseProps"')}function cfnDatabasePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDatabasePropsValidator(properties).assertSuccess(),{MasterDatabaseName:cdk.stringToCloudFormation(properties.masterDatabaseName),MasterUsername:cdk.stringToCloudFormation(properties.masterUsername),RelationalDatabaseBlueprintId:cdk.stringToCloudFormation(properties.relationalDatabaseBlueprintId),RelationalDatabaseBundleId:cdk.stringToCloudFormation(properties.relationalDatabaseBundleId),RelationalDatabaseName:cdk.stringToCloudFormation(properties.relationalDatabaseName),AvailabilityZone:cdk.stringToCloudFormation(properties.availabilityZone),BackupRetention:cdk.booleanToCloudFormation(properties.backupRetention),CaCertificateIdentifier:cdk.stringToCloudFormation(properties.caCertificateIdentifier),MasterUserPassword:cdk.stringToCloudFormation(properties.masterUserPassword),PreferredBackupWindow:cdk.stringToCloudFormation(properties.preferredBackupWindow),PreferredMaintenanceWindow:cdk.stringToCloudFormation(properties.preferredMaintenanceWindow),PubliclyAccessible:cdk.booleanToCloudFormation(properties.publiclyAccessible),RelationalDatabaseParameters:cdk.listMapper(cfnDatabaseRelationalDatabaseParameterPropertyToCloudFormation)(properties.relationalDatabaseParameters),RotateMasterUserPassword:cdk.booleanToCloudFormation(properties.rotateMasterUserPassword),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDatabasePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("masterDatabaseName","MasterDatabaseName",cfn_parse.FromCloudFormation.getString(properties.MasterDatabaseName)),ret.addPropertyResult("masterUsername","MasterUsername",cfn_parse.FromCloudFormation.getString(properties.MasterUsername)),ret.addPropertyResult("relationalDatabaseBlueprintId","RelationalDatabaseBlueprintId",cfn_parse.FromCloudFormation.getString(properties.RelationalDatabaseBlueprintId)),ret.addPropertyResult("relationalDatabaseBundleId","RelationalDatabaseBundleId",cfn_parse.FromCloudFormation.getString(properties.RelationalDatabaseBundleId)),ret.addPropertyResult("relationalDatabaseName","RelationalDatabaseName",cfn_parse.FromCloudFormation.getString(properties.RelationalDatabaseName)),ret.addPropertyResult("availabilityZone","AvailabilityZone",properties.AvailabilityZone!=null?cfn_parse.FromCloudFormation.getString(properties.AvailabilityZone):void 0),ret.addPropertyResult("backupRetention","BackupRetention",properties.BackupRetention!=null?cfn_parse.FromCloudFormation.getBoolean(properties.BackupRetention):void 0),ret.addPropertyResult("caCertificateIdentifier","CaCertificateIdentifier",properties.CaCertificateIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.CaCertificateIdentifier):void 0),ret.addPropertyResult("masterUserPassword","MasterUserPassword",properties.MasterUserPassword!=null?cfn_parse.FromCloudFormation.getString(properties.MasterUserPassword):void 0),ret.addPropertyResult("preferredBackupWindow","PreferredBackupWindow",properties.PreferredBackupWindow!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredBackupWindow):void 0),ret.addPropertyResult("preferredMaintenanceWindow","PreferredMaintenanceWindow",properties.PreferredMaintenanceWindow!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredMaintenanceWindow):void 0),ret.addPropertyResult("publiclyAccessible","PubliclyAccessible",properties.PubliclyAccessible!=null?cfn_parse.FromCloudFormation.getBoolean(properties.PubliclyAccessible):void 0),ret.addPropertyResult("relationalDatabaseParameters","RelationalDatabaseParameters",properties.RelationalDatabaseParameters!=null?cfn_parse.FromCloudFormation.getArray(CfnDatabaseRelationalDatabaseParameterPropertyFromCloudFormation)(properties.RelationalDatabaseParameters):void 0),ret.addPropertyResult("rotateMasterUserPassword","RotateMasterUserPassword",properties.RotateMasterUserPassword!=null?cfn_parse.FromCloudFormation.getBoolean(properties.RotateMasterUserPassword):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDatabase extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDatabase.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_lightsail_CfnDatabaseProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDatabase),error}cdk.requireProperty(props,"masterDatabaseName",this),cdk.requireProperty(props,"masterUsername",this),cdk.requireProperty(props,"relationalDatabaseBlueprintId",this),cdk.requireProperty(props,"relationalDatabaseBundleId",this),cdk.requireProperty(props,"relationalDatabaseName",this),this.attrDatabaseArn=cdk.Token.asString(this.getAtt("DatabaseArn",cdk.ResolutionTypeHint.STRING)),this.masterDatabaseName=props.masterDatabaseName,this.masterUsername=props.masterUsername,this.relationalDatabaseBlueprintId=props.relationalDatabaseBlueprintId,this.relationalDatabaseBundleId=props.relationalDatabaseBundleId,this.relationalDatabaseName=props.relationalDatabaseName,this.availabilityZone=props.availabilityZone,this.backupRetention=props.backupRetention,this.caCertificateIdentifier=props.caCertificateIdentifier,this.masterUserPassword=props.masterUserPassword,this.preferredBackupWindow=props.preferredBackupWindow,this.preferredMaintenanceWindow=props.preferredMaintenanceWindow,this.publiclyAccessible=props.publiclyAccessible,this.relationalDatabaseParameters=props.relationalDatabaseParameters,this.rotateMasterUserPassword=props.rotateMasterUserPassword,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Lightsail::Database",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDatabasePropsFromCloudFormation(resourceProperties),ret=new CfnDatabase(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parse