UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 117 kB
"use strict";var _a,_b,_c,_d,_e;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnTemplateGroupAccessControlEntry=exports.CfnTemplate=exports.CfnServicePrincipalName=exports.CfnDirectoryRegistration=exports.CfnConnector=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnConnector extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectorPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnConnector(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}constructor(scope,id,props){super(scope,id,{type:CfnConnector.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pcaconnectorad_CfnConnectorProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConnector),error}cdk().requireProperty(props,"certificateAuthorityArn",this),cdk().requireProperty(props,"directoryId",this),cdk().requireProperty(props,"vpcInformation",this),this.attrConnectorArn=cdk().Token.asString(this.getAtt("ConnectorArn",cdk().ResolutionTypeHint.STRING)),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::PCAConnectorAD::Connector",void 0,{tagPropertyName:"tags"}),this.certificateAuthorityArn=props.certificateAuthorityArn,this.directoryId=props.directoryId,this.tags=props.tags,this.vpcInformation=props.vpcInformation}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this.tags),certificateAuthorityArn:this.certificateAuthorityArn,directoryId:this.directoryId,vpcInformation:this.vpcInformation}}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",CfnConnector.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConnectorPropsToCloudFormation(props)}}exports.CfnConnector=CfnConnector,_a=JSII_RTTI_SYMBOL_1,CfnConnector[_a]={fqn:"aws-cdk-lib.aws_pcaconnectorad.CfnConnector",version:"2.185.0"},CfnConnector.CFN_RESOURCE_TYPE_NAME="AWS::PCAConnectorAD::Connector";function CfnConnectorVpcInformationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("ipAddressType",cdk().validateString)(properties.ipAddressType)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.wrap('supplied properties not correct for "VpcInformationProperty"')}function convertCfnConnectorVpcInformationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorVpcInformationPropertyValidator(properties).assertSuccess(),{IpAddressType:cdk().stringToCloudFormation(properties.ipAddressType),SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds)}):properties}function CfnConnectorVpcInformationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("ipAddressType","IpAddressType",properties.IpAddressType!=null?cfn_parse().FromCloudFormation.getString(properties.IpAddressType):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("certificateAuthorityArn",cdk().requiredValidator)(properties.certificateAuthorityArn)),errors.collect(cdk().propertyValidator("certificateAuthorityArn",cdk().validateString)(properties.certificateAuthorityArn)),errors.collect(cdk().propertyValidator("directoryId",cdk().requiredValidator)(properties.directoryId)),errors.collect(cdk().propertyValidator("directoryId",cdk().validateString)(properties.directoryId)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(properties.tags)),errors.collect(cdk().propertyValidator("vpcInformation",cdk().requiredValidator)(properties.vpcInformation)),errors.collect(cdk().propertyValidator("vpcInformation",CfnConnectorVpcInformationPropertyValidator)(properties.vpcInformation)),errors.wrap('supplied properties not correct for "CfnConnectorProps"')}function convertCfnConnectorPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorPropsValidator(properties).assertSuccess(),{CertificateAuthorityArn:cdk().stringToCloudFormation(properties.certificateAuthorityArn),DirectoryId:cdk().stringToCloudFormation(properties.directoryId),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags),VpcInformation:convertCfnConnectorVpcInformationPropertyToCloudFormation(properties.vpcInformation)}):properties}function CfnConnectorPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("certificateAuthorityArn","CertificateAuthorityArn",properties.CertificateAuthorityArn!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateAuthorityArn):void 0),ret.addPropertyResult("directoryId","DirectoryId",properties.DirectoryId!=null?cfn_parse().FromCloudFormation.getString(properties.DirectoryId):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addPropertyResult("vpcInformation","VpcInformation",properties.VpcInformation!=null?CfnConnectorVpcInformationPropertyFromCloudFormation(properties.VpcInformation):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDirectoryRegistration extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDirectoryRegistrationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnDirectoryRegistration(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}constructor(scope,id,props){super(scope,id,{type:CfnDirectoryRegistration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pcaconnectorad_CfnDirectoryRegistrationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDirectoryRegistration),error}cdk().requireProperty(props,"directoryId",this),this.attrDirectoryRegistrationArn=cdk().Token.asString(this.getAtt("DirectoryRegistrationArn",cdk().ResolutionTypeHint.STRING)),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::PCAConnectorAD::DirectoryRegistration",void 0,{tagPropertyName:"tags"}),this.directoryId=props.directoryId,this.tags=props.tags}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this.tags),directoryId:this.directoryId}}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",CfnDirectoryRegistration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDirectoryRegistrationPropsToCloudFormation(props)}}exports.CfnDirectoryRegistration=CfnDirectoryRegistration,_b=JSII_RTTI_SYMBOL_1,CfnDirectoryRegistration[_b]={fqn:"aws-cdk-lib.aws_pcaconnectorad.CfnDirectoryRegistration",version:"2.185.0"},CfnDirectoryRegistration.CFN_RESOURCE_TYPE_NAME="AWS::PCAConnectorAD::DirectoryRegistration";function CfnDirectoryRegistrationPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("directoryId",cdk().requiredValidator)(properties.directoryId)),errors.collect(cdk().propertyValidator("directoryId",cdk().validateString)(properties.directoryId)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDirectoryRegistrationProps"')}function convertCfnDirectoryRegistrationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDirectoryRegistrationPropsValidator(properties).assertSuccess(),{DirectoryId:cdk().stringToCloudFormation(properties.directoryId),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags)}):properties}function CfnDirectoryRegistrationPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("directoryId","DirectoryId",properties.DirectoryId!=null?cfn_parse().FromCloudFormation.getString(properties.DirectoryId):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnServicePrincipalName extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnServicePrincipalNamePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnServicePrincipalName(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}constructor(scope,id,props={}){super(scope,id,{type:CfnServicePrincipalName.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pcaconnectorad_CfnServicePrincipalNameProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnServicePrincipalName),error}this.connectorArn=props.connectorArn,this.directoryRegistrationArn=props.directoryRegistrationArn}get cfnProperties(){return{connectorArn:this.connectorArn,directoryRegistrationArn:this.directoryRegistrationArn}}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",CfnServicePrincipalName.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnServicePrincipalNamePropsToCloudFormation(props)}}exports.CfnServicePrincipalName=CfnServicePrincipalName,_c=JSII_RTTI_SYMBOL_1,CfnServicePrincipalName[_c]={fqn:"aws-cdk-lib.aws_pcaconnectorad.CfnServicePrincipalName",version:"2.185.0"},CfnServicePrincipalName.CFN_RESOURCE_TYPE_NAME="AWS::PCAConnectorAD::ServicePrincipalName";function CfnServicePrincipalNamePropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("connectorArn",cdk().validateString)(properties.connectorArn)),errors.collect(cdk().propertyValidator("directoryRegistrationArn",cdk().validateString)(properties.directoryRegistrationArn)),errors.wrap('supplied properties not correct for "CfnServicePrincipalNameProps"')}function convertCfnServicePrincipalNamePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnServicePrincipalNamePropsValidator(properties).assertSuccess(),{ConnectorArn:cdk().stringToCloudFormation(properties.connectorArn),DirectoryRegistrationArn:cdk().stringToCloudFormation(properties.directoryRegistrationArn)}):properties}function CfnServicePrincipalNamePropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("connectorArn","ConnectorArn",properties.ConnectorArn!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorArn):void 0),ret.addPropertyResult("directoryRegistrationArn","DirectoryRegistrationArn",properties.DirectoryRegistrationArn!=null?cfn_parse().FromCloudFormation.getString(properties.DirectoryRegistrationArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnTemplate extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnTemplate(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}constructor(scope,id,props){super(scope,id,{type:CfnTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_pcaconnectorad_CfnTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnTemplate),error}cdk().requireProperty(props,"connectorArn",this),cdk().requireProperty(props,"definition",this),cdk().requireProperty(props,"name",this),this.attrTemplateArn=cdk().Token.asString(this.getAtt("TemplateArn",cdk().ResolutionTypeHint.STRING)),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::PCAConnectorAD::Template",void 0,{tagPropertyName:"tags"}),this.connectorArn=props.connectorArn,this.definition=props.definition,this.name=props.name,this.reenrollAllCertificateHolders=props.reenrollAllCertificateHolders,this.tags=props.tags}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this.tags),connectorArn:this.connectorArn,definition:this.definition,name:this.name,reenrollAllCertificateHolders:this.reenrollAllCertificateHolders}}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",CfnTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnTemplatePropsToCloudFormation(props)}}exports.CfnTemplate=CfnTemplate,_d=JSII_RTTI_SYMBOL_1,CfnTemplate[_d]={fqn:"aws-cdk-lib.aws_pcaconnectorad.CfnTemplate",version:"2.185.0"},CfnTemplate.CFN_RESOURCE_TYPE_NAME="AWS::PCAConnectorAD::Template";function CfnTemplateSubjectNameFlagsV4PropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("requireCommonName",cdk().validateBoolean)(properties.requireCommonName)),errors.collect(cdk().propertyValidator("requireDirectoryPath",cdk().validateBoolean)(properties.requireDirectoryPath)),errors.collect(cdk().propertyValidator("requireDnsAsCn",cdk().validateBoolean)(properties.requireDnsAsCn)),errors.collect(cdk().propertyValidator("requireEmail",cdk().validateBoolean)(properties.requireEmail)),errors.collect(cdk().propertyValidator("sanRequireDirectoryGuid",cdk().validateBoolean)(properties.sanRequireDirectoryGuid)),errors.collect(cdk().propertyValidator("sanRequireDns",cdk().validateBoolean)(properties.sanRequireDns)),errors.collect(cdk().propertyValidator("sanRequireDomainDns",cdk().validateBoolean)(properties.sanRequireDomainDns)),errors.collect(cdk().propertyValidator("sanRequireEmail",cdk().validateBoolean)(properties.sanRequireEmail)),errors.collect(cdk().propertyValidator("sanRequireSpn",cdk().validateBoolean)(properties.sanRequireSpn)),errors.collect(cdk().propertyValidator("sanRequireUpn",cdk().validateBoolean)(properties.sanRequireUpn)),errors.wrap('supplied properties not correct for "SubjectNameFlagsV4Property"')}function convertCfnTemplateSubjectNameFlagsV4PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateSubjectNameFlagsV4PropertyValidator(properties).assertSuccess(),{RequireCommonName:cdk().booleanToCloudFormation(properties.requireCommonName),RequireDirectoryPath:cdk().booleanToCloudFormation(properties.requireDirectoryPath),RequireDnsAsCn:cdk().booleanToCloudFormation(properties.requireDnsAsCn),RequireEmail:cdk().booleanToCloudFormation(properties.requireEmail),SanRequireDirectoryGuid:cdk().booleanToCloudFormation(properties.sanRequireDirectoryGuid),SanRequireDns:cdk().booleanToCloudFormation(properties.sanRequireDns),SanRequireDomainDns:cdk().booleanToCloudFormation(properties.sanRequireDomainDns),SanRequireEmail:cdk().booleanToCloudFormation(properties.sanRequireEmail),SanRequireSpn:cdk().booleanToCloudFormation(properties.sanRequireSpn),SanRequireUpn:cdk().booleanToCloudFormation(properties.sanRequireUpn)}):properties}function CfnTemplateSubjectNameFlagsV4PropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("requireCommonName","RequireCommonName",properties.RequireCommonName!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RequireCommonName):void 0),ret.addPropertyResult("requireDirectoryPath","RequireDirectoryPath",properties.RequireDirectoryPath!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RequireDirectoryPath):void 0),ret.addPropertyResult("requireDnsAsCn","RequireDnsAsCn",properties.RequireDnsAsCn!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RequireDnsAsCn):void 0),ret.addPropertyResult("requireEmail","RequireEmail",properties.RequireEmail!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RequireEmail):void 0),ret.addPropertyResult("sanRequireDirectoryGuid","SanRequireDirectoryGuid",properties.SanRequireDirectoryGuid!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SanRequireDirectoryGuid):void 0),ret.addPropertyResult("sanRequireDns","SanRequireDns",properties.SanRequireDns!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SanRequireDns):void 0),ret.addPropertyResult("sanRequireDomainDns","SanRequireDomainDns",properties.SanRequireDomainDns!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SanRequireDomainDns):void 0),ret.addPropertyResult("sanRequireEmail","SanRequireEmail",properties.SanRequireEmail!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SanRequireEmail):void 0),ret.addPropertyResult("sanRequireSpn","SanRequireSpn",properties.SanRequireSpn!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SanRequireSpn):void 0),ret.addPropertyResult("sanRequireUpn","SanRequireUpn",properties.SanRequireUpn!=null?cfn_parse().FromCloudFormation.getBoolean(properties.SanRequireUpn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplatePrivateKeyFlagsV4PropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("clientVersion",cdk().requiredValidator)(properties.clientVersion)),errors.collect(cdk().propertyValidator("clientVersion",cdk().validateString)(properties.clientVersion)),errors.collect(cdk().propertyValidator("exportableKey",cdk().validateBoolean)(properties.exportableKey)),errors.collect(cdk().propertyValidator("requireAlternateSignatureAlgorithm",cdk().validateBoolean)(properties.requireAlternateSignatureAlgorithm)),errors.collect(cdk().propertyValidator("requireSameKeyRenewal",cdk().validateBoolean)(properties.requireSameKeyRenewal)),errors.collect(cdk().propertyValidator("strongKeyProtectionRequired",cdk().validateBoolean)(properties.strongKeyProtectionRequired)),errors.collect(cdk().propertyValidator("useLegacyProvider",cdk().validateBoolean)(properties.useLegacyProvider)),errors.wrap('supplied properties not correct for "PrivateKeyFlagsV4Property"')}function convertCfnTemplatePrivateKeyFlagsV4PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplatePrivateKeyFlagsV4PropertyValidator(properties).assertSuccess(),{ClientVersion:cdk().stringToCloudFormation(properties.clientVersion),ExportableKey:cdk().booleanToCloudFormation(properties.exportableKey),RequireAlternateSignatureAlgorithm:cdk().booleanToCloudFormation(properties.requireAlternateSignatureAlgorithm),RequireSameKeyRenewal:cdk().booleanToCloudFormation(properties.requireSameKeyRenewal),StrongKeyProtectionRequired:cdk().booleanToCloudFormation(properties.strongKeyProtectionRequired),UseLegacyProvider:cdk().booleanToCloudFormation(properties.useLegacyProvider)}):properties}function CfnTemplatePrivateKeyFlagsV4PropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("clientVersion","ClientVersion",properties.ClientVersion!=null?cfn_parse().FromCloudFormation.getString(properties.ClientVersion):void 0),ret.addPropertyResult("exportableKey","ExportableKey",properties.ExportableKey!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ExportableKey):void 0),ret.addPropertyResult("requireAlternateSignatureAlgorithm","RequireAlternateSignatureAlgorithm",properties.RequireAlternateSignatureAlgorithm!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RequireAlternateSignatureAlgorithm):void 0),ret.addPropertyResult("requireSameKeyRenewal","RequireSameKeyRenewal",properties.RequireSameKeyRenewal!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RequireSameKeyRenewal):void 0),ret.addPropertyResult("strongKeyProtectionRequired","StrongKeyProtectionRequired",properties.StrongKeyProtectionRequired!=null?cfn_parse().FromCloudFormation.getBoolean(properties.StrongKeyProtectionRequired):void 0),ret.addPropertyResult("useLegacyProvider","UseLegacyProvider",properties.UseLegacyProvider!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UseLegacyProvider):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateKeyUsagePropertyFlagsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("decrypt",cdk().validateBoolean)(properties.decrypt)),errors.collect(cdk().propertyValidator("keyAgreement",cdk().validateBoolean)(properties.keyAgreement)),errors.collect(cdk().propertyValidator("sign",cdk().validateBoolean)(properties.sign)),errors.wrap('supplied properties not correct for "KeyUsagePropertyFlagsProperty"')}function convertCfnTemplateKeyUsagePropertyFlagsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateKeyUsagePropertyFlagsPropertyValidator(properties).assertSuccess(),{Decrypt:cdk().booleanToCloudFormation(properties.decrypt),KeyAgreement:cdk().booleanToCloudFormation(properties.keyAgreement),Sign:cdk().booleanToCloudFormation(properties.sign)}):properties}function CfnTemplateKeyUsagePropertyFlagsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("decrypt","Decrypt",properties.Decrypt!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Decrypt):void 0),ret.addPropertyResult("keyAgreement","KeyAgreement",properties.KeyAgreement!=null?cfn_parse().FromCloudFormation.getBoolean(properties.KeyAgreement):void 0),ret.addPropertyResult("sign","Sign",properties.Sign!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Sign):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateKeyUsagePropertyPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("propertyFlags",CfnTemplateKeyUsagePropertyFlagsPropertyValidator)(properties.propertyFlags)),errors.collect(cdk().propertyValidator("propertyType",cdk().validateString)(properties.propertyType)),errors.wrap('supplied properties not correct for "KeyUsagePropertyProperty"')}function convertCfnTemplateKeyUsagePropertyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateKeyUsagePropertyPropertyValidator(properties).assertSuccess(),{PropertyFlags:convertCfnTemplateKeyUsagePropertyFlagsPropertyToCloudFormation(properties.propertyFlags),PropertyType:cdk().stringToCloudFormation(properties.propertyType)}):properties}function CfnTemplateKeyUsagePropertyPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("propertyFlags","PropertyFlags",properties.PropertyFlags!=null?CfnTemplateKeyUsagePropertyFlagsPropertyFromCloudFormation(properties.PropertyFlags):void 0),ret.addPropertyResult("propertyType","PropertyType",properties.PropertyType!=null?cfn_parse().FromCloudFormation.getString(properties.PropertyType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplatePrivateKeyAttributesV4PropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("algorithm",cdk().validateString)(properties.algorithm)),errors.collect(cdk().propertyValidator("cryptoProviders",cdk().listValidator(cdk().validateString))(properties.cryptoProviders)),errors.collect(cdk().propertyValidator("keySpec",cdk().requiredValidator)(properties.keySpec)),errors.collect(cdk().propertyValidator("keySpec",cdk().validateString)(properties.keySpec)),errors.collect(cdk().propertyValidator("keyUsageProperty",CfnTemplateKeyUsagePropertyPropertyValidator)(properties.keyUsageProperty)),errors.collect(cdk().propertyValidator("minimalKeyLength",cdk().requiredValidator)(properties.minimalKeyLength)),errors.collect(cdk().propertyValidator("minimalKeyLength",cdk().validateNumber)(properties.minimalKeyLength)),errors.wrap('supplied properties not correct for "PrivateKeyAttributesV4Property"')}function convertCfnTemplatePrivateKeyAttributesV4PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplatePrivateKeyAttributesV4PropertyValidator(properties).assertSuccess(),{Algorithm:cdk().stringToCloudFormation(properties.algorithm),CryptoProviders:cdk().listMapper(cdk().stringToCloudFormation)(properties.cryptoProviders),KeySpec:cdk().stringToCloudFormation(properties.keySpec),KeyUsageProperty:convertCfnTemplateKeyUsagePropertyPropertyToCloudFormation(properties.keyUsageProperty),MinimalKeyLength:cdk().numberToCloudFormation(properties.minimalKeyLength)}):properties}function CfnTemplatePrivateKeyAttributesV4PropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("algorithm","Algorithm",properties.Algorithm!=null?cfn_parse().FromCloudFormation.getString(properties.Algorithm):void 0),ret.addPropertyResult("cryptoProviders","CryptoProviders",properties.CryptoProviders!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.CryptoProviders):void 0),ret.addPropertyResult("keySpec","KeySpec",properties.KeySpec!=null?cfn_parse().FromCloudFormation.getString(properties.KeySpec):void 0),ret.addPropertyResult("keyUsageProperty","KeyUsageProperty",properties.KeyUsageProperty!=null?CfnTemplateKeyUsagePropertyPropertyFromCloudFormation(properties.KeyUsageProperty):void 0),ret.addPropertyResult("minimalKeyLength","MinimalKeyLength",properties.MinimalKeyLength!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinimalKeyLength):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateGeneralFlagsV4PropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("autoEnrollment",cdk().validateBoolean)(properties.autoEnrollment)),errors.collect(cdk().propertyValidator("machineType",cdk().validateBoolean)(properties.machineType)),errors.wrap('supplied properties not correct for "GeneralFlagsV4Property"')}function convertCfnTemplateGeneralFlagsV4PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateGeneralFlagsV4PropertyValidator(properties).assertSuccess(),{AutoEnrollment:cdk().booleanToCloudFormation(properties.autoEnrollment),MachineType:cdk().booleanToCloudFormation(properties.machineType)}):properties}function CfnTemplateGeneralFlagsV4PropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("autoEnrollment","AutoEnrollment",properties.AutoEnrollment!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AutoEnrollment):void 0),ret.addPropertyResult("machineType","MachineType",properties.MachineType!=null?cfn_parse().FromCloudFormation.getBoolean(properties.MachineType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateValidityPeriodPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("period",cdk().requiredValidator)(properties.period)),errors.collect(cdk().propertyValidator("period",cdk().validateNumber)(properties.period)),errors.collect(cdk().propertyValidator("periodType",cdk().requiredValidator)(properties.periodType)),errors.collect(cdk().propertyValidator("periodType",cdk().validateString)(properties.periodType)),errors.wrap('supplied properties not correct for "ValidityPeriodProperty"')}function convertCfnTemplateValidityPeriodPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateValidityPeriodPropertyValidator(properties).assertSuccess(),{Period:cdk().numberToCloudFormation(properties.period),PeriodType:cdk().stringToCloudFormation(properties.periodType)}):properties}function CfnTemplateValidityPeriodPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("period","Period",properties.Period!=null?cfn_parse().FromCloudFormation.getNumber(properties.Period):void 0),ret.addPropertyResult("periodType","PeriodType",properties.PeriodType!=null?cfn_parse().FromCloudFormation.getString(properties.PeriodType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateCertificateValidityPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("renewalPeriod",cdk().requiredValidator)(properties.renewalPeriod)),errors.collect(cdk().propertyValidator("renewalPeriod",CfnTemplateValidityPeriodPropertyValidator)(properties.renewalPeriod)),errors.collect(cdk().propertyValidator("validityPeriod",cdk().requiredValidator)(properties.validityPeriod)),errors.collect(cdk().propertyValidator("validityPeriod",CfnTemplateValidityPeriodPropertyValidator)(properties.validityPeriod)),errors.wrap('supplied properties not correct for "CertificateValidityProperty"')}function convertCfnTemplateCertificateValidityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateCertificateValidityPropertyValidator(properties).assertSuccess(),{RenewalPeriod:convertCfnTemplateValidityPeriodPropertyToCloudFormation(properties.renewalPeriod),ValidityPeriod:convertCfnTemplateValidityPeriodPropertyToCloudFormation(properties.validityPeriod)}):properties}function CfnTemplateCertificateValidityPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("renewalPeriod","RenewalPeriod",properties.RenewalPeriod!=null?CfnTemplateValidityPeriodPropertyFromCloudFormation(properties.RenewalPeriod):void 0),ret.addPropertyResult("validityPeriod","ValidityPeriod",properties.ValidityPeriod!=null?CfnTemplateValidityPeriodPropertyFromCloudFormation(properties.ValidityPeriod):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateApplicationPolicyPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("policyObjectIdentifier",cdk().validateString)(properties.policyObjectIdentifier)),errors.collect(cdk().propertyValidator("policyType",cdk().validateString)(properties.policyType)),errors.wrap('supplied properties not correct for "ApplicationPolicyProperty"')}function convertCfnTemplateApplicationPolicyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateApplicationPolicyPropertyValidator(properties).assertSuccess(),{PolicyObjectIdentifier:cdk().stringToCloudFormation(properties.policyObjectIdentifier),PolicyType:cdk().stringToCloudFormation(properties.policyType)}):properties}function CfnTemplateApplicationPolicyPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("policyObjectIdentifier","PolicyObjectIdentifier",properties.PolicyObjectIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyObjectIdentifier):void 0),ret.addPropertyResult("policyType","PolicyType",properties.PolicyType!=null?cfn_parse().FromCloudFormation.getString(properties.PolicyType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateApplicationPoliciesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("critical",cdk().validateBoolean)(properties.critical)),errors.collect(cdk().propertyValidator("policies",cdk().requiredValidator)(properties.policies)),errors.collect(cdk().propertyValidator("policies",cdk().listValidator(CfnTemplateApplicationPolicyPropertyValidator))(properties.policies)),errors.wrap('supplied properties not correct for "ApplicationPoliciesProperty"')}function convertCfnTemplateApplicationPoliciesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateApplicationPoliciesPropertyValidator(properties).assertSuccess(),{Critical:cdk().booleanToCloudFormation(properties.critical),Policies:cdk().listMapper(convertCfnTemplateApplicationPolicyPropertyToCloudFormation)(properties.policies)}):properties}function CfnTemplateApplicationPoliciesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("critical","Critical",properties.Critical!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Critical):void 0),ret.addPropertyResult("policies","Policies",properties.Policies!=null?cfn_parse().FromCloudFormation.getArray(CfnTemplateApplicationPolicyPropertyFromCloudFormation)(properties.Policies):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateKeyUsageFlagsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("dataEncipherment",cdk().validateBoolean)(properties.dataEncipherment)),errors.collect(cdk().propertyValidator("digitalSignature",cdk().validateBoolean)(properties.digitalSignature)),errors.collect(cdk().propertyValidator("keyAgreement",cdk().validateBoolean)(properties.keyAgreement)),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 "KeyUsageFlagsProperty"')}function convertCfnTemplateKeyUsageFlagsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateKeyUsageFlagsPropertyValidator(properties).assertSuccess(),{DataEncipherment:cdk().booleanToCloudFormation(properties.dataEncipherment),DigitalSignature:cdk().booleanToCloudFormation(properties.digitalSignature),KeyAgreement:cdk().booleanToCloudFormation(properties.keyAgreement),KeyEncipherment:cdk().booleanToCloudFormation(properties.keyEncipherment),NonRepudiation:cdk().booleanToCloudFormation(properties.nonRepudiation)}):properties}function CfnTemplateKeyUsageFlagsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("dataEncipherment","DataEncipherment",properties.DataEncipherment!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DataEncipherment):void 0),ret.addPropertyResult("digitalSignature","DigitalSignature",properties.DigitalSignature!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DigitalSignature):void 0),ret.addPropertyResult("keyAgreement","KeyAgreement",properties.KeyAgreement!=null?cfn_parse().FromCloudFormation.getBoolean(properties.KeyAgreement):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 CfnTemplateKeyUsagePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("critical",cdk().validateBoolean)(properties.critical)),errors.collect(cdk().propertyValidator("usageFlags",cdk().requiredValidator)(properties.usageFlags)),errors.collect(cdk().propertyValidator("usageFlags",CfnTemplateKeyUsageFlagsPropertyValidator)(properties.usageFlags)),errors.wrap('supplied properties not correct for "KeyUsageProperty"')}function convertCfnTemplateKeyUsagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateKeyUsagePropertyValidator(properties).assertSuccess(),{Critical:cdk().booleanToCloudFormation(properties.critical),UsageFlags:convertCfnTemplateKeyUsageFlagsPropertyToCloudFormation(properties.usageFlags)}):properties}function CfnTemplateKeyUsagePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("critical","Critical",properties.Critical!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Critical):void 0),ret.addPropertyResult("usageFlags","UsageFlags",properties.UsageFlags!=null?CfnTemplateKeyUsageFlagsPropertyFromCloudFormation(properties.UsageFlags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateExtensionsV4PropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("applicationPolicies",CfnTemplateApplicationPoliciesPropertyValidator)(properties.applicationPolicies)),errors.collect(cdk().propertyValidator("keyUsage",cdk().requiredValidator)(properties.keyUsage)),errors.collect(cdk().propertyValidator("keyUsage",CfnTemplateKeyUsagePropertyValidator)(properties.keyUsage)),errors.wrap('supplied properties not correct for "ExtensionsV4Property"')}function convertCfnTemplateExtensionsV4PropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnTemplateExtensionsV4PropertyValidator(properties).assertSuccess(),{ApplicationPolicies:convertCfnTemplateApplicationPoliciesPropertyToCloudFormation(properties.applicationPolicies),KeyUsage:convertCfnTemplateKeyUsagePropertyToCloudFormation(properties.keyUsage)}):properties}function CfnTemplateExtensionsV4PropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("applicationPolicies","ApplicationPolicies",properties.ApplicationPolicies!=null?CfnTemplateApplicationPoliciesPropertyFromCloudFormation(properties.ApplicationPolicies):void 0),ret.addPropertyResult("keyUsage","KeyUsage",properties.KeyUsage!=null?CfnTemplateKeyUsagePropertyFromCloudFormation(properties.KeyUsage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnTemplateEnrollmentFlagsV4PropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().p