UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

2 lines (1 loc) 32.6 kB
"use strict";var _a,_b,_c,_d;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnWorkGroup=exports.CfnPreparedStatement=exports.CfnNamedQuery=exports.CfnDataCatalog=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnDataCatalogPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("parameters",cdk.hashValidator(cdk.validateString))(properties.parameters)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "CfnDataCatalogProps"')}function cfnDataCatalogPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDataCatalogPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),Type:cdk.stringToCloudFormation(properties.type),Description:cdk.stringToCloudFormation(properties.description),Parameters:cdk.hashMapper(cdk.stringToCloudFormation)(properties.parameters),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDataCatalogPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.Parameters):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDataCatalog extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDataCatalog.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_athena_CfnDataCatalogProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDataCatalog),error}cdk.requireProperty(props,"name",this),cdk.requireProperty(props,"type",this),this.name=props.name,this.type=props.type,this.description=props.description,this.parameters=props.parameters,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Athena::DataCatalog",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDataCatalogPropsFromCloudFormation(resourceProperties),ret=new CfnDataCatalog(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnDataCatalog.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{name:this.name,type:this.type,description:this.description,parameters:this.parameters,tags:this.tags.renderTags()}}renderProperties(props){return cfnDataCatalogPropsToCloudFormation(props)}}exports.CfnDataCatalog=CfnDataCatalog,_a=JSII_RTTI_SYMBOL_1,CfnDataCatalog[_a]={fqn:"aws-cdk-lib.aws_athena.CfnDataCatalog",version:"2.70.0"},CfnDataCatalog.CFN_RESOURCE_TYPE_NAME="AWS::Athena::DataCatalog";function CfnNamedQueryPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("database",cdk.requiredValidator)(properties.database)),errors.collect(cdk.propertyValidator("database",cdk.validateString)(properties.database)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("queryString",cdk.requiredValidator)(properties.queryString)),errors.collect(cdk.propertyValidator("queryString",cdk.validateString)(properties.queryString)),errors.collect(cdk.propertyValidator("workGroup",cdk.validateString)(properties.workGroup)),errors.wrap('supplied properties not correct for "CfnNamedQueryProps"')}function cfnNamedQueryPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnNamedQueryPropsValidator(properties).assertSuccess(),{Database:cdk.stringToCloudFormation(properties.database),QueryString:cdk.stringToCloudFormation(properties.queryString),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),WorkGroup:cdk.stringToCloudFormation(properties.workGroup)}):properties}function CfnNamedQueryPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("database","Database",cfn_parse.FromCloudFormation.getString(properties.Database)),ret.addPropertyResult("queryString","QueryString",cfn_parse.FromCloudFormation.getString(properties.QueryString)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("workGroup","WorkGroup",properties.WorkGroup!=null?cfn_parse.FromCloudFormation.getString(properties.WorkGroup):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnNamedQuery extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnNamedQuery.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_athena_CfnNamedQueryProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnNamedQuery),error}cdk.requireProperty(props,"database",this),cdk.requireProperty(props,"queryString",this),this.attrNamedQueryId=cdk.Token.asString(this.getAtt("NamedQueryId",cdk.ResolutionTypeHint.STRING)),this.database=props.database,this.queryString=props.queryString,this.description=props.description,this.name=props.name,this.workGroup=props.workGroup}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnNamedQueryPropsFromCloudFormation(resourceProperties),ret=new CfnNamedQuery(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnNamedQuery.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{database:this.database,queryString:this.queryString,description:this.description,name:this.name,workGroup:this.workGroup}}renderProperties(props){return cfnNamedQueryPropsToCloudFormation(props)}}exports.CfnNamedQuery=CfnNamedQuery,_b=JSII_RTTI_SYMBOL_1,CfnNamedQuery[_b]={fqn:"aws-cdk-lib.aws_athena.CfnNamedQuery",version:"2.70.0"},CfnNamedQuery.CFN_RESOURCE_TYPE_NAME="AWS::Athena::NamedQuery";function CfnPreparedStatementPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("queryStatement",cdk.requiredValidator)(properties.queryStatement)),errors.collect(cdk.propertyValidator("queryStatement",cdk.validateString)(properties.queryStatement)),errors.collect(cdk.propertyValidator("statementName",cdk.requiredValidator)(properties.statementName)),errors.collect(cdk.propertyValidator("statementName",cdk.validateString)(properties.statementName)),errors.collect(cdk.propertyValidator("workGroup",cdk.requiredValidator)(properties.workGroup)),errors.collect(cdk.propertyValidator("workGroup",cdk.validateString)(properties.workGroup)),errors.wrap('supplied properties not correct for "CfnPreparedStatementProps"')}function cfnPreparedStatementPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnPreparedStatementPropsValidator(properties).assertSuccess(),{QueryStatement:cdk.stringToCloudFormation(properties.queryStatement),StatementName:cdk.stringToCloudFormation(properties.statementName),WorkGroup:cdk.stringToCloudFormation(properties.workGroup),Description:cdk.stringToCloudFormation(properties.description)}):properties}function CfnPreparedStatementPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("queryStatement","QueryStatement",cfn_parse.FromCloudFormation.getString(properties.QueryStatement)),ret.addPropertyResult("statementName","StatementName",cfn_parse.FromCloudFormation.getString(properties.StatementName)),ret.addPropertyResult("workGroup","WorkGroup",cfn_parse.FromCloudFormation.getString(properties.WorkGroup)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnPreparedStatement extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnPreparedStatement.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_athena_CfnPreparedStatementProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnPreparedStatement),error}cdk.requireProperty(props,"queryStatement",this),cdk.requireProperty(props,"statementName",this),cdk.requireProperty(props,"workGroup",this),this.queryStatement=props.queryStatement,this.statementName=props.statementName,this.workGroup=props.workGroup,this.description=props.description}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPreparedStatementPropsFromCloudFormation(resourceProperties),ret=new CfnPreparedStatement(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnPreparedStatement.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{queryStatement:this.queryStatement,statementName:this.statementName,workGroup:this.workGroup,description:this.description}}renderProperties(props){return cfnPreparedStatementPropsToCloudFormation(props)}}exports.CfnPreparedStatement=CfnPreparedStatement,_c=JSII_RTTI_SYMBOL_1,CfnPreparedStatement[_c]={fqn:"aws-cdk-lib.aws_athena.CfnPreparedStatement",version:"2.70.0"},CfnPreparedStatement.CFN_RESOURCE_TYPE_NAME="AWS::Athena::PreparedStatement";function CfnWorkGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("recursiveDeleteOption",cdk.validateBoolean)(properties.recursiveDeleteOption)),errors.collect(cdk.propertyValidator("state",cdk.validateString)(properties.state)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("workGroupConfiguration",CfnWorkGroup_WorkGroupConfigurationPropertyValidator)(properties.workGroupConfiguration)),errors.wrap('supplied properties not correct for "CfnWorkGroupProps"')}function cfnWorkGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkGroupPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),Description:cdk.stringToCloudFormation(properties.description),RecursiveDeleteOption:cdk.booleanToCloudFormation(properties.recursiveDeleteOption),State:cdk.stringToCloudFormation(properties.state),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),WorkGroupConfiguration:cfnWorkGroupWorkGroupConfigurationPropertyToCloudFormation(properties.workGroupConfiguration)}):properties}function CfnWorkGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("recursiveDeleteOption","RecursiveDeleteOption",properties.RecursiveDeleteOption!=null?cfn_parse.FromCloudFormation.getBoolean(properties.RecursiveDeleteOption):void 0),ret.addPropertyResult("state","State",properties.State!=null?cfn_parse.FromCloudFormation.getString(properties.State):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("workGroupConfiguration","WorkGroupConfiguration",properties.WorkGroupConfiguration!=null?CfnWorkGroupWorkGroupConfigurationPropertyFromCloudFormation(properties.WorkGroupConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnWorkGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnWorkGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_athena_CfnWorkGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWorkGroup),error}cdk.requireProperty(props,"name",this),this.attrCreationTime=cdk.Token.asString(this.getAtt("CreationTime",cdk.ResolutionTypeHint.STRING)),this.attrWorkGroupConfigurationEngineVersionEffectiveEngineVersion=cdk.Token.asString(this.getAtt("WorkGroupConfiguration.EngineVersion.EffectiveEngineVersion",cdk.ResolutionTypeHint.STRING)),this.name=props.name,this.description=props.description,this.recursiveDeleteOption=props.recursiveDeleteOption,this.state=props.state,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Athena::WorkGroup",props.tags,{tagPropertyName:"tags"}),this.workGroupConfiguration=props.workGroupConfiguration}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWorkGroupPropsFromCloudFormation(resourceProperties),ret=new CfnWorkGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnWorkGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{name:this.name,description:this.description,recursiveDeleteOption:this.recursiveDeleteOption,state:this.state,tags:this.tags.renderTags(),workGroupConfiguration:this.workGroupConfiguration}}renderProperties(props){return cfnWorkGroupPropsToCloudFormation(props)}}exports.CfnWorkGroup=CfnWorkGroup,_d=JSII_RTTI_SYMBOL_1,CfnWorkGroup[_d]={fqn:"aws-cdk-lib.aws_athena.CfnWorkGroup",version:"2.70.0"},CfnWorkGroup.CFN_RESOURCE_TYPE_NAME="AWS::Athena::WorkGroup";function CfnWorkGroup_AclConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("s3AclOption",cdk.requiredValidator)(properties.s3AclOption)),errors.collect(cdk.propertyValidator("s3AclOption",cdk.validateString)(properties.s3AclOption)),errors.wrap('supplied properties not correct for "AclConfigurationProperty"')}function cfnWorkGroupAclConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkGroup_AclConfigurationPropertyValidator(properties).assertSuccess(),{S3AclOption:cdk.stringToCloudFormation(properties.s3AclOption)}):properties}function CfnWorkGroupAclConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("s3AclOption","S3AclOption",cfn_parse.FromCloudFormation.getString(properties.S3AclOption)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkGroup_CustomerContentEncryptionConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("kmsKey",cdk.requiredValidator)(properties.kmsKey)),errors.collect(cdk.propertyValidator("kmsKey",cdk.validateString)(properties.kmsKey)),errors.wrap('supplied properties not correct for "CustomerContentEncryptionConfigurationProperty"')}function cfnWorkGroupCustomerContentEncryptionConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkGroup_CustomerContentEncryptionConfigurationPropertyValidator(properties).assertSuccess(),{KmsKey:cdk.stringToCloudFormation(properties.kmsKey)}):properties}function CfnWorkGroupCustomerContentEncryptionConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("kmsKey","KmsKey",cfn_parse.FromCloudFormation.getString(properties.KmsKey)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkGroup_EncryptionConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("encryptionOption",cdk.requiredValidator)(properties.encryptionOption)),errors.collect(cdk.propertyValidator("encryptionOption",cdk.validateString)(properties.encryptionOption)),errors.collect(cdk.propertyValidator("kmsKey",cdk.validateString)(properties.kmsKey)),errors.wrap('supplied properties not correct for "EncryptionConfigurationProperty"')}function cfnWorkGroupEncryptionConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkGroup_EncryptionConfigurationPropertyValidator(properties).assertSuccess(),{EncryptionOption:cdk.stringToCloudFormation(properties.encryptionOption),KmsKey:cdk.stringToCloudFormation(properties.kmsKey)}):properties}function CfnWorkGroupEncryptionConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("encryptionOption","EncryptionOption",cfn_parse.FromCloudFormation.getString(properties.EncryptionOption)),ret.addPropertyResult("kmsKey","KmsKey",properties.KmsKey!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkGroup_EngineVersionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("effectiveEngineVersion",cdk.validateString)(properties.effectiveEngineVersion)),errors.collect(cdk.propertyValidator("selectedEngineVersion",cdk.validateString)(properties.selectedEngineVersion)),errors.wrap('supplied properties not correct for "EngineVersionProperty"')}function cfnWorkGroupEngineVersionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkGroup_EngineVersionPropertyValidator(properties).assertSuccess(),{EffectiveEngineVersion:cdk.stringToCloudFormation(properties.effectiveEngineVersion),SelectedEngineVersion:cdk.stringToCloudFormation(properties.selectedEngineVersion)}):properties}function CfnWorkGroupEngineVersionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("effectiveEngineVersion","EffectiveEngineVersion",properties.EffectiveEngineVersion!=null?cfn_parse.FromCloudFormation.getString(properties.EffectiveEngineVersion):void 0),ret.addPropertyResult("selectedEngineVersion","SelectedEngineVersion",properties.SelectedEngineVersion!=null?cfn_parse.FromCloudFormation.getString(properties.SelectedEngineVersion):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkGroup_ResultConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("aclConfiguration",CfnWorkGroup_AclConfigurationPropertyValidator)(properties.aclConfiguration)),errors.collect(cdk.propertyValidator("encryptionConfiguration",CfnWorkGroup_EncryptionConfigurationPropertyValidator)(properties.encryptionConfiguration)),errors.collect(cdk.propertyValidator("expectedBucketOwner",cdk.validateString)(properties.expectedBucketOwner)),errors.collect(cdk.propertyValidator("outputLocation",cdk.validateString)(properties.outputLocation)),errors.wrap('supplied properties not correct for "ResultConfigurationProperty"')}function cfnWorkGroupResultConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkGroup_ResultConfigurationPropertyValidator(properties).assertSuccess(),{AclConfiguration:cfnWorkGroupAclConfigurationPropertyToCloudFormation(properties.aclConfiguration),EncryptionConfiguration:cfnWorkGroupEncryptionConfigurationPropertyToCloudFormation(properties.encryptionConfiguration),ExpectedBucketOwner:cdk.stringToCloudFormation(properties.expectedBucketOwner),OutputLocation:cdk.stringToCloudFormation(properties.outputLocation)}):properties}function CfnWorkGroupResultConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("aclConfiguration","AclConfiguration",properties.AclConfiguration!=null?CfnWorkGroupAclConfigurationPropertyFromCloudFormation(properties.AclConfiguration):void 0),ret.addPropertyResult("encryptionConfiguration","EncryptionConfiguration",properties.EncryptionConfiguration!=null?CfnWorkGroupEncryptionConfigurationPropertyFromCloudFormation(properties.EncryptionConfiguration):void 0),ret.addPropertyResult("expectedBucketOwner","ExpectedBucketOwner",properties.ExpectedBucketOwner!=null?cfn_parse.FromCloudFormation.getString(properties.ExpectedBucketOwner):void 0),ret.addPropertyResult("outputLocation","OutputLocation",properties.OutputLocation!=null?cfn_parse.FromCloudFormation.getString(properties.OutputLocation):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkGroup_WorkGroupConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("additionalConfiguration",cdk.validateString)(properties.additionalConfiguration)),errors.collect(cdk.propertyValidator("bytesScannedCutoffPerQuery",cdk.validateNumber)(properties.bytesScannedCutoffPerQuery)),errors.collect(cdk.propertyValidator("customerContentEncryptionConfiguration",CfnWorkGroup_CustomerContentEncryptionConfigurationPropertyValidator)(properties.customerContentEncryptionConfiguration)),errors.collect(cdk.propertyValidator("enforceWorkGroupConfiguration",cdk.validateBoolean)(properties.enforceWorkGroupConfiguration)),errors.collect(cdk.propertyValidator("engineVersion",CfnWorkGroup_EngineVersionPropertyValidator)(properties.engineVersion)),errors.collect(cdk.propertyValidator("executionRole",cdk.validateString)(properties.executionRole)),errors.collect(cdk.propertyValidator("publishCloudWatchMetricsEnabled",cdk.validateBoolean)(properties.publishCloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("requesterPaysEnabled",cdk.validateBoolean)(properties.requesterPaysEnabled)),errors.collect(cdk.propertyValidator("resultConfiguration",CfnWorkGroup_ResultConfigurationPropertyValidator)(properties.resultConfiguration)),errors.wrap('supplied properties not correct for "WorkGroupConfigurationProperty"')}function cfnWorkGroupWorkGroupConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkGroup_WorkGroupConfigurationPropertyValidator(properties).assertSuccess(),{AdditionalConfiguration:cdk.stringToCloudFormation(properties.additionalConfiguration),BytesScannedCutoffPerQuery:cdk.numberToCloudFormation(properties.bytesScannedCutoffPerQuery),CustomerContentEncryptionConfiguration:cfnWorkGroupCustomerContentEncryptionConfigurationPropertyToCloudFormation(properties.customerContentEncryptionConfiguration),EnforceWorkGroupConfiguration:cdk.booleanToCloudFormation(properties.enforceWorkGroupConfiguration),EngineVersion:cfnWorkGroupEngineVersionPropertyToCloudFormation(properties.engineVersion),ExecutionRole:cdk.stringToCloudFormation(properties.executionRole),PublishCloudWatchMetricsEnabled:cdk.booleanToCloudFormation(properties.publishCloudWatchMetricsEnabled),RequesterPaysEnabled:cdk.booleanToCloudFormation(properties.requesterPaysEnabled),ResultConfiguration:cfnWorkGroupResultConfigurationPropertyToCloudFormation(properties.resultConfiguration)}):properties}function CfnWorkGroupWorkGroupConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("additionalConfiguration","AdditionalConfiguration",properties.AdditionalConfiguration!=null?cfn_parse.FromCloudFormation.getString(properties.AdditionalConfiguration):void 0),ret.addPropertyResult("bytesScannedCutoffPerQuery","BytesScannedCutoffPerQuery",properties.BytesScannedCutoffPerQuery!=null?cfn_parse.FromCloudFormation.getNumber(properties.BytesScannedCutoffPerQuery):void 0),ret.addPropertyResult("customerContentEncryptionConfiguration","CustomerContentEncryptionConfiguration",properties.CustomerContentEncryptionConfiguration!=null?CfnWorkGroupCustomerContentEncryptionConfigurationPropertyFromCloudFormation(properties.CustomerContentEncryptionConfiguration):void 0),ret.addPropertyResult("enforceWorkGroupConfiguration","EnforceWorkGroupConfiguration",properties.EnforceWorkGroupConfiguration!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnforceWorkGroupConfiguration):void 0),ret.addPropertyResult("engineVersion","EngineVersion",properties.EngineVersion!=null?CfnWorkGroupEngineVersionPropertyFromCloudFormation(properties.EngineVersion):void 0),ret.addPropertyResult("executionRole","ExecutionRole",properties.ExecutionRole!=null?cfn_parse.FromCloudFormation.getString(properties.ExecutionRole):void 0),ret.addPropertyResult("publishCloudWatchMetricsEnabled","PublishCloudWatchMetricsEnabled",properties.PublishCloudWatchMetricsEnabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.PublishCloudWatchMetricsEnabled):void 0),ret.addPropertyResult("requesterPaysEnabled","RequesterPaysEnabled",properties.RequesterPaysEnabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.RequesterPaysEnabled):void 0),ret.addPropertyResult("resultConfiguration","ResultConfiguration",properties.ResultConfiguration!=null?CfnWorkGroupResultConfigurationPropertyFromCloudFormation(properties.ResultConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}