"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnQuickResponse=exports.CfnMessageTemplateVersion=exports.CfnMessageTemplate=exports.CfnAIPromptVersion=exports.CfnAIPrompt=exports.CfnAIGuardrailVersion=exports.CfnAIGuardrail=exports.CfnAIAgentVersion=exports.CfnAIAgent=exports.CfnKnowledgeBase=exports.CfnAssistantAssociation=exports.CfnAssistant=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 CfnAssistant extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAssistant",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::Assistant";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAssistantPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAssistant(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 isCfnAssistant(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAssistant.CFN_RESOURCE_TYPE_NAME}static fromAssistantArn(scope,id,arn){class Import extends cdk().Resource{assistantRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:wisdom:${Region}:${Account}:assistant/${AssistantId}").parse(arn2);this.assistantRef={assistantId:variables.AssistantId,assistantArn:arn2}}}return new Import(scope,id,arn)}static fromAssistantId(scope,id,assistantId){class Import extends cdk().Resource{assistantRef;constructor(scope2,id2,assistantId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:wisdom:${Region}:${Account}:assistant/${AssistantId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AssistantId:assistantId2});super(scope2,id2,{environmentFromArn:arn}),this.assistantRef={assistantId:assistantId2,assistantArn:arn}}}return new Import(scope,id,assistantId)}static arnForAssistant(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IAssistantRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAssistant),error}return resource.assistantRef.assistantArn}_description;_name;_serverSideEncryptionConfiguration;tags;_tagsRaw;_type;cfnPropertyNames={description:"Description",name:"Name",serverSideEncryptionConfiguration:"ServerSideEncryptionConfiguration",tags:"Tags",type:"Type"};constructor(scope,id,props){super(scope,id,{type:CfnAssistant.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAssistantProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAssistant),error}cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"type",this),this._description=props.description,this._name=props.name,this._serverSideEncryptionConfiguration=props.serverSideEncryptionConfiguration,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Wisdom::Assistant",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._type=props.type}get assistantRef(){return{assistantId:this.ref,assistantArn:this.attrAssistantArn}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get serverSideEncryptionConfiguration(){return this._serverSideEncryptionConfiguration}set serverSideEncryptionConfiguration(value){cdk().traceProperty(this.node,"ServerSideEncryptionConfiguration"),this._serverSideEncryptionConfiguration=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get type(){return this._type}set type(value){cdk().traceProperty(this.node,"Type"),this._type=value}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get attrAssistantId(){return cdk().Token.asString(this.getAtt("AssistantId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{description:this._description,name:this._name,serverSideEncryptionConfiguration:this._serverSideEncryptionConfiguration,tags:this.tags.renderTags(),type:this._type}}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",CfnAssistant.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAssistantPropsToCloudFormation(props)}}exports.CfnAssistant=CfnAssistant;function CfnAssistantServerSideEncryptionConfigurationPropertyValidator(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("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.wrap('supplied properties not correct for "ServerSideEncryptionConfigurationProperty"')}function convertCfnAssistantServerSideEncryptionConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssistantServerSideEncryptionConfigurationPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId)}):properties}function CfnAssistantServerSideEncryptionConfigurationPropertyFromCloudFormation(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("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssistantPropsValidator(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("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("serverSideEncryptionConfiguration",CfnAssistantServerSideEncryptionConfigurationPropertyValidator)(properties.serverSideEncryptionConfiguration)),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 "CfnAssistantProps"')}function convertCfnAssistantPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssistantPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),ServerSideEncryptionConfiguration:convertCfnAssistantServerSideEncryptionConfigurationPropertyToCloudFormation(properties.serverSideEncryptionConfiguration),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAssistantPropsFromCloudFormation(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("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("serverSideEncryptionConfiguration","ServerSideEncryptionConfiguration",properties.ServerSideEncryptionConfiguration!=null?CfnAssistantServerSideEncryptionConfigurationPropertyFromCloudFormation(properties.ServerSideEncryptionConfiguration):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAssistantAssociation extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAssistantAssociation",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::AssistantAssociation";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAssistantAssociationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAssistantAssociation(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 isCfnAssistantAssociation(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAssistantAssociation.CFN_RESOURCE_TYPE_NAME}static arnForAssistantAssociation(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IAssistantAssociationRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAssistantAssociation),error}return resource.assistantAssociationRef.assistantAssociationArn}_assistantId;_association;_associationType;tags;_tagsRaw;cfnPropertyNames={assistantId:"AssistantId",association:"Association",associationType:"AssociationType",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnAssistantAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAssistantAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAssistantAssociation),error}cdk().requireProperty(props,"assistantId",this),cdk().requireProperty(props,"association",this),cdk().requireProperty(props,"associationType",this),this._assistantId=props.assistantId,this._association=props.association,this._associationType=props.associationType,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Wisdom::AssistantAssociation",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get assistantAssociationRef(){return{assistantAssociationId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),assistantId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),assistantAssociationArn:this.attrAssistantAssociationArn}}get assistantId(){return this._assistantId}set assistantId(value){cdk().traceProperty(this.node,"AssistantId"),this._assistantId=value}get association(){return this._association}set association(value){cdk().traceProperty(this.node,"Association"),this._association=value}get associationType(){return this._associationType}set associationType(value){cdk().traceProperty(this.node,"AssociationType"),this._associationType=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get attrAssistantAssociationArn(){return cdk().Token.asString(this.getAtt("AssistantAssociationArn",cdk().ResolutionTypeHint.STRING))}get attrAssistantAssociationId(){return cdk().Token.asString(this.getAtt("AssistantAssociationId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{assistantId:this._assistantId,association:this._association,associationType:this._associationType,tags:this.tags.renderTags()}}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",CfnAssistantAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAssistantAssociationPropsToCloudFormation(props)}}exports.CfnAssistantAssociation=CfnAssistantAssociation;function CfnAssistantAssociationExternalBedrockKnowledgeBaseConfigPropertyValidator(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("accessRoleArn",cdk().requiredValidator)(properties.accessRoleArn)),errors.collect(cdk().propertyValidator("accessRoleArn",cdk().validateString)(properties.accessRoleArn)),errors.collect(cdk().propertyValidator("bedrockKnowledgeBaseArn",cdk().requiredValidator)(properties.bedrockKnowledgeBaseArn)),errors.collect(cdk().propertyValidator("bedrockKnowledgeBaseArn",cdk().validateString)(properties.bedrockKnowledgeBaseArn)),errors.wrap('supplied properties not correct for "ExternalBedrockKnowledgeBaseConfigProperty"')}function convertCfnAssistantAssociationExternalBedrockKnowledgeBaseConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssistantAssociationExternalBedrockKnowledgeBaseConfigPropertyValidator(properties).assertSuccess(),{AccessRoleArn:cdk().stringToCloudFormation(properties.accessRoleArn),BedrockKnowledgeBaseArn:cdk().stringToCloudFormation(properties.bedrockKnowledgeBaseArn)}):properties}function CfnAssistantAssociationExternalBedrockKnowledgeBaseConfigPropertyFromCloudFormation(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("accessRoleArn","AccessRoleArn",properties.AccessRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.AccessRoleArn):void 0),ret.addPropertyResult("bedrockKnowledgeBaseArn","BedrockKnowledgeBaseArn",properties.BedrockKnowledgeBaseArn!=null?cfn_parse().FromCloudFormation.getString(properties.BedrockKnowledgeBaseArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssistantAssociationAssociationDataPropertyValidator(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("externalBedrockKnowledgeBaseConfig",CfnAssistantAssociationExternalBedrockKnowledgeBaseConfigPropertyValidator)(properties.externalBedrockKnowledgeBaseConfig)),errors.collect(cdk().propertyValidator("knowledgeBaseId",cdk().validateString)(properties.knowledgeBaseId)),errors.wrap('supplied properties not correct for "AssociationDataProperty"')}function convertCfnAssistantAssociationAssociationDataPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssistantAssociationAssociationDataPropertyValidator(properties).assertSuccess(),{ExternalBedrockKnowledgeBaseConfig:convertCfnAssistantAssociationExternalBedrockKnowledgeBaseConfigPropertyToCloudFormation(properties.externalBedrockKnowledgeBaseConfig),KnowledgeBaseId:cdk().stringToCloudFormation(properties.knowledgeBaseId)}):properties}function CfnAssistantAssociationAssociationDataPropertyFromCloudFormation(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("externalBedrockKnowledgeBaseConfig","ExternalBedrockKnowledgeBaseConfig",properties.ExternalBedrockKnowledgeBaseConfig!=null?CfnAssistantAssociationExternalBedrockKnowledgeBaseConfigPropertyFromCloudFormation(properties.ExternalBedrockKnowledgeBaseConfig):void 0),ret.addPropertyResult("knowledgeBaseId","KnowledgeBaseId",properties.KnowledgeBaseId!=null?cfn_parse().FromCloudFormation.getString(properties.KnowledgeBaseId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssistantAssociationPropsValidator(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("assistantId",cdk().requiredValidator)(properties.assistantId)),errors.collect(cdk().propertyValidator("assistantId",cdk().validateString)(properties.assistantId)),errors.collect(cdk().propertyValidator("association",cdk().requiredValidator)(properties.association)),errors.collect(cdk().propertyValidator("association",CfnAssistantAssociationAssociationDataPropertyValidator)(properties.association)),errors.collect(cdk().propertyValidator("associationType",cdk().requiredValidator)(properties.associationType)),errors.collect(cdk().propertyValidator("associationType",cdk().validateString)(properties.associationType)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnAssistantAssociationProps"')}function convertCfnAssistantAssociationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssistantAssociationPropsValidator(properties).assertSuccess(),{AssistantId:cdk().stringToCloudFormation(properties.assistantId),Association:convertCfnAssistantAssociationAssociationDataPropertyToCloudFormation(properties.association),AssociationType:cdk().stringToCloudFormation(properties.associationType),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnAssistantAssociationPropsFromCloudFormation(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("assistantId","AssistantId",properties.AssistantId!=null?cfn_parse().FromCloudFormation.getString(properties.AssistantId):void 0),ret.addPropertyResult("association","Association",properties.Association!=null?CfnAssistantAssociationAssociationDataPropertyFromCloudFormation(properties.Association):void 0),ret.addPropertyResult("associationType","AssociationType",properties.AssociationType!=null?cfn_parse().FromCloudFormation.getString(properties.AssociationType):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 CfnKnowledgeBase extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnKnowledgeBase",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::KnowledgeBase";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnKnowledgeBasePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnKnowledgeBase(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 isCfnKnowledgeBase(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnKnowledgeBase.CFN_RESOURCE_TYPE_NAME}static fromKnowledgeBaseArn(scope,id,arn){class Import extends cdk().Resource{knowledgeBaseRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:wisdom:${Region}:${Account}:knowledge-base/${KnowledgeBaseId}").parse(arn2);this.knowledgeBaseRef={knowledgeBaseId:variables.KnowledgeBaseId,knowledgeBaseArn:arn2}}}return new Import(scope,id,arn)}static fromKnowledgeBaseId(scope,id,knowledgeBaseId){class Import extends cdk().Resource{knowledgeBaseRef;constructor(scope2,id2,knowledgeBaseId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:wisdom:${Region}:${Account}:knowledge-base/${KnowledgeBaseId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,KnowledgeBaseId:knowledgeBaseId2});super(scope2,id2,{environmentFromArn:arn}),this.knowledgeBaseRef={knowledgeBaseId:knowledgeBaseId2,knowledgeBaseArn:arn}}}return new Import(scope,id,knowledgeBaseId)}static arnForKnowledgeBase(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IKnowledgeBaseRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForKnowledgeBase),error}return resource.knowledgeBaseRef.knowledgeBaseArn}_description;_knowledgeBaseType;_name;_renderingConfiguration;_serverSideEncryptionConfiguration;_sourceConfiguration;tags;_tagsRaw;_vectorIngestionConfiguration;cfnPropertyNames={description:"Description",knowledgeBaseType:"KnowledgeBaseType",name:"Name",renderingConfiguration:"RenderingConfiguration",serverSideEncryptionConfiguration:"ServerSideEncryptionConfiguration",sourceConfiguration:"SourceConfiguration",tags:"Tags",vectorIngestionConfiguration:"VectorIngestionConfiguration"};constructor(scope,id,props){super(scope,id,{type:CfnKnowledgeBase.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnKnowledgeBaseProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnKnowledgeBase),error}cdk().requireProperty(props,"knowledgeBaseType",this),cdk().requireProperty(props,"name",this),this._description=props.description,this._knowledgeBaseType=props.knowledgeBaseType,this._name=props.name,this._renderingConfiguration=props.renderingConfiguration,this._serverSideEncryptionConfiguration=props.serverSideEncryptionConfiguration,this._sourceConfiguration=props.sourceConfiguration,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Wisdom::KnowledgeBase",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._vectorIngestionConfiguration=props.vectorIngestionConfiguration}get knowledgeBaseRef(){return{knowledgeBaseId:this.ref,knowledgeBaseArn:this.attrKnowledgeBaseArn}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get knowledgeBaseType(){return this._knowledgeBaseType}set knowledgeBaseType(value){cdk().traceProperty(this.node,"KnowledgeBaseType"),this._knowledgeBaseType=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get renderingConfiguration(){return this._renderingConfiguration}set renderingConfiguration(value){cdk().traceProperty(this.node,"RenderingConfiguration"),this._renderingConfiguration=value}get serverSideEncryptionConfiguration(){return this._serverSideEncryptionConfiguration}set serverSideEncryptionConfiguration(value){cdk().traceProperty(this.node,"ServerSideEncryptionConfiguration"),this._serverSideEncryptionConfiguration=value}get sourceConfiguration(){return this._sourceConfiguration}set sourceConfiguration(value){cdk().traceProperty(this.node,"SourceConfiguration"),this._sourceConfiguration=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get vectorIngestionConfiguration(){return this._vectorIngestionConfiguration}set vectorIngestionConfiguration(value){cdk().traceProperty(this.node,"VectorIngestionConfiguration"),this._vectorIngestionConfiguration=value}get attrKnowledgeBaseArn(){return cdk().Token.asString(this.getAtt("KnowledgeBaseArn",cdk().ResolutionTypeHint.STRING))}get attrKnowledgeBaseId(){return cdk().Token.asString(this.getAtt("KnowledgeBaseId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{description:this._description,knowledgeBaseType:this._knowledgeBaseType,name:this._name,renderingConfiguration:this._renderingConfiguration,serverSideEncryptionConfiguration:this._serverSideEncryptionConfiguration,sourceConfiguration:this._sourceConfiguration,tags:this.tags.renderTags(),vectorIngestionConfiguration:this._vectorIngestionConfiguration}}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",CfnKnowledgeBase.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnKnowledgeBasePropsToCloudFormation(props)}}exports.CfnKnowledgeBase=CfnKnowledgeBase;function CfnKnowledgeBaseAppIntegrationsConfigurationPropertyValidator(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("appIntegrationArn",cdk().requiredValidator)(properties.appIntegrationArn)),errors.collect(cdk().propertyValidator("appIntegrationArn",cdk().validateString)(properties.appIntegrationArn)),errors.collect(cdk().propertyValidator("objectFields",cdk().listValidator(cdk().validateString))(properties.objectFields)),errors.wrap('supplied properties not correct for "AppIntegrationsConfigurationProperty"')}function convertCfnKnowledgeBaseAppIntegrationsConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseAppIntegrationsConfigurationPropertyValidator(properties).assertSuccess(),{AppIntegrationArn:cdk().stringToCloudFormation(properties.appIntegrationArn),ObjectFields:cdk().listMapper(cdk().stringToCloudFormation)(properties.objectFields)}):properties}function CfnKnowledgeBaseAppIntegrationsConfigurationPropertyFromCloudFormation(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("appIntegrationArn","AppIntegrationArn",properties.AppIntegrationArn!=null?cfn_parse().FromCloudFormation.getString(properties.AppIntegrationArn):void 0),ret.addPropertyResult("objectFields","ObjectFields",properties.ObjectFields!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ObjectFields):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseSeedUrlPropertyValidator(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("url",cdk().validateString)(properties.url)),errors.wrap('supplied properties not correct for "SeedUrlProperty"')}function convertCfnKnowledgeBaseSeedUrlPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseSeedUrlPropertyValidator(properties).assertSuccess(),{Url:cdk().stringToCloudFormation(properties.url)}):properties}function CfnKnowledgeBaseSeedUrlPropertyFromCloudFormation(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("url","Url",properties.Url!=null?cfn_parse().FromCloudFormation.getString(properties.Url):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseUrlConfigurationPropertyValidator(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("seedUrls",cdk().listValidator(CfnKnowledgeBaseSeedUrlPropertyValidator))(properties.seedUrls)),errors.wrap('supplied properties not correct for "UrlConfigurationProperty"')}function convertCfnKnowledgeBaseUrlConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseUrlConfigurationPropertyValidator(properties).assertSuccess(),{SeedUrls:cdk().listMapper(convertCfnKnowledgeBaseSeedUrlPropertyToCloudFormation)(properties.seedUrls)}):properties}function CfnKnowledgeBaseUrlConfigurationPropertyFromCloudFormation(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("seedUrls","SeedUrls",properties.SeedUrls!=null?cfn_parse().FromCloudFormation.getArray(CfnKnowledgeBaseSeedUrlPropertyFromCloudFormation)(properties.SeedUrls):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseCrawlerLimitsPropertyValidator(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("rateLimit",cdk().validateNumber)(properties.rateLimit)),errors.wrap('supplied properties not correct for "CrawlerLimitsProperty"')}function convertCfnKnowledgeBaseCrawlerLimitsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseCrawlerLimitsPropertyValidator(properties).assertSuccess(),{RateLimit:cdk().numberToCloudFormation(properties.rateLimit)}):properties}function CfnKnowledgeBaseCrawlerLimitsPropertyFromCloudFormation(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("rateLimit","RateLimit",properties.RateLimit!=null?cfn_parse().FromCloudFormation.getNumber(properties.RateLimit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseWebCrawlerConfigurationPropertyValidator(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("crawlerLimits",CfnKnowledgeBaseCrawlerLimitsPropertyValidator)(properties.crawlerLimits)),errors.collect(cdk().propertyValidator("exclusionFilters",cdk().listValidator(cdk().validateString))(properties.exclusionFilters)),errors.collect(cdk().propertyValidator("inclusionFilters",cdk().listValidator(cdk().validateString))(properties.inclusionFilters)),errors.collect(cdk().propertyValidator("scope",cdk().validateString)(properties.scope)),errors.collect(cdk().propertyValidator("urlConfiguration",cdk().requiredValidator)(properties.urlConfiguration)),errors.collect(cdk().propertyValidator("urlConfiguration",CfnKnowledgeBaseUrlConfigurationPropertyValidator)(properties.urlConfiguration)),errors.wrap('supplied properties not correct for "WebCrawlerConfigurationProperty"')}function convertCfnKnowledgeBaseWebCrawlerConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseWebCrawlerConfigurationPropertyValidator(properties).assertSuccess(),{CrawlerLimits:convertCfnKnowledgeBaseCrawlerLimitsPropertyToCloudFormation(properties.crawlerLimits),ExclusionFilters:cdk().listMapper(cdk().stringToCloudFormation)(properties.exclusionFilters),InclusionFilters:cdk().listMapper(cdk().stringToCloudFormation)(properties.inclusionFilters),Scope:cdk().stringToCloudFormation(properties.scope),UrlConfiguration:convertCfnKnowledgeBaseUrlConfigurationPropertyToCloudFormation(properties.urlConfiguration)}):properties}function CfnKnowledgeBaseWebCrawlerConfigurationPropertyFromCloudFormation(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("crawlerLimits","CrawlerLimits",properties.CrawlerLimits!=null?CfnKnowledgeBaseCrawlerLimitsPropertyFromCloudFormation(properties.CrawlerLimits):void 0),ret.addPropertyResult("exclusionFilters","ExclusionFilters",properties.ExclusionFilters!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ExclusionFilters):void 0),ret.addPropertyResult("inclusionFilters","InclusionFilters",properties.InclusionFilters!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.InclusionFilters):void 0),ret.addPropertyResult("scope","Scope",properties.Scope!=null?cfn_parse().FromCloudFormation.getString(properties.Scope):void 0),ret.addPropertyResult("urlConfiguration","UrlConfiguration",properties.UrlConfiguration!=null?CfnKnowledgeBaseUrlConfigurationPropertyFromCloudFormation(properties.UrlConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseManagedSourceConfigurationPropertyValidator(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("webCrawlerConfiguration",cdk().requiredValidator)(properties.webCrawlerConfiguration)),errors.collect(cdk().propertyValidator("webCrawlerConfiguration",CfnKnowledgeBaseWebCrawlerConfigurationPropertyValidator)(properties.webCrawlerConfiguration)),errors.wrap('supplied properties not correct for "ManagedSourceConfigurationProperty"')}function convertCfnKnowledgeBaseManagedSourceConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseManagedSourceConfigurationPropertyValidator(properties).assertSuccess(),{WebCrawlerConfiguration:convertCfnKnowledgeBaseWebCrawlerConfigurationPropertyToCloudFormation(properties.webCrawlerConfiguration)}):properties}function CfnKnowledgeBaseManagedSourceConfigurationPropertyFromCloudFormation(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("webCrawlerConfiguration","WebCrawlerConfiguration",properties.WebCrawlerConfiguration!=null?CfnKnowledgeBaseWebCrawlerConfigurationPropertyFromCloudFormation(properties.WebCrawlerConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseSourceConfigurationPropertyValidator(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("appIntegrations",CfnKnowledgeBaseAppIntegrationsConfigurationPropertyValidator)(properties.appIntegrations)),errors.collect(cdk().propertyValidator("managedSourceConfiguration",CfnKnowledgeBaseManagedSourceConfigurationPropertyValidator)(properties.managedSourceConfiguration)),errors.wrap('supplied properties not correct for "SourceConfigurationProperty"')}function convertCfnKnowledgeBaseSourceConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseSourceConfigurationPropertyValidator(properties).assertSuccess(),{AppIntegrations:convertCfnKnowledgeBaseAppIntegrationsConfigurationPropertyToCloudFormation(properties.appIntegrations),ManagedSourceConfiguration:convertCfnKnowledgeBaseManagedSourceConfigurationPropertyToCloudFormation(properties.managedSourceConfiguration)}):properties}function CfnKnowledgeBaseSourceConfigurationPropertyFromCloudFormation(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("appIntegrations","AppIntegrations",properties.AppIntegrations!=null?CfnKnowledgeBaseAppIntegrationsConfigurationPropertyFromCloudFormation(properties.AppIntegrations):void 0),ret.addPropertyResult("managedSourceConfiguration","ManagedSourceConfiguration",properties.ManagedSourceConfiguration!=null?CfnKnowledgeBaseManagedSourceConfigurationPropertyFromCloudFormation(properties.ManagedSourceConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseServerSideEncryptionConfigurationPropertyValidator(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("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.wrap('supplied properties not correct for "ServerSideEncryptionConfigurationProperty"')}function convertCfnKnowledgeBaseServerSideEncryptionConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseServerSideEncryptionConfigurationPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId)}):properties}function CfnKnowledgeBaseServerSideEncryptionConfigurationPropertyFromCloudFormation(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("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseRenderingConfigurationPropertyValidator(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("templateUri",cdk().validateString)(properties.templateUri)),errors.wrap('supplied properties not correct for "RenderingConfigurationProperty"')}function convertCfnKnowledgeBaseRenderingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseRenderingConfigurationPropertyValidator(properties).assertSuccess(),{TemplateUri:cdk().stringToCloudFormation(properties.templateUri)}):properties}function CfnKnowledgeBaseRenderingConfigurationPropertyFromCloudFormation(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("templateUri","TemplateUri",properties.TemplateUri!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseFixedSizeChunkingConfigurationPropertyValidator(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("maxTokens",cdk().requiredValidator)(properties.maxTokens)),errors.collect(cdk().propertyValidator("maxTokens",cdk().validateNumber)(properties.maxTokens)),errors.collect(cdk().propertyValidator("overlapPercentage",cdk().requiredValidator)(properties.overlapPercentage)),errors.collect(cdk().propertyValidator("overlapPercentage",cdk().validateNumber)(properties.overlapPercentage)),errors.wrap('supplied properties not correct for "FixedSizeChunkingConfigurationProperty"')}function convertCfnKnowledgeBaseFixedSizeChunkingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseFixedSizeChunkingConfigurationPropertyValidator(properties).assertSuccess(),{MaxTokens:cdk().numberToCloudFormation(properties.maxTokens),OverlapPercentage:cdk().numberToCloudFormation(properties.overlapPercentage)}):properties}function CfnKnowledgeBaseFixedSizeChunkingConfigurationPropertyFromCloudFormation(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("maxTokens","MaxTokens",properties.MaxTokens!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxTokens):void 0),ret.addPropertyResult("overlapPercentage","OverlapPercentage",properties.OverlapPercentage!=null?cfn_parse().FromCloudFormation.getNumber(properties.OverlapPercentage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseHierarchicalChunkingLevelConfigurationPropertyValidator(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("maxTokens",cdk().requiredValidator)(properties.maxTokens)),errors.collect(cdk().propertyValidator("maxTokens",cdk().validateNumber)(properties.maxTokens)),errors.wrap('supplied properties not correct for "HierarchicalChunkingLevelConfigurationProperty"')}function convertCfnKnowledgeBaseHierarchicalChunkingLevelConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseHierarchicalChunkingLevelConfigurationPropertyValidator(properties).assertSuccess(),{MaxTokens:cdk().numberToCloudFormation(properties.maxTokens)}):properties}function CfnKnowledgeBaseHierarchicalChunkingLevelConfigurationPropertyFromCloudFormation(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("maxTokens","MaxTokens",properties.MaxTokens!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxTokens):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseHierarchicalChunkingConfigurationPropertyValidator(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("levelConfigurations",cdk().requiredValidator)(properties.levelConfigurations)),errors.collect(cdk().propertyValidator("levelConfigurations",cdk().listValidator(CfnKnowledgeBaseHierarchicalChunkingLevelConfigurationPropertyValidator))(properties.levelConfigurations)),errors.collect(cdk().propertyValidator("overlapTokens",cdk().requiredValidator)(properties.overlapTokens)),errors.collect(cdk().propertyValidator("overlapTokens",cdk().validateNumber)(properties.overlapTokens)),errors.wrap('supplied properties not correct for "HierarchicalChunkingConfigurationProperty"')}function convertCfnKnowledgeBaseHierarchicalChunkingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseHierarchicalChunkingConfigurationPropertyValidator(properties).assertSuccess(),{LevelConfigurations:cdk().listMapper(convertCfnKnowledgeBaseHierarchicalChunkingLevelConfigurationPropertyToCloudFormation)(properties.levelConfigurations),OverlapTokens:cdk().numberToCloudFormation(properties.overlapTokens)}):properties}function CfnKnowledgeBaseHierarchicalChunkingConfigurationPropertyFromCloudFormation(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("levelConfigurations","LevelConfigurations",properties.LevelConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnKnowledgeBaseHierarchicalChunkingLevelConfigurationPropertyFromCloudFormation)(properties.LevelConfigurations):void 0),ret.addPropertyResult("overlapTokens","OverlapTokens",properties.OverlapTokens!=null?cfn_parse().FromCloudFormation.getNumber(properties.OverlapTokens):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseSemanticChunkingConfigurationPropertyValidator(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("breakpointPercentileThreshold",cdk().requiredValidator)(properties.breakpointPercentileThreshold)),errors.collect(cdk().propertyValidator("breakpointPercentileThreshold",cdk().validateNumber)(properties.breakpointPercentileThreshold)),errors.collect(cdk().propertyValidator("bufferSize",cdk().requiredValidator)(properties.bufferSize)),errors.collect(cdk().propertyValidator("bufferSize",cdk().validateNumber)(properties.bufferSize)),errors.collect(cdk().propertyValidator("maxTokens",cdk().requiredValidator)(properties.maxTokens)),errors.collect(cdk().propertyValidator("maxTokens",cdk().validateNumber)(properties.maxTokens)),errors.wrap('supplied properties not correct for "SemanticChunkingConfigurationProperty"')}function convertCfnKnowledgeBaseSemanticChunkingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseSemanticChunkingConfigurationPropertyValidator(properties).assertSuccess(),{BreakpointPercentileThreshold:cdk().numberToCloudFormation(properties.breakpointPercentileThreshold),BufferSize:cdk().numberToCloudFormation(properties.bufferSize),MaxTokens:cdk().numberToCloudFormation(properties.maxTokens)}):properties}function CfnKnowledgeBaseSemanticChunkingConfigurationPropertyFromCloudFormation(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("breakpointPercentileThreshold","BreakpointPercentileThreshold",properties.BreakpointPercentileThreshold!=null?cfn_parse().FromCloudFormation.getNumber(properties.BreakpointPercentileThreshold):void 0),ret.addPropertyResult("bufferSize","BufferSize",properties.BufferSize!=null?cfn_parse().FromCloudFormation.getNumber(properties.BufferSize):void 0),ret.addPropertyResult("maxTokens","MaxTokens",properties.MaxTokens!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxTokens):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseChunkingConfigurationPropertyValidator(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("chunkingStrategy",cdk().requiredValidator)(properties.chunkingStrategy)),errors.collect(cdk().propertyValidator("chunkingStrategy",cdk().validateString)(properties.chunkingStrategy)),errors.collect(cdk().propertyValidator("fixedSizeChunkingConfiguration",CfnKnowledgeBaseFixedSizeChunkingConfigurationPropertyValidator)(properties.fixedSizeChunkingConfiguration)),errors.collect(cdk().propertyValidator("hierarchicalChunkingConfiguration",CfnKnowledgeBaseHierarchicalChunkingConfigurationPropertyValidator)(properties.hierarchicalChunkingConfiguration)),errors.collect(cdk().propertyValidator("semanticChunkingConfiguration",CfnKnowledgeBaseSemanticChunkingConfigurationPropertyValidator)(properties.semanticChunkingConfiguration)),errors.wrap('supplied properties not correct for "ChunkingConfigurationProperty"')}function convertCfnKnowledgeBaseChunkingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseChunkingConfigurationPropertyValidator(properties).assertSuccess(),{ChunkingStrategy:cdk().stringToCloudFormation(properties.chunkingStrategy),FixedSizeChunkingConfiguration:convertCfnKnowledgeBaseFixedSizeChunkingConfigurationPropertyToCloudFormation(properties.fixedSizeChunkingConfiguration),HierarchicalChunkingConfiguration:convertCfnKnowledgeBaseHierarchicalChunkingConfigurationPropertyToCloudFormation(properties.hierarchicalChunkingConfiguration),SemanticChunkingConfiguration:convertCfnKnowledgeBaseSemanticChunkingConfigurationPropertyToCloudFormation(properties.semanticChunkingConfiguration)}):properties}function CfnKnowledgeBaseChunkingConfigurationPropertyFromCloudFormation(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("chunkingStrategy","ChunkingStrategy",properties.ChunkingStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.ChunkingStrategy):void 0),ret.addPropertyResult("fixedSizeChunkingConfiguration","FixedSizeChunkingConfiguration",properties.FixedSizeChunkingConfiguration!=null?CfnKnowledgeBaseFixedSizeChunkingConfigurationPropertyFromCloudFormation(properties.FixedSizeChunkingConfiguration):void 0),ret.addPropertyResult("hierarchicalChunkingConfiguration","HierarchicalChunkingConfiguration",properties.HierarchicalChunkingConfiguration!=null?CfnKnowledgeBaseHierarchicalChunkingConfigurationPropertyFromCloudFormation(properties.HierarchicalChunkingConfiguration):void 0),ret.addPropertyResult("semanticChunkingConfiguration","SemanticChunkingConfiguration",properties.SemanticChunkingConfiguration!=null?CfnKnowledgeBaseSemanticChunkingConfigurationPropertyFromCloudFormation(properties.SemanticChunkingConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseParsingPromptPropertyValidator(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("parsingPromptText",cdk().requiredValidator)(properties.parsingPromptText)),errors.collect(cdk().propertyValidator("parsingPromptText",cdk().validateString)(properties.parsingPromptText)),errors.wrap('supplied properties not correct for "ParsingPromptProperty"')}function convertCfnKnowledgeBaseParsingPromptPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseParsingPromptPropertyValidator(properties).assertSuccess(),{ParsingPromptText:cdk().stringToCloudFormation(properties.parsingPromptText)}):properties}function CfnKnowledgeBaseParsingPromptPropertyFromCloudFormation(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("parsingPromptText","ParsingPromptText",properties.ParsingPromptText!=null?cfn_parse().FromCloudFormation.getString(properties.ParsingPromptText):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseBedrockFoundationModelConfigurationPropertyValidator(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("modelArn",cdk().requiredValidator)(properties.modelArn)),errors.collect(cdk().propertyValidator("modelArn",cdk().validateString)(properties.modelArn)),errors.collect(cdk().propertyValidator("parsingPrompt",CfnKnowledgeBaseParsingPromptPropertyValidator)(properties.parsingPrompt)),errors.wrap('supplied properties not correct for "BedrockFoundationModelConfigurationProperty"')}function convertCfnKnowledgeBaseBedrockFoundationModelConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseBedrockFoundationModelConfigurationPropertyValidator(properties).assertSuccess(),{ModelArn:cdk().stringToCloudFormation(properties.modelArn),ParsingPrompt:convertCfnKnowledgeBaseParsingPromptPropertyToCloudFormation(properties.parsingPrompt)}):properties}function CfnKnowledgeBaseBedrockFoundationModelConfigurationPropertyFromCloudFormation(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("modelArn","ModelArn",properties.ModelArn!=null?cfn_parse().FromCloudFormation.getString(properties.ModelArn):void 0),ret.addPropertyResult("parsingPrompt","ParsingPrompt",properties.ParsingPrompt!=null?CfnKnowledgeBaseParsingPromptPropertyFromCloudFormation(properties.ParsingPrompt):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseParsingConfigurationPropertyValidator(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("bedrockFoundationModelConfiguration",CfnKnowledgeBaseBedrockFoundationModelConfigurationPropertyValidator)(properties.bedrockFoundationModelConfiguration)),errors.collect(cdk().propertyValidator("parsingStrategy",cdk().requiredValidator)(properties.parsingStrategy)),errors.collect(cdk().propertyValidator("parsingStrategy",cdk().validateString)(properties.parsingStrategy)),errors.wrap('supplied properties not correct for "ParsingConfigurationProperty"')}function convertCfnKnowledgeBaseParsingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseParsingConfigurationPropertyValidator(properties).assertSuccess(),{BedrockFoundationModelConfiguration:convertCfnKnowledgeBaseBedrockFoundationModelConfigurationPropertyToCloudFormation(properties.bedrockFoundationModelConfiguration),ParsingStrategy:cdk().stringToCloudFormation(properties.parsingStrategy)}):properties}function CfnKnowledgeBaseParsingConfigurationPropertyFromCloudFormation(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("bedrockFoundationModelConfiguration","BedrockFoundationModelConfiguration",properties.BedrockFoundationModelConfiguration!=null?CfnKnowledgeBaseBedrockFoundationModelConfigurationPropertyFromCloudFormation(properties.BedrockFoundationModelConfiguration):void 0),ret.addPropertyResult("parsingStrategy","ParsingStrategy",properties.ParsingStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.ParsingStrategy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBaseVectorIngestionConfigurationPropertyValidator(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("chunkingConfiguration",CfnKnowledgeBaseChunkingConfigurationPropertyValidator)(properties.chunkingConfiguration)),errors.collect(cdk().propertyValidator("parsingConfiguration",CfnKnowledgeBaseParsingConfigurationPropertyValidator)(properties.parsingConfiguration)),errors.wrap('supplied properties not correct for "VectorIngestionConfigurationProperty"')}function convertCfnKnowledgeBaseVectorIngestionConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBaseVectorIngestionConfigurationPropertyValidator(properties).assertSuccess(),{ChunkingConfiguration:convertCfnKnowledgeBaseChunkingConfigurationPropertyToCloudFormation(properties.chunkingConfiguration),ParsingConfiguration:convertCfnKnowledgeBaseParsingConfigurationPropertyToCloudFormation(properties.parsingConfiguration)}):properties}function CfnKnowledgeBaseVectorIngestionConfigurationPropertyFromCloudFormation(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("chunkingConfiguration","ChunkingConfiguration",properties.ChunkingConfiguration!=null?CfnKnowledgeBaseChunkingConfigurationPropertyFromCloudFormation(properties.ChunkingConfiguration):void 0),ret.addPropertyResult("parsingConfiguration","ParsingConfiguration",properties.ParsingConfiguration!=null?CfnKnowledgeBaseParsingConfigurationPropertyFromCloudFormation(properties.ParsingConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnKnowledgeBasePropsValidator(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("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("knowledgeBaseType",cdk().requiredValidator)(properties.knowledgeBaseType)),errors.collect(cdk().propertyValidator("knowledgeBaseType",cdk().validateString)(properties.knowledgeBaseType)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("renderingConfiguration",CfnKnowledgeBaseRenderingConfigurationPropertyValidator)(properties.renderingConfiguration)),errors.collect(cdk().propertyValidator("serverSideEncryptionConfiguration",CfnKnowledgeBaseServerSideEncryptionConfigurationPropertyValidator)(properties.serverSideEncryptionConfiguration)),errors.collect(cdk().propertyValidator("sourceConfiguration",CfnKnowledgeBaseSourceConfigurationPropertyValidator)(properties.sourceConfiguration)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("vectorIngestionConfiguration",CfnKnowledgeBaseVectorIngestionConfigurationPropertyValidator)(properties.vectorIngestionConfiguration)),errors.wrap('supplied properties not correct for "CfnKnowledgeBaseProps"')}function convertCfnKnowledgeBasePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnKnowledgeBasePropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),KnowledgeBaseType:cdk().stringToCloudFormation(properties.knowledgeBaseType),Name:cdk().stringToCloudFormation(properties.name),RenderingConfiguration:convertCfnKnowledgeBaseRenderingConfigurationPropertyToCloudFormation(properties.renderingConfiguration),ServerSideEncryptionConfiguration:convertCfnKnowledgeBaseServerSideEncryptionConfigurationPropertyToCloudFormation(properties.serverSideEncryptionConfiguration),SourceConfiguration:convertCfnKnowledgeBaseSourceConfigurationPropertyToCloudFormation(properties.sourceConfiguration),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VectorIngestionConfiguration:convertCfnKnowledgeBaseVectorIngestionConfigurationPropertyToCloudFormation(properties.vectorIngestionConfiguration)}):properties}function CfnKnowledgeBasePropsFromCloudFormation(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("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("knowledgeBaseType","KnowledgeBaseType",properties.KnowledgeBaseType!=null?cfn_parse().FromCloudFormation.getString(properties.KnowledgeBaseType):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("renderingConfiguration","RenderingConfiguration",properties.RenderingConfiguration!=null?CfnKnowledgeBaseRenderingConfigurationPropertyFromCloudFormation(properties.RenderingConfiguration):void 0),ret.addPropertyResult("serverSideEncryptionConfiguration","ServerSideEncryptionConfiguration",properties.ServerSideEncryptionConfiguration!=null?CfnKnowledgeBaseServerSideEncryptionConfigurationPropertyFromCloudFormation(properties.ServerSideEncryptionConfiguration):void 0),ret.addPropertyResult("sourceConfiguration","SourceConfiguration",properties.SourceConfiguration!=null?CfnKnowledgeBaseSourceConfigurationPropertyFromCloudFormation(properties.SourceConfiguration):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vectorIngestionConfiguration","VectorIngestionConfiguration",properties.VectorIngestionConfiguration!=null?CfnKnowledgeBaseVectorIngestionConfigurationPropertyFromCloudFormation(properties.VectorIngestionConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAIAgent extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAIAgent",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::AIAgent";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAIAgentPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAIAgent(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 isCfnAIAgent(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAIAgent.CFN_RESOURCE_TYPE_NAME}static arnForAIAgent(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IAIAgentRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAIAgent),error}return resource.aiAgentRef.aiAgentArn}_assistantId;cdkTagManager;_configuration;_description;_name;_tags;_type;cfnPropertyNames={assistantId:"AssistantId",tags:"Tags",configuration:"Configuration",description:"Description",name:"Name",type:"Type"};constructor(scope,id,props){super(scope,id,{type:CfnAIAgent.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAIAgentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAIAgent),error}cdk().requireProperty(props,"assistantId",this),cdk().requireProperty(props,"configuration",this),cdk().requireProperty(props,"type",this),this._assistantId=props.assistantId,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Wisdom::AIAgent",void 0,{tagPropertyName:"tags"}),this._configuration=props.configuration,this._description=props.description,this._name=props.name,this._tags=props.tags,this._type=props.type}get aiAgentRef(){return{aiAgentId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),assistantId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),aiAgentArn:this.attrAiAgentArn}}get assistantId(){return this._assistantId}set assistantId(value){cdk().traceProperty(this.node,"AssistantId"),this._assistantId=value}get configuration(){return this._configuration}set configuration(value){cdk().traceProperty(this.node,"Configuration"),this._configuration=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get type(){return this._type}set type(value){cdk().traceProperty(this.node,"Type"),this._type=value}get attrAiAgentArn(){return cdk().Token.asString(this.getAtt("AIAgentArn",cdk().ResolutionTypeHint.STRING))}get attrAiAgentId(){return cdk().Token.asString(this.getAtt("AIAgentId",cdk().ResolutionTypeHint.STRING))}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get attrModifiedTimeSeconds(){return this.getAtt("ModifiedTimeSeconds",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{assistantId:this._assistantId,tags:this.cdkTagManager.renderTags(this._tags),configuration:this._configuration,description:this._description,name:this._name,type:this._type}}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",CfnAIAgent.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAIAgentPropsToCloudFormation(props)}}exports.CfnAIAgent=CfnAIAgent;function CfnAIAgentTagConditionPropertyValidator(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("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "TagConditionProperty"')}function convertCfnAIAgentTagConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentTagConditionPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnAIAgentTagConditionPropertyFromCloudFormation(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("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentOrConditionPropertyValidator(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("andConditions",cdk().listValidator(CfnAIAgentTagConditionPropertyValidator))(properties.andConditions)),errors.collect(cdk().propertyValidator("tagCondition",CfnAIAgentTagConditionPropertyValidator)(properties.tagCondition)),errors.wrap('supplied properties not correct for "OrConditionProperty"')}function convertCfnAIAgentOrConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentOrConditionPropertyValidator(properties).assertSuccess(),{AndConditions:cdk().listMapper(convertCfnAIAgentTagConditionPropertyToCloudFormation)(properties.andConditions),TagCondition:convertCfnAIAgentTagConditionPropertyToCloudFormation(properties.tagCondition)}):properties}function CfnAIAgentOrConditionPropertyFromCloudFormation(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("andConditions","AndConditions",properties.AndConditions!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentTagConditionPropertyFromCloudFormation)(properties.AndConditions):void 0),ret.addPropertyResult("tagCondition","TagCondition",properties.TagCondition!=null?CfnAIAgentTagConditionPropertyFromCloudFormation(properties.TagCondition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentTagFilterPropertyValidator(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("andConditions",cdk().listValidator(CfnAIAgentTagConditionPropertyValidator))(properties.andConditions)),errors.collect(cdk().propertyValidator("orConditions",cdk().listValidator(CfnAIAgentOrConditionPropertyValidator))(properties.orConditions)),errors.collect(cdk().propertyValidator("tagCondition",CfnAIAgentTagConditionPropertyValidator)(properties.tagCondition)),errors.wrap('supplied properties not correct for "TagFilterProperty"')}function convertCfnAIAgentTagFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentTagFilterPropertyValidator(properties).assertSuccess(),{AndConditions:cdk().listMapper(convertCfnAIAgentTagConditionPropertyToCloudFormation)(properties.andConditions),OrConditions:cdk().listMapper(convertCfnAIAgentOrConditionPropertyToCloudFormation)(properties.orConditions),TagCondition:convertCfnAIAgentTagConditionPropertyToCloudFormation(properties.tagCondition)}):properties}function CfnAIAgentTagFilterPropertyFromCloudFormation(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("andConditions","AndConditions",properties.AndConditions!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentTagConditionPropertyFromCloudFormation)(properties.AndConditions):void 0),ret.addPropertyResult("orConditions","OrConditions",properties.OrConditions!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentOrConditionPropertyFromCloudFormation)(properties.OrConditions):void 0),ret.addPropertyResult("tagCondition","TagCondition",properties.TagCondition!=null?CfnAIAgentTagConditionPropertyFromCloudFormation(properties.TagCondition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentKnowledgeBaseAssociationConfigurationDataPropertyValidator(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("contentTagFilter",CfnAIAgentTagFilterPropertyValidator)(properties.contentTagFilter)),errors.collect(cdk().propertyValidator("maxResults",cdk().validateNumber)(properties.maxResults)),errors.collect(cdk().propertyValidator("overrideKnowledgeBaseSearchType",cdk().validateString)(properties.overrideKnowledgeBaseSearchType)),errors.wrap('supplied properties not correct for "KnowledgeBaseAssociationConfigurationDataProperty"')}function convertCfnAIAgentKnowledgeBaseAssociationConfigurationDataPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentKnowledgeBaseAssociationConfigurationDataPropertyValidator(properties).assertSuccess(),{ContentTagFilter:convertCfnAIAgentTagFilterPropertyToCloudFormation(properties.contentTagFilter),MaxResults:cdk().numberToCloudFormation(properties.maxResults),OverrideKnowledgeBaseSearchType:cdk().stringToCloudFormation(properties.overrideKnowledgeBaseSearchType)}):properties}function CfnAIAgentKnowledgeBaseAssociationConfigurationDataPropertyFromCloudFormation(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("contentTagFilter","ContentTagFilter",properties.ContentTagFilter!=null?CfnAIAgentTagFilterPropertyFromCloudFormation(properties.ContentTagFilter):void 0),ret.addPropertyResult("maxResults","MaxResults",properties.MaxResults!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxResults):void 0),ret.addPropertyResult("overrideKnowledgeBaseSearchType","OverrideKnowledgeBaseSearchType",properties.OverrideKnowledgeBaseSearchType!=null?cfn_parse().FromCloudFormation.getString(properties.OverrideKnowledgeBaseSearchType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentAssociationConfigurationDataPropertyValidator(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("knowledgeBaseAssociationConfigurationData",cdk().requiredValidator)(properties.knowledgeBaseAssociationConfigurationData)),errors.collect(cdk().propertyValidator("knowledgeBaseAssociationConfigurationData",CfnAIAgentKnowledgeBaseAssociationConfigurationDataPropertyValidator)(properties.knowledgeBaseAssociationConfigurationData)),errors.wrap('supplied properties not correct for "AssociationConfigurationDataProperty"')}function convertCfnAIAgentAssociationConfigurationDataPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentAssociationConfigurationDataPropertyValidator(properties).assertSuccess(),{KnowledgeBaseAssociationConfigurationData:convertCfnAIAgentKnowledgeBaseAssociationConfigurationDataPropertyToCloudFormation(properties.knowledgeBaseAssociationConfigurationData)}):properties}function CfnAIAgentAssociationConfigurationDataPropertyFromCloudFormation(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("knowledgeBaseAssociationConfigurationData","KnowledgeBaseAssociationConfigurationData",properties.KnowledgeBaseAssociationConfigurationData!=null?CfnAIAgentKnowledgeBaseAssociationConfigurationDataPropertyFromCloudFormation(properties.KnowledgeBaseAssociationConfigurationData):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentAssociationConfigurationPropertyValidator(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("associationConfigurationData",CfnAIAgentAssociationConfigurationDataPropertyValidator)(properties.associationConfigurationData)),errors.collect(cdk().propertyValidator("associationId",cdk().validateString)(properties.associationId)),errors.collect(cdk().propertyValidator("associationType",cdk().validateString)(properties.associationType)),errors.wrap('supplied properties not correct for "AssociationConfigurationProperty"')}function convertCfnAIAgentAssociationConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentAssociationConfigurationPropertyValidator(properties).assertSuccess(),{AssociationConfigurationData:convertCfnAIAgentAssociationConfigurationDataPropertyToCloudFormation(properties.associationConfigurationData),AssociationId:cdk().stringToCloudFormation(properties.associationId),AssociationType:cdk().stringToCloudFormation(properties.associationType)}):properties}function CfnAIAgentAssociationConfigurationPropertyFromCloudFormation(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("associationConfigurationData","AssociationConfigurationData",properties.AssociationConfigurationData!=null?CfnAIAgentAssociationConfigurationDataPropertyFromCloudFormation(properties.AssociationConfigurationData):void 0),ret.addPropertyResult("associationId","AssociationId",properties.AssociationId!=null?cfn_parse().FromCloudFormation.getString(properties.AssociationId):void 0),ret.addPropertyResult("associationType","AssociationType",properties.AssociationType!=null?cfn_parse().FromCloudFormation.getString(properties.AssociationType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentManualSearchAIAgentConfigurationPropertyValidator(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("answerGenerationAiGuardrailId",cdk().validateString)(properties.answerGenerationAiGuardrailId)),errors.collect(cdk().propertyValidator("answerGenerationAiPromptId",cdk().validateString)(properties.answerGenerationAiPromptId)),errors.collect(cdk().propertyValidator("associationConfigurations",cdk().listValidator(CfnAIAgentAssociationConfigurationPropertyValidator))(properties.associationConfigurations)),errors.collect(cdk().propertyValidator("locale",cdk().validateString)(properties.locale)),errors.wrap('supplied properties not correct for "ManualSearchAIAgentConfigurationProperty"')}function convertCfnAIAgentManualSearchAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentManualSearchAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{AnswerGenerationAIGuardrailId:cdk().stringToCloudFormation(properties.answerGenerationAiGuardrailId),AnswerGenerationAIPromptId:cdk().stringToCloudFormation(properties.answerGenerationAiPromptId),AssociationConfigurations:cdk().listMapper(convertCfnAIAgentAssociationConfigurationPropertyToCloudFormation)(properties.associationConfigurations),Locale:cdk().stringToCloudFormation(properties.locale)}):properties}function CfnAIAgentManualSearchAIAgentConfigurationPropertyFromCloudFormation(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("answerGenerationAiGuardrailId","AnswerGenerationAIGuardrailId",properties.AnswerGenerationAIGuardrailId!=null?cfn_parse().FromCloudFormation.getString(properties.AnswerGenerationAIGuardrailId):void 0),ret.addPropertyResult("answerGenerationAiPromptId","AnswerGenerationAIPromptId",properties.AnswerGenerationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.AnswerGenerationAIPromptId):void 0),ret.addPropertyResult("associationConfigurations","AssociationConfigurations",properties.AssociationConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentAssociationConfigurationPropertyFromCloudFormation)(properties.AssociationConfigurations):void 0),ret.addPropertyResult("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentAnswerRecommendationAIAgentConfigurationPropertyValidator(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("answerGenerationAiGuardrailId",cdk().validateString)(properties.answerGenerationAiGuardrailId)),errors.collect(cdk().propertyValidator("answerGenerationAiPromptId",cdk().validateString)(properties.answerGenerationAiPromptId)),errors.collect(cdk().propertyValidator("associationConfigurations",cdk().listValidator(CfnAIAgentAssociationConfigurationPropertyValidator))(properties.associationConfigurations)),errors.collect(cdk().propertyValidator("intentLabelingGenerationAiPromptId",cdk().validateString)(properties.intentLabelingGenerationAiPromptId)),errors.collect(cdk().propertyValidator("locale",cdk().validateString)(properties.locale)),errors.collect(cdk().propertyValidator("queryReformulationAiPromptId",cdk().validateString)(properties.queryReformulationAiPromptId)),errors.wrap('supplied properties not correct for "AnswerRecommendationAIAgentConfigurationProperty"')}function convertCfnAIAgentAnswerRecommendationAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentAnswerRecommendationAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{AnswerGenerationAIGuardrailId:cdk().stringToCloudFormation(properties.answerGenerationAiGuardrailId),AnswerGenerationAIPromptId:cdk().stringToCloudFormation(properties.answerGenerationAiPromptId),AssociationConfigurations:cdk().listMapper(convertCfnAIAgentAssociationConfigurationPropertyToCloudFormation)(properties.associationConfigurations),IntentLabelingGenerationAIPromptId:cdk().stringToCloudFormation(properties.intentLabelingGenerationAiPromptId),Locale:cdk().stringToCloudFormation(properties.locale),QueryReformulationAIPromptId:cdk().stringToCloudFormation(properties.queryReformulationAiPromptId)}):properties}function CfnAIAgentAnswerRecommendationAIAgentConfigurationPropertyFromCloudFormation(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("answerGenerationAiGuardrailId","AnswerGenerationAIGuardrailId",properties.AnswerGenerationAIGuardrailId!=null?cfn_parse().FromCloudFormation.getString(properties.AnswerGenerationAIGuardrailId):void 0),ret.addPropertyResult("answerGenerationAiPromptId","AnswerGenerationAIPromptId",properties.AnswerGenerationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.AnswerGenerationAIPromptId):void 0),ret.addPropertyResult("associationConfigurations","AssociationConfigurations",properties.AssociationConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentAssociationConfigurationPropertyFromCloudFormation)(properties.AssociationConfigurations):void 0),ret.addPropertyResult("intentLabelingGenerationAiPromptId","IntentLabelingGenerationAIPromptId",properties.IntentLabelingGenerationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.IntentLabelingGenerationAIPromptId):void 0),ret.addPropertyResult("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addPropertyResult("queryReformulationAiPromptId","QueryReformulationAIPromptId",properties.QueryReformulationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.QueryReformulationAIPromptId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentSelfServiceAIAgentConfigurationPropertyValidator(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("associationConfigurations",cdk().listValidator(CfnAIAgentAssociationConfigurationPropertyValidator))(properties.associationConfigurations)),errors.collect(cdk().propertyValidator("selfServiceAiGuardrailId",cdk().validateString)(properties.selfServiceAiGuardrailId)),errors.collect(cdk().propertyValidator("selfServiceAnswerGenerationAiPromptId",cdk().validateString)(properties.selfServiceAnswerGenerationAiPromptId)),errors.collect(cdk().propertyValidator("selfServicePreProcessingAiPromptId",cdk().validateString)(properties.selfServicePreProcessingAiPromptId)),errors.wrap('supplied properties not correct for "SelfServiceAIAgentConfigurationProperty"')}function convertCfnAIAgentSelfServiceAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentSelfServiceAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{AssociationConfigurations:cdk().listMapper(convertCfnAIAgentAssociationConfigurationPropertyToCloudFormation)(properties.associationConfigurations),SelfServiceAIGuardrailId:cdk().stringToCloudFormation(properties.selfServiceAiGuardrailId),SelfServiceAnswerGenerationAIPromptId:cdk().stringToCloudFormation(properties.selfServiceAnswerGenerationAiPromptId),SelfServicePreProcessingAIPromptId:cdk().stringToCloudFormation(properties.selfServicePreProcessingAiPromptId)}):properties}function CfnAIAgentSelfServiceAIAgentConfigurationPropertyFromCloudFormation(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("associationConfigurations","AssociationConfigurations",properties.AssociationConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentAssociationConfigurationPropertyFromCloudFormation)(properties.AssociationConfigurations):void 0),ret.addPropertyResult("selfServiceAiGuardrailId","SelfServiceAIGuardrailId",properties.SelfServiceAIGuardrailId!=null?cfn_parse().FromCloudFormation.getString(properties.SelfServiceAIGuardrailId):void 0),ret.addPropertyResult("selfServiceAnswerGenerationAiPromptId","SelfServiceAnswerGenerationAIPromptId",properties.SelfServiceAnswerGenerationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.SelfServiceAnswerGenerationAIPromptId):void 0),ret.addPropertyResult("selfServicePreProcessingAiPromptId","SelfServicePreProcessingAIPromptId",properties.SelfServicePreProcessingAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.SelfServicePreProcessingAIPromptId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentEmailResponseAIAgentConfigurationPropertyValidator(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("associationConfigurations",cdk().listValidator(CfnAIAgentAssociationConfigurationPropertyValidator))(properties.associationConfigurations)),errors.collect(cdk().propertyValidator("emailQueryReformulationAiPromptId",cdk().validateString)(properties.emailQueryReformulationAiPromptId)),errors.collect(cdk().propertyValidator("emailResponseAiPromptId",cdk().validateString)(properties.emailResponseAiPromptId)),errors.collect(cdk().propertyValidator("locale",cdk().validateString)(properties.locale)),errors.wrap('supplied properties not correct for "EmailResponseAIAgentConfigurationProperty"')}function convertCfnAIAgentEmailResponseAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentEmailResponseAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{AssociationConfigurations:cdk().listMapper(convertCfnAIAgentAssociationConfigurationPropertyToCloudFormation)(properties.associationConfigurations),EmailQueryReformulationAIPromptId:cdk().stringToCloudFormation(properties.emailQueryReformulationAiPromptId),EmailResponseAIPromptId:cdk().stringToCloudFormation(properties.emailResponseAiPromptId),Locale:cdk().stringToCloudFormation(properties.locale)}):properties}function CfnAIAgentEmailResponseAIAgentConfigurationPropertyFromCloudFormation(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("associationConfigurations","AssociationConfigurations",properties.AssociationConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentAssociationConfigurationPropertyFromCloudFormation)(properties.AssociationConfigurations):void 0),ret.addPropertyResult("emailQueryReformulationAiPromptId","EmailQueryReformulationAIPromptId",properties.EmailQueryReformulationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.EmailQueryReformulationAIPromptId):void 0),ret.addPropertyResult("emailResponseAiPromptId","EmailResponseAIPromptId",properties.EmailResponseAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.EmailResponseAIPromptId):void 0),ret.addPropertyResult("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentEmailOverviewAIAgentConfigurationPropertyValidator(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("emailOverviewAiPromptId",cdk().validateString)(properties.emailOverviewAiPromptId)),errors.collect(cdk().propertyValidator("locale",cdk().validateString)(properties.locale)),errors.wrap('supplied properties not correct for "EmailOverviewAIAgentConfigurationProperty"')}function convertCfnAIAgentEmailOverviewAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentEmailOverviewAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{EmailOverviewAIPromptId:cdk().stringToCloudFormation(properties.emailOverviewAiPromptId),Locale:cdk().stringToCloudFormation(properties.locale)}):properties}function CfnAIAgentEmailOverviewAIAgentConfigurationPropertyFromCloudFormation(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("emailOverviewAiPromptId","EmailOverviewAIPromptId",properties.EmailOverviewAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.EmailOverviewAIPromptId):void 0),ret.addPropertyResult("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentEmailGenerativeAnswerAIAgentConfigurationPropertyValidator(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("associationConfigurations",cdk().listValidator(CfnAIAgentAssociationConfigurationPropertyValidator))(properties.associationConfigurations)),errors.collect(cdk().propertyValidator("emailGenerativeAnswerAiPromptId",cdk().validateString)(properties.emailGenerativeAnswerAiPromptId)),errors.collect(cdk().propertyValidator("emailQueryReformulationAiPromptId",cdk().validateString)(properties.emailQueryReformulationAiPromptId)),errors.collect(cdk().propertyValidator("locale",cdk().validateString)(properties.locale)),errors.wrap('supplied properties not correct for "EmailGenerativeAnswerAIAgentConfigurationProperty"')}function convertCfnAIAgentEmailGenerativeAnswerAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentEmailGenerativeAnswerAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{AssociationConfigurations:cdk().listMapper(convertCfnAIAgentAssociationConfigurationPropertyToCloudFormation)(properties.associationConfigurations),EmailGenerativeAnswerAIPromptId:cdk().stringToCloudFormation(properties.emailGenerativeAnswerAiPromptId),EmailQueryReformulationAIPromptId:cdk().stringToCloudFormation(properties.emailQueryReformulationAiPromptId),Locale:cdk().stringToCloudFormation(properties.locale)}):properties}function CfnAIAgentEmailGenerativeAnswerAIAgentConfigurationPropertyFromCloudFormation(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("associationConfigurations","AssociationConfigurations",properties.AssociationConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentAssociationConfigurationPropertyFromCloudFormation)(properties.AssociationConfigurations):void 0),ret.addPropertyResult("emailGenerativeAnswerAiPromptId","EmailGenerativeAnswerAIPromptId",properties.EmailGenerativeAnswerAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.EmailGenerativeAnswerAIPromptId):void 0),ret.addPropertyResult("emailQueryReformulationAiPromptId","EmailQueryReformulationAIPromptId",properties.EmailQueryReformulationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.EmailQueryReformulationAIPromptId):void 0),ret.addPropertyResult("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentToolInstructionPropertyValidator(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("examples",cdk().listValidator(cdk().validateString))(properties.examples)),errors.collect(cdk().propertyValidator("instruction",cdk().validateString)(properties.instruction)),errors.wrap('supplied properties not correct for "ToolInstructionProperty"')}function convertCfnAIAgentToolInstructionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentToolInstructionPropertyValidator(properties).assertSuccess(),{Examples:cdk().listMapper(cdk().stringToCloudFormation)(properties.examples),Instruction:cdk().stringToCloudFormation(properties.instruction)}):properties}function CfnAIAgentToolInstructionPropertyFromCloudFormation(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("examples","Examples",properties.Examples!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Examples):void 0),ret.addPropertyResult("instruction","Instruction",properties.Instruction!=null?cfn_parse().FromCloudFormation.getString(properties.Instruction):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentToolOverrideConstantInputValuePropertyValidator(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("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "ToolOverrideConstantInputValueProperty"')}function convertCfnAIAgentToolOverrideConstantInputValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentToolOverrideConstantInputValuePropertyValidator(properties).assertSuccess(),{Type:cdk().stringToCloudFormation(properties.type),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnAIAgentToolOverrideConstantInputValuePropertyFromCloudFormation(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("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentToolOverrideInputValueConfigurationPropertyValidator(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("constant",cdk().requiredValidator)(properties.constant)),errors.collect(cdk().propertyValidator("constant",CfnAIAgentToolOverrideConstantInputValuePropertyValidator)(properties.constant)),errors.wrap('supplied properties not correct for "ToolOverrideInputValueConfigurationProperty"')}function convertCfnAIAgentToolOverrideInputValueConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentToolOverrideInputValueConfigurationPropertyValidator(properties).assertSuccess(),{Constant:convertCfnAIAgentToolOverrideConstantInputValuePropertyToCloudFormation(properties.constant)}):properties}function CfnAIAgentToolOverrideInputValueConfigurationPropertyFromCloudFormation(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("constant","Constant",properties.Constant!=null?CfnAIAgentToolOverrideConstantInputValuePropertyFromCloudFormation(properties.Constant):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentToolOverrideInputValuePropertyValidator(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("jsonPath",cdk().requiredValidator)(properties.jsonPath)),errors.collect(cdk().propertyValidator("jsonPath",cdk().validateString)(properties.jsonPath)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",CfnAIAgentToolOverrideInputValueConfigurationPropertyValidator)(properties.value)),errors.wrap('supplied properties not correct for "ToolOverrideInputValueProperty"')}function convertCfnAIAgentToolOverrideInputValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentToolOverrideInputValuePropertyValidator(properties).assertSuccess(),{JsonPath:cdk().stringToCloudFormation(properties.jsonPath),Value:convertCfnAIAgentToolOverrideInputValueConfigurationPropertyToCloudFormation(properties.value)}):properties}function CfnAIAgentToolOverrideInputValuePropertyFromCloudFormation(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("jsonPath","JsonPath",properties.JsonPath!=null?cfn_parse().FromCloudFormation.getString(properties.JsonPath):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?CfnAIAgentToolOverrideInputValueConfigurationPropertyFromCloudFormation(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentToolOutputConfigurationPropertyValidator(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("outputVariableNameOverride",cdk().validateString)(properties.outputVariableNameOverride)),errors.collect(cdk().propertyValidator("sessionDataNamespace",cdk().validateString)(properties.sessionDataNamespace)),errors.wrap('supplied properties not correct for "ToolOutputConfigurationProperty"')}function convertCfnAIAgentToolOutputConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentToolOutputConfigurationPropertyValidator(properties).assertSuccess(),{OutputVariableNameOverride:cdk().stringToCloudFormation(properties.outputVariableNameOverride),SessionDataNamespace:cdk().stringToCloudFormation(properties.sessionDataNamespace)}):properties}function CfnAIAgentToolOutputConfigurationPropertyFromCloudFormation(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("outputVariableNameOverride","OutputVariableNameOverride",properties.OutputVariableNameOverride!=null?cfn_parse().FromCloudFormation.getString(properties.OutputVariableNameOverride):void 0),ret.addPropertyResult("sessionDataNamespace","SessionDataNamespace",properties.SessionDataNamespace!=null?cfn_parse().FromCloudFormation.getString(properties.SessionDataNamespace):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentToolOutputFilterPropertyValidator(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("jsonPath",cdk().requiredValidator)(properties.jsonPath)),errors.collect(cdk().propertyValidator("jsonPath",cdk().validateString)(properties.jsonPath)),errors.collect(cdk().propertyValidator("outputConfiguration",CfnAIAgentToolOutputConfigurationPropertyValidator)(properties.outputConfiguration)),errors.wrap('supplied properties not correct for "ToolOutputFilterProperty"')}function convertCfnAIAgentToolOutputFilterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentToolOutputFilterPropertyValidator(properties).assertSuccess(),{JsonPath:cdk().stringToCloudFormation(properties.jsonPath),OutputConfiguration:convertCfnAIAgentToolOutputConfigurationPropertyToCloudFormation(properties.outputConfiguration)}):properties}function CfnAIAgentToolOutputFilterPropertyFromCloudFormation(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("jsonPath","JsonPath",properties.JsonPath!=null?cfn_parse().FromCloudFormation.getString(properties.JsonPath):void 0),ret.addPropertyResult("outputConfiguration","OutputConfiguration",properties.OutputConfiguration!=null?CfnAIAgentToolOutputConfigurationPropertyFromCloudFormation(properties.OutputConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentUserInteractionConfigurationPropertyValidator(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("isUserConfirmationRequired",cdk().validateBoolean)(properties.isUserConfirmationRequired)),errors.wrap('supplied properties not correct for "UserInteractionConfigurationProperty"')}function convertCfnAIAgentUserInteractionConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentUserInteractionConfigurationPropertyValidator(properties).assertSuccess(),{IsUserConfirmationRequired:cdk().booleanToCloudFormation(properties.isUserConfirmationRequired)}):properties}function CfnAIAgentUserInteractionConfigurationPropertyFromCloudFormation(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("isUserConfirmationRequired","IsUserConfirmationRequired",properties.IsUserConfirmationRequired!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IsUserConfirmationRequired):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentToolConfigurationPropertyValidator(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("annotations",cdk().validateObject)(properties.annotations)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("inputSchema",cdk().validateObject)(properties.inputSchema)),errors.collect(cdk().propertyValidator("instruction",CfnAIAgentToolInstructionPropertyValidator)(properties.instruction)),errors.collect(cdk().propertyValidator("outputFilters",cdk().listValidator(CfnAIAgentToolOutputFilterPropertyValidator))(properties.outputFilters)),errors.collect(cdk().propertyValidator("outputSchema",cdk().validateObject)(properties.outputSchema)),errors.collect(cdk().propertyValidator("overrideInputValues",cdk().listValidator(CfnAIAgentToolOverrideInputValuePropertyValidator))(properties.overrideInputValues)),errors.collect(cdk().propertyValidator("title",cdk().validateString)(properties.title)),errors.collect(cdk().propertyValidator("toolId",cdk().validateString)(properties.toolId)),errors.collect(cdk().propertyValidator("toolName",cdk().requiredValidator)(properties.toolName)),errors.collect(cdk().propertyValidator("toolName",cdk().validateString)(properties.toolName)),errors.collect(cdk().propertyValidator("toolType",cdk().requiredValidator)(properties.toolType)),errors.collect(cdk().propertyValidator("toolType",cdk().validateString)(properties.toolType)),errors.collect(cdk().propertyValidator("userInteractionConfiguration",CfnAIAgentUserInteractionConfigurationPropertyValidator)(properties.userInteractionConfiguration)),errors.wrap('supplied properties not correct for "ToolConfigurationProperty"')}function convertCfnAIAgentToolConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentToolConfigurationPropertyValidator(properties).assertSuccess(),{Annotations:cdk().objectToCloudFormation(properties.annotations),Description:cdk().stringToCloudFormation(properties.description),InputSchema:cdk().objectToCloudFormation(properties.inputSchema),Instruction:convertCfnAIAgentToolInstructionPropertyToCloudFormation(properties.instruction),OutputFilters:cdk().listMapper(convertCfnAIAgentToolOutputFilterPropertyToCloudFormation)(properties.outputFilters),OutputSchema:cdk().objectToCloudFormation(properties.outputSchema),OverrideInputValues:cdk().listMapper(convertCfnAIAgentToolOverrideInputValuePropertyToCloudFormation)(properties.overrideInputValues),Title:cdk().stringToCloudFormation(properties.title),ToolId:cdk().stringToCloudFormation(properties.toolId),ToolName:cdk().stringToCloudFormation(properties.toolName),ToolType:cdk().stringToCloudFormation(properties.toolType),UserInteractionConfiguration:convertCfnAIAgentUserInteractionConfigurationPropertyToCloudFormation(properties.userInteractionConfiguration)}):properties}function CfnAIAgentToolConfigurationPropertyFromCloudFormation(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("annotations","Annotations",properties.Annotations!=null?cfn_parse().FromCloudFormation.getAny(properties.Annotations):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("inputSchema","InputSchema",properties.InputSchema!=null?cfn_parse().FromCloudFormation.getAny(properties.InputSchema):void 0),ret.addPropertyResult("instruction","Instruction",properties.Instruction!=null?CfnAIAgentToolInstructionPropertyFromCloudFormation(properties.Instruction):void 0),ret.addPropertyResult("outputFilters","OutputFilters",properties.OutputFilters!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentToolOutputFilterPropertyFromCloudFormation)(properties.OutputFilters):void 0),ret.addPropertyResult("outputSchema","OutputSchema",properties.OutputSchema!=null?cfn_parse().FromCloudFormation.getAny(properties.OutputSchema):void 0),ret.addPropertyResult("overrideInputValues","OverrideInputValues",properties.OverrideInputValues!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentToolOverrideInputValuePropertyFromCloudFormation)(properties.OverrideInputValues):void 0),ret.addPropertyResult("title","Title",properties.Title!=null?cfn_parse().FromCloudFormation.getString(properties.Title):void 0),ret.addPropertyResult("toolId","ToolId",properties.ToolId!=null?cfn_parse().FromCloudFormation.getString(properties.ToolId):void 0),ret.addPropertyResult("toolName","ToolName",properties.ToolName!=null?cfn_parse().FromCloudFormation.getString(properties.ToolName):void 0),ret.addPropertyResult("toolType","ToolType",properties.ToolType!=null?cfn_parse().FromCloudFormation.getString(properties.ToolType):void 0),ret.addPropertyResult("userInteractionConfiguration","UserInteractionConfiguration",properties.UserInteractionConfiguration!=null?CfnAIAgentUserInteractionConfigurationPropertyFromCloudFormation(properties.UserInteractionConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentOrchestrationAIAgentConfigurationPropertyValidator(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("connectInstanceArn",cdk().validateString)(properties.connectInstanceArn)),errors.collect(cdk().propertyValidator("locale",cdk().validateString)(properties.locale)),errors.collect(cdk().propertyValidator("orchestrationAiGuardrailId",cdk().validateString)(properties.orchestrationAiGuardrailId)),errors.collect(cdk().propertyValidator("orchestrationAiPromptId",cdk().requiredValidator)(properties.orchestrationAiPromptId)),errors.collect(cdk().propertyValidator("orchestrationAiPromptId",cdk().validateString)(properties.orchestrationAiPromptId)),errors.collect(cdk().propertyValidator("toolConfigurations",cdk().listValidator(CfnAIAgentToolConfigurationPropertyValidator))(properties.toolConfigurations)),errors.wrap('supplied properties not correct for "OrchestrationAIAgentConfigurationProperty"')}function convertCfnAIAgentOrchestrationAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentOrchestrationAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{ConnectInstanceArn:cdk().stringToCloudFormation(properties.connectInstanceArn),Locale:cdk().stringToCloudFormation(properties.locale),OrchestrationAIGuardrailId:cdk().stringToCloudFormation(properties.orchestrationAiGuardrailId),OrchestrationAIPromptId:cdk().stringToCloudFormation(properties.orchestrationAiPromptId),ToolConfigurations:cdk().listMapper(convertCfnAIAgentToolConfigurationPropertyToCloudFormation)(properties.toolConfigurations)}):properties}function CfnAIAgentOrchestrationAIAgentConfigurationPropertyFromCloudFormation(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("connectInstanceArn","ConnectInstanceArn",properties.ConnectInstanceArn!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectInstanceArn):void 0),ret.addPropertyResult("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addPropertyResult("orchestrationAiGuardrailId","OrchestrationAIGuardrailId",properties.OrchestrationAIGuardrailId!=null?cfn_parse().FromCloudFormation.getString(properties.OrchestrationAIGuardrailId):void 0),ret.addPropertyResult("orchestrationAiPromptId","OrchestrationAIPromptId",properties.OrchestrationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.OrchestrationAIPromptId):void 0),ret.addPropertyResult("toolConfigurations","ToolConfigurations",properties.ToolConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnAIAgentToolConfigurationPropertyFromCloudFormation)(properties.ToolConfigurations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentNoteTakingAIAgentConfigurationPropertyValidator(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("locale",cdk().validateString)(properties.locale)),errors.collect(cdk().propertyValidator("noteTakingAiGuardrailId",cdk().validateString)(properties.noteTakingAiGuardrailId)),errors.collect(cdk().propertyValidator("noteTakingAiPromptId",cdk().validateString)(properties.noteTakingAiPromptId)),errors.wrap('supplied properties not correct for "NoteTakingAIAgentConfigurationProperty"')}function convertCfnAIAgentNoteTakingAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentNoteTakingAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{Locale:cdk().stringToCloudFormation(properties.locale),NoteTakingAIGuardrailId:cdk().stringToCloudFormation(properties.noteTakingAiGuardrailId),NoteTakingAIPromptId:cdk().stringToCloudFormation(properties.noteTakingAiPromptId)}):properties}function CfnAIAgentNoteTakingAIAgentConfigurationPropertyFromCloudFormation(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("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addPropertyResult("noteTakingAiGuardrailId","NoteTakingAIGuardrailId",properties.NoteTakingAIGuardrailId!=null?cfn_parse().FromCloudFormation.getString(properties.NoteTakingAIGuardrailId):void 0),ret.addPropertyResult("noteTakingAiPromptId","NoteTakingAIPromptId",properties.NoteTakingAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.NoteTakingAIPromptId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentCaseSummarizationAIAgentConfigurationPropertyValidator(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("caseSummarizationAiGuardrailId",cdk().validateString)(properties.caseSummarizationAiGuardrailId)),errors.collect(cdk().propertyValidator("caseSummarizationAiPromptId",cdk().validateString)(properties.caseSummarizationAiPromptId)),errors.collect(cdk().propertyValidator("locale",cdk().validateString)(properties.locale)),errors.wrap('supplied properties not correct for "CaseSummarizationAIAgentConfigurationProperty"')}function convertCfnAIAgentCaseSummarizationAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentCaseSummarizationAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{CaseSummarizationAIGuardrailId:cdk().stringToCloudFormation(properties.caseSummarizationAiGuardrailId),CaseSummarizationAIPromptId:cdk().stringToCloudFormation(properties.caseSummarizationAiPromptId),Locale:cdk().stringToCloudFormation(properties.locale)}):properties}function CfnAIAgentCaseSummarizationAIAgentConfigurationPropertyFromCloudFormation(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("caseSummarizationAiGuardrailId","CaseSummarizationAIGuardrailId",properties.CaseSummarizationAIGuardrailId!=null?cfn_parse().FromCloudFormation.getString(properties.CaseSummarizationAIGuardrailId):void 0),ret.addPropertyResult("caseSummarizationAiPromptId","CaseSummarizationAIPromptId",properties.CaseSummarizationAIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.CaseSummarizationAIPromptId):void 0),ret.addPropertyResult("locale","Locale",properties.Locale!=null?cfn_parse().FromCloudFormation.getString(properties.Locale):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentAIAgentConfigurationPropertyValidator(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("answerRecommendationAiAgentConfiguration",CfnAIAgentAnswerRecommendationAIAgentConfigurationPropertyValidator)(properties.answerRecommendationAiAgentConfiguration)),errors.collect(cdk().propertyValidator("caseSummarizationAiAgentConfiguration",CfnAIAgentCaseSummarizationAIAgentConfigurationPropertyValidator)(properties.caseSummarizationAiAgentConfiguration)),errors.collect(cdk().propertyValidator("emailGenerativeAnswerAiAgentConfiguration",CfnAIAgentEmailGenerativeAnswerAIAgentConfigurationPropertyValidator)(properties.emailGenerativeAnswerAiAgentConfiguration)),errors.collect(cdk().propertyValidator("emailOverviewAiAgentConfiguration",CfnAIAgentEmailOverviewAIAgentConfigurationPropertyValidator)(properties.emailOverviewAiAgentConfiguration)),errors.collect(cdk().propertyValidator("emailResponseAiAgentConfiguration",CfnAIAgentEmailResponseAIAgentConfigurationPropertyValidator)(properties.emailResponseAiAgentConfiguration)),errors.collect(cdk().propertyValidator("manualSearchAiAgentConfiguration",CfnAIAgentManualSearchAIAgentConfigurationPropertyValidator)(properties.manualSearchAiAgentConfiguration)),errors.collect(cdk().propertyValidator("noteTakingAiAgentConfiguration",CfnAIAgentNoteTakingAIAgentConfigurationPropertyValidator)(properties.noteTakingAiAgentConfiguration)),errors.collect(cdk().propertyValidator("orchestrationAiAgentConfiguration",CfnAIAgentOrchestrationAIAgentConfigurationPropertyValidator)(properties.orchestrationAiAgentConfiguration)),errors.collect(cdk().propertyValidator("selfServiceAiAgentConfiguration",CfnAIAgentSelfServiceAIAgentConfigurationPropertyValidator)(properties.selfServiceAiAgentConfiguration)),errors.wrap('supplied properties not correct for "AIAgentConfigurationProperty"')}function convertCfnAIAgentAIAgentConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentAIAgentConfigurationPropertyValidator(properties).assertSuccess(),{AnswerRecommendationAIAgentConfiguration:convertCfnAIAgentAnswerRecommendationAIAgentConfigurationPropertyToCloudFormation(properties.answerRecommendationAiAgentConfiguration),CaseSummarizationAIAgentConfiguration:convertCfnAIAgentCaseSummarizationAIAgentConfigurationPropertyToCloudFormation(properties.caseSummarizationAiAgentConfiguration),EmailGenerativeAnswerAIAgentConfiguration:convertCfnAIAgentEmailGenerativeAnswerAIAgentConfigurationPropertyToCloudFormation(properties.emailGenerativeAnswerAiAgentConfiguration),EmailOverviewAIAgentConfiguration:convertCfnAIAgentEmailOverviewAIAgentConfigurationPropertyToCloudFormation(properties.emailOverviewAiAgentConfiguration),EmailResponseAIAgentConfiguration:convertCfnAIAgentEmailResponseAIAgentConfigurationPropertyToCloudFormation(properties.emailResponseAiAgentConfiguration),ManualSearchAIAgentConfiguration:convertCfnAIAgentManualSearchAIAgentConfigurationPropertyToCloudFormation(properties.manualSearchAiAgentConfiguration),NoteTakingAIAgentConfiguration:convertCfnAIAgentNoteTakingAIAgentConfigurationPropertyToCloudFormation(properties.noteTakingAiAgentConfiguration),OrchestrationAIAgentConfiguration:convertCfnAIAgentOrchestrationAIAgentConfigurationPropertyToCloudFormation(properties.orchestrationAiAgentConfiguration),SelfServiceAIAgentConfiguration:convertCfnAIAgentSelfServiceAIAgentConfigurationPropertyToCloudFormation(properties.selfServiceAiAgentConfiguration)}):properties}function CfnAIAgentAIAgentConfigurationPropertyFromCloudFormation(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("answerRecommendationAiAgentConfiguration","AnswerRecommendationAIAgentConfiguration",properties.AnswerRecommendationAIAgentConfiguration!=null?CfnAIAgentAnswerRecommendationAIAgentConfigurationPropertyFromCloudFormation(properties.AnswerRecommendationAIAgentConfiguration):void 0),ret.addPropertyResult("caseSummarizationAiAgentConfiguration","CaseSummarizationAIAgentConfiguration",properties.CaseSummarizationAIAgentConfiguration!=null?CfnAIAgentCaseSummarizationAIAgentConfigurationPropertyFromCloudFormation(properties.CaseSummarizationAIAgentConfiguration):void 0),ret.addPropertyResult("emailGenerativeAnswerAiAgentConfiguration","EmailGenerativeAnswerAIAgentConfiguration",properties.EmailGenerativeAnswerAIAgentConfiguration!=null?CfnAIAgentEmailGenerativeAnswerAIAgentConfigurationPropertyFromCloudFormation(properties.EmailGenerativeAnswerAIAgentConfiguration):void 0),ret.addPropertyResult("emailOverviewAiAgentConfiguration","EmailOverviewAIAgentConfiguration",properties.EmailOverviewAIAgentConfiguration!=null?CfnAIAgentEmailOverviewAIAgentConfigurationPropertyFromCloudFormation(properties.EmailOverviewAIAgentConfiguration):void 0),ret.addPropertyResult("emailResponseAiAgentConfiguration","EmailResponseAIAgentConfiguration",properties.EmailResponseAIAgentConfiguration!=null?CfnAIAgentEmailResponseAIAgentConfigurationPropertyFromCloudFormation(properties.EmailResponseAIAgentConfiguration):void 0),ret.addPropertyResult("manualSearchAiAgentConfiguration","ManualSearchAIAgentConfiguration",properties.ManualSearchAIAgentConfiguration!=null?CfnAIAgentManualSearchAIAgentConfigurationPropertyFromCloudFormation(properties.ManualSearchAIAgentConfiguration):void 0),ret.addPropertyResult("noteTakingAiAgentConfiguration","NoteTakingAIAgentConfiguration",properties.NoteTakingAIAgentConfiguration!=null?CfnAIAgentNoteTakingAIAgentConfigurationPropertyFromCloudFormation(properties.NoteTakingAIAgentConfiguration):void 0),ret.addPropertyResult("orchestrationAiAgentConfiguration","OrchestrationAIAgentConfiguration",properties.OrchestrationAIAgentConfiguration!=null?CfnAIAgentOrchestrationAIAgentConfigurationPropertyFromCloudFormation(properties.OrchestrationAIAgentConfiguration):void 0),ret.addPropertyResult("selfServiceAiAgentConfiguration","SelfServiceAIAgentConfiguration",properties.SelfServiceAIAgentConfiguration!=null?CfnAIAgentSelfServiceAIAgentConfigurationPropertyFromCloudFormation(properties.SelfServiceAIAgentConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIAgentPropsValidator(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("assistantId",cdk().requiredValidator)(properties.assistantId)),errors.collect(cdk().propertyValidator("assistantId",cdk().validateString)(properties.assistantId)),errors.collect(cdk().propertyValidator("configuration",cdk().requiredValidator)(properties.configuration)),errors.collect(cdk().propertyValidator("configuration",CfnAIAgentAIAgentConfigurationPropertyValidator)(properties.configuration)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(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 "CfnAIAgentProps"')}function convertCfnAIAgentPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentPropsValidator(properties).assertSuccess(),{AssistantId:cdk().stringToCloudFormation(properties.assistantId),Configuration:convertCfnAIAgentAIAgentConfigurationPropertyToCloudFormation(properties.configuration),Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAIAgentPropsFromCloudFormation(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("assistantId","AssistantId",properties.AssistantId!=null?cfn_parse().FromCloudFormation.getString(properties.AssistantId):void 0),ret.addPropertyResult("configuration","Configuration",properties.Configuration!=null?CfnAIAgentAIAgentConfigurationPropertyFromCloudFormation(properties.Configuration):void 0),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("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAIAgentVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAIAgentVersion",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::AIAgentVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAIAgentVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAIAgentVersion(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 isCfnAIAgentVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAIAgentVersion.CFN_RESOURCE_TYPE_NAME}_aiAgentId;_assistantId;_modifiedTimeSeconds;cfnPropertyNames={aiAgentId:"AIAgentId",assistantId:"AssistantId",modifiedTimeSeconds:"ModifiedTimeSeconds"};constructor(scope,id,props){super(scope,id,{type:CfnAIAgentVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAIAgentVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAIAgentVersion),error}cdk().requireProperty(props,"aiAgentId",this),cdk().requireProperty(props,"assistantId",this),this._aiAgentId=props.aiAgentId,this._assistantId=props.assistantId,this._modifiedTimeSeconds=props.modifiedTimeSeconds}get aiAgentVersionRef(){return{assistantId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),aiAgentId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),versionNumber:cdk().Fn.select(2,cdk().Fn.split("|",this.ref))}}get aiAgentId(){return this._aiAgentId}set aiAgentId(value){cdk().traceProperty(this.node,"AIAgentId"),this._aiAgentId=value}get assistantId(){return this._assistantId}set assistantId(value){cdk().traceProperty(this.node,"AssistantId"),this._assistantId=value}get modifiedTimeSeconds(){return this._modifiedTimeSeconds}set modifiedTimeSeconds(value){cdk().traceProperty(this.node,"ModifiedTimeSeconds"),this._modifiedTimeSeconds=value}get attrAiAgentArn(){return cdk().Token.asString(this.getAtt("AIAgentArn",cdk().ResolutionTypeHint.STRING))}get attrAiAgentVersionId(){return cdk().Token.asString(this.getAtt("AIAgentVersionId",cdk().ResolutionTypeHint.STRING))}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get attrVersionNumber(){return this.getAtt("VersionNumber",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{aiAgentId:this._aiAgentId,assistantId:this._assistantId,modifiedTimeSeconds:this._modifiedTimeSeconds}}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",CfnAIAgentVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAIAgentVersionPropsToCloudFormation(props)}}exports.CfnAIAgentVersion=CfnAIAgentVersion;function CfnAIAgentVersionPropsValidator(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("aiAgentId",cdk().requiredValidator)(properties.aiAgentId)),errors.collect(cdk().propertyValidator("aiAgentId",cdk().validateString)(properties.aiAgentId)),errors.collect(cdk().propertyValidator("assistantId",cdk().requiredValidator)(properties.assistantId)),errors.collect(cdk().propertyValidator("assistantId",cdk().validateString)(properties.assistantId)),errors.collect(cdk().propertyValidator("modifiedTimeSeconds",cdk().validateNumber)(properties.modifiedTimeSeconds)),errors.wrap('supplied properties not correct for "CfnAIAgentVersionProps"')}function convertCfnAIAgentVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIAgentVersionPropsValidator(properties).assertSuccess(),{AIAgentId:cdk().stringToCloudFormation(properties.aiAgentId),AssistantId:cdk().stringToCloudFormation(properties.assistantId),ModifiedTimeSeconds:cdk().numberToCloudFormation(properties.modifiedTimeSeconds)}):properties}function CfnAIAgentVersionPropsFromCloudFormation(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("aiAgentId","AIAgentId",properties.AIAgentId!=null?cfn_parse().FromCloudFormation.getString(properties.AIAgentId):void 0),ret.addPropertyResult("assistantId","AssistantId",properties.AssistantId!=null?cfn_parse().FromCloudFormation.getString(properties.AssistantId):void 0),ret.addPropertyResult("modifiedTimeSeconds","ModifiedTimeSeconds",properties.ModifiedTimeSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModifiedTimeSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAIGuardrail extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAIGuardrail",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::AIGuardrail";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAIGuardrailPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAIGuardrail(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 isCfnAIGuardrail(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAIGuardrail.CFN_RESOURCE_TYPE_NAME}static arnForAIGuardrail(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IAIGuardrailRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAIGuardrail),error}return resource.aiGuardrailRef.aiGuardrailArn}_assistantId;_blockedInputMessaging;_blockedOutputsMessaging;cdkTagManager;_contentPolicyConfig;_contextualGroundingPolicyConfig;_description;_name;_sensitiveInformationPolicyConfig;_tags;_topicPolicyConfig;_wordPolicyConfig;cfnPropertyNames={assistantId:"AssistantId",blockedInputMessaging:"BlockedInputMessaging",blockedOutputsMessaging:"BlockedOutputsMessaging",tags:"Tags",contentPolicyConfig:"ContentPolicyConfig",contextualGroundingPolicyConfig:"ContextualGroundingPolicyConfig",description:"Description",name:"Name",sensitiveInformationPolicyConfig:"SensitiveInformationPolicyConfig",topicPolicyConfig:"TopicPolicyConfig",wordPolicyConfig:"WordPolicyConfig"};constructor(scope,id,props){super(scope,id,{type:CfnAIGuardrail.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAIGuardrailProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAIGuardrail),error}cdk().requireProperty(props,"assistantId",this),cdk().requireProperty(props,"blockedInputMessaging",this),cdk().requireProperty(props,"blockedOutputsMessaging",this),this._assistantId=props.assistantId,this._blockedInputMessaging=props.blockedInputMessaging,this._blockedOutputsMessaging=props.blockedOutputsMessaging,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Wisdom::AIGuardrail",void 0,{tagPropertyName:"tags"}),this._contentPolicyConfig=props.contentPolicyConfig,this._contextualGroundingPolicyConfig=props.contextualGroundingPolicyConfig,this._description=props.description,this._name=props.name,this._sensitiveInformationPolicyConfig=props.sensitiveInformationPolicyConfig,this._tags=props.tags,this._topicPolicyConfig=props.topicPolicyConfig,this._wordPolicyConfig=props.wordPolicyConfig}get aiGuardrailRef(){return{aiGuardrailId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),assistantId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),aiGuardrailArn:this.attrAiGuardrailArn}}get assistantId(){return this._assistantId}set assistantId(value){cdk().traceProperty(this.node,"AssistantId"),this._assistantId=value}get blockedInputMessaging(){return this._blockedInputMessaging}set blockedInputMessaging(value){cdk().traceProperty(this.node,"BlockedInputMessaging"),this._blockedInputMessaging=value}get blockedOutputsMessaging(){return this._blockedOutputsMessaging}set blockedOutputsMessaging(value){cdk().traceProperty(this.node,"BlockedOutputsMessaging"),this._blockedOutputsMessaging=value}get contentPolicyConfig(){return this._contentPolicyConfig}set contentPolicyConfig(value){cdk().traceProperty(this.node,"ContentPolicyConfig"),this._contentPolicyConfig=value}get contextualGroundingPolicyConfig(){return this._contextualGroundingPolicyConfig}set contextualGroundingPolicyConfig(value){cdk().traceProperty(this.node,"ContextualGroundingPolicyConfig"),this._contextualGroundingPolicyConfig=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get sensitiveInformationPolicyConfig(){return this._sensitiveInformationPolicyConfig}set sensitiveInformationPolicyConfig(value){cdk().traceProperty(this.node,"SensitiveInformationPolicyConfig"),this._sensitiveInformationPolicyConfig=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get topicPolicyConfig(){return this._topicPolicyConfig}set topicPolicyConfig(value){cdk().traceProperty(this.node,"TopicPolicyConfig"),this._topicPolicyConfig=value}get wordPolicyConfig(){return this._wordPolicyConfig}set wordPolicyConfig(value){cdk().traceProperty(this.node,"WordPolicyConfig"),this._wordPolicyConfig=value}get attrAiGuardrailArn(){return cdk().Token.asString(this.getAtt("AIGuardrailArn",cdk().ResolutionTypeHint.STRING))}get attrAiGuardrailId(){return cdk().Token.asString(this.getAtt("AIGuardrailId",cdk().ResolutionTypeHint.STRING))}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{assistantId:this._assistantId,blockedInputMessaging:this._blockedInputMessaging,blockedOutputsMessaging:this._blockedOutputsMessaging,tags:this.cdkTagManager.renderTags(this._tags),contentPolicyConfig:this._contentPolicyConfig,contextualGroundingPolicyConfig:this._contextualGroundingPolicyConfig,description:this._description,name:this._name,sensitiveInformationPolicyConfig:this._sensitiveInformationPolicyConfig,topicPolicyConfig:this._topicPolicyConfig,wordPolicyConfig:this._wordPolicyConfig}}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",CfnAIGuardrail.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAIGuardrailPropsToCloudFormation(props)}}exports.CfnAIGuardrail=CfnAIGuardrail;function CfnAIGuardrailGuardrailTopicConfigPropertyValidator(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("definition",cdk().requiredValidator)(properties.definition)),errors.collect(cdk().propertyValidator("definition",cdk().validateString)(properties.definition)),errors.collect(cdk().propertyValidator("examples",cdk().listValidator(cdk().validateString))(properties.examples)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),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 "GuardrailTopicConfigProperty"')}function convertCfnAIGuardrailGuardrailTopicConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailGuardrailTopicConfigPropertyValidator(properties).assertSuccess(),{Definition:cdk().stringToCloudFormation(properties.definition),Examples:cdk().listMapper(cdk().stringToCloudFormation)(properties.examples),Name:cdk().stringToCloudFormation(properties.name),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAIGuardrailGuardrailTopicConfigPropertyFromCloudFormation(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("definition","Definition",properties.Definition!=null?cfn_parse().FromCloudFormation.getString(properties.Definition):void 0),ret.addPropertyResult("examples","Examples",properties.Examples!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Examples):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailAIGuardrailTopicPolicyConfigPropertyValidator(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("topicsConfig",cdk().requiredValidator)(properties.topicsConfig)),errors.collect(cdk().propertyValidator("topicsConfig",cdk().listValidator(CfnAIGuardrailGuardrailTopicConfigPropertyValidator))(properties.topicsConfig)),errors.wrap('supplied properties not correct for "AIGuardrailTopicPolicyConfigProperty"')}function convertCfnAIGuardrailAIGuardrailTopicPolicyConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailAIGuardrailTopicPolicyConfigPropertyValidator(properties).assertSuccess(),{TopicsConfig:cdk().listMapper(convertCfnAIGuardrailGuardrailTopicConfigPropertyToCloudFormation)(properties.topicsConfig)}):properties}function CfnAIGuardrailAIGuardrailTopicPolicyConfigPropertyFromCloudFormation(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("topicsConfig","TopicsConfig",properties.TopicsConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnAIGuardrailGuardrailTopicConfigPropertyFromCloudFormation)(properties.TopicsConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailGuardrailContentFilterConfigPropertyValidator(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("inputStrength",cdk().requiredValidator)(properties.inputStrength)),errors.collect(cdk().propertyValidator("inputStrength",cdk().validateString)(properties.inputStrength)),errors.collect(cdk().propertyValidator("outputStrength",cdk().requiredValidator)(properties.outputStrength)),errors.collect(cdk().propertyValidator("outputStrength",cdk().validateString)(properties.outputStrength)),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 "GuardrailContentFilterConfigProperty"')}function convertCfnAIGuardrailGuardrailContentFilterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailGuardrailContentFilterConfigPropertyValidator(properties).assertSuccess(),{InputStrength:cdk().stringToCloudFormation(properties.inputStrength),OutputStrength:cdk().stringToCloudFormation(properties.outputStrength),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAIGuardrailGuardrailContentFilterConfigPropertyFromCloudFormation(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("inputStrength","InputStrength",properties.InputStrength!=null?cfn_parse().FromCloudFormation.getString(properties.InputStrength):void 0),ret.addPropertyResult("outputStrength","OutputStrength",properties.OutputStrength!=null?cfn_parse().FromCloudFormation.getString(properties.OutputStrength):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailAIGuardrailContentPolicyConfigPropertyValidator(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("filtersConfig",cdk().requiredValidator)(properties.filtersConfig)),errors.collect(cdk().propertyValidator("filtersConfig",cdk().listValidator(CfnAIGuardrailGuardrailContentFilterConfigPropertyValidator))(properties.filtersConfig)),errors.wrap('supplied properties not correct for "AIGuardrailContentPolicyConfigProperty"')}function convertCfnAIGuardrailAIGuardrailContentPolicyConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailAIGuardrailContentPolicyConfigPropertyValidator(properties).assertSuccess(),{FiltersConfig:cdk().listMapper(convertCfnAIGuardrailGuardrailContentFilterConfigPropertyToCloudFormation)(properties.filtersConfig)}):properties}function CfnAIGuardrailAIGuardrailContentPolicyConfigPropertyFromCloudFormation(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("filtersConfig","FiltersConfig",properties.FiltersConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnAIGuardrailGuardrailContentFilterConfigPropertyFromCloudFormation)(properties.FiltersConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailGuardrailWordConfigPropertyValidator(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("text",cdk().requiredValidator)(properties.text)),errors.collect(cdk().propertyValidator("text",cdk().validateString)(properties.text)),errors.wrap('supplied properties not correct for "GuardrailWordConfigProperty"')}function convertCfnAIGuardrailGuardrailWordConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailGuardrailWordConfigPropertyValidator(properties).assertSuccess(),{Text:cdk().stringToCloudFormation(properties.text)}):properties}function CfnAIGuardrailGuardrailWordConfigPropertyFromCloudFormation(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("text","Text",properties.Text!=null?cfn_parse().FromCloudFormation.getString(properties.Text):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailGuardrailManagedWordsConfigPropertyValidator(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("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "GuardrailManagedWordsConfigProperty"')}function convertCfnAIGuardrailGuardrailManagedWordsConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailGuardrailManagedWordsConfigPropertyValidator(properties).assertSuccess(),{Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAIGuardrailGuardrailManagedWordsConfigPropertyFromCloudFormation(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("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailAIGuardrailWordPolicyConfigPropertyValidator(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("managedWordListsConfig",cdk().listValidator(CfnAIGuardrailGuardrailManagedWordsConfigPropertyValidator))(properties.managedWordListsConfig)),errors.collect(cdk().propertyValidator("wordsConfig",cdk().listValidator(CfnAIGuardrailGuardrailWordConfigPropertyValidator))(properties.wordsConfig)),errors.wrap('supplied properties not correct for "AIGuardrailWordPolicyConfigProperty"')}function convertCfnAIGuardrailAIGuardrailWordPolicyConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailAIGuardrailWordPolicyConfigPropertyValidator(properties).assertSuccess(),{ManagedWordListsConfig:cdk().listMapper(convertCfnAIGuardrailGuardrailManagedWordsConfigPropertyToCloudFormation)(properties.managedWordListsConfig),WordsConfig:cdk().listMapper(convertCfnAIGuardrailGuardrailWordConfigPropertyToCloudFormation)(properties.wordsConfig)}):properties}function CfnAIGuardrailAIGuardrailWordPolicyConfigPropertyFromCloudFormation(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("managedWordListsConfig","ManagedWordListsConfig",properties.ManagedWordListsConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnAIGuardrailGuardrailManagedWordsConfigPropertyFromCloudFormation)(properties.ManagedWordListsConfig):void 0),ret.addPropertyResult("wordsConfig","WordsConfig",properties.WordsConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnAIGuardrailGuardrailWordConfigPropertyFromCloudFormation)(properties.WordsConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailGuardrailPiiEntityConfigPropertyValidator(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("action",cdk().requiredValidator)(properties.action)),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),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 "GuardrailPiiEntityConfigProperty"')}function convertCfnAIGuardrailGuardrailPiiEntityConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailGuardrailPiiEntityConfigPropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAIGuardrailGuardrailPiiEntityConfigPropertyFromCloudFormation(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("action","Action",properties.Action!=null?cfn_parse().FromCloudFormation.getString(properties.Action):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailGuardrailRegexConfigPropertyValidator(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("action",cdk().requiredValidator)(properties.action)),errors.collect(cdk().propertyValidator("action",cdk().validateString)(properties.action)),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("pattern",cdk().requiredValidator)(properties.pattern)),errors.collect(cdk().propertyValidator("pattern",cdk().validateString)(properties.pattern)),errors.wrap('supplied properties not correct for "GuardrailRegexConfigProperty"')}function convertCfnAIGuardrailGuardrailRegexConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailGuardrailRegexConfigPropertyValidator(properties).assertSuccess(),{Action:cdk().stringToCloudFormation(properties.action),Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),Pattern:cdk().stringToCloudFormation(properties.pattern)}):properties}function CfnAIGuardrailGuardrailRegexConfigPropertyFromCloudFormation(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("action","Action",properties.Action!=null?cfn_parse().FromCloudFormation.getString(properties.Action):void 0),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("pattern","Pattern",properties.Pattern!=null?cfn_parse().FromCloudFormation.getString(properties.Pattern):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailAIGuardrailSensitiveInformationPolicyConfigPropertyValidator(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("piiEntitiesConfig",cdk().listValidator(CfnAIGuardrailGuardrailPiiEntityConfigPropertyValidator))(properties.piiEntitiesConfig)),errors.collect(cdk().propertyValidator("regexesConfig",cdk().listValidator(CfnAIGuardrailGuardrailRegexConfigPropertyValidator))(properties.regexesConfig)),errors.wrap('supplied properties not correct for "AIGuardrailSensitiveInformationPolicyConfigProperty"')}function convertCfnAIGuardrailAIGuardrailSensitiveInformationPolicyConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailAIGuardrailSensitiveInformationPolicyConfigPropertyValidator(properties).assertSuccess(),{PiiEntitiesConfig:cdk().listMapper(convertCfnAIGuardrailGuardrailPiiEntityConfigPropertyToCloudFormation)(properties.piiEntitiesConfig),RegexesConfig:cdk().listMapper(convertCfnAIGuardrailGuardrailRegexConfigPropertyToCloudFormation)(properties.regexesConfig)}):properties}function CfnAIGuardrailAIGuardrailSensitiveInformationPolicyConfigPropertyFromCloudFormation(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("piiEntitiesConfig","PiiEntitiesConfig",properties.PiiEntitiesConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnAIGuardrailGuardrailPiiEntityConfigPropertyFromCloudFormation)(properties.PiiEntitiesConfig):void 0),ret.addPropertyResult("regexesConfig","RegexesConfig",properties.RegexesConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnAIGuardrailGuardrailRegexConfigPropertyFromCloudFormation)(properties.RegexesConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailGuardrailContextualGroundingFilterConfigPropertyValidator(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("threshold",cdk().requiredValidator)(properties.threshold)),errors.collect(cdk().propertyValidator("threshold",cdk().validateNumber)(properties.threshold)),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 "GuardrailContextualGroundingFilterConfigProperty"')}function convertCfnAIGuardrailGuardrailContextualGroundingFilterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailGuardrailContextualGroundingFilterConfigPropertyValidator(properties).assertSuccess(),{Threshold:cdk().numberToCloudFormation(properties.threshold),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAIGuardrailGuardrailContextualGroundingFilterConfigPropertyFromCloudFormation(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("threshold","Threshold",properties.Threshold!=null?cfn_parse().FromCloudFormation.getNumber(properties.Threshold):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailAIGuardrailContextualGroundingPolicyConfigPropertyValidator(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("filtersConfig",cdk().requiredValidator)(properties.filtersConfig)),errors.collect(cdk().propertyValidator("filtersConfig",cdk().listValidator(CfnAIGuardrailGuardrailContextualGroundingFilterConfigPropertyValidator))(properties.filtersConfig)),errors.wrap('supplied properties not correct for "AIGuardrailContextualGroundingPolicyConfigProperty"')}function convertCfnAIGuardrailAIGuardrailContextualGroundingPolicyConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailAIGuardrailContextualGroundingPolicyConfigPropertyValidator(properties).assertSuccess(),{FiltersConfig:cdk().listMapper(convertCfnAIGuardrailGuardrailContextualGroundingFilterConfigPropertyToCloudFormation)(properties.filtersConfig)}):properties}function CfnAIGuardrailAIGuardrailContextualGroundingPolicyConfigPropertyFromCloudFormation(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("filtersConfig","FiltersConfig",properties.FiltersConfig!=null?cfn_parse().FromCloudFormation.getArray(CfnAIGuardrailGuardrailContextualGroundingFilterConfigPropertyFromCloudFormation)(properties.FiltersConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIGuardrailPropsValidator(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("assistantId",cdk().requiredValidator)(properties.assistantId)),errors.collect(cdk().propertyValidator("assistantId",cdk().validateString)(properties.assistantId)),errors.collect(cdk().propertyValidator("blockedInputMessaging",cdk().requiredValidator)(properties.blockedInputMessaging)),errors.collect(cdk().propertyValidator("blockedInputMessaging",cdk().validateString)(properties.blockedInputMessaging)),errors.collect(cdk().propertyValidator("blockedOutputsMessaging",cdk().requiredValidator)(properties.blockedOutputsMessaging)),errors.collect(cdk().propertyValidator("blockedOutputsMessaging",cdk().validateString)(properties.blockedOutputsMessaging)),errors.collect(cdk().propertyValidator("contentPolicyConfig",CfnAIGuardrailAIGuardrailContentPolicyConfigPropertyValidator)(properties.contentPolicyConfig)),errors.collect(cdk().propertyValidator("contextualGroundingPolicyConfig",CfnAIGuardrailAIGuardrailContextualGroundingPolicyConfigPropertyValidator)(properties.contextualGroundingPolicyConfig)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("sensitiveInformationPolicyConfig",CfnAIGuardrailAIGuardrailSensitiveInformationPolicyConfigPropertyValidator)(properties.sensitiveInformationPolicyConfig)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(properties.tags)),errors.collect(cdk().propertyValidator("topicPolicyConfig",CfnAIGuardrailAIGuardrailTopicPolicyConfigPropertyValidator)(properties.topicPolicyConfig)),errors.collect(cdk().propertyValidator("wordPolicyConfig",CfnAIGuardrailAIGuardrailWordPolicyConfigPropertyValidator)(properties.wordPolicyConfig)),errors.wrap('supplied properties not correct for "CfnAIGuardrailProps"')}function convertCfnAIGuardrailPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailPropsValidator(properties).assertSuccess(),{AssistantId:cdk().stringToCloudFormation(properties.assistantId),BlockedInputMessaging:cdk().stringToCloudFormation(properties.blockedInputMessaging),BlockedOutputsMessaging:cdk().stringToCloudFormation(properties.blockedOutputsMessaging),ContentPolicyConfig:convertCfnAIGuardrailAIGuardrailContentPolicyConfigPropertyToCloudFormation(properties.contentPolicyConfig),ContextualGroundingPolicyConfig:convertCfnAIGuardrailAIGuardrailContextualGroundingPolicyConfigPropertyToCloudFormation(properties.contextualGroundingPolicyConfig),Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),SensitiveInformationPolicyConfig:convertCfnAIGuardrailAIGuardrailSensitiveInformationPolicyConfigPropertyToCloudFormation(properties.sensitiveInformationPolicyConfig),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags),TopicPolicyConfig:convertCfnAIGuardrailAIGuardrailTopicPolicyConfigPropertyToCloudFormation(properties.topicPolicyConfig),WordPolicyConfig:convertCfnAIGuardrailAIGuardrailWordPolicyConfigPropertyToCloudFormation(properties.wordPolicyConfig)}):properties}function CfnAIGuardrailPropsFromCloudFormation(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("assistantId","AssistantId",properties.AssistantId!=null?cfn_parse().FromCloudFormation.getString(properties.AssistantId):void 0),ret.addPropertyResult("blockedInputMessaging","BlockedInputMessaging",properties.BlockedInputMessaging!=null?cfn_parse().FromCloudFormation.getString(properties.BlockedInputMessaging):void 0),ret.addPropertyResult("blockedOutputsMessaging","BlockedOutputsMessaging",properties.BlockedOutputsMessaging!=null?cfn_parse().FromCloudFormation.getString(properties.BlockedOutputsMessaging):void 0),ret.addPropertyResult("contentPolicyConfig","ContentPolicyConfig",properties.ContentPolicyConfig!=null?CfnAIGuardrailAIGuardrailContentPolicyConfigPropertyFromCloudFormation(properties.ContentPolicyConfig):void 0),ret.addPropertyResult("contextualGroundingPolicyConfig","ContextualGroundingPolicyConfig",properties.ContextualGroundingPolicyConfig!=null?CfnAIGuardrailAIGuardrailContextualGroundingPolicyConfigPropertyFromCloudFormation(properties.ContextualGroundingPolicyConfig):void 0),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("sensitiveInformationPolicyConfig","SensitiveInformationPolicyConfig",properties.SensitiveInformationPolicyConfig!=null?CfnAIGuardrailAIGuardrailSensitiveInformationPolicyConfigPropertyFromCloudFormation(properties.SensitiveInformationPolicyConfig):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addPropertyResult("topicPolicyConfig","TopicPolicyConfig",properties.TopicPolicyConfig!=null?CfnAIGuardrailAIGuardrailTopicPolicyConfigPropertyFromCloudFormation(properties.TopicPolicyConfig):void 0),ret.addPropertyResult("wordPolicyConfig","WordPolicyConfig",properties.WordPolicyConfig!=null?CfnAIGuardrailAIGuardrailWordPolicyConfigPropertyFromCloudFormation(properties.WordPolicyConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAIGuardrailVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAIGuardrailVersion",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::AIGuardrailVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAIGuardrailVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAIGuardrailVersion(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 isCfnAIGuardrailVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAIGuardrailVersion.CFN_RESOURCE_TYPE_NAME}_aiGuardrailId;_assistantId;_modifiedTimeSeconds;cfnPropertyNames={aiGuardrailId:"AIGuardrailId",assistantId:"AssistantId",modifiedTimeSeconds:"ModifiedTimeSeconds"};constructor(scope,id,props){super(scope,id,{type:CfnAIGuardrailVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAIGuardrailVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAIGuardrailVersion),error}cdk().requireProperty(props,"aiGuardrailId",this),cdk().requireProperty(props,"assistantId",this),this._aiGuardrailId=props.aiGuardrailId,this._assistantId=props.assistantId,this._modifiedTimeSeconds=props.modifiedTimeSeconds}get aiGuardrailVersionRef(){return{assistantId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),aiGuardrailId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),versionNumber:cdk().Fn.select(2,cdk().Fn.split("|",this.ref))}}get aiGuardrailId(){return this._aiGuardrailId}set aiGuardrailId(value){cdk().traceProperty(this.node,"AIGuardrailId"),this._aiGuardrailId=value}get assistantId(){return this._assistantId}set assistantId(value){cdk().traceProperty(this.node,"AssistantId"),this._assistantId=value}get modifiedTimeSeconds(){return this._modifiedTimeSeconds}set modifiedTimeSeconds(value){cdk().traceProperty(this.node,"ModifiedTimeSeconds"),this._modifiedTimeSeconds=value}get attrAiGuardrailArn(){return cdk().Token.asString(this.getAtt("AIGuardrailArn",cdk().ResolutionTypeHint.STRING))}get attrAiGuardrailVersionId(){return cdk().Token.asString(this.getAtt("AIGuardrailVersionId",cdk().ResolutionTypeHint.STRING))}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get attrVersionNumber(){return this.getAtt("VersionNumber",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{aiGuardrailId:this._aiGuardrailId,assistantId:this._assistantId,modifiedTimeSeconds:this._modifiedTimeSeconds}}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",CfnAIGuardrailVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAIGuardrailVersionPropsToCloudFormation(props)}}exports.CfnAIGuardrailVersion=CfnAIGuardrailVersion;function CfnAIGuardrailVersionPropsValidator(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("aiGuardrailId",cdk().requiredValidator)(properties.aiGuardrailId)),errors.collect(cdk().propertyValidator("aiGuardrailId",cdk().validateString)(properties.aiGuardrailId)),errors.collect(cdk().propertyValidator("assistantId",cdk().requiredValidator)(properties.assistantId)),errors.collect(cdk().propertyValidator("assistantId",cdk().validateString)(properties.assistantId)),errors.collect(cdk().propertyValidator("modifiedTimeSeconds",cdk().validateNumber)(properties.modifiedTimeSeconds)),errors.wrap('supplied properties not correct for "CfnAIGuardrailVersionProps"')}function convertCfnAIGuardrailVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIGuardrailVersionPropsValidator(properties).assertSuccess(),{AIGuardrailId:cdk().stringToCloudFormation(properties.aiGuardrailId),AssistantId:cdk().stringToCloudFormation(properties.assistantId),ModifiedTimeSeconds:cdk().numberToCloudFormation(properties.modifiedTimeSeconds)}):properties}function CfnAIGuardrailVersionPropsFromCloudFormation(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("aiGuardrailId","AIGuardrailId",properties.AIGuardrailId!=null?cfn_parse().FromCloudFormation.getString(properties.AIGuardrailId):void 0),ret.addPropertyResult("assistantId","AssistantId",properties.AssistantId!=null?cfn_parse().FromCloudFormation.getString(properties.AssistantId):void 0),ret.addPropertyResult("modifiedTimeSeconds","ModifiedTimeSeconds",properties.ModifiedTimeSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModifiedTimeSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAIPrompt extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAIPrompt",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::AIPrompt";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAIPromptPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAIPrompt(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 isCfnAIPrompt(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAIPrompt.CFN_RESOURCE_TYPE_NAME}static arnForAIPrompt(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IAIPromptRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAIPrompt),error}return resource.aiPromptRef.aiPromptArn}_apiFormat;_assistantId;cdkTagManager;_description;_modelId;_name;_tags;_templateConfiguration;_templateType;_type;cfnPropertyNames={apiFormat:"ApiFormat",assistantId:"AssistantId",tags:"Tags",description:"Description",modelId:"ModelId",name:"Name",templateConfiguration:"TemplateConfiguration",templateType:"TemplateType",type:"Type"};constructor(scope,id,props){super(scope,id,{type:CfnAIPrompt.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAIPromptProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAIPrompt),error}cdk().requireProperty(props,"apiFormat",this),cdk().requireProperty(props,"modelId",this),cdk().requireProperty(props,"templateConfiguration",this),cdk().requireProperty(props,"templateType",this),cdk().requireProperty(props,"type",this),this._apiFormat=props.apiFormat,this._assistantId=props.assistantId,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::Wisdom::AIPrompt",void 0,{tagPropertyName:"tags"}),this._description=props.description,this._modelId=props.modelId,this._name=props.name,this._tags=props.tags,this._templateConfiguration=props.templateConfiguration,this._templateType=props.templateType,this._type=props.type}get aiPromptRef(){return{aiPromptId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),assistantId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),aiPromptArn:this.attrAiPromptArn}}get apiFormat(){return this._apiFormat}set apiFormat(value){cdk().traceProperty(this.node,"ApiFormat"),this._apiFormat=value}get assistantId(){return this._assistantId}set assistantId(value){cdk().traceProperty(this.node,"AssistantId"),this._assistantId=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get modelId(){return this._modelId}set modelId(value){cdk().traceProperty(this.node,"ModelId"),this._modelId=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get templateConfiguration(){return this._templateConfiguration}set templateConfiguration(value){cdk().traceProperty(this.node,"TemplateConfiguration"),this._templateConfiguration=value}get templateType(){return this._templateType}set templateType(value){cdk().traceProperty(this.node,"TemplateType"),this._templateType=value}get type(){return this._type}set type(value){cdk().traceProperty(this.node,"Type"),this._type=value}get attrAiPromptArn(){return cdk().Token.asString(this.getAtt("AIPromptArn",cdk().ResolutionTypeHint.STRING))}get attrAiPromptId(){return cdk().Token.asString(this.getAtt("AIPromptId",cdk().ResolutionTypeHint.STRING))}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get attrModifiedTimeSeconds(){return this.getAtt("ModifiedTimeSeconds",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{apiFormat:this._apiFormat,assistantId:this._assistantId,tags:this.cdkTagManager.renderTags(this._tags),description:this._description,modelId:this._modelId,name:this._name,templateConfiguration:this._templateConfiguration,templateType:this._templateType,type:this._type}}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",CfnAIPrompt.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAIPromptPropsToCloudFormation(props)}}exports.CfnAIPrompt=CfnAIPrompt;function CfnAIPromptTextFullAIPromptEditTemplateConfigurationPropertyValidator(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("text",cdk().requiredValidator)(properties.text)),errors.collect(cdk().propertyValidator("text",cdk().validateString)(properties.text)),errors.wrap('supplied properties not correct for "TextFullAIPromptEditTemplateConfigurationProperty"')}function convertCfnAIPromptTextFullAIPromptEditTemplateConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIPromptTextFullAIPromptEditTemplateConfigurationPropertyValidator(properties).assertSuccess(),{Text:cdk().stringToCloudFormation(properties.text)}):properties}function CfnAIPromptTextFullAIPromptEditTemplateConfigurationPropertyFromCloudFormation(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("text","Text",properties.Text!=null?cfn_parse().FromCloudFormation.getString(properties.Text):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIPromptAIPromptTemplateConfigurationPropertyValidator(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("textFullAiPromptEditTemplateConfiguration",cdk().requiredValidator)(properties.textFullAiPromptEditTemplateConfiguration)),errors.collect(cdk().propertyValidator("textFullAiPromptEditTemplateConfiguration",CfnAIPromptTextFullAIPromptEditTemplateConfigurationPropertyValidator)(properties.textFullAiPromptEditTemplateConfiguration)),errors.wrap('supplied properties not correct for "AIPromptTemplateConfigurationProperty"')}function convertCfnAIPromptAIPromptTemplateConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIPromptAIPromptTemplateConfigurationPropertyValidator(properties).assertSuccess(),{TextFullAIPromptEditTemplateConfiguration:convertCfnAIPromptTextFullAIPromptEditTemplateConfigurationPropertyToCloudFormation(properties.textFullAiPromptEditTemplateConfiguration)}):properties}function CfnAIPromptAIPromptTemplateConfigurationPropertyFromCloudFormation(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("textFullAiPromptEditTemplateConfiguration","TextFullAIPromptEditTemplateConfiguration",properties.TextFullAIPromptEditTemplateConfiguration!=null?CfnAIPromptTextFullAIPromptEditTemplateConfigurationPropertyFromCloudFormation(properties.TextFullAIPromptEditTemplateConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAIPromptPropsValidator(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("apiFormat",cdk().requiredValidator)(properties.apiFormat)),errors.collect(cdk().propertyValidator("apiFormat",cdk().validateString)(properties.apiFormat)),errors.collect(cdk().propertyValidator("assistantId",cdk().validateString)(properties.assistantId)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("modelId",cdk().requiredValidator)(properties.modelId)),errors.collect(cdk().propertyValidator("modelId",cdk().validateString)(properties.modelId)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(properties.tags)),errors.collect(cdk().propertyValidator("templateConfiguration",cdk().requiredValidator)(properties.templateConfiguration)),errors.collect(cdk().propertyValidator("templateConfiguration",CfnAIPromptAIPromptTemplateConfigurationPropertyValidator)(properties.templateConfiguration)),errors.collect(cdk().propertyValidator("templateType",cdk().requiredValidator)(properties.templateType)),errors.collect(cdk().propertyValidator("templateType",cdk().validateString)(properties.templateType)),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 "CfnAIPromptProps"')}function convertCfnAIPromptPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIPromptPropsValidator(properties).assertSuccess(),{ApiFormat:cdk().stringToCloudFormation(properties.apiFormat),AssistantId:cdk().stringToCloudFormation(properties.assistantId),Description:cdk().stringToCloudFormation(properties.description),ModelId:cdk().stringToCloudFormation(properties.modelId),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags),TemplateConfiguration:convertCfnAIPromptAIPromptTemplateConfigurationPropertyToCloudFormation(properties.templateConfiguration),TemplateType:cdk().stringToCloudFormation(properties.templateType),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnAIPromptPropsFromCloudFormation(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("apiFormat","ApiFormat",properties.ApiFormat!=null?cfn_parse().FromCloudFormation.getString(properties.ApiFormat):void 0),ret.addPropertyResult("assistantId","AssistantId",properties.AssistantId!=null?cfn_parse().FromCloudFormation.getString(properties.AssistantId):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("modelId","ModelId",properties.ModelId!=null?cfn_parse().FromCloudFormation.getString(properties.ModelId):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addPropertyResult("templateConfiguration","TemplateConfiguration",properties.TemplateConfiguration!=null?CfnAIPromptAIPromptTemplateConfigurationPropertyFromCloudFormation(properties.TemplateConfiguration):void 0),ret.addPropertyResult("templateType","TemplateType",properties.TemplateType!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateType):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAIPromptVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnAIPromptVersion",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::AIPromptVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAIPromptVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAIPromptVersion(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 isCfnAIPromptVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAIPromptVersion.CFN_RESOURCE_TYPE_NAME}_aiPromptId;_assistantId;_modifiedTimeSeconds;cfnPropertyNames={aiPromptId:"AIPromptId",assistantId:"AssistantId",modifiedTimeSeconds:"ModifiedTimeSeconds"};constructor(scope,id,props){super(scope,id,{type:CfnAIPromptVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnAIPromptVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAIPromptVersion),error}cdk().requireProperty(props,"aiPromptId",this),cdk().requireProperty(props,"assistantId",this),this._aiPromptId=props.aiPromptId,this._assistantId=props.assistantId,this._modifiedTimeSeconds=props.modifiedTimeSeconds}get aiPromptVersionRef(){return{assistantId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),aiPromptId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),versionNumber:cdk().Fn.select(2,cdk().Fn.split("|",this.ref))}}get aiPromptId(){return this._aiPromptId}set aiPromptId(value){cdk().traceProperty(this.node,"AIPromptId"),this._aiPromptId=value}get assistantId(){return this._assistantId}set assistantId(value){cdk().traceProperty(this.node,"AssistantId"),this._assistantId=value}get modifiedTimeSeconds(){return this._modifiedTimeSeconds}set modifiedTimeSeconds(value){cdk().traceProperty(this.node,"ModifiedTimeSeconds"),this._modifiedTimeSeconds=value}get attrAiPromptArn(){return cdk().Token.asString(this.getAtt("AIPromptArn",cdk().ResolutionTypeHint.STRING))}get attrAiPromptVersionId(){return cdk().Token.asString(this.getAtt("AIPromptVersionId",cdk().ResolutionTypeHint.STRING))}get attrAssistantArn(){return cdk().Token.asString(this.getAtt("AssistantArn",cdk().ResolutionTypeHint.STRING))}get attrVersionNumber(){return this.getAtt("VersionNumber",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{aiPromptId:this._aiPromptId,assistantId:this._assistantId,modifiedTimeSeconds:this._modifiedTimeSeconds}}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",CfnAIPromptVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAIPromptVersionPropsToCloudFormation(props)}}exports.CfnAIPromptVersion=CfnAIPromptVersion;function CfnAIPromptVersionPropsValidator(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("aiPromptId",cdk().requiredValidator)(properties.aiPromptId)),errors.collect(cdk().propertyValidator("aiPromptId",cdk().validateString)(properties.aiPromptId)),errors.collect(cdk().propertyValidator("assistantId",cdk().requiredValidator)(properties.assistantId)),errors.collect(cdk().propertyValidator("assistantId",cdk().validateString)(properties.assistantId)),errors.collect(cdk().propertyValidator("modifiedTimeSeconds",cdk().validateNumber)(properties.modifiedTimeSeconds)),errors.wrap('supplied properties not correct for "CfnAIPromptVersionProps"')}function convertCfnAIPromptVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAIPromptVersionPropsValidator(properties).assertSuccess(),{AIPromptId:cdk().stringToCloudFormation(properties.aiPromptId),AssistantId:cdk().stringToCloudFormation(properties.assistantId),ModifiedTimeSeconds:cdk().numberToCloudFormation(properties.modifiedTimeSeconds)}):properties}function CfnAIPromptVersionPropsFromCloudFormation(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("aiPromptId","AIPromptId",properties.AIPromptId!=null?cfn_parse().FromCloudFormation.getString(properties.AIPromptId):void 0),ret.addPropertyResult("assistantId","AssistantId",properties.AssistantId!=null?cfn_parse().FromCloudFormation.getString(properties.AssistantId):void 0),ret.addPropertyResult("modifiedTimeSeconds","ModifiedTimeSeconds",properties.ModifiedTimeSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModifiedTimeSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMessageTemplate extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnMessageTemplate",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::MessageTemplate";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMessageTemplatePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMessageTemplate(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 isCfnMessageTemplate(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMessageTemplate.CFN_RESOURCE_TYPE_NAME}static arnForMessageTemplate(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IMessageTemplateRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMessageTemplate),error}return resource.messageTemplateRef.messageTemplateArn}cdkTagManager;_channelSubtype;_content;_defaultAttributes;_description;_groupingConfiguration;_knowledgeBaseArn;_language;_messageTemplateAttachments;_name;_tags;cfnPropertyNames={tags:"Tags",channelSubtype:"ChannelSubtype",content:"Content",defaultAttributes:"DefaultAttributes",description:"Description",groupingConfiguration:"GroupingConfiguration",knowledgeBaseArn:"KnowledgeBaseArn",language:"Language",messageTemplateAttachments:"MessageTemplateAttachments",name:"Name"};constructor(scope,id,props){super(scope,id,{type:CfnMessageTemplate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnMessageTemplateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMessageTemplate),error}cdk().requireProperty(props,"channelSubtype",this),cdk().requireProperty(props,"content",this),cdk().requireProperty(props,"knowledgeBaseArn",this),cdk().requireProperty(props,"name",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Wisdom::MessageTemplate",void 0,{tagPropertyName:"tags"}),this._channelSubtype=props.channelSubtype,this._content=props.content,this._defaultAttributes=props.defaultAttributes,this._description=props.description,this._groupingConfiguration=props.groupingConfiguration,this._knowledgeBaseArn=props.knowledgeBaseArn,this._language=props.language,this._messageTemplateAttachments=props.messageTemplateAttachments,this._name=props.name,this._tags=props.tags}get messageTemplateRef(){return{messageTemplateArn:this.ref}}get channelSubtype(){return this._channelSubtype}set channelSubtype(value){cdk().traceProperty(this.node,"ChannelSubtype"),this._channelSubtype=value}get content(){return this._content}set content(value){cdk().traceProperty(this.node,"Content"),this._content=value}get defaultAttributes(){return this._defaultAttributes}set defaultAttributes(value){cdk().traceProperty(this.node,"DefaultAttributes"),this._defaultAttributes=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get groupingConfiguration(){return this._groupingConfiguration}set groupingConfiguration(value){cdk().traceProperty(this.node,"GroupingConfiguration"),this._groupingConfiguration=value}get knowledgeBaseArn(){return this._knowledgeBaseArn}set knowledgeBaseArn(value){cdk().traceProperty(this.node,"KnowledgeBaseArn"),this._knowledgeBaseArn=value}get language(){return this._language}set language(value){cdk().traceProperty(this.node,"Language"),this._language=value}get messageTemplateAttachments(){return this._messageTemplateAttachments}set messageTemplateAttachments(value){cdk().traceProperty(this.node,"MessageTemplateAttachments"),this._messageTemplateAttachments=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrMessageTemplateArn(){return cdk().Token.asString(this.getAtt("MessageTemplateArn",cdk().ResolutionTypeHint.STRING))}get attrMessageTemplateContentSha256(){return cdk().Token.asString(this.getAtt("MessageTemplateContentSha256",cdk().ResolutionTypeHint.STRING))}get attrMessageTemplateId(){return cdk().Token.asString(this.getAtt("MessageTemplateId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),channelSubtype:this._channelSubtype,content:this._content,defaultAttributes:this._defaultAttributes,description:this._description,groupingConfiguration:this._groupingConfiguration,knowledgeBaseArn:this._knowledgeBaseArn,language:this._language,messageTemplateAttachments:this._messageTemplateAttachments,name:this._name}}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",CfnMessageTemplate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMessageTemplatePropsToCloudFormation(props)}}exports.CfnMessageTemplate=CfnMessageTemplate;function CfnMessageTemplateMessageTemplateBodyContentProviderPropertyValidator(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("content",cdk().validateString)(properties.content)),errors.wrap('supplied properties not correct for "MessageTemplateBodyContentProviderProperty"')}function convertCfnMessageTemplateMessageTemplateBodyContentProviderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateMessageTemplateBodyContentProviderPropertyValidator(properties).assertSuccess(),{Content:cdk().stringToCloudFormation(properties.content)}):properties}function CfnMessageTemplateMessageTemplateBodyContentProviderPropertyFromCloudFormation(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("content","Content",properties.Content!=null?cfn_parse().FromCloudFormation.getString(properties.Content):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateEmailMessageTemplateContentBodyPropertyValidator(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("html",CfnMessageTemplateMessageTemplateBodyContentProviderPropertyValidator)(properties.html)),errors.collect(cdk().propertyValidator("plainText",CfnMessageTemplateMessageTemplateBodyContentProviderPropertyValidator)(properties.plainText)),errors.wrap('supplied properties not correct for "EmailMessageTemplateContentBodyProperty"')}function convertCfnMessageTemplateEmailMessageTemplateContentBodyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateEmailMessageTemplateContentBodyPropertyValidator(properties).assertSuccess(),{Html:convertCfnMessageTemplateMessageTemplateBodyContentProviderPropertyToCloudFormation(properties.html),PlainText:convertCfnMessageTemplateMessageTemplateBodyContentProviderPropertyToCloudFormation(properties.plainText)}):properties}function CfnMessageTemplateEmailMessageTemplateContentBodyPropertyFromCloudFormation(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("html","Html",properties.Html!=null?CfnMessageTemplateMessageTemplateBodyContentProviderPropertyFromCloudFormation(properties.Html):void 0),ret.addPropertyResult("plainText","PlainText",properties.PlainText!=null?CfnMessageTemplateMessageTemplateBodyContentProviderPropertyFromCloudFormation(properties.PlainText):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateEmailMessageTemplateHeaderPropertyValidator(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("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "EmailMessageTemplateHeaderProperty"')}function convertCfnMessageTemplateEmailMessageTemplateHeaderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateEmailMessageTemplateHeaderPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnMessageTemplateEmailMessageTemplateHeaderPropertyFromCloudFormation(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("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getString(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateEmailMessageTemplateContentPropertyValidator(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("body",cdk().requiredValidator)(properties.body)),errors.collect(cdk().propertyValidator("body",CfnMessageTemplateEmailMessageTemplateContentBodyPropertyValidator)(properties.body)),errors.collect(cdk().propertyValidator("headers",cdk().requiredValidator)(properties.headers)),errors.collect(cdk().propertyValidator("headers",cdk().listValidator(CfnMessageTemplateEmailMessageTemplateHeaderPropertyValidator))(properties.headers)),errors.collect(cdk().propertyValidator("subject",cdk().requiredValidator)(properties.subject)),errors.collect(cdk().propertyValidator("subject",cdk().validateString)(properties.subject)),errors.wrap('supplied properties not correct for "EmailMessageTemplateContentProperty"')}function convertCfnMessageTemplateEmailMessageTemplateContentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateEmailMessageTemplateContentPropertyValidator(properties).assertSuccess(),{Body:convertCfnMessageTemplateEmailMessageTemplateContentBodyPropertyToCloudFormation(properties.body),Headers:cdk().listMapper(convertCfnMessageTemplateEmailMessageTemplateHeaderPropertyToCloudFormation)(properties.headers),Subject:cdk().stringToCloudFormation(properties.subject)}):properties}function CfnMessageTemplateEmailMessageTemplateContentPropertyFromCloudFormation(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("body","Body",properties.Body!=null?CfnMessageTemplateEmailMessageTemplateContentBodyPropertyFromCloudFormation(properties.Body):void 0),ret.addPropertyResult("headers","Headers",properties.Headers!=null?cfn_parse().FromCloudFormation.getArray(CfnMessageTemplateEmailMessageTemplateHeaderPropertyFromCloudFormation)(properties.Headers):void 0),ret.addPropertyResult("subject","Subject",properties.Subject!=null?cfn_parse().FromCloudFormation.getString(properties.Subject):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateSmsMessageTemplateContentBodyPropertyValidator(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("plainText",CfnMessageTemplateMessageTemplateBodyContentProviderPropertyValidator)(properties.plainText)),errors.wrap('supplied properties not correct for "SmsMessageTemplateContentBodyProperty"')}function convertCfnMessageTemplateSmsMessageTemplateContentBodyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateSmsMessageTemplateContentBodyPropertyValidator(properties).assertSuccess(),{PlainText:convertCfnMessageTemplateMessageTemplateBodyContentProviderPropertyToCloudFormation(properties.plainText)}):properties}function CfnMessageTemplateSmsMessageTemplateContentBodyPropertyFromCloudFormation(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("plainText","PlainText",properties.PlainText!=null?CfnMessageTemplateMessageTemplateBodyContentProviderPropertyFromCloudFormation(properties.PlainText):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateSmsMessageTemplateContentPropertyValidator(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("body",cdk().requiredValidator)(properties.body)),errors.collect(cdk().propertyValidator("body",CfnMessageTemplateSmsMessageTemplateContentBodyPropertyValidator)(properties.body)),errors.wrap('supplied properties not correct for "SmsMessageTemplateContentProperty"')}function convertCfnMessageTemplateSmsMessageTemplateContentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateSmsMessageTemplateContentPropertyValidator(properties).assertSuccess(),{Body:convertCfnMessageTemplateSmsMessageTemplateContentBodyPropertyToCloudFormation(properties.body)}):properties}function CfnMessageTemplateSmsMessageTemplateContentPropertyFromCloudFormation(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("body","Body",properties.Body!=null?CfnMessageTemplateSmsMessageTemplateContentBodyPropertyFromCloudFormation(properties.Body):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateContentPropertyValidator(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("emailMessageTemplateContent",CfnMessageTemplateEmailMessageTemplateContentPropertyValidator)(properties.emailMessageTemplateContent)),errors.collect(cdk().propertyValidator("smsMessageTemplateContent",CfnMessageTemplateSmsMessageTemplateContentPropertyValidator)(properties.smsMessageTemplateContent)),errors.wrap('supplied properties not correct for "ContentProperty"')}function convertCfnMessageTemplateContentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateContentPropertyValidator(properties).assertSuccess(),{EmailMessageTemplateContent:convertCfnMessageTemplateEmailMessageTemplateContentPropertyToCloudFormation(properties.emailMessageTemplateContent),SmsMessageTemplateContent:convertCfnMessageTemplateSmsMessageTemplateContentPropertyToCloudFormation(properties.smsMessageTemplateContent)}):properties}function CfnMessageTemplateContentPropertyFromCloudFormation(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("emailMessageTemplateContent","EmailMessageTemplateContent",properties.EmailMessageTemplateContent!=null?CfnMessageTemplateEmailMessageTemplateContentPropertyFromCloudFormation(properties.EmailMessageTemplateContent):void 0),ret.addPropertyResult("smsMessageTemplateContent","SmsMessageTemplateContent",properties.SmsMessageTemplateContent!=null?CfnMessageTemplateSmsMessageTemplateContentPropertyFromCloudFormation(properties.SmsMessageTemplateContent):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateGroupingConfigurationPropertyValidator(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("criteria",cdk().requiredValidator)(properties.criteria)),errors.collect(cdk().propertyValidator("criteria",cdk().validateString)(properties.criteria)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "GroupingConfigurationProperty"')}function convertCfnMessageTemplateGroupingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateGroupingConfigurationPropertyValidator(properties).assertSuccess(),{Criteria:cdk().stringToCloudFormation(properties.criteria),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMessageTemplateGroupingConfigurationPropertyFromCloudFormation(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("criteria","Criteria",properties.Criteria!=null?cfn_parse().FromCloudFormation.getString(properties.Criteria):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateSystemEndpointAttributesPropertyValidator(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("address",cdk().validateString)(properties.address)),errors.wrap('supplied properties not correct for "SystemEndpointAttributesProperty"')}function convertCfnMessageTemplateSystemEndpointAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateSystemEndpointAttributesPropertyValidator(properties).assertSuccess(),{Address:cdk().stringToCloudFormation(properties.address)}):properties}function CfnMessageTemplateSystemEndpointAttributesPropertyFromCloudFormation(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("address","Address",properties.Address!=null?cfn_parse().FromCloudFormation.getString(properties.Address):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateSystemAttributesPropertyValidator(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("customerEndpoint",CfnMessageTemplateSystemEndpointAttributesPropertyValidator)(properties.customerEndpoint)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("systemEndpoint",CfnMessageTemplateSystemEndpointAttributesPropertyValidator)(properties.systemEndpoint)),errors.wrap('supplied properties not correct for "SystemAttributesProperty"')}function convertCfnMessageTemplateSystemAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateSystemAttributesPropertyValidator(properties).assertSuccess(),{CustomerEndpoint:convertCfnMessageTemplateSystemEndpointAttributesPropertyToCloudFormation(properties.customerEndpoint),Name:cdk().stringToCloudFormation(properties.name),SystemEndpoint:convertCfnMessageTemplateSystemEndpointAttributesPropertyToCloudFormation(properties.systemEndpoint)}):properties}function CfnMessageTemplateSystemAttributesPropertyFromCloudFormation(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("customerEndpoint","CustomerEndpoint",properties.CustomerEndpoint!=null?CfnMessageTemplateSystemEndpointAttributesPropertyFromCloudFormation(properties.CustomerEndpoint):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("systemEndpoint","SystemEndpoint",properties.SystemEndpoint!=null?CfnMessageTemplateSystemEndpointAttributesPropertyFromCloudFormation(properties.SystemEndpoint):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateAgentAttributesPropertyValidator(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("firstName",cdk().validateString)(properties.firstName)),errors.collect(cdk().propertyValidator("lastName",cdk().validateString)(properties.lastName)),errors.wrap('supplied properties not correct for "AgentAttributesProperty"')}function convertCfnMessageTemplateAgentAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateAgentAttributesPropertyValidator(properties).assertSuccess(),{FirstName:cdk().stringToCloudFormation(properties.firstName),LastName:cdk().stringToCloudFormation(properties.lastName)}):properties}function CfnMessageTemplateAgentAttributesPropertyFromCloudFormation(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("firstName","FirstName",properties.FirstName!=null?cfn_parse().FromCloudFormation.getString(properties.FirstName):void 0),ret.addPropertyResult("lastName","LastName",properties.LastName!=null?cfn_parse().FromCloudFormation.getString(properties.LastName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateCustomerProfileAttributesPropertyValidator(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("accountNumber",cdk().validateString)(properties.accountNumber)),errors.collect(cdk().propertyValidator("additionalInformation",cdk().validateString)(properties.additionalInformation)),errors.collect(cdk().propertyValidator("address1",cdk().validateString)(properties.address1)),errors.collect(cdk().propertyValidator("address2",cdk().validateString)(properties.address2)),errors.collect(cdk().propertyValidator("address3",cdk().validateString)(properties.address3)),errors.collect(cdk().propertyValidator("address4",cdk().validateString)(properties.address4)),errors.collect(cdk().propertyValidator("billingAddress1",cdk().validateString)(properties.billingAddress1)),errors.collect(cdk().propertyValidator("billingAddress2",cdk().validateString)(properties.billingAddress2)),errors.collect(cdk().propertyValidator("billingAddress3",cdk().validateString)(properties.billingAddress3)),errors.collect(cdk().propertyValidator("billingAddress4",cdk().validateString)(properties.billingAddress4)),errors.collect(cdk().propertyValidator("billingCity",cdk().validateString)(properties.billingCity)),errors.collect(cdk().propertyValidator("billingCountry",cdk().validateString)(properties.billingCountry)),errors.collect(cdk().propertyValidator("billingCounty",cdk().validateString)(properties.billingCounty)),errors.collect(cdk().propertyValidator("billingPostalCode",cdk().validateString)(properties.billingPostalCode)),errors.collect(cdk().propertyValidator("billingProvince",cdk().validateString)(properties.billingProvince)),errors.collect(cdk().propertyValidator("billingState",cdk().validateString)(properties.billingState)),errors.collect(cdk().propertyValidator("birthDate",cdk().validateString)(properties.birthDate)),errors.collect(cdk().propertyValidator("businessEmailAddress",cdk().validateString)(properties.businessEmailAddress)),errors.collect(cdk().propertyValidator("businessName",cdk().validateString)(properties.businessName)),errors.collect(cdk().propertyValidator("businessPhoneNumber",cdk().validateString)(properties.businessPhoneNumber)),errors.collect(cdk().propertyValidator("city",cdk().validateString)(properties.city)),errors.collect(cdk().propertyValidator("country",cdk().validateString)(properties.country)),errors.collect(cdk().propertyValidator("county",cdk().validateString)(properties.county)),errors.collect(cdk().propertyValidator("custom",cdk().hashValidator(cdk().validateString))(properties.custom)),errors.collect(cdk().propertyValidator("emailAddress",cdk().validateString)(properties.emailAddress)),errors.collect(cdk().propertyValidator("firstName",cdk().validateString)(properties.firstName)),errors.collect(cdk().propertyValidator("gender",cdk().validateString)(properties.gender)),errors.collect(cdk().propertyValidator("homePhoneNumber",cdk().validateString)(properties.homePhoneNumber)),errors.collect(cdk().propertyValidator("lastName",cdk().validateString)(properties.lastName)),errors.collect(cdk().propertyValidator("mailingAddress1",cdk().validateString)(properties.mailingAddress1)),errors.collect(cdk().propertyValidator("mailingAddress2",cdk().validateString)(properties.mailingAddress2)),errors.collect(cdk().propertyValidator("mailingAddress3",cdk().validateString)(properties.mailingAddress3)),errors.collect(cdk().propertyValidator("mailingAddress4",cdk().validateString)(properties.mailingAddress4)),errors.collect(cdk().propertyValidator("mailingCity",cdk().validateString)(properties.mailingCity)),errors.collect(cdk().propertyValidator("mailingCountry",cdk().validateString)(properties.mailingCountry)),errors.collect(cdk().propertyValidator("mailingCounty",cdk().validateString)(properties.mailingCounty)),errors.collect(cdk().propertyValidator("mailingPostalCode",cdk().validateString)(properties.mailingPostalCode)),errors.collect(cdk().propertyValidator("mailingProvince",cdk().validateString)(properties.mailingProvince)),errors.collect(cdk().propertyValidator("mailingState",cdk().validateString)(properties.mailingState)),errors.collect(cdk().propertyValidator("middleName",cdk().validateString)(properties.middleName)),errors.collect(cdk().propertyValidator("mobilePhoneNumber",cdk().validateString)(properties.mobilePhoneNumber)),errors.collect(cdk().propertyValidator("partyType",cdk().validateString)(properties.partyType)),errors.collect(cdk().propertyValidator("phoneNumber",cdk().validateString)(properties.phoneNumber)),errors.collect(cdk().propertyValidator("postalCode",cdk().validateString)(properties.postalCode)),errors.collect(cdk().propertyValidator("profileArn",cdk().validateString)(properties.profileArn)),errors.collect(cdk().propertyValidator("profileId",cdk().validateString)(properties.profileId)),errors.collect(cdk().propertyValidator("province",cdk().validateString)(properties.province)),errors.collect(cdk().propertyValidator("shippingAddress1",cdk().validateString)(properties.shippingAddress1)),errors.collect(cdk().propertyValidator("shippingAddress2",cdk().validateString)(properties.shippingAddress2)),errors.collect(cdk().propertyValidator("shippingAddress3",cdk().validateString)(properties.shippingAddress3)),errors.collect(cdk().propertyValidator("shippingAddress4",cdk().validateString)(properties.shippingAddress4)),errors.collect(cdk().propertyValidator("shippingCity",cdk().validateString)(properties.shippingCity)),errors.collect(cdk().propertyValidator("shippingCountry",cdk().validateString)(properties.shippingCountry)),errors.collect(cdk().propertyValidator("shippingCounty",cdk().validateString)(properties.shippingCounty)),errors.collect(cdk().propertyValidator("shippingPostalCode",cdk().validateString)(properties.shippingPostalCode)),errors.collect(cdk().propertyValidator("shippingProvince",cdk().validateString)(properties.shippingProvince)),errors.collect(cdk().propertyValidator("shippingState",cdk().validateString)(properties.shippingState)),errors.collect(cdk().propertyValidator("state",cdk().validateString)(properties.state)),errors.wrap('supplied properties not correct for "CustomerProfileAttributesProperty"')}function convertCfnMessageTemplateCustomerProfileAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateCustomerProfileAttributesPropertyValidator(properties).assertSuccess(),{AccountNumber:cdk().stringToCloudFormation(properties.accountNumber),AdditionalInformation:cdk().stringToCloudFormation(properties.additionalInformation),Address1:cdk().stringToCloudFormation(properties.address1),Address2:cdk().stringToCloudFormation(properties.address2),Address3:cdk().stringToCloudFormation(properties.address3),Address4:cdk().stringToCloudFormation(properties.address4),BillingAddress1:cdk().stringToCloudFormation(properties.billingAddress1),BillingAddress2:cdk().stringToCloudFormation(properties.billingAddress2),BillingAddress3:cdk().stringToCloudFormation(properties.billingAddress3),BillingAddress4:cdk().stringToCloudFormation(properties.billingAddress4),BillingCity:cdk().stringToCloudFormation(properties.billingCity),BillingCountry:cdk().stringToCloudFormation(properties.billingCountry),BillingCounty:cdk().stringToCloudFormation(properties.billingCounty),BillingPostalCode:cdk().stringToCloudFormation(properties.billingPostalCode),BillingProvince:cdk().stringToCloudFormation(properties.billingProvince),BillingState:cdk().stringToCloudFormation(properties.billingState),BirthDate:cdk().stringToCloudFormation(properties.birthDate),BusinessEmailAddress:cdk().stringToCloudFormation(properties.businessEmailAddress),BusinessName:cdk().stringToCloudFormation(properties.businessName),BusinessPhoneNumber:cdk().stringToCloudFormation(properties.businessPhoneNumber),City:cdk().stringToCloudFormation(properties.city),Country:cdk().stringToCloudFormation(properties.country),County:cdk().stringToCloudFormation(properties.county),Custom:cdk().hashMapper(cdk().stringToCloudFormation)(properties.custom),EmailAddress:cdk().stringToCloudFormation(properties.emailAddress),FirstName:cdk().stringToCloudFormation(properties.firstName),Gender:cdk().stringToCloudFormation(properties.gender),HomePhoneNumber:cdk().stringToCloudFormation(properties.homePhoneNumber),LastName:cdk().stringToCloudFormation(properties.lastName),MailingAddress1:cdk().stringToCloudFormation(properties.mailingAddress1),MailingAddress2:cdk().stringToCloudFormation(properties.mailingAddress2),MailingAddress3:cdk().stringToCloudFormation(properties.mailingAddress3),MailingAddress4:cdk().stringToCloudFormation(properties.mailingAddress4),MailingCity:cdk().stringToCloudFormation(properties.mailingCity),MailingCountry:cdk().stringToCloudFormation(properties.mailingCountry),MailingCounty:cdk().stringToCloudFormation(properties.mailingCounty),MailingPostalCode:cdk().stringToCloudFormation(properties.mailingPostalCode),MailingProvince:cdk().stringToCloudFormation(properties.mailingProvince),MailingState:cdk().stringToCloudFormation(properties.mailingState),MiddleName:cdk().stringToCloudFormation(properties.middleName),MobilePhoneNumber:cdk().stringToCloudFormation(properties.mobilePhoneNumber),PartyType:cdk().stringToCloudFormation(properties.partyType),PhoneNumber:cdk().stringToCloudFormation(properties.phoneNumber),PostalCode:cdk().stringToCloudFormation(properties.postalCode),ProfileARN:cdk().stringToCloudFormation(properties.profileArn),ProfileId:cdk().stringToCloudFormation(properties.profileId),Province:cdk().stringToCloudFormation(properties.province),ShippingAddress1:cdk().stringToCloudFormation(properties.shippingAddress1),ShippingAddress2:cdk().stringToCloudFormation(properties.shippingAddress2),ShippingAddress3:cdk().stringToCloudFormation(properties.shippingAddress3),ShippingAddress4:cdk().stringToCloudFormation(properties.shippingAddress4),ShippingCity:cdk().stringToCloudFormation(properties.shippingCity),ShippingCountry:cdk().stringToCloudFormation(properties.shippingCountry),ShippingCounty:cdk().stringToCloudFormation(properties.shippingCounty),ShippingPostalCode:cdk().stringToCloudFormation(properties.shippingPostalCode),ShippingProvince:cdk().stringToCloudFormation(properties.shippingProvince),ShippingState:cdk().stringToCloudFormation(properties.shippingState),State:cdk().stringToCloudFormation(properties.state)}):properties}function CfnMessageTemplateCustomerProfileAttributesPropertyFromCloudFormation(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("accountNumber","AccountNumber",properties.AccountNumber!=null?cfn_parse().FromCloudFormation.getString(properties.AccountNumber):void 0),ret.addPropertyResult("additionalInformation","AdditionalInformation",properties.AdditionalInformation!=null?cfn_parse().FromCloudFormation.getString(properties.AdditionalInformation):void 0),ret.addPropertyResult("address1","Address1",properties.Address1!=null?cfn_parse().FromCloudFormation.getString(properties.Address1):void 0),ret.addPropertyResult("address2","Address2",properties.Address2!=null?cfn_parse().FromCloudFormation.getString(properties.Address2):void 0),ret.addPropertyResult("address3","Address3",properties.Address3!=null?cfn_parse().FromCloudFormation.getString(properties.Address3):void 0),ret.addPropertyResult("address4","Address4",properties.Address4!=null?cfn_parse().FromCloudFormation.getString(properties.Address4):void 0),ret.addPropertyResult("billingAddress1","BillingAddress1",properties.BillingAddress1!=null?cfn_parse().FromCloudFormation.getString(properties.BillingAddress1):void 0),ret.addPropertyResult("billingAddress2","BillingAddress2",properties.BillingAddress2!=null?cfn_parse().FromCloudFormation.getString(properties.BillingAddress2):void 0),ret.addPropertyResult("billingAddress3","BillingAddress3",properties.BillingAddress3!=null?cfn_parse().FromCloudFormation.getString(properties.BillingAddress3):void 0),ret.addPropertyResult("billingAddress4","BillingAddress4",properties.BillingAddress4!=null?cfn_parse().FromCloudFormation.getString(properties.BillingAddress4):void 0),ret.addPropertyResult("billingCity","BillingCity",properties.BillingCity!=null?cfn_parse().FromCloudFormation.getString(properties.BillingCity):void 0),ret.addPropertyResult("billingCountry","BillingCountry",properties.BillingCountry!=null?cfn_parse().FromCloudFormation.getString(properties.BillingCountry):void 0),ret.addPropertyResult("billingCounty","BillingCounty",properties.BillingCounty!=null?cfn_parse().FromCloudFormation.getString(properties.BillingCounty):void 0),ret.addPropertyResult("billingPostalCode","BillingPostalCode",properties.BillingPostalCode!=null?cfn_parse().FromCloudFormation.getString(properties.BillingPostalCode):void 0),ret.addPropertyResult("billingProvince","BillingProvince",properties.BillingProvince!=null?cfn_parse().FromCloudFormation.getString(properties.BillingProvince):void 0),ret.addPropertyResult("billingState","BillingState",properties.BillingState!=null?cfn_parse().FromCloudFormation.getString(properties.BillingState):void 0),ret.addPropertyResult("birthDate","BirthDate",properties.BirthDate!=null?cfn_parse().FromCloudFormation.getString(properties.BirthDate):void 0),ret.addPropertyResult("businessEmailAddress","BusinessEmailAddress",properties.BusinessEmailAddress!=null?cfn_parse().FromCloudFormation.getString(properties.BusinessEmailAddress):void 0),ret.addPropertyResult("businessName","BusinessName",properties.BusinessName!=null?cfn_parse().FromCloudFormation.getString(properties.BusinessName):void 0),ret.addPropertyResult("businessPhoneNumber","BusinessPhoneNumber",properties.BusinessPhoneNumber!=null?cfn_parse().FromCloudFormation.getString(properties.BusinessPhoneNumber):void 0),ret.addPropertyResult("city","City",properties.City!=null?cfn_parse().FromCloudFormation.getString(properties.City):void 0),ret.addPropertyResult("country","Country",properties.Country!=null?cfn_parse().FromCloudFormation.getString(properties.Country):void 0),ret.addPropertyResult("county","County",properties.County!=null?cfn_parse().FromCloudFormation.getString(properties.County):void 0),ret.addPropertyResult("custom","Custom",properties.Custom!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Custom):void 0),ret.addPropertyResult("emailAddress","EmailAddress",properties.EmailAddress!=null?cfn_parse().FromCloudFormation.getString(properties.EmailAddress):void 0),ret.addPropertyResult("firstName","FirstName",properties.FirstName!=null?cfn_parse().FromCloudFormation.getString(properties.FirstName):void 0),ret.addPropertyResult("gender","Gender",properties.Gender!=null?cfn_parse().FromCloudFormation.getString(properties.Gender):void 0),ret.addPropertyResult("homePhoneNumber","HomePhoneNumber",properties.HomePhoneNumber!=null?cfn_parse().FromCloudFormation.getString(properties.HomePhoneNumber):void 0),ret.addPropertyResult("lastName","LastName",properties.LastName!=null?cfn_parse().FromCloudFormation.getString(properties.LastName):void 0),ret.addPropertyResult("mailingAddress1","MailingAddress1",properties.MailingAddress1!=null?cfn_parse().FromCloudFormation.getString(properties.MailingAddress1):void 0),ret.addPropertyResult("mailingAddress2","MailingAddress2",properties.MailingAddress2!=null?cfn_parse().FromCloudFormation.getString(properties.MailingAddress2):void 0),ret.addPropertyResult("mailingAddress3","MailingAddress3",properties.MailingAddress3!=null?cfn_parse().FromCloudFormation.getString(properties.MailingAddress3):void 0),ret.addPropertyResult("mailingAddress4","MailingAddress4",properties.MailingAddress4!=null?cfn_parse().FromCloudFormation.getString(properties.MailingAddress4):void 0),ret.addPropertyResult("mailingCity","MailingCity",properties.MailingCity!=null?cfn_parse().FromCloudFormation.getString(properties.MailingCity):void 0),ret.addPropertyResult("mailingCountry","MailingCountry",properties.MailingCountry!=null?cfn_parse().FromCloudFormation.getString(properties.MailingCountry):void 0),ret.addPropertyResult("mailingCounty","MailingCounty",properties.MailingCounty!=null?cfn_parse().FromCloudFormation.getString(properties.MailingCounty):void 0),ret.addPropertyResult("mailingPostalCode","MailingPostalCode",properties.MailingPostalCode!=null?cfn_parse().FromCloudFormation.getString(properties.MailingPostalCode):void 0),ret.addPropertyResult("mailingProvince","MailingProvince",properties.MailingProvince!=null?cfn_parse().FromCloudFormation.getString(properties.MailingProvince):void 0),ret.addPropertyResult("mailingState","MailingState",properties.MailingState!=null?cfn_parse().FromCloudFormation.getString(properties.MailingState):void 0),ret.addPropertyResult("middleName","MiddleName",properties.MiddleName!=null?cfn_parse().FromCloudFormation.getString(properties.MiddleName):void 0),ret.addPropertyResult("mobilePhoneNumber","MobilePhoneNumber",properties.MobilePhoneNumber!=null?cfn_parse().FromCloudFormation.getString(properties.MobilePhoneNumber):void 0),ret.addPropertyResult("partyType","PartyType",properties.PartyType!=null?cfn_parse().FromCloudFormation.getString(properties.PartyType):void 0),ret.addPropertyResult("phoneNumber","PhoneNumber",properties.PhoneNumber!=null?cfn_parse().FromCloudFormation.getString(properties.PhoneNumber):void 0),ret.addPropertyResult("postalCode","PostalCode",properties.PostalCode!=null?cfn_parse().FromCloudFormation.getString(properties.PostalCode):void 0),ret.addPropertyResult("profileArn","ProfileARN",properties.ProfileARN!=null?cfn_parse().FromCloudFormation.getString(properties.ProfileARN):void 0),ret.addPropertyResult("profileId","ProfileId",properties.ProfileId!=null?cfn_parse().FromCloudFormation.getString(properties.ProfileId):void 0),ret.addPropertyResult("province","Province",properties.Province!=null?cfn_parse().FromCloudFormation.getString(properties.Province):void 0),ret.addPropertyResult("shippingAddress1","ShippingAddress1",properties.ShippingAddress1!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingAddress1):void 0),ret.addPropertyResult("shippingAddress2","ShippingAddress2",properties.ShippingAddress2!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingAddress2):void 0),ret.addPropertyResult("shippingAddress3","ShippingAddress3",properties.ShippingAddress3!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingAddress3):void 0),ret.addPropertyResult("shippingAddress4","ShippingAddress4",properties.ShippingAddress4!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingAddress4):void 0),ret.addPropertyResult("shippingCity","ShippingCity",properties.ShippingCity!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingCity):void 0),ret.addPropertyResult("shippingCountry","ShippingCountry",properties.ShippingCountry!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingCountry):void 0),ret.addPropertyResult("shippingCounty","ShippingCounty",properties.ShippingCounty!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingCounty):void 0),ret.addPropertyResult("shippingPostalCode","ShippingPostalCode",properties.ShippingPostalCode!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingPostalCode):void 0),ret.addPropertyResult("shippingProvince","ShippingProvince",properties.ShippingProvince!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingProvince):void 0),ret.addPropertyResult("shippingState","ShippingState",properties.ShippingState!=null?cfn_parse().FromCloudFormation.getString(properties.ShippingState):void 0),ret.addPropertyResult("state","State",properties.State!=null?cfn_parse().FromCloudFormation.getString(properties.State):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateMessageTemplateAttributesPropertyValidator(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("agentAttributes",CfnMessageTemplateAgentAttributesPropertyValidator)(properties.agentAttributes)),errors.collect(cdk().propertyValidator("customAttributes",cdk().hashValidator(cdk().validateString))(properties.customAttributes)),errors.collect(cdk().propertyValidator("customerProfileAttributes",CfnMessageTemplateCustomerProfileAttributesPropertyValidator)(properties.customerProfileAttributes)),errors.collect(cdk().propertyValidator("systemAttributes",CfnMessageTemplateSystemAttributesPropertyValidator)(properties.systemAttributes)),errors.wrap('supplied properties not correct for "MessageTemplateAttributesProperty"')}function convertCfnMessageTemplateMessageTemplateAttributesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateMessageTemplateAttributesPropertyValidator(properties).assertSuccess(),{AgentAttributes:convertCfnMessageTemplateAgentAttributesPropertyToCloudFormation(properties.agentAttributes),CustomAttributes:cdk().hashMapper(cdk().stringToCloudFormation)(properties.customAttributes),CustomerProfileAttributes:convertCfnMessageTemplateCustomerProfileAttributesPropertyToCloudFormation(properties.customerProfileAttributes),SystemAttributes:convertCfnMessageTemplateSystemAttributesPropertyToCloudFormation(properties.systemAttributes)}):properties}function CfnMessageTemplateMessageTemplateAttributesPropertyFromCloudFormation(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("agentAttributes","AgentAttributes",properties.AgentAttributes!=null?CfnMessageTemplateAgentAttributesPropertyFromCloudFormation(properties.AgentAttributes):void 0),ret.addPropertyResult("customAttributes","CustomAttributes",properties.CustomAttributes!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.CustomAttributes):void 0),ret.addPropertyResult("customerProfileAttributes","CustomerProfileAttributes",properties.CustomerProfileAttributes!=null?CfnMessageTemplateCustomerProfileAttributesPropertyFromCloudFormation(properties.CustomerProfileAttributes):void 0),ret.addPropertyResult("systemAttributes","SystemAttributes",properties.SystemAttributes!=null?CfnMessageTemplateSystemAttributesPropertyFromCloudFormation(properties.SystemAttributes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplateMessageTemplateAttachmentPropertyValidator(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("attachmentId",cdk().validateString)(properties.attachmentId)),errors.collect(cdk().propertyValidator("attachmentName",cdk().requiredValidator)(properties.attachmentName)),errors.collect(cdk().propertyValidator("attachmentName",cdk().validateString)(properties.attachmentName)),errors.collect(cdk().propertyValidator("s3PresignedUrl",cdk().requiredValidator)(properties.s3PresignedUrl)),errors.collect(cdk().propertyValidator("s3PresignedUrl",cdk().validateString)(properties.s3PresignedUrl)),errors.wrap('supplied properties not correct for "MessageTemplateAttachmentProperty"')}function convertCfnMessageTemplateMessageTemplateAttachmentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateMessageTemplateAttachmentPropertyValidator(properties).assertSuccess(),{AttachmentId:cdk().stringToCloudFormation(properties.attachmentId),AttachmentName:cdk().stringToCloudFormation(properties.attachmentName),S3PresignedUrl:cdk().stringToCloudFormation(properties.s3PresignedUrl)}):properties}function CfnMessageTemplateMessageTemplateAttachmentPropertyFromCloudFormation(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("attachmentId","AttachmentId",properties.AttachmentId!=null?cfn_parse().FromCloudFormation.getString(properties.AttachmentId):void 0),ret.addPropertyResult("attachmentName","AttachmentName",properties.AttachmentName!=null?cfn_parse().FromCloudFormation.getString(properties.AttachmentName):void 0),ret.addPropertyResult("s3PresignedUrl","S3PresignedUrl",properties.S3PresignedUrl!=null?cfn_parse().FromCloudFormation.getString(properties.S3PresignedUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMessageTemplatePropsValidator(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("channelSubtype",cdk().requiredValidator)(properties.channelSubtype)),errors.collect(cdk().propertyValidator("channelSubtype",cdk().validateString)(properties.channelSubtype)),errors.collect(cdk().propertyValidator("content",cdk().requiredValidator)(properties.content)),errors.collect(cdk().propertyValidator("content",CfnMessageTemplateContentPropertyValidator)(properties.content)),errors.collect(cdk().propertyValidator("defaultAttributes",CfnMessageTemplateMessageTemplateAttributesPropertyValidator)(properties.defaultAttributes)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("groupingConfiguration",CfnMessageTemplateGroupingConfigurationPropertyValidator)(properties.groupingConfiguration)),errors.collect(cdk().propertyValidator("knowledgeBaseArn",cdk().requiredValidator)(properties.knowledgeBaseArn)),errors.collect(cdk().propertyValidator("knowledgeBaseArn",cdk().validateString)(properties.knowledgeBaseArn)),errors.collect(cdk().propertyValidator("language",cdk().validateString)(properties.language)),errors.collect(cdk().propertyValidator("messageTemplateAttachments",cdk().listValidator(CfnMessageTemplateMessageTemplateAttachmentPropertyValidator))(properties.messageTemplateAttachments)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMessageTemplateProps"')}function convertCfnMessageTemplatePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplatePropsValidator(properties).assertSuccess(),{ChannelSubtype:cdk().stringToCloudFormation(properties.channelSubtype),Content:convertCfnMessageTemplateContentPropertyToCloudFormation(properties.content),DefaultAttributes:convertCfnMessageTemplateMessageTemplateAttributesPropertyToCloudFormation(properties.defaultAttributes),Description:cdk().stringToCloudFormation(properties.description),GroupingConfiguration:convertCfnMessageTemplateGroupingConfigurationPropertyToCloudFormation(properties.groupingConfiguration),KnowledgeBaseArn:cdk().stringToCloudFormation(properties.knowledgeBaseArn),Language:cdk().stringToCloudFormation(properties.language),MessageTemplateAttachments:cdk().listMapper(convertCfnMessageTemplateMessageTemplateAttachmentPropertyToCloudFormation)(properties.messageTemplateAttachments),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMessageTemplatePropsFromCloudFormation(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("channelSubtype","ChannelSubtype",properties.ChannelSubtype!=null?cfn_parse().FromCloudFormation.getString(properties.ChannelSubtype):void 0),ret.addPropertyResult("content","Content",properties.Content!=null?CfnMessageTemplateContentPropertyFromCloudFormation(properties.Content):void 0),ret.addPropertyResult("defaultAttributes","DefaultAttributes",properties.DefaultAttributes!=null?CfnMessageTemplateMessageTemplateAttributesPropertyFromCloudFormation(properties.DefaultAttributes):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("groupingConfiguration","GroupingConfiguration",properties.GroupingConfiguration!=null?CfnMessageTemplateGroupingConfigurationPropertyFromCloudFormation(properties.GroupingConfiguration):void 0),ret.addPropertyResult("knowledgeBaseArn","KnowledgeBaseArn",properties.KnowledgeBaseArn!=null?cfn_parse().FromCloudFormation.getString(properties.KnowledgeBaseArn):void 0),ret.addPropertyResult("language","Language",properties.Language!=null?cfn_parse().FromCloudFormation.getString(properties.Language):void 0),ret.addPropertyResult("messageTemplateAttachments","MessageTemplateAttachments",properties.MessageTemplateAttachments!=null?cfn_parse().FromCloudFormation.getArray(CfnMessageTemplateMessageTemplateAttachmentPropertyFromCloudFormation)(properties.MessageTemplateAttachments):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):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 CfnMessageTemplateVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnMessageTemplateVersion",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::MessageTemplateVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMessageTemplateVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMessageTemplateVersion(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 isCfnMessageTemplateVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMessageTemplateVersion.CFN_RESOURCE_TYPE_NAME}static arnForMessageTemplateVersion(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IMessageTemplateVersionRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMessageTemplateVersion),error}return resource.messageTemplateVersionRef.messageTemplateVersionArn}_messageTemplateArn;_messageTemplateContentSha256;cfnPropertyNames={messageTemplateArn:"MessageTemplateArn",messageTemplateContentSha256:"MessageTemplateContentSha256"};constructor(scope,id,props){super(scope,id,{type:CfnMessageTemplateVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnMessageTemplateVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMessageTemplateVersion),error}cdk().requireProperty(props,"messageTemplateArn",this),this._messageTemplateArn=props.messageTemplateArn,this._messageTemplateContentSha256=props.messageTemplateContentSha256}get messageTemplateVersionRef(){return{messageTemplateVersionArn:this.ref}}get messageTemplateArn(){return this._messageTemplateArn}set messageTemplateArn(value){cdk().traceProperty(this.node,"MessageTemplateArn"),this._messageTemplateArn=value}get messageTemplateContentSha256(){return this._messageTemplateContentSha256}set messageTemplateContentSha256(value){cdk().traceProperty(this.node,"MessageTemplateContentSha256"),this._messageTemplateContentSha256=value}get attrMessageTemplateVersionArn(){return cdk().Token.asString(this.getAtt("MessageTemplateVersionArn",cdk().ResolutionTypeHint.STRING))}get attrMessageTemplateVersionNumber(){return this.getAtt("MessageTemplateVersionNumber",cdk().ResolutionTypeHint.NUMBER)}get cfnProperties(){return{messageTemplateArn:this._messageTemplateArn,messageTemplateContentSha256:this._messageTemplateContentSha256}}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",CfnMessageTemplateVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMessageTemplateVersionPropsToCloudFormation(props)}}exports.CfnMessageTemplateVersion=CfnMessageTemplateVersion;function CfnMessageTemplateVersionPropsValidator(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("messageTemplateArn",cdk().requiredValidator)(properties.messageTemplateArn)),errors.collect(cdk().propertyValidator("messageTemplateArn",cdk().validateString)(properties.messageTemplateArn)),errors.collect(cdk().propertyValidator("messageTemplateContentSha256",cdk().validateString)(properties.messageTemplateContentSha256)),errors.wrap('supplied properties not correct for "CfnMessageTemplateVersionProps"')}function convertCfnMessageTemplateVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMessageTemplateVersionPropsValidator(properties).assertSuccess(),{MessageTemplateArn:cdk().stringToCloudFormation(properties.messageTemplateArn),MessageTemplateContentSha256:cdk().stringToCloudFormation(properties.messageTemplateContentSha256)}):properties}function CfnMessageTemplateVersionPropsFromCloudFormation(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("messageTemplateArn","MessageTemplateArn",properties.MessageTemplateArn!=null?cfn_parse().FromCloudFormation.getString(properties.MessageTemplateArn):void 0),ret.addPropertyResult("messageTemplateContentSha256","MessageTemplateContentSha256",properties.MessageTemplateContentSha256!=null?cfn_parse().FromCloudFormation.getString(properties.MessageTemplateContentSha256):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnQuickResponse extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_wisdom.CfnQuickResponse",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::Wisdom::QuickResponse";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnQuickResponsePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnQuickResponse(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 isCfnQuickResponse(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnQuickResponse.CFN_RESOURCE_TYPE_NAME}static arnForQuickResponse(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_wisdom_IQuickResponseRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForQuickResponse),error}return resource.quickResponseRef.quickResponseArn}cdkTagManager;_channels;_content;_contentType;_description;_groupingConfiguration;_isActive;_knowledgeBaseArn;_language;_name;_shortcutKey;_tags;cfnPropertyNames={tags:"Tags",channels:"Channels",content:"Content",contentType:"ContentType",description:"Description",groupingConfiguration:"GroupingConfiguration",isActive:"IsActive",knowledgeBaseArn:"KnowledgeBaseArn",language:"Language",name:"Name",shortcutKey:"ShortcutKey"};constructor(scope,id,props){super(scope,id,{type:CfnQuickResponse.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_wisdom_CfnQuickResponseProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnQuickResponse),error}cdk().requireProperty(props,"content",this),cdk().requireProperty(props,"knowledgeBaseArn",this),cdk().requireProperty(props,"name",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::Wisdom::QuickResponse",void 0,{tagPropertyName:"tags"}),this._channels=props.channels,this._content=props.content,this._contentType=props.contentType,this._description=props.description,this._groupingConfiguration=props.groupingConfiguration,this._isActive=props.isActive,this._knowledgeBaseArn=props.knowledgeBaseArn,this._language=props.language,this._name=props.name,this._shortcutKey=props.shortcutKey,this._tags=props.tags}get quickResponseRef(){return{quickResponseArn:this.ref}}get channels(){return this._channels}set channels(value){cdk().traceProperty(this.node,"Channels"),this._channels=value}get content(){return this._content}set content(value){cdk().traceProperty(this.node,"Content"),this._content=value}get contentType(){return this._contentType}set contentType(value){cdk().traceProperty(this.node,"ContentType"),this._contentType=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get groupingConfiguration(){return this._groupingConfiguration}set groupingConfiguration(value){cdk().traceProperty(this.node,"GroupingConfiguration"),this._groupingConfiguration=value}get isActive(){return this._isActive}set isActive(value){cdk().traceProperty(this.node,"IsActive"),this._isActive=value}get knowledgeBaseArn(){return this._knowledgeBaseArn}set knowledgeBaseArn(value){cdk().traceProperty(this.node,"KnowledgeBaseArn"),this._knowledgeBaseArn=value}get language(){return this._language}set language(value){cdk().traceProperty(this.node,"Language"),this._language=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get shortcutKey(){return this._shortcutKey}set shortcutKey(value){cdk().traceProperty(this.node,"ShortcutKey"),this._shortcutKey=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrContents(){return this.getAtt("Contents")}get attrQuickResponseArn(){return cdk().Token.asString(this.getAtt("QuickResponseArn",cdk().ResolutionTypeHint.STRING))}get attrQuickResponseId(){return cdk().Token.asString(this.getAtt("QuickResponseId",cdk().ResolutionTypeHint.STRING))}get attrStatus(){return cdk().Token.asString(this.getAtt("Status",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),channels:this._channels,content:this._content,contentType:this._contentType,description:this._description,groupingConfiguration:this._groupingConfiguration,isActive:this._isActive,knowledgeBaseArn:this._knowledgeBaseArn,language:this._language,name:this._name,shortcutKey:this._shortcutKey}}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",CfnQuickResponse.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnQuickResponsePropsToCloudFormation(props)}}exports.CfnQuickResponse=CfnQuickResponse;function CfnQuickResponseQuickResponseContentProviderPropertyValidator(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("content",cdk().validateString)(properties.content)),errors.wrap('supplied properties not correct for "QuickResponseContentProviderProperty"')}function convertCfnQuickResponseQuickResponseContentProviderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnQuickResponseQuickResponseContentProviderPropertyValidator(properties).assertSuccess(),{Content:cdk().stringToCloudFormation(properties.content)}):properties}function CfnQuickResponseQuickResponseContentProviderPropertyFromCloudFormation(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("content","Content",properties.Content!=null?cfn_parse().FromCloudFormation.getString(properties.Content):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnQuickResponseGroupingConfigurationPropertyValidator(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("criteria",cdk().requiredValidator)(properties.criteria)),errors.collect(cdk().propertyValidator("criteria",cdk().validateString)(properties.criteria)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "GroupingConfigurationProperty"')}function convertCfnQuickResponseGroupingConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnQuickResponseGroupingConfigurationPropertyValidator(properties).assertSuccess(),{Criteria:cdk().stringToCloudFormation(properties.criteria),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnQuickResponseGroupingConfigurationPropertyFromCloudFormation(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("criteria","Criteria",properties.Criteria!=null?cfn_parse().FromCloudFormation.getString(properties.Criteria):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnQuickResponseQuickResponseContentsPropertyValidator(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("markdown",CfnQuickResponseQuickResponseContentProviderPropertyValidator)(properties.markdown)),errors.collect(cdk().propertyValidator("plainText",CfnQuickResponseQuickResponseContentProviderPropertyValidator)(properties.plainText)),errors.wrap('supplied properties not correct for "QuickResponseContentsProperty"')}function convertCfnQuickResponseQuickResponseContentsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnQuickResponseQuickResponseContentsPropertyValidator(properties).assertSuccess(),{Markdown:convertCfnQuickResponseQuickResponseContentProviderPropertyToCloudFormation(properties.markdown),PlainText:convertCfnQuickResponseQuickResponseContentProviderPropertyToCloudFormation(properties.plainText)}):properties}function CfnQuickResponseQuickResponseContentsPropertyFromCloudFormation(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("markdown","Markdown",properties.Markdown!=null?CfnQuickResponseQuickResponseContentProviderPropertyFromCloudFormation(properties.Markdown):void 0),ret.addPropertyResult("plainText","PlainText",properties.PlainText!=null?CfnQuickResponseQuickResponseContentProviderPropertyFromCloudFormation(properties.PlainText):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnQuickResponsePropsValidator(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("channels",cdk().listValidator(cdk().validateString))(properties.channels)),errors.collect(cdk().propertyValidator("content",cdk().requiredValidator)(properties.content)),errors.collect(cdk().propertyValidator("content",CfnQuickResponseQuickResponseContentProviderPropertyValidator)(properties.content)),errors.collect(cdk().propertyValidator("contentType",cdk().validateString)(properties.contentType)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("groupingConfiguration",CfnQuickResponseGroupingConfigurationPropertyValidator)(properties.groupingConfiguration)),errors.collect(cdk().propertyValidator("isActive",cdk().validateBoolean)(properties.isActive)),errors.collect(cdk().propertyValidator("knowledgeBaseArn",cdk().requiredValidator)(properties.knowledgeBaseArn)),errors.collect(cdk().propertyValidator("knowledgeBaseArn",cdk().validateString)(properties.knowledgeBaseArn)),errors.collect(cdk().propertyValidator("language",cdk().validateString)(properties.language)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("shortcutKey",cdk().validateString)(properties.shortcutKey)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnQuickResponseProps"')}function convertCfnQuickResponsePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnQuickResponsePropsValidator(properties).assertSuccess(),{Channels:cdk().listMapper(cdk().stringToCloudFormation)(properties.channels),Content:convertCfnQuickResponseQuickResponseContentProviderPropertyToCloudFormation(properties.content),ContentType:cdk().stringToCloudFormation(properties.contentType),Description:cdk().stringToCloudFormation(properties.description),GroupingConfiguration:convertCfnQuickResponseGroupingConfigurationPropertyToCloudFormation(properties.groupingConfiguration),IsActive:cdk().booleanToCloudFormation(properties.isActive),KnowledgeBaseArn:cdk().stringToCloudFormation(properties.knowledgeBaseArn),Language:cdk().stringToCloudFormation(properties.language),Name:cdk().stringToCloudFormation(properties.name),ShortcutKey:cdk().stringToCloudFormation(properties.shortcutKey),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnQuickResponsePropsFromCloudFormation(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("channels","Channels",properties.Channels!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Channels):void 0),ret.addPropertyResult("content","Content",properties.Content!=null?CfnQuickResponseQuickResponseContentProviderPropertyFromCloudFormation(properties.Content):void 0),ret.addPropertyResult("contentType","ContentType",properties.ContentType!=null?cfn_parse().FromCloudFormation.getString(properties.ContentType):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("groupingConfiguration","GroupingConfiguration",properties.GroupingConfiguration!=null?CfnQuickResponseGroupingConfigurationPropertyFromCloudFormation(properties.GroupingConfiguration):void 0),ret.addPropertyResult("isActive","IsActive",properties.IsActive!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IsActive):void 0),ret.addPropertyResult("knowledgeBaseArn","KnowledgeBaseArn",properties.KnowledgeBaseArn!=null?cfn_parse().FromCloudFormation.getString(properties.KnowledgeBaseArn):void 0),ret.addPropertyResult("language","Language",properties.Language!=null?cfn_parse().FromCloudFormation.getString(properties.Language):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("shortcutKey","ShortcutKey",properties.ShortcutKey!=null?cfn_parse().FromCloudFormation.getString(properties.ShortcutKey):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}