aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1 lines • 102 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnApplication=exports.CfnDomain=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/lib");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 CfnDomain extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_opensearchservice.CfnDomain",version:"2.251.0"};static CFN_RESOURCE_TYPE_NAME="AWS::OpenSearchService::Domain";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDomainPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDomain(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}static isCfnDomain(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDomain.CFN_RESOURCE_TYPE_NAME}static fromDomainArn(scope,id,arn){class Import extends cdk().Resource{domainRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:es:${Region}:${Account}:domain/${DomainName}").parse(arn2);this.domainRef={domainName:variables.DomainName,domainArn:arn2}}}return new Import(scope,id,arn)}static fromDomainName(scope,id,domainName){class Import extends cdk().Resource{domainRef;constructor(scope2,id2,domainName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:es:${Region}:${Account}:domain/${DomainName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DomainName:domainName2});super(scope2,id2,{environmentFromArn:arn}),this.domainRef={domainName:domainName2,domainArn:arn}}}return new Import(scope,id,domainName)}static arnForDomain(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_opensearchservice_IDomainRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDomain),error}return resource.domainRef.domainArn}_accessPolicies;_advancedOptions;_advancedSecurityOptions;_aimlOptions;_clusterConfig;_cognitoOptions;_deploymentStrategyOptions;_domainArn;_domainEndpointOptions;_domainName;_ebsOptions;_encryptionAtRestOptions;_engineVersion;_identityCenterOptions;_ipAddressType;_logPublishingOptions;_nodeToNodeEncryptionOptions;_offPeakWindowOptions;_skipShardMigrationWait;_snapshotOptions;_softwareUpdateOptions;tags;_tagsRaw;_vpcOptions;constructor(scope,id,props={}){super(scope,id,{type:CfnDomain.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_opensearchservice_CfnDomainProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDomain),error}this._accessPolicies=props.accessPolicies,this._advancedOptions=props.advancedOptions,this._advancedSecurityOptions=props.advancedSecurityOptions,this._aimlOptions=props.aimlOptions,this._clusterConfig=props.clusterConfig,this._cognitoOptions=props.cognitoOptions,this._deploymentStrategyOptions=props.deploymentStrategyOptions,this._domainArn=props.domainArn,this._domainEndpointOptions=props.domainEndpointOptions,this._domainName=props.domainName,this._ebsOptions=props.ebsOptions,this._encryptionAtRestOptions=props.encryptionAtRestOptions,this._engineVersion=props.engineVersion,this._identityCenterOptions=props.identityCenterOptions,this._ipAddressType=props.ipAddressType,this._logPublishingOptions=props.logPublishingOptions,this._nodeToNodeEncryptionOptions=props.nodeToNodeEncryptionOptions,this._offPeakWindowOptions=props.offPeakWindowOptions,this._skipShardMigrationWait=props.skipShardMigrationWait,this._snapshotOptions=props.snapshotOptions,this._softwareUpdateOptions=props.softwareUpdateOptions,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::OpenSearchService::Domain",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._vpcOptions=props.vpcOptions,this.node.scope!=null&&cdk().Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::OpenSearchService::Domain' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}get domainRef(){return{domainName:this.ref,domainArn:this.attrArn}}get accessPolicies(){return this._accessPolicies}set accessPolicies(value){cdk().traceProperty(this.node,"AccessPolicies"),this._accessPolicies=value}get advancedOptions(){return this._advancedOptions}set advancedOptions(value){cdk().traceProperty(this.node,"AdvancedOptions"),this._advancedOptions=value}get advancedSecurityOptions(){return this._advancedSecurityOptions}set advancedSecurityOptions(value){cdk().traceProperty(this.node,"AdvancedSecurityOptions"),this._advancedSecurityOptions=value}get aimlOptions(){return this._aimlOptions}set aimlOptions(value){cdk().traceProperty(this.node,"AIMLOptions"),this._aimlOptions=value}get clusterConfig(){return this._clusterConfig}set clusterConfig(value){cdk().traceProperty(this.node,"ClusterConfig"),this._clusterConfig=value}get cognitoOptions(){return this._cognitoOptions}set cognitoOptions(value){cdk().traceProperty(this.node,"CognitoOptions"),this._cognitoOptions=value}get deploymentStrategyOptions(){return this._deploymentStrategyOptions}set deploymentStrategyOptions(value){cdk().traceProperty(this.node,"DeploymentStrategyOptions"),this._deploymentStrategyOptions=value}get domainArn(){return this._domainArn}set domainArn(value){cdk().traceProperty(this.node,"DomainArn"),this._domainArn=value}get domainEndpointOptions(){return this._domainEndpointOptions}set domainEndpointOptions(value){cdk().traceProperty(this.node,"DomainEndpointOptions"),this._domainEndpointOptions=value}get domainName(){return this._domainName}set domainName(value){cdk().traceProperty(this.node,"DomainName"),this._domainName=value}get ebsOptions(){return this._ebsOptions}set ebsOptions(value){cdk().traceProperty(this.node,"EBSOptions"),this._ebsOptions=value}get encryptionAtRestOptions(){return this._encryptionAtRestOptions}set encryptionAtRestOptions(value){cdk().traceProperty(this.node,"EncryptionAtRestOptions"),this._encryptionAtRestOptions=value}get engineVersion(){return this._engineVersion}set engineVersion(value){cdk().traceProperty(this.node,"EngineVersion"),this._engineVersion=value}get identityCenterOptions(){return this._identityCenterOptions}set identityCenterOptions(value){cdk().traceProperty(this.node,"IdentityCenterOptions"),this._identityCenterOptions=value}get ipAddressType(){return this._ipAddressType}set ipAddressType(value){cdk().traceProperty(this.node,"IPAddressType"),this._ipAddressType=value}get logPublishingOptions(){return this._logPublishingOptions}set logPublishingOptions(value){cdk().traceProperty(this.node,"LogPublishingOptions"),this._logPublishingOptions=value}get nodeToNodeEncryptionOptions(){return this._nodeToNodeEncryptionOptions}set nodeToNodeEncryptionOptions(value){cdk().traceProperty(this.node,"NodeToNodeEncryptionOptions"),this._nodeToNodeEncryptionOptions=value}get offPeakWindowOptions(){return this._offPeakWindowOptions}set offPeakWindowOptions(value){cdk().traceProperty(this.node,"OffPeakWindowOptions"),this._offPeakWindowOptions=value}get skipShardMigrationWait(){return this._skipShardMigrationWait}set skipShardMigrationWait(value){cdk().traceProperty(this.node,"SkipShardMigrationWait"),this._skipShardMigrationWait=value}get snapshotOptions(){return this._snapshotOptions}set snapshotOptions(value){cdk().traceProperty(this.node,"SnapshotOptions"),this._snapshotOptions=value}get softwareUpdateOptions(){return this._softwareUpdateOptions}set softwareUpdateOptions(value){cdk().traceProperty(this.node,"SoftwareUpdateOptions"),this._softwareUpdateOptions=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get vpcOptions(){return this._vpcOptions}set vpcOptions(value){cdk().traceProperty(this.node,"VPCOptions"),this._vpcOptions=value}get attrAdvancedSecurityOptionsAnonymousAuthDisableDate(){return cdk().Token.asString(this.getAtt("AdvancedSecurityOptions.AnonymousAuthDisableDate",cdk().ResolutionTypeHint.STRING))}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrDomainEndpoint(){return cdk().Token.asString(this.getAtt("DomainEndpoint",cdk().ResolutionTypeHint.STRING))}get attrDomainEndpoints(){return this.getAtt("DomainEndpoints")}get attrDomainEndpointV2(){return cdk().Token.asString(this.getAtt("DomainEndpointV2",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrIdentityCenterOptionsIdentityCenterApplicationArn(){return cdk().Token.asString(this.getAtt("IdentityCenterOptions.IdentityCenterApplicationARN",cdk().ResolutionTypeHint.STRING))}get attrIdentityCenterOptionsIdentityStoreId(){return cdk().Token.asString(this.getAtt("IdentityCenterOptions.IdentityStoreId",cdk().ResolutionTypeHint.STRING))}get attrServiceSoftwareOptions(){return this.getAtt("ServiceSoftwareOptions")}get attrServiceSoftwareOptionsAutomatedUpdateDate(){return cdk().Token.asString(this.getAtt("ServiceSoftwareOptions.AutomatedUpdateDate",cdk().ResolutionTypeHint.STRING))}get attrServiceSoftwareOptionsCancellable(){return this.getAtt("ServiceSoftwareOptions.Cancellable")}get attrServiceSoftwareOptionsCurrentVersion(){return cdk().Token.asString(this.getAtt("ServiceSoftwareOptions.CurrentVersion",cdk().ResolutionTypeHint.STRING))}get attrServiceSoftwareOptionsDescription(){return cdk().Token.asString(this.getAtt("ServiceSoftwareOptions.Description",cdk().ResolutionTypeHint.STRING))}get attrServiceSoftwareOptionsNewVersion(){return cdk().Token.asString(this.getAtt("ServiceSoftwareOptions.NewVersion",cdk().ResolutionTypeHint.STRING))}get attrServiceSoftwareOptionsOptionalDeployment(){return this.getAtt("ServiceSoftwareOptions.OptionalDeployment")}get attrServiceSoftwareOptionsUpdateAvailable(){return this.getAtt("ServiceSoftwareOptions.UpdateAvailable")}get attrServiceSoftwareOptionsUpdateStatus(){return cdk().Token.asString(this.getAtt("ServiceSoftwareOptions.UpdateStatus",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{accessPolicies:this._accessPolicies,advancedOptions:this._advancedOptions,advancedSecurityOptions:this._advancedSecurityOptions,aimlOptions:this._aimlOptions,clusterConfig:this._clusterConfig,cognitoOptions:this._cognitoOptions,deploymentStrategyOptions:this._deploymentStrategyOptions,domainArn:this._domainArn,domainEndpointOptions:this._domainEndpointOptions,domainName:this._domainName,ebsOptions:this._ebsOptions,encryptionAtRestOptions:this._encryptionAtRestOptions,engineVersion:this._engineVersion,identityCenterOptions:this._identityCenterOptions,ipAddressType:this._ipAddressType,logPublishingOptions:this._logPublishingOptions,nodeToNodeEncryptionOptions:this._nodeToNodeEncryptionOptions,offPeakWindowOptions:this._offPeakWindowOptions,skipShardMigrationWait:this._skipShardMigrationWait,snapshotOptions:this._snapshotOptions,softwareUpdateOptions:this._softwareUpdateOptions,tags:this.tags.renderTags(),vpcOptions:this._vpcOptions}}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",CfnDomain.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDomainPropsToCloudFormation(props)}}exports.CfnDomain=CfnDomain;function CfnDomainSoftwareUpdateOptionsPropertyValidator(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("autoSoftwareUpdateEnabled",cdk().validateBoolean)(properties.autoSoftwareUpdateEnabled)),errors.wrap('supplied properties not correct for "SoftwareUpdateOptionsProperty"')}function convertCfnDomainSoftwareUpdateOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainSoftwareUpdateOptionsPropertyValidator(properties).assertSuccess(),{AutoSoftwareUpdateEnabled:cdk().booleanToCloudFormation(properties.autoSoftwareUpdateEnabled)}):properties}function CfnDomainSoftwareUpdateOptionsPropertyFromCloudFormation(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("autoSoftwareUpdateEnabled","AutoSoftwareUpdateEnabled",properties.AutoSoftwareUpdateEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AutoSoftwareUpdateEnabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainLogPublishingOptionPropertyValidator(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("cloudWatchLogsLogGroupArn",cdk().validateString)(properties.cloudWatchLogsLogGroupArn)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "LogPublishingOptionProperty"')}function convertCfnDomainLogPublishingOptionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainLogPublishingOptionPropertyValidator(properties).assertSuccess(),{CloudWatchLogsLogGroupArn:cdk().stringToCloudFormation(properties.cloudWatchLogsLogGroupArn),Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnDomainLogPublishingOptionPropertyFromCloudFormation(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("cloudWatchLogsLogGroupArn","CloudWatchLogsLogGroupArn",properties.CloudWatchLogsLogGroupArn!=null?cfn_parse().FromCloudFormation.getString(properties.CloudWatchLogsLogGroupArn):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainSnapshotOptionsPropertyValidator(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("automatedSnapshotStartHour",cdk().validateNumber)(properties.automatedSnapshotStartHour)),errors.wrap('supplied properties not correct for "SnapshotOptionsProperty"')}function convertCfnDomainSnapshotOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainSnapshotOptionsPropertyValidator(properties).assertSuccess(),{AutomatedSnapshotStartHour:cdk().numberToCloudFormation(properties.automatedSnapshotStartHour)}):properties}function CfnDomainSnapshotOptionsPropertyFromCloudFormation(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("automatedSnapshotStartHour","AutomatedSnapshotStartHour",properties.AutomatedSnapshotStartHour!=null?cfn_parse().FromCloudFormation.getNumber(properties.AutomatedSnapshotStartHour):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainVPCOptionsPropertyValidator(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("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnetIds",cdk().listValidator(cdk().validateString))(properties.subnetIds)),errors.wrap('supplied properties not correct for "VPCOptionsProperty"')}function convertCfnDomainVPCOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainVPCOptionsPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),SubnetIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnetIds)}):properties}function CfnDomainVPCOptionsPropertyFromCloudFormation(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("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SubnetIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainNodeToNodeEncryptionOptionsPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "NodeToNodeEncryptionOptionsProperty"')}function convertCfnDomainNodeToNodeEncryptionOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainNodeToNodeEncryptionOptionsPropertyValidator(properties).assertSuccess(),{Enabled:cdk().booleanToCloudFormation(properties.enabled)}):properties}function CfnDomainNodeToNodeEncryptionOptionsPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainDomainEndpointOptionsPropertyValidator(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("customEndpoint",cdk().validateString)(properties.customEndpoint)),errors.collect(cdk().propertyValidator("customEndpointCertificateArn",cdk().validateString)(properties.customEndpointCertificateArn)),errors.collect(cdk().propertyValidator("customEndpointEnabled",cdk().validateBoolean)(properties.customEndpointEnabled)),errors.collect(cdk().propertyValidator("enforceHttps",cdk().validateBoolean)(properties.enforceHttps)),errors.collect(cdk().propertyValidator("tlsSecurityPolicy",cdk().validateString)(properties.tlsSecurityPolicy)),errors.wrap('supplied properties not correct for "DomainEndpointOptionsProperty"')}function convertCfnDomainDomainEndpointOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainDomainEndpointOptionsPropertyValidator(properties).assertSuccess(),{CustomEndpoint:cdk().stringToCloudFormation(properties.customEndpoint),CustomEndpointCertificateArn:cdk().stringToCloudFormation(properties.customEndpointCertificateArn),CustomEndpointEnabled:cdk().booleanToCloudFormation(properties.customEndpointEnabled),EnforceHTTPS:cdk().booleanToCloudFormation(properties.enforceHttps),TLSSecurityPolicy:cdk().stringToCloudFormation(properties.tlsSecurityPolicy)}):properties}function CfnDomainDomainEndpointOptionsPropertyFromCloudFormation(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("customEndpoint","CustomEndpoint",properties.CustomEndpoint!=null?cfn_parse().FromCloudFormation.getString(properties.CustomEndpoint):void 0),ret.addPropertyResult("customEndpointCertificateArn","CustomEndpointCertificateArn",properties.CustomEndpointCertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.CustomEndpointCertificateArn):void 0),ret.addPropertyResult("customEndpointEnabled","CustomEndpointEnabled",properties.CustomEndpointEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.CustomEndpointEnabled):void 0),ret.addPropertyResult("enforceHttps","EnforceHTTPS",properties.EnforceHTTPS!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnforceHTTPS):void 0),ret.addPropertyResult("tlsSecurityPolicy","TLSSecurityPolicy",properties.TLSSecurityPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.TLSSecurityPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainCognitoOptionsPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("identityPoolId",cdk().validateString)(properties.identityPoolId)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("userPoolId",cdk().validateString)(properties.userPoolId)),errors.wrap('supplied properties not correct for "CognitoOptionsProperty"')}function convertCfnDomainCognitoOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainCognitoOptionsPropertyValidator(properties).assertSuccess(),{Enabled:cdk().booleanToCloudFormation(properties.enabled),IdentityPoolId:cdk().stringToCloudFormation(properties.identityPoolId),RoleArn:cdk().stringToCloudFormation(properties.roleArn),UserPoolId:cdk().stringToCloudFormation(properties.userPoolId)}):properties}function CfnDomainCognitoOptionsPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("identityPoolId","IdentityPoolId",properties.IdentityPoolId!=null?cfn_parse().FromCloudFormation.getString(properties.IdentityPoolId):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("userPoolId","UserPoolId",properties.UserPoolId!=null?cfn_parse().FromCloudFormation.getString(properties.UserPoolId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainIdpPropertyValidator(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("entityId",cdk().requiredValidator)(properties.entityId)),errors.collect(cdk().propertyValidator("entityId",cdk().validateString)(properties.entityId)),errors.collect(cdk().propertyValidator("metadataContent",cdk().requiredValidator)(properties.metadataContent)),errors.collect(cdk().propertyValidator("metadataContent",cdk().validateString)(properties.metadataContent)),errors.wrap('supplied properties not correct for "IdpProperty"')}function convertCfnDomainIdpPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainIdpPropertyValidator(properties).assertSuccess(),{EntityId:cdk().stringToCloudFormation(properties.entityId),MetadataContent:cdk().stringToCloudFormation(properties.metadataContent)}):properties}function CfnDomainIdpPropertyFromCloudFormation(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("entityId","EntityId",properties.EntityId!=null?cfn_parse().FromCloudFormation.getString(properties.EntityId):void 0),ret.addPropertyResult("metadataContent","MetadataContent",properties.MetadataContent!=null?cfn_parse().FromCloudFormation.getString(properties.MetadataContent):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainSAMLOptionsPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("idp",CfnDomainIdpPropertyValidator)(properties.idp)),errors.collect(cdk().propertyValidator("masterBackendRole",cdk().validateString)(properties.masterBackendRole)),errors.collect(cdk().propertyValidator("masterUserName",cdk().validateString)(properties.masterUserName)),errors.collect(cdk().propertyValidator("rolesKey",cdk().validateString)(properties.rolesKey)),errors.collect(cdk().propertyValidator("sessionTimeoutMinutes",cdk().validateNumber)(properties.sessionTimeoutMinutes)),errors.collect(cdk().propertyValidator("subjectKey",cdk().validateString)(properties.subjectKey)),errors.wrap('supplied properties not correct for "SAMLOptionsProperty"')}function convertCfnDomainSAMLOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainSAMLOptionsPropertyValidator(properties).assertSuccess(),{Enabled:cdk().booleanToCloudFormation(properties.enabled),Idp:convertCfnDomainIdpPropertyToCloudFormation(properties.idp),MasterBackendRole:cdk().stringToCloudFormation(properties.masterBackendRole),MasterUserName:cdk().stringToCloudFormation(properties.masterUserName),RolesKey:cdk().stringToCloudFormation(properties.rolesKey),SessionTimeoutMinutes:cdk().numberToCloudFormation(properties.sessionTimeoutMinutes),SubjectKey:cdk().stringToCloudFormation(properties.subjectKey)}):properties}function CfnDomainSAMLOptionsPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("idp","Idp",properties.Idp!=null?CfnDomainIdpPropertyFromCloudFormation(properties.Idp):void 0),ret.addPropertyResult("masterBackendRole","MasterBackendRole",properties.MasterBackendRole!=null?cfn_parse().FromCloudFormation.getString(properties.MasterBackendRole):void 0),ret.addPropertyResult("masterUserName","MasterUserName",properties.MasterUserName!=null?cfn_parse().FromCloudFormation.getString(properties.MasterUserName):void 0),ret.addPropertyResult("rolesKey","RolesKey",properties.RolesKey!=null?cfn_parse().FromCloudFormation.getString(properties.RolesKey):void 0),ret.addPropertyResult("sessionTimeoutMinutes","SessionTimeoutMinutes",properties.SessionTimeoutMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.SessionTimeoutMinutes):void 0),ret.addPropertyResult("subjectKey","SubjectKey",properties.SubjectKey!=null?cfn_parse().FromCloudFormation.getString(properties.SubjectKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainMasterUserOptionsPropertyValidator(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("masterUserArn",cdk().validateString)(properties.masterUserArn)),errors.collect(cdk().propertyValidator("masterUserName",cdk().validateString)(properties.masterUserName)),errors.collect(cdk().propertyValidator("masterUserPassword",cdk().validateString)(properties.masterUserPassword)),errors.wrap('supplied properties not correct for "MasterUserOptionsProperty"')}function convertCfnDomainMasterUserOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainMasterUserOptionsPropertyValidator(properties).assertSuccess(),{MasterUserARN:cdk().stringToCloudFormation(properties.masterUserArn),MasterUserName:cdk().stringToCloudFormation(properties.masterUserName),MasterUserPassword:cdk().stringToCloudFormation(properties.masterUserPassword)}):properties}function CfnDomainMasterUserOptionsPropertyFromCloudFormation(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("masterUserArn","MasterUserARN",properties.MasterUserARN!=null?cfn_parse().FromCloudFormation.getString(properties.MasterUserARN):void 0),ret.addPropertyResult("masterUserName","MasterUserName",properties.MasterUserName!=null?cfn_parse().FromCloudFormation.getString(properties.MasterUserName):void 0),ret.addPropertyResult("masterUserPassword","MasterUserPassword",properties.MasterUserPassword!=null?cfn_parse().FromCloudFormation.getString(properties.MasterUserPassword):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainJWTOptionsPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("publicKey",cdk().validateString)(properties.publicKey)),errors.collect(cdk().propertyValidator("rolesKey",cdk().validateString)(properties.rolesKey)),errors.collect(cdk().propertyValidator("subjectKey",cdk().validateString)(properties.subjectKey)),errors.wrap('supplied properties not correct for "JWTOptionsProperty"')}function convertCfnDomainJWTOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainJWTOptionsPropertyValidator(properties).assertSuccess(),{Enabled:cdk().booleanToCloudFormation(properties.enabled),PublicKey:cdk().stringToCloudFormation(properties.publicKey),RolesKey:cdk().stringToCloudFormation(properties.rolesKey),SubjectKey:cdk().stringToCloudFormation(properties.subjectKey)}):properties}function CfnDomainJWTOptionsPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("publicKey","PublicKey",properties.PublicKey!=null?cfn_parse().FromCloudFormation.getString(properties.PublicKey):void 0),ret.addPropertyResult("rolesKey","RolesKey",properties.RolesKey!=null?cfn_parse().FromCloudFormation.getString(properties.RolesKey):void 0),ret.addPropertyResult("subjectKey","SubjectKey",properties.SubjectKey!=null?cfn_parse().FromCloudFormation.getString(properties.SubjectKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainIAMFederationOptionsPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("rolesKey",cdk().validateString)(properties.rolesKey)),errors.collect(cdk().propertyValidator("subjectKey",cdk().validateString)(properties.subjectKey)),errors.wrap('supplied properties not correct for "IAMFederationOptionsProperty"')}function convertCfnDomainIAMFederationOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainIAMFederationOptionsPropertyValidator(properties).assertSuccess(),{Enabled:cdk().booleanToCloudFormation(properties.enabled),RolesKey:cdk().stringToCloudFormation(properties.rolesKey),SubjectKey:cdk().stringToCloudFormation(properties.subjectKey)}):properties}function CfnDomainIAMFederationOptionsPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("rolesKey","RolesKey",properties.RolesKey!=null?cfn_parse().FromCloudFormation.getString(properties.RolesKey):void 0),ret.addPropertyResult("subjectKey","SubjectKey",properties.SubjectKey!=null?cfn_parse().FromCloudFormation.getString(properties.SubjectKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainAdvancedSecurityOptionsInputPropertyValidator(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("anonymousAuthDisableDate",cdk().validateString)(properties.anonymousAuthDisableDate)),errors.collect(cdk().propertyValidator("anonymousAuthEnabled",cdk().validateBoolean)(properties.anonymousAuthEnabled)),errors.collect(cdk().propertyValidator("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("iamFederationOptions",CfnDomainIAMFederationOptionsPropertyValidator)(properties.iamFederationOptions)),errors.collect(cdk().propertyValidator("internalUserDatabaseEnabled",cdk().validateBoolean)(properties.internalUserDatabaseEnabled)),errors.collect(cdk().propertyValidator("jwtOptions",CfnDomainJWTOptionsPropertyValidator)(properties.jwtOptions)),errors.collect(cdk().propertyValidator("masterUserOptions",CfnDomainMasterUserOptionsPropertyValidator)(properties.masterUserOptions)),errors.collect(cdk().propertyValidator("samlOptions",CfnDomainSAMLOptionsPropertyValidator)(properties.samlOptions)),errors.wrap('supplied properties not correct for "AdvancedSecurityOptionsInputProperty"')}function convertCfnDomainAdvancedSecurityOptionsInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainAdvancedSecurityOptionsInputPropertyValidator(properties).assertSuccess(),{AnonymousAuthDisableDate:cdk().stringToCloudFormation(properties.anonymousAuthDisableDate),AnonymousAuthEnabled:cdk().booleanToCloudFormation(properties.anonymousAuthEnabled),Enabled:cdk().booleanToCloudFormation(properties.enabled),IAMFederationOptions:convertCfnDomainIAMFederationOptionsPropertyToCloudFormation(properties.iamFederationOptions),InternalUserDatabaseEnabled:cdk().booleanToCloudFormation(properties.internalUserDatabaseEnabled),JWTOptions:convertCfnDomainJWTOptionsPropertyToCloudFormation(properties.jwtOptions),MasterUserOptions:convertCfnDomainMasterUserOptionsPropertyToCloudFormation(properties.masterUserOptions),SAMLOptions:convertCfnDomainSAMLOptionsPropertyToCloudFormation(properties.samlOptions)}):properties}function CfnDomainAdvancedSecurityOptionsInputPropertyFromCloudFormation(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("anonymousAuthDisableDate","AnonymousAuthDisableDate",properties.AnonymousAuthDisableDate!=null?cfn_parse().FromCloudFormation.getString(properties.AnonymousAuthDisableDate):void 0),ret.addPropertyResult("anonymousAuthEnabled","AnonymousAuthEnabled",properties.AnonymousAuthEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AnonymousAuthEnabled):void 0),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("iamFederationOptions","IAMFederationOptions",properties.IAMFederationOptions!=null?CfnDomainIAMFederationOptionsPropertyFromCloudFormation(properties.IAMFederationOptions):void 0),ret.addPropertyResult("internalUserDatabaseEnabled","InternalUserDatabaseEnabled",properties.InternalUserDatabaseEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.InternalUserDatabaseEnabled):void 0),ret.addPropertyResult("jwtOptions","JWTOptions",properties.JWTOptions!=null?CfnDomainJWTOptionsPropertyFromCloudFormation(properties.JWTOptions):void 0),ret.addPropertyResult("masterUserOptions","MasterUserOptions",properties.MasterUserOptions!=null?CfnDomainMasterUserOptionsPropertyFromCloudFormation(properties.MasterUserOptions):void 0),ret.addPropertyResult("samlOptions","SAMLOptions",properties.SAMLOptions!=null?CfnDomainSAMLOptionsPropertyFromCloudFormation(properties.SAMLOptions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainEBSOptionsPropertyValidator(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("ebsEnabled",cdk().validateBoolean)(properties.ebsEnabled)),errors.collect(cdk().propertyValidator("iops",cdk().validateNumber)(properties.iops)),errors.collect(cdk().propertyValidator("throughput",cdk().validateNumber)(properties.throughput)),errors.collect(cdk().propertyValidator("volumeSize",cdk().validateNumber)(properties.volumeSize)),errors.collect(cdk().propertyValidator("volumeType",cdk().validateString)(properties.volumeType)),errors.wrap('supplied properties not correct for "EBSOptionsProperty"')}function convertCfnDomainEBSOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainEBSOptionsPropertyValidator(properties).assertSuccess(),{EBSEnabled:cdk().booleanToCloudFormation(properties.ebsEnabled),Iops:cdk().numberToCloudFormation(properties.iops),Throughput:cdk().numberToCloudFormation(properties.throughput),VolumeSize:cdk().numberToCloudFormation(properties.volumeSize),VolumeType:cdk().stringToCloudFormation(properties.volumeType)}):properties}function CfnDomainEBSOptionsPropertyFromCloudFormation(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("ebsEnabled","EBSEnabled",properties.EBSEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EBSEnabled):void 0),ret.addPropertyResult("iops","Iops",properties.Iops!=null?cfn_parse().FromCloudFormation.getNumber(properties.Iops):void 0),ret.addPropertyResult("throughput","Throughput",properties.Throughput!=null?cfn_parse().FromCloudFormation.getNumber(properties.Throughput):void 0),ret.addPropertyResult("volumeSize","VolumeSize",properties.VolumeSize!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSize):void 0),ret.addPropertyResult("volumeType","VolumeType",properties.VolumeType!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainEncryptionAtRestOptionsPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.wrap('supplied properties not correct for "EncryptionAtRestOptionsProperty"')}function convertCfnDomainEncryptionAtRestOptionsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainEncryptionAtRestOptionsPropertyValidator(properties).assertSuccess(),{Enabled:cdk().booleanToCloudFormation(properties.enabled),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId)}):properties}function CfnDomainEncryptionAtRestOptionsPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainWindowStartTimePropertyValidator(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("hours",cdk().requiredValidator)(properties.hours)),errors.collect(cdk().propertyValidator("hours",cdk().validateNumber)(properties.hours)),errors.collect(cdk().propertyValidator("minutes",cdk().requiredValidator)(properties.minutes)),errors.collect(cdk().propertyValidator("minutes",cdk().validateNumber)(properties.minutes)),errors.wrap('supplied properties not correct for "WindowStartTimeProperty"')}function convertCfnDomainWindowStartTimePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainWindowStartTimePropertyValidator(properties).assertSuccess(),{Hours:cdk().numberToCloudFormation(properties.hours),Minutes:cdk().numberToCloudFormation(properties.minutes)}):properties}function CfnDomainWindowStartTimePropertyFromCloudFormation(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("hours","Hours",properties.Hours!=null?cfn_parse().FromCloudFormation.getNumber(properties.Hours):void 0),ret.addPropertyResult("minutes","Minutes",properties.Minutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.Minutes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainOffPeakWindowPropertyValidator(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("windowStartTime",CfnDomainWindowStartTimePropertyValidator)(properties.windowStartTime)),errors.wrap('supplied properties not correct for "OffPeakWindowProperty"')}function convertCfnDomainOffPeakWindowPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainOffPeakWindowPropertyValidator(properties).assertSuccess(),{WindowStartTime:convertCfnDomainWindowStartTimePropertyToCloudFormation(properties.windowStartTime)}):properties}function CfnDomainOffPeakWindowPropertyFromCloudFormation(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("windowStartTime","WindowStartTime",properties.WindowStartTime!=null?CfnDomainWindowStartTimePropertyFromCloudFormation(properties.WindowStartTime):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainOffPeakWindowOptionsPropertyValidator(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("enabled",cdk().validateBoolean)(properties.enabled)),errors.collect(cdk().propertyValidator("offPeakWindow",CfnDomainOffPeakWindo