UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 87.6 kB
"use strict";var _a,_b,_c,_d;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnPermission=exports.CfnCertificateAuthorityActivation=exports.CfnCertificateAuthority=exports.CfnCertificate=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 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("apiPassthrough",CfnCertificate_ApiPassthroughPropertyValidator)(properties.apiPassthrough)),errors.collect(cdk.propertyValidator("certificateAuthorityArn",cdk.requiredValidator)(properties.certificateAuthorityArn)),errors.collect(cdk.propertyValidator("certificateAuthorityArn",cdk.validateString)(properties.certificateAuthorityArn)),errors.collect(cdk.propertyValidator("certificateSigningRequest",cdk.requiredValidator)(properties.certificateSigningRequest)),errors.collect(cdk.propertyValidator("certificateSigningRequest",cdk.validateString)(properties.certificateSigningRequest)),errors.collect(cdk.propertyValidator("signingAlgorithm",cdk.requiredValidator)(properties.signingAlgorithm)),errors.collect(cdk.propertyValidator("signingAlgorithm",cdk.validateString)(properties.signingAlgorithm)),errors.collect(cdk.propertyValidator("templateArn",cdk.validateString)(properties.templateArn)),errors.collect(cdk.propertyValidator("validity",cdk.requiredValidator)(properties.validity)),errors.collect(cdk.propertyValidator("validity",CfnCertificate_ValidityPropertyValidator)(properties.validity)),errors.collect(cdk.propertyValidator("validityNotBefore",CfnCertificate_ValidityPropertyValidator)(properties.validityNotBefore)),errors.wrap('supplied properties not correct for "CfnCertificateProps"')}function cfnCertificatePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificatePropsValidator(properties).assertSuccess(),{CertificateAuthorityArn:cdk.stringToCloudFormation(properties.certificateAuthorityArn),CertificateSigningRequest:cdk.stringToCloudFormation(properties.certificateSigningRequest),SigningAlgorithm:cdk.stringToCloudFormation(properties.signingAlgorithm),Validity:cfnCertificateValidityPropertyToCloudFormation(properties.validity),ApiPassthrough:cfnCertificateApiPassthroughPropertyToCloudFormation(properties.apiPassthrough),TemplateArn:cdk.stringToCloudFormation(properties.templateArn),ValidityNotBefore:cfnCertificateValidityPropertyToCloudFormation(properties.validityNotBefore)}):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("certificateAuthorityArn","CertificateAuthorityArn",cfn_parse.FromCloudFormation.getString(properties.CertificateAuthorityArn)),ret.addPropertyResult("certificateSigningRequest","CertificateSigningRequest",cfn_parse.FromCloudFormation.getString(properties.CertificateSigningRequest)),ret.addPropertyResult("signingAlgorithm","SigningAlgorithm",cfn_parse.FromCloudFormation.getString(properties.SigningAlgorithm)),ret.addPropertyResult("validity","Validity",CfnCertificateValidityPropertyFromCloudFormation(properties.Validity)),ret.addPropertyResult("apiPassthrough","ApiPassthrough",properties.ApiPassthrough!=null?CfnCertificateApiPassthroughPropertyFromCloudFormation(properties.ApiPassthrough):void 0),ret.addPropertyResult("templateArn","TemplateArn",properties.TemplateArn!=null?cfn_parse.FromCloudFormation.getString(properties.TemplateArn):void 0),ret.addPropertyResult("validityNotBefore","ValidityNotBefore",properties.ValidityNotBefore!=null?CfnCertificateValidityPropertyFromCloudFormation(properties.ValidityNotBefore):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_acmpca_CfnCertificateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCertificate),error}cdk.requireProperty(props,"certificateAuthorityArn",this),cdk.requireProperty(props,"certificateSigningRequest",this),cdk.requireProperty(props,"signingAlgorithm",this),cdk.requireProperty(props,"validity",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrCertificate=cdk.Token.asString(this.getAtt("Certificate",cdk.ResolutionTypeHint.STRING)),this.certificateAuthorityArn=props.certificateAuthorityArn,this.certificateSigningRequest=props.certificateSigningRequest,this.signingAlgorithm=props.signingAlgorithm,this.validity=props.validity,this.apiPassthrough=props.apiPassthrough,this.templateArn=props.templateArn,this.validityNotBefore=props.validityNotBefore}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{certificateAuthorityArn:this.certificateAuthorityArn,certificateSigningRequest:this.certificateSigningRequest,signingAlgorithm:this.signingAlgorithm,validity:this.validity,apiPassthrough:this.apiPassthrough,templateArn:this.templateArn,validityNotBefore:this.validityNotBefore}}renderProperties(props){return cfnCertificatePropsToCloudFormation(props)}}exports.CfnCertificate=CfnCertificate,_a=JSII_RTTI_SYMBOL_1,CfnCertificate[_a]={fqn:"aws-cdk-lib.aws_acmpca.CfnCertificate",version:"2.70.0"},CfnCertificate.CFN_RESOURCE_TYPE_NAME="AWS::ACMPCA::Certificate";function CfnCertificate_ApiPassthroughPropertyValidator(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("extensions",CfnCertificate_ExtensionsPropertyValidator)(properties.extensions)),errors.collect(cdk.propertyValidator("subject",CfnCertificate_SubjectPropertyValidator)(properties.subject)),errors.wrap('supplied properties not correct for "ApiPassthroughProperty"')}function cfnCertificateApiPassthroughPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_ApiPassthroughPropertyValidator(properties).assertSuccess(),{Extensions:cfnCertificateExtensionsPropertyToCloudFormation(properties.extensions),Subject:cfnCertificateSubjectPropertyToCloudFormation(properties.subject)}):properties}function CfnCertificateApiPassthroughPropertyFromCloudFormation(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("extensions","Extensions",properties.Extensions!=null?CfnCertificateExtensionsPropertyFromCloudFormation(properties.Extensions):void 0),ret.addPropertyResult("subject","Subject",properties.Subject!=null?CfnCertificateSubjectPropertyFromCloudFormation(properties.Subject):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_CustomAttributePropertyValidator(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("objectIdentifier",cdk.requiredValidator)(properties.objectIdentifier)),errors.collect(cdk.propertyValidator("objectIdentifier",cdk.validateString)(properties.objectIdentifier)),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 "CustomAttributeProperty"')}function cfnCertificateCustomAttributePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_CustomAttributePropertyValidator(properties).assertSuccess(),{ObjectIdentifier:cdk.stringToCloudFormation(properties.objectIdentifier),Value:cdk.stringToCloudFormation(properties.value)}):properties}function CfnCertificateCustomAttributePropertyFromCloudFormation(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("objectIdentifier","ObjectIdentifier",cfn_parse.FromCloudFormation.getString(properties.ObjectIdentifier)),ret.addPropertyResult("value","Value",cfn_parse.FromCloudFormation.getString(properties.Value)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_CustomExtensionPropertyValidator(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("critical",cdk.validateBoolean)(properties.critical)),errors.collect(cdk.propertyValidator("objectIdentifier",cdk.requiredValidator)(properties.objectIdentifier)),errors.collect(cdk.propertyValidator("objectIdentifier",cdk.validateString)(properties.objectIdentifier)),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 "CustomExtensionProperty"')}function cfnCertificateCustomExtensionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_CustomExtensionPropertyValidator(properties).assertSuccess(),{Critical:cdk.booleanToCloudFormation(properties.critical),ObjectIdentifier:cdk.stringToCloudFormation(properties.objectIdentifier),Value:cdk.stringToCloudFormation(properties.value)}):properties}function CfnCertificateCustomExtensionPropertyFromCloudFormation(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("critical","Critical",properties.Critical!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Critical):void 0),ret.addPropertyResult("objectIdentifier","ObjectIdentifier",cfn_parse.FromCloudFormation.getString(properties.ObjectIdentifier)),ret.addPropertyResult("value","Value",cfn_parse.FromCloudFormation.getString(properties.Value)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_EdiPartyNamePropertyValidator(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("nameAssigner",cdk.requiredValidator)(properties.nameAssigner)),errors.collect(cdk.propertyValidator("nameAssigner",cdk.validateString)(properties.nameAssigner)),errors.collect(cdk.propertyValidator("partyName",cdk.requiredValidator)(properties.partyName)),errors.collect(cdk.propertyValidator("partyName",cdk.validateString)(properties.partyName)),errors.wrap('supplied properties not correct for "EdiPartyNameProperty"')}function cfnCertificateEdiPartyNamePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_EdiPartyNamePropertyValidator(properties).assertSuccess(),{NameAssigner:cdk.stringToCloudFormation(properties.nameAssigner),PartyName:cdk.stringToCloudFormation(properties.partyName)}):properties}function CfnCertificateEdiPartyNamePropertyFromCloudFormation(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("nameAssigner","NameAssigner",cfn_parse.FromCloudFormation.getString(properties.NameAssigner)),ret.addPropertyResult("partyName","PartyName",cfn_parse.FromCloudFormation.getString(properties.PartyName)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_ExtendedKeyUsagePropertyValidator(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("extendedKeyUsageObjectIdentifier",cdk.validateString)(properties.extendedKeyUsageObjectIdentifier)),errors.collect(cdk.propertyValidator("extendedKeyUsageType",cdk.validateString)(properties.extendedKeyUsageType)),errors.wrap('supplied properties not correct for "ExtendedKeyUsageProperty"')}function cfnCertificateExtendedKeyUsagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_ExtendedKeyUsagePropertyValidator(properties).assertSuccess(),{ExtendedKeyUsageObjectIdentifier:cdk.stringToCloudFormation(properties.extendedKeyUsageObjectIdentifier),ExtendedKeyUsageType:cdk.stringToCloudFormation(properties.extendedKeyUsageType)}):properties}function CfnCertificateExtendedKeyUsagePropertyFromCloudFormation(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("extendedKeyUsageObjectIdentifier","ExtendedKeyUsageObjectIdentifier",properties.ExtendedKeyUsageObjectIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.ExtendedKeyUsageObjectIdentifier):void 0),ret.addPropertyResult("extendedKeyUsageType","ExtendedKeyUsageType",properties.ExtendedKeyUsageType!=null?cfn_parse.FromCloudFormation.getString(properties.ExtendedKeyUsageType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_ExtensionsPropertyValidator(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("certificatePolicies",cdk.listValidator(CfnCertificate_PolicyInformationPropertyValidator))(properties.certificatePolicies)),errors.collect(cdk.propertyValidator("customExtensions",cdk.listValidator(CfnCertificate_CustomExtensionPropertyValidator))(properties.customExtensions)),errors.collect(cdk.propertyValidator("extendedKeyUsage",cdk.listValidator(CfnCertificate_ExtendedKeyUsagePropertyValidator))(properties.extendedKeyUsage)),errors.collect(cdk.propertyValidator("keyUsage",CfnCertificate_KeyUsagePropertyValidator)(properties.keyUsage)),errors.collect(cdk.propertyValidator("subjectAlternativeNames",cdk.listValidator(CfnCertificate_GeneralNamePropertyValidator))(properties.subjectAlternativeNames)),errors.wrap('supplied properties not correct for "ExtensionsProperty"')}function cfnCertificateExtensionsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_ExtensionsPropertyValidator(properties).assertSuccess(),{CertificatePolicies:cdk.listMapper(cfnCertificatePolicyInformationPropertyToCloudFormation)(properties.certificatePolicies),CustomExtensions:cdk.listMapper(cfnCertificateCustomExtensionPropertyToCloudFormation)(properties.customExtensions),ExtendedKeyUsage:cdk.listMapper(cfnCertificateExtendedKeyUsagePropertyToCloudFormation)(properties.extendedKeyUsage),KeyUsage:cfnCertificateKeyUsagePropertyToCloudFormation(properties.keyUsage),SubjectAlternativeNames:cdk.listMapper(cfnCertificateGeneralNamePropertyToCloudFormation)(properties.subjectAlternativeNames)}):properties}function CfnCertificateExtensionsPropertyFromCloudFormation(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("certificatePolicies","CertificatePolicies",properties.CertificatePolicies!=null?cfn_parse.FromCloudFormation.getArray(CfnCertificatePolicyInformationPropertyFromCloudFormation)(properties.CertificatePolicies):void 0),ret.addPropertyResult("customExtensions","CustomExtensions",properties.CustomExtensions!=null?cfn_parse.FromCloudFormation.getArray(CfnCertificateCustomExtensionPropertyFromCloudFormation)(properties.CustomExtensions):void 0),ret.addPropertyResult("extendedKeyUsage","ExtendedKeyUsage",properties.ExtendedKeyUsage!=null?cfn_parse.FromCloudFormation.getArray(CfnCertificateExtendedKeyUsagePropertyFromCloudFormation)(properties.ExtendedKeyUsage):void 0),ret.addPropertyResult("keyUsage","KeyUsage",properties.KeyUsage!=null?CfnCertificateKeyUsagePropertyFromCloudFormation(properties.KeyUsage):void 0),ret.addPropertyResult("subjectAlternativeNames","SubjectAlternativeNames",properties.SubjectAlternativeNames!=null?cfn_parse.FromCloudFormation.getArray(CfnCertificateGeneralNamePropertyFromCloudFormation)(properties.SubjectAlternativeNames):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_GeneralNamePropertyValidator(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("directoryName",CfnCertificate_SubjectPropertyValidator)(properties.directoryName)),errors.collect(cdk.propertyValidator("dnsName",cdk.validateString)(properties.dnsName)),errors.collect(cdk.propertyValidator("ediPartyName",CfnCertificate_EdiPartyNamePropertyValidator)(properties.ediPartyName)),errors.collect(cdk.propertyValidator("ipAddress",cdk.validateString)(properties.ipAddress)),errors.collect(cdk.propertyValidator("otherName",CfnCertificate_OtherNamePropertyValidator)(properties.otherName)),errors.collect(cdk.propertyValidator("registeredId",cdk.validateString)(properties.registeredId)),errors.collect(cdk.propertyValidator("rfc822Name",cdk.validateString)(properties.rfc822Name)),errors.collect(cdk.propertyValidator("uniformResourceIdentifier",cdk.validateString)(properties.uniformResourceIdentifier)),errors.wrap('supplied properties not correct for "GeneralNameProperty"')}function cfnCertificateGeneralNamePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_GeneralNamePropertyValidator(properties).assertSuccess(),{DirectoryName:cfnCertificateSubjectPropertyToCloudFormation(properties.directoryName),DnsName:cdk.stringToCloudFormation(properties.dnsName),EdiPartyName:cfnCertificateEdiPartyNamePropertyToCloudFormation(properties.ediPartyName),IpAddress:cdk.stringToCloudFormation(properties.ipAddress),OtherName:cfnCertificateOtherNamePropertyToCloudFormation(properties.otherName),RegisteredId:cdk.stringToCloudFormation(properties.registeredId),Rfc822Name:cdk.stringToCloudFormation(properties.rfc822Name),UniformResourceIdentifier:cdk.stringToCloudFormation(properties.uniformResourceIdentifier)}):properties}function CfnCertificateGeneralNamePropertyFromCloudFormation(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("directoryName","DirectoryName",properties.DirectoryName!=null?CfnCertificateSubjectPropertyFromCloudFormation(properties.DirectoryName):void 0),ret.addPropertyResult("dnsName","DnsName",properties.DnsName!=null?cfn_parse.FromCloudFormation.getString(properties.DnsName):void 0),ret.addPropertyResult("ediPartyName","EdiPartyName",properties.EdiPartyName!=null?CfnCertificateEdiPartyNamePropertyFromCloudFormation(properties.EdiPartyName):void 0),ret.addPropertyResult("ipAddress","IpAddress",properties.IpAddress!=null?cfn_parse.FromCloudFormation.getString(properties.IpAddress):void 0),ret.addPropertyResult("otherName","OtherName",properties.OtherName!=null?CfnCertificateOtherNamePropertyFromCloudFormation(properties.OtherName):void 0),ret.addPropertyResult("registeredId","RegisteredId",properties.RegisteredId!=null?cfn_parse.FromCloudFormation.getString(properties.RegisteredId):void 0),ret.addPropertyResult("rfc822Name","Rfc822Name",properties.Rfc822Name!=null?cfn_parse.FromCloudFormation.getString(properties.Rfc822Name):void 0),ret.addPropertyResult("uniformResourceIdentifier","UniformResourceIdentifier",properties.UniformResourceIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.UniformResourceIdentifier):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_KeyUsagePropertyValidator(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("crlSign",cdk.validateBoolean)(properties.crlSign)),errors.collect(cdk.propertyValidator("dataEncipherment",cdk.validateBoolean)(properties.dataEncipherment)),errors.collect(cdk.propertyValidator("decipherOnly",cdk.validateBoolean)(properties.decipherOnly)),errors.collect(cdk.propertyValidator("digitalSignature",cdk.validateBoolean)(properties.digitalSignature)),errors.collect(cdk.propertyValidator("encipherOnly",cdk.validateBoolean)(properties.encipherOnly)),errors.collect(cdk.propertyValidator("keyAgreement",cdk.validateBoolean)(properties.keyAgreement)),errors.collect(cdk.propertyValidator("keyCertSign",cdk.validateBoolean)(properties.keyCertSign)),errors.collect(cdk.propertyValidator("keyEncipherment",cdk.validateBoolean)(properties.keyEncipherment)),errors.collect(cdk.propertyValidator("nonRepudiation",cdk.validateBoolean)(properties.nonRepudiation)),errors.wrap('supplied properties not correct for "KeyUsageProperty"')}function cfnCertificateKeyUsagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_KeyUsagePropertyValidator(properties).assertSuccess(),{CRLSign:cdk.booleanToCloudFormation(properties.crlSign),DataEncipherment:cdk.booleanToCloudFormation(properties.dataEncipherment),DecipherOnly:cdk.booleanToCloudFormation(properties.decipherOnly),DigitalSignature:cdk.booleanToCloudFormation(properties.digitalSignature),EncipherOnly:cdk.booleanToCloudFormation(properties.encipherOnly),KeyAgreement:cdk.booleanToCloudFormation(properties.keyAgreement),KeyCertSign:cdk.booleanToCloudFormation(properties.keyCertSign),KeyEncipherment:cdk.booleanToCloudFormation(properties.keyEncipherment),NonRepudiation:cdk.booleanToCloudFormation(properties.nonRepudiation)}):properties}function CfnCertificateKeyUsagePropertyFromCloudFormation(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("crlSign","CRLSign",properties.CRLSign!=null?cfn_parse.FromCloudFormation.getBoolean(properties.CRLSign):void 0),ret.addPropertyResult("dataEncipherment","DataEncipherment",properties.DataEncipherment!=null?cfn_parse.FromCloudFormation.getBoolean(properties.DataEncipherment):void 0),ret.addPropertyResult("decipherOnly","DecipherOnly",properties.DecipherOnly!=null?cfn_parse.FromCloudFormation.getBoolean(properties.DecipherOnly):void 0),ret.addPropertyResult("digitalSignature","DigitalSignature",properties.DigitalSignature!=null?cfn_parse.FromCloudFormation.getBoolean(properties.DigitalSignature):void 0),ret.addPropertyResult("encipherOnly","EncipherOnly",properties.EncipherOnly!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EncipherOnly):void 0),ret.addPropertyResult("keyAgreement","KeyAgreement",properties.KeyAgreement!=null?cfn_parse.FromCloudFormation.getBoolean(properties.KeyAgreement):void 0),ret.addPropertyResult("keyCertSign","KeyCertSign",properties.KeyCertSign!=null?cfn_parse.FromCloudFormation.getBoolean(properties.KeyCertSign):void 0),ret.addPropertyResult("keyEncipherment","KeyEncipherment",properties.KeyEncipherment!=null?cfn_parse.FromCloudFormation.getBoolean(properties.KeyEncipherment):void 0),ret.addPropertyResult("nonRepudiation","NonRepudiation",properties.NonRepudiation!=null?cfn_parse.FromCloudFormation.getBoolean(properties.NonRepudiation):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_OtherNamePropertyValidator(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("typeId",cdk.requiredValidator)(properties.typeId)),errors.collect(cdk.propertyValidator("typeId",cdk.validateString)(properties.typeId)),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 "OtherNameProperty"')}function cfnCertificateOtherNamePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_OtherNamePropertyValidator(properties).assertSuccess(),{TypeId:cdk.stringToCloudFormation(properties.typeId),Value:cdk.stringToCloudFormation(properties.value)}):properties}function CfnCertificateOtherNamePropertyFromCloudFormation(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("typeId","TypeId",cfn_parse.FromCloudFormation.getString(properties.TypeId)),ret.addPropertyResult("value","Value",cfn_parse.FromCloudFormation.getString(properties.Value)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_PolicyInformationPropertyValidator(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("certPolicyId",cdk.requiredValidator)(properties.certPolicyId)),errors.collect(cdk.propertyValidator("certPolicyId",cdk.validateString)(properties.certPolicyId)),errors.collect(cdk.propertyValidator("policyQualifiers",cdk.listValidator(CfnCertificate_PolicyQualifierInfoPropertyValidator))(properties.policyQualifiers)),errors.wrap('supplied properties not correct for "PolicyInformationProperty"')}function cfnCertificatePolicyInformationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_PolicyInformationPropertyValidator(properties).assertSuccess(),{CertPolicyId:cdk.stringToCloudFormation(properties.certPolicyId),PolicyQualifiers:cdk.listMapper(cfnCertificatePolicyQualifierInfoPropertyToCloudFormation)(properties.policyQualifiers)}):properties}function CfnCertificatePolicyInformationPropertyFromCloudFormation(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("certPolicyId","CertPolicyId",cfn_parse.FromCloudFormation.getString(properties.CertPolicyId)),ret.addPropertyResult("policyQualifiers","PolicyQualifiers",properties.PolicyQualifiers!=null?cfn_parse.FromCloudFormation.getArray(CfnCertificatePolicyQualifierInfoPropertyFromCloudFormation)(properties.PolicyQualifiers):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_PolicyQualifierInfoPropertyValidator(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("policyQualifierId",cdk.requiredValidator)(properties.policyQualifierId)),errors.collect(cdk.propertyValidator("policyQualifierId",cdk.validateString)(properties.policyQualifierId)),errors.collect(cdk.propertyValidator("qualifier",cdk.requiredValidator)(properties.qualifier)),errors.collect(cdk.propertyValidator("qualifier",CfnCertificate_QualifierPropertyValidator)(properties.qualifier)),errors.wrap('supplied properties not correct for "PolicyQualifierInfoProperty"')}function cfnCertificatePolicyQualifierInfoPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_PolicyQualifierInfoPropertyValidator(properties).assertSuccess(),{PolicyQualifierId:cdk.stringToCloudFormation(properties.policyQualifierId),Qualifier:cfnCertificateQualifierPropertyToCloudFormation(properties.qualifier)}):properties}function CfnCertificatePolicyQualifierInfoPropertyFromCloudFormation(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("policyQualifierId","PolicyQualifierId",cfn_parse.FromCloudFormation.getString(properties.PolicyQualifierId)),ret.addPropertyResult("qualifier","Qualifier",CfnCertificateQualifierPropertyFromCloudFormation(properties.Qualifier)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_QualifierPropertyValidator(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("cpsUri",cdk.requiredValidator)(properties.cpsUri)),errors.collect(cdk.propertyValidator("cpsUri",cdk.validateString)(properties.cpsUri)),errors.wrap('supplied properties not correct for "QualifierProperty"')}function cfnCertificateQualifierPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_QualifierPropertyValidator(properties).assertSuccess(),{CpsUri:cdk.stringToCloudFormation(properties.cpsUri)}):properties}function CfnCertificateQualifierPropertyFromCloudFormation(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("cpsUri","CpsUri",cfn_parse.FromCloudFormation.getString(properties.CpsUri)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_SubjectPropertyValidator(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("commonName",cdk.validateString)(properties.commonName)),errors.collect(cdk.propertyValidator("country",cdk.validateString)(properties.country)),errors.collect(cdk.propertyValidator("customAttributes",cdk.listValidator(CfnCertificate_CustomAttributePropertyValidator))(properties.customAttributes)),errors.collect(cdk.propertyValidator("distinguishedNameQualifier",cdk.validateString)(properties.distinguishedNameQualifier)),errors.collect(cdk.propertyValidator("generationQualifier",cdk.validateString)(properties.generationQualifier)),errors.collect(cdk.propertyValidator("givenName",cdk.validateString)(properties.givenName)),errors.collect(cdk.propertyValidator("initials",cdk.validateString)(properties.initials)),errors.collect(cdk.propertyValidator("locality",cdk.validateString)(properties.locality)),errors.collect(cdk.propertyValidator("organization",cdk.validateString)(properties.organization)),errors.collect(cdk.propertyValidator("organizationalUnit",cdk.validateString)(properties.organizationalUnit)),errors.collect(cdk.propertyValidator("pseudonym",cdk.validateString)(properties.pseudonym)),errors.collect(cdk.propertyValidator("serialNumber",cdk.validateString)(properties.serialNumber)),errors.collect(cdk.propertyValidator("state",cdk.validateString)(properties.state)),errors.collect(cdk.propertyValidator("surname",cdk.validateString)(properties.surname)),errors.collect(cdk.propertyValidator("title",cdk.validateString)(properties.title)),errors.wrap('supplied properties not correct for "SubjectProperty"')}function cfnCertificateSubjectPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_SubjectPropertyValidator(properties).assertSuccess(),{CommonName:cdk.stringToCloudFormation(properties.commonName),Country:cdk.stringToCloudFormation(properties.country),CustomAttributes:cdk.listMapper(cfnCertificateCustomAttributePropertyToCloudFormation)(properties.customAttributes),DistinguishedNameQualifier:cdk.stringToCloudFormation(properties.distinguishedNameQualifier),GenerationQualifier:cdk.stringToCloudFormation(properties.generationQualifier),GivenName:cdk.stringToCloudFormation(properties.givenName),Initials:cdk.stringToCloudFormation(properties.initials),Locality:cdk.stringToCloudFormation(properties.locality),Organization:cdk.stringToCloudFormation(properties.organization),OrganizationalUnit:cdk.stringToCloudFormation(properties.organizationalUnit),Pseudonym:cdk.stringToCloudFormation(properties.pseudonym),SerialNumber:cdk.stringToCloudFormation(properties.serialNumber),State:cdk.stringToCloudFormation(properties.state),Surname:cdk.stringToCloudFormation(properties.surname),Title:cdk.stringToCloudFormation(properties.title)}):properties}function CfnCertificateSubjectPropertyFromCloudFormation(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("commonName","CommonName",properties.CommonName!=null?cfn_parse.FromCloudFormation.getString(properties.CommonName):void 0),ret.addPropertyResult("country","Country",properties.Country!=null?cfn_parse.FromCloudFormation.getString(properties.Country):void 0),ret.addPropertyResult("customAttributes","CustomAttributes",properties.CustomAttributes!=null?cfn_parse.FromCloudFormation.getArray(CfnCertificateCustomAttributePropertyFromCloudFormation)(properties.CustomAttributes):void 0),ret.addPropertyResult("distinguishedNameQualifier","DistinguishedNameQualifier",properties.DistinguishedNameQualifier!=null?cfn_parse.FromCloudFormation.getString(properties.DistinguishedNameQualifier):void 0),ret.addPropertyResult("generationQualifier","GenerationQualifier",properties.GenerationQualifier!=null?cfn_parse.FromCloudFormation.getString(properties.GenerationQualifier):void 0),ret.addPropertyResult("givenName","GivenName",properties.GivenName!=null?cfn_parse.FromCloudFormation.getString(properties.GivenName):void 0),ret.addPropertyResult("initials","Initials",properties.Initials!=null?cfn_parse.FromCloudFormation.getString(properties.Initials):void 0),ret.addPropertyResult("locality","Locality",properties.Locality!=null?cfn_parse.FromCloudFormation.getString(properties.Locality):void 0),ret.addPropertyResult("organization","Organization",properties.Organization!=null?cfn_parse.FromCloudFormation.getString(properties.Organization):void 0),ret.addPropertyResult("organizationalUnit","OrganizationalUnit",properties.OrganizationalUnit!=null?cfn_parse.FromCloudFormation.getString(properties.OrganizationalUnit):void 0),ret.addPropertyResult("pseudonym","Pseudonym",properties.Pseudonym!=null?cfn_parse.FromCloudFormation.getString(properties.Pseudonym):void 0),ret.addPropertyResult("serialNumber","SerialNumber",properties.SerialNumber!=null?cfn_parse.FromCloudFormation.getString(properties.SerialNumber):void 0),ret.addPropertyResult("state","State",properties.State!=null?cfn_parse.FromCloudFormation.getString(properties.State):void 0),ret.addPropertyResult("surname","Surname",properties.Surname!=null?cfn_parse.FromCloudFormation.getString(properties.Surname):void 0),ret.addPropertyResult("title","Title",properties.Title!=null?cfn_parse.FromCloudFormation.getString(properties.Title):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificate_ValidityPropertyValidator(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("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.collect(cdk.propertyValidator("value",cdk.requiredValidator)(properties.value)),errors.collect(cdk.propertyValidator("value",cdk.validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "ValidityProperty"')}function cfnCertificateValidityPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificate_ValidityPropertyValidator(properties).assertSuccess(),{Type:cdk.stringToCloudFormation(properties.type),Value:cdk.numberToCloudFormation(properties.value)}):properties}function CfnCertificateValidityPropertyFromCloudFormation(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("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addPropertyResult("value","Value",cfn_parse.FromCloudFormation.getNumber(properties.Value)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificateAuthorityPropsValidator(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("csrExtensions",CfnCertificateAuthority_CsrExtensionsPropertyValidator)(properties.csrExtensions)),errors.collect(cdk.propertyValidator("keyAlgorithm",cdk.requiredValidator)(properties.keyAlgorithm)),errors.collect(cdk.propertyValidator("keyAlgorithm",cdk.validateString)(properties.keyAlgorithm)),errors.collect(cdk.propertyValidator("keyStorageSecurityStandard",cdk.validateString)(properties.keyStorageSecurityStandard)),errors.collect(cdk.propertyValidator("revocationConfiguration",CfnCertificateAuthority_RevocationConfigurationPropertyValidator)(properties.revocationConfiguration)),errors.collect(cdk.propertyValidator("signingAlgorithm",cdk.requiredValidator)(properties.signingAlgorithm)),errors.collect(cdk.propertyValidator("signingAlgorithm",cdk.validateString)(properties.signingAlgorithm)),errors.collect(cdk.propertyValidator("subject",cdk.requiredValidator)(properties.subject)),errors.collect(cdk.propertyValidator("subject",CfnCertificateAuthority_SubjectPropertyValidator)(properties.subject)),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("usageMode",cdk.validateString)(properties.usageMode)),errors.wrap('supplied properties not correct for "CfnCertificateAuthorityProps"')}function cfnCertificateAuthorityPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificateAuthorityPropsValidator(properties).assertSuccess(),{KeyAlgorithm:cdk.stringToCloudFormation(properties.keyAlgorithm),SigningAlgorithm:cdk.stringToCloudFormation(properties.signingAlgorithm),Subject:cfnCertificateAuthoritySubjectPropertyToCloudFormation(properties.subject),Type:cdk.stringToCloudFormation(properties.type),CsrExtensions:cfnCertificateAuthorityCsrExtensionsPropertyToCloudFormation(properties.csrExtensions),KeyStorageSecurityStandard:cdk.stringToCloudFormation(properties.keyStorageSecurityStandard),RevocationConfiguration:cfnCertificateAuthorityRevocationConfigurationPropertyToCloudFormation(properties.revocationConfiguration),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),UsageMode:cdk.stringToCloudFormation(properties.usageMode)}):properties}function CfnCertificateAuthorityPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("keyAlgorithm","KeyAlgorithm",cfn_parse.FromCloudFormation.getString(properties.KeyAlgorithm)),ret.addPropertyResult("signingAlgorithm","SigningAlgorithm",cfn_parse.FromCloudFormation.getString(properties.SigningAlgorithm)),ret.addPropertyResult("subject","Subject",CfnCertificateAuthoritySubjectPropertyFromCloudFormation(properties.Subject)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addPropertyResult("csrExtensions","CsrExtensions",properties.CsrExtensions!=null?CfnCertificateAuthorityCsrExtensionsPropertyFromCloudFormation(properties.CsrExtensions):void 0),ret.addPropertyResult("keyStorageSecurityStandard","KeyStorageSecurityStandard",properties.KeyStorageSecurityStandard!=null?cfn_parse.FromCloudFormation.getString(properties.KeyStorageSecurityStandard):void 0),ret.addPropertyResult("revocationConfiguration","RevocationConfiguration",properties.RevocationConfiguration!=null?CfnCertificateAuthorityRevocationConfigurationPropertyFromCloudFormation(properties.RevocationConfiguration):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("usageMode","UsageMode",properties.UsageMode!=null?cfn_parse.FromCloudFormation.getString(properties.UsageMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCertificateAuthority extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCertificateAuthority.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_acmpca_CfnCertificateAuthorityProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCertificateAuthority),error}cdk.requireProperty(props,"keyAlgorithm",this),cdk.requireProperty(props,"signingAlgorithm",this),cdk.requireProperty(props,"subject",this),cdk.requireProperty(props,"type",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrCertificateSigningRequest=cdk.Token.asString(this.getAtt("CertificateSigningRequest",cdk.ResolutionTypeHint.STRING)),this.keyAlgorithm=props.keyAlgorithm,this.signingAlgorithm=props.signingAlgorithm,this.subject=props.subject,this.type=props.type,this.csrExtensions=props.csrExtensions,this.keyStorageSecurityStandard=props.keyStorageSecurityStandard,this.revocationConfiguration=props.revocationConfiguration,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::ACMPCA::CertificateAuthority",props.tags,{tagPropertyName:"tags"}),this.usageMode=props.usageMode}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCertificateAuthorityPropsFromCloudFormation(resourceProperties),ret=new CfnCertificateAuthority(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",CfnCertificateAuthority.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{keyAlgorithm:this.keyAlgorithm,signingAlgorithm:this.signingAlgorithm,subject:this.subject,type:this.type,csrExtensions:this.csrExtensions,keyStorageSecurityStandard:this.keyStorageSecurityStandard,revocationConfiguration:this.revocationConfiguration,tags:this.tags.renderTags(),usageMode:this.usageMode}}renderProperties(props){return cfnCertificateAuthorityPropsToCloudFormation(props)}}exports.CfnCertificateAuthority=CfnCertificateAuthority,_b=JSII_RTTI_SYMBOL_1,CfnCertificateAuthority[_b]={fqn:"aws-cdk-lib.aws_acmpca.CfnCertificateAuthority",version:"2.70.0"},CfnCertificateAuthority.CFN_RESOURCE_TYPE_NAME="AWS::ACMPCA::CertificateAuthority";function CfnCertificateAuthority_AccessDescriptionPropertyValidator(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("accessLocation",cdk.requiredValidator)(properties.accessLocation)),errors.collect(cdk.propertyValidator("accessLocation",CfnCertificateAuthority_GeneralNamePropertyValidator)(properties.accessLocation)),errors.collect(cdk.propertyValidator("accessMethod",cdk.requiredValidator)(properties.accessMethod)),errors.collect(cdk.propertyValidator("accessMethod",CfnCertificateAuthority_AccessMethodPropertyValidator)(properties.accessMethod)),errors.wrap('supplied properties not correct for "AccessDescriptionProperty"')}function cfnCertificateAuthorityAccessDescriptionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificateAuthority_AccessDescriptionPropertyValidator(properties).assertSuccess(),{AccessLocation:cfnCertificateAuthorityGeneralNamePropertyToCloudFormation(properties.accessLocation),AccessMethod:cfnCertificateAuthorityAccessMethodPropertyToCloudFormation(properties.accessMethod)}):properties}function CfnCertificateAuthorityAccessDescriptionPropertyFromCloudFormation(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("accessLocation","AccessLocation",CfnCertificateAuthorityGeneralNamePropertyFromCloudFormation(properties.AccessLocation)),ret.addPropertyResult("accessMethod","AccessMethod",CfnCertificateAuthorityAccessMethodPropertyFromCloudFormation(properties.AccessMethod)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificateAuthority_AccessMethodPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object