"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnStudioLifecycleConfig=exports.CfnProcessingJob=exports.CfnPartnerApp=exports.CfnMlflowTrackingServer=exports.CfnInferenceComponent=exports.CfnCluster=exports.CfnWorkteam=exports.CfnUserProfile=exports.CfnSpace=exports.CfnProject=exports.CfnPipeline=exports.CfnNotebookInstanceLifecycleConfig=exports.CfnNotebookInstance=exports.CfnMonitoringSchedule=exports.CfnModelQualityJobDefinition=exports.CfnModelPackageGroup=exports.CfnModelPackage=exports.CfnModelExplainabilityJobDefinition=exports.CfnModelCard=exports.CfnModelBiasJobDefinition=exports.CfnModel=exports.CfnInferenceExperiment=exports.CfnImageVersion=exports.CfnImage=exports.CfnFeatureGroup=exports.CfnEndpointConfig=exports.CfnEndpoint=exports.CfnDomain=exports.CfnDeviceFleet=exports.CfnDevice=exports.CfnDataQualityJobDefinition=exports.CfnCodeRepository=exports.CfnAppImageConfig=exports.CfnApp=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 CfnApp extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnApp",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::App";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAppPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnApp(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 isCfnApp(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnApp.CFN_RESOURCE_TYPE_NAME}static arnForApp(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IAppRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForApp),error}return resource.appRef.appArn}_appName;_appType;_domainId;_recoveryMode;_resourceSpec;tags;_tagsRaw;_userProfileName;cfnPropertyNames={appName:"AppName",appType:"AppType",domainId:"DomainId",recoveryMode:"RecoveryMode",resourceSpec:"ResourceSpec",tags:"Tags",userProfileName:"UserProfileName"};constructor(scope,id,props){super(scope,id,{type:CfnApp.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnAppProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApp),error}cdk().requireProperty(props,"appName",this),cdk().requireProperty(props,"appType",this),cdk().requireProperty(props,"domainId",this),cdk().requireProperty(props,"userProfileName",this),this._appName=props.appName,this._appType=props.appType,this._domainId=props.domainId,this._recoveryMode=props.recoveryMode,this._resourceSpec=props.resourceSpec,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::App",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._userProfileName=props.userProfileName}get appRef(){return{appName:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),appType:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),domainId:cdk().Fn.select(2,cdk().Fn.split("|",this.ref)),userProfileName:cdk().Fn.select(3,cdk().Fn.split("|",this.ref)),appArn:this.attrAppArn}}get appName(){return this._appName}set appName(value){cdk().traceProperty(this.node,"AppName"),this._appName=value}get appType(){return this._appType}set appType(value){cdk().traceProperty(this.node,"AppType"),this._appType=value}get domainId(){return this._domainId}set domainId(value){cdk().traceProperty(this.node,"DomainId"),this._domainId=value}get recoveryMode(){return this._recoveryMode}set recoveryMode(value){cdk().traceProperty(this.node,"RecoveryMode"),this._recoveryMode=value}get resourceSpec(){return this._resourceSpec}set resourceSpec(value){cdk().traceProperty(this.node,"ResourceSpec"),this._resourceSpec=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get userProfileName(){return this._userProfileName}set userProfileName(value){cdk().traceProperty(this.node,"UserProfileName"),this._userProfileName=value}get attrAppArn(){return cdk().Token.asString(this.getAtt("AppArn",cdk().ResolutionTypeHint.STRING))}get attrBuiltInLifecycleConfigArn(){return cdk().Token.asString(this.getAtt("BuiltInLifecycleConfigArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{appName:this._appName,appType:this._appType,domainId:this._domainId,recoveryMode:this._recoveryMode,resourceSpec:this._resourceSpec,tags:this.tags.renderTags(),userProfileName:this._userProfileName}}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",CfnApp.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAppPropsToCloudFormation(props)}}exports.CfnApp=CfnApp;function CfnAppResourceSpecPropertyValidator(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("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("lifecycleConfigArn",cdk().validateString)(properties.lifecycleConfigArn)),errors.collect(cdk().propertyValidator("sageMakerImageArn",cdk().validateString)(properties.sageMakerImageArn)),errors.collect(cdk().propertyValidator("sageMakerImageVersionArn",cdk().validateString)(properties.sageMakerImageVersionArn)),errors.wrap('supplied properties not correct for "ResourceSpecProperty"')}function convertCfnAppResourceSpecPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppResourceSpecPropertyValidator(properties).assertSuccess(),{InstanceType:cdk().stringToCloudFormation(properties.instanceType),LifecycleConfigArn:cdk().stringToCloudFormation(properties.lifecycleConfigArn),SageMakerImageArn:cdk().stringToCloudFormation(properties.sageMakerImageArn),SageMakerImageVersionArn:cdk().stringToCloudFormation(properties.sageMakerImageVersionArn)}):properties}function CfnAppResourceSpecPropertyFromCloudFormation(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("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("lifecycleConfigArn","LifecycleConfigArn",properties.LifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.LifecycleConfigArn):void 0),ret.addPropertyResult("sageMakerImageArn","SageMakerImageArn",properties.SageMakerImageArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageArn):void 0),ret.addPropertyResult("sageMakerImageVersionArn","SageMakerImageVersionArn",properties.SageMakerImageVersionArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageVersionArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppPropsValidator(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("appName",cdk().requiredValidator)(properties.appName)),errors.collect(cdk().propertyValidator("appName",cdk().validateString)(properties.appName)),errors.collect(cdk().propertyValidator("appType",cdk().requiredValidator)(properties.appType)),errors.collect(cdk().propertyValidator("appType",cdk().validateString)(properties.appType)),errors.collect(cdk().propertyValidator("domainId",cdk().requiredValidator)(properties.domainId)),errors.collect(cdk().propertyValidator("domainId",cdk().validateString)(properties.domainId)),errors.collect(cdk().propertyValidator("recoveryMode",cdk().validateBoolean)(properties.recoveryMode)),errors.collect(cdk().propertyValidator("resourceSpec",CfnAppResourceSpecPropertyValidator)(properties.resourceSpec)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("userProfileName",cdk().requiredValidator)(properties.userProfileName)),errors.collect(cdk().propertyValidator("userProfileName",cdk().validateString)(properties.userProfileName)),errors.wrap('supplied properties not correct for "CfnAppProps"')}function convertCfnAppPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppPropsValidator(properties).assertSuccess(),{AppName:cdk().stringToCloudFormation(properties.appName),AppType:cdk().stringToCloudFormation(properties.appType),DomainId:cdk().stringToCloudFormation(properties.domainId),RecoveryMode:cdk().booleanToCloudFormation(properties.recoveryMode),ResourceSpec:convertCfnAppResourceSpecPropertyToCloudFormation(properties.resourceSpec),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),UserProfileName:cdk().stringToCloudFormation(properties.userProfileName)}):properties}function CfnAppPropsFromCloudFormation(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("appName","AppName",properties.AppName!=null?cfn_parse().FromCloudFormation.getString(properties.AppName):void 0),ret.addPropertyResult("appType","AppType",properties.AppType!=null?cfn_parse().FromCloudFormation.getString(properties.AppType):void 0),ret.addPropertyResult("domainId","DomainId",properties.DomainId!=null?cfn_parse().FromCloudFormation.getString(properties.DomainId):void 0),ret.addPropertyResult("recoveryMode","RecoveryMode",properties.RecoveryMode!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RecoveryMode):void 0),ret.addPropertyResult("resourceSpec","ResourceSpec",properties.ResourceSpec!=null?CfnAppResourceSpecPropertyFromCloudFormation(properties.ResourceSpec):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("userProfileName","UserProfileName",properties.UserProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.UserProfileName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAppImageConfig extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnAppImageConfig",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::AppImageConfig";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAppImageConfigPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAppImageConfig(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 isCfnAppImageConfig(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAppImageConfig.CFN_RESOURCE_TYPE_NAME}static fromAppImageConfigArn(scope,id,arn){class Import extends cdk().Resource{appImageConfigRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:app-image-config/${AppImageConfigName}").parse(arn2);this.appImageConfigRef={appImageConfigName:variables.AppImageConfigName,appImageConfigArn:arn2}}}return new Import(scope,id,arn)}static fromAppImageConfigName(scope,id,appImageConfigName){class Import extends cdk().Resource{appImageConfigRef;constructor(scope2,id2,appImageConfigName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:app-image-config/${AppImageConfigName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,AppImageConfigName:appImageConfigName2});super(scope2,id2,{environmentFromArn:arn}),this.appImageConfigRef={appImageConfigName:appImageConfigName2,appImageConfigArn:arn}}}return new Import(scope,id,appImageConfigName)}static arnForAppImageConfig(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IAppImageConfigRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAppImageConfig),error}return resource.appImageConfigRef.appImageConfigArn}_appImageConfigName;_codeEditorAppImageConfig;_jupyterLabAppImageConfig;_kernelGatewayImageConfig;tags;_tagsRaw;cfnPropertyNames={appImageConfigName:"AppImageConfigName",codeEditorAppImageConfig:"CodeEditorAppImageConfig",jupyterLabAppImageConfig:"JupyterLabAppImageConfig",kernelGatewayImageConfig:"KernelGatewayImageConfig",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnAppImageConfig.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnAppImageConfigProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAppImageConfig),error}cdk().requireProperty(props,"appImageConfigName",this),this._appImageConfigName=props.appImageConfigName,this._codeEditorAppImageConfig=props.codeEditorAppImageConfig,this._jupyterLabAppImageConfig=props.jupyterLabAppImageConfig,this._kernelGatewayImageConfig=props.kernelGatewayImageConfig,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::AppImageConfig",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get appImageConfigRef(){return{appImageConfigName:this.ref,appImageConfigArn:this.attrAppImageConfigArn}}get appImageConfigName(){return this._appImageConfigName}set appImageConfigName(value){cdk().traceProperty(this.node,"AppImageConfigName"),this._appImageConfigName=value}get codeEditorAppImageConfig(){return this._codeEditorAppImageConfig}set codeEditorAppImageConfig(value){cdk().traceProperty(this.node,"CodeEditorAppImageConfig"),this._codeEditorAppImageConfig=value}get jupyterLabAppImageConfig(){return this._jupyterLabAppImageConfig}set jupyterLabAppImageConfig(value){cdk().traceProperty(this.node,"JupyterLabAppImageConfig"),this._jupyterLabAppImageConfig=value}get kernelGatewayImageConfig(){return this._kernelGatewayImageConfig}set kernelGatewayImageConfig(value){cdk().traceProperty(this.node,"KernelGatewayImageConfig"),this._kernelGatewayImageConfig=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrAppImageConfigArn(){return cdk().Token.asString(this.getAtt("AppImageConfigArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{appImageConfigName:this._appImageConfigName,codeEditorAppImageConfig:this._codeEditorAppImageConfig,jupyterLabAppImageConfig:this._jupyterLabAppImageConfig,kernelGatewayImageConfig:this._kernelGatewayImageConfig,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",CfnAppImageConfig.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAppImageConfigPropsToCloudFormation(props)}}exports.CfnAppImageConfig=CfnAppImageConfig;function CfnAppImageConfigKernelSpecPropertyValidator(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("displayName",cdk().validateString)(properties.displayName)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "KernelSpecProperty"')}function convertCfnAppImageConfigKernelSpecPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigKernelSpecPropertyValidator(properties).assertSuccess(),{DisplayName:cdk().stringToCloudFormation(properties.displayName),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnAppImageConfigKernelSpecPropertyFromCloudFormation(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("displayName","DisplayName",properties.DisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.DisplayName):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppImageConfigFileSystemConfigPropertyValidator(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("defaultGid",cdk().validateNumber)(properties.defaultGid)),errors.collect(cdk().propertyValidator("defaultUid",cdk().validateNumber)(properties.defaultUid)),errors.collect(cdk().propertyValidator("mountPath",cdk().validateString)(properties.mountPath)),errors.wrap('supplied properties not correct for "FileSystemConfigProperty"')}function convertCfnAppImageConfigFileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigFileSystemConfigPropertyValidator(properties).assertSuccess(),{DefaultGid:cdk().numberToCloudFormation(properties.defaultGid),DefaultUid:cdk().numberToCloudFormation(properties.defaultUid),MountPath:cdk().stringToCloudFormation(properties.mountPath)}):properties}function CfnAppImageConfigFileSystemConfigPropertyFromCloudFormation(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("defaultGid","DefaultGid",properties.DefaultGid!=null?cfn_parse().FromCloudFormation.getNumber(properties.DefaultGid):void 0),ret.addPropertyResult("defaultUid","DefaultUid",properties.DefaultUid!=null?cfn_parse().FromCloudFormation.getNumber(properties.DefaultUid):void 0),ret.addPropertyResult("mountPath","MountPath",properties.MountPath!=null?cfn_parse().FromCloudFormation.getString(properties.MountPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppImageConfigKernelGatewayImageConfigPropertyValidator(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("fileSystemConfig",CfnAppImageConfigFileSystemConfigPropertyValidator)(properties.fileSystemConfig)),errors.collect(cdk().propertyValidator("kernelSpecs",cdk().requiredValidator)(properties.kernelSpecs)),errors.collect(cdk().propertyValidator("kernelSpecs",cdk().listValidator(CfnAppImageConfigKernelSpecPropertyValidator))(properties.kernelSpecs)),errors.wrap('supplied properties not correct for "KernelGatewayImageConfigProperty"')}function convertCfnAppImageConfigKernelGatewayImageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigKernelGatewayImageConfigPropertyValidator(properties).assertSuccess(),{FileSystemConfig:convertCfnAppImageConfigFileSystemConfigPropertyToCloudFormation(properties.fileSystemConfig),KernelSpecs:cdk().listMapper(convertCfnAppImageConfigKernelSpecPropertyToCloudFormation)(properties.kernelSpecs)}):properties}function CfnAppImageConfigKernelGatewayImageConfigPropertyFromCloudFormation(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("fileSystemConfig","FileSystemConfig",properties.FileSystemConfig!=null?CfnAppImageConfigFileSystemConfigPropertyFromCloudFormation(properties.FileSystemConfig):void 0),ret.addPropertyResult("kernelSpecs","KernelSpecs",properties.KernelSpecs!=null?cfn_parse().FromCloudFormation.getArray(CfnAppImageConfigKernelSpecPropertyFromCloudFormation)(properties.KernelSpecs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppImageConfigCustomImageContainerEnvironmentVariablePropertyValidator(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().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "CustomImageContainerEnvironmentVariableProperty"')}function convertCfnAppImageConfigCustomImageContainerEnvironmentVariablePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigCustomImageContainerEnvironmentVariablePropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnAppImageConfigCustomImageContainerEnvironmentVariablePropertyFromCloudFormation(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 CfnAppImageConfigContainerConfigPropertyValidator(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("containerArguments",cdk().listValidator(cdk().validateString))(properties.containerArguments)),errors.collect(cdk().propertyValidator("containerEntrypoint",cdk().listValidator(cdk().validateString))(properties.containerEntrypoint)),errors.collect(cdk().propertyValidator("containerEnvironmentVariables",cdk().listValidator(CfnAppImageConfigCustomImageContainerEnvironmentVariablePropertyValidator))(properties.containerEnvironmentVariables)),errors.wrap('supplied properties not correct for "ContainerConfigProperty"')}function convertCfnAppImageConfigContainerConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigContainerConfigPropertyValidator(properties).assertSuccess(),{ContainerArguments:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerArguments),ContainerEntrypoint:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerEntrypoint),ContainerEnvironmentVariables:cdk().listMapper(convertCfnAppImageConfigCustomImageContainerEnvironmentVariablePropertyToCloudFormation)(properties.containerEnvironmentVariables)}):properties}function CfnAppImageConfigContainerConfigPropertyFromCloudFormation(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("containerArguments","ContainerArguments",properties.ContainerArguments!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerArguments):void 0),ret.addPropertyResult("containerEntrypoint","ContainerEntrypoint",properties.ContainerEntrypoint!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerEntrypoint):void 0),ret.addPropertyResult("containerEnvironmentVariables","ContainerEnvironmentVariables",properties.ContainerEnvironmentVariables!=null?cfn_parse().FromCloudFormation.getArray(CfnAppImageConfigCustomImageContainerEnvironmentVariablePropertyFromCloudFormation)(properties.ContainerEnvironmentVariables):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppImageConfigJupyterLabAppImageConfigPropertyValidator(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("containerConfig",CfnAppImageConfigContainerConfigPropertyValidator)(properties.containerConfig)),errors.wrap('supplied properties not correct for "JupyterLabAppImageConfigProperty"')}function convertCfnAppImageConfigJupyterLabAppImageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigJupyterLabAppImageConfigPropertyValidator(properties).assertSuccess(),{ContainerConfig:convertCfnAppImageConfigContainerConfigPropertyToCloudFormation(properties.containerConfig)}):properties}function CfnAppImageConfigJupyterLabAppImageConfigPropertyFromCloudFormation(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("containerConfig","ContainerConfig",properties.ContainerConfig!=null?CfnAppImageConfigContainerConfigPropertyFromCloudFormation(properties.ContainerConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppImageConfigCodeEditorAppImageConfigPropertyValidator(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("containerConfig",CfnAppImageConfigContainerConfigPropertyValidator)(properties.containerConfig)),errors.wrap('supplied properties not correct for "CodeEditorAppImageConfigProperty"')}function convertCfnAppImageConfigCodeEditorAppImageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigCodeEditorAppImageConfigPropertyValidator(properties).assertSuccess(),{ContainerConfig:convertCfnAppImageConfigContainerConfigPropertyToCloudFormation(properties.containerConfig)}):properties}function CfnAppImageConfigCodeEditorAppImageConfigPropertyFromCloudFormation(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("containerConfig","ContainerConfig",properties.ContainerConfig!=null?CfnAppImageConfigContainerConfigPropertyFromCloudFormation(properties.ContainerConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppImageConfigPropsValidator(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("appImageConfigName",cdk().requiredValidator)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("appImageConfigName",cdk().validateString)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("codeEditorAppImageConfig",CfnAppImageConfigCodeEditorAppImageConfigPropertyValidator)(properties.codeEditorAppImageConfig)),errors.collect(cdk().propertyValidator("jupyterLabAppImageConfig",CfnAppImageConfigJupyterLabAppImageConfigPropertyValidator)(properties.jupyterLabAppImageConfig)),errors.collect(cdk().propertyValidator("kernelGatewayImageConfig",CfnAppImageConfigKernelGatewayImageConfigPropertyValidator)(properties.kernelGatewayImageConfig)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnAppImageConfigProps"')}function convertCfnAppImageConfigPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppImageConfigPropsValidator(properties).assertSuccess(),{AppImageConfigName:cdk().stringToCloudFormation(properties.appImageConfigName),CodeEditorAppImageConfig:convertCfnAppImageConfigCodeEditorAppImageConfigPropertyToCloudFormation(properties.codeEditorAppImageConfig),JupyterLabAppImageConfig:convertCfnAppImageConfigJupyterLabAppImageConfigPropertyToCloudFormation(properties.jupyterLabAppImageConfig),KernelGatewayImageConfig:convertCfnAppImageConfigKernelGatewayImageConfigPropertyToCloudFormation(properties.kernelGatewayImageConfig),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnAppImageConfigPropsFromCloudFormation(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("appImageConfigName","AppImageConfigName",properties.AppImageConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.AppImageConfigName):void 0),ret.addPropertyResult("codeEditorAppImageConfig","CodeEditorAppImageConfig",properties.CodeEditorAppImageConfig!=null?CfnAppImageConfigCodeEditorAppImageConfigPropertyFromCloudFormation(properties.CodeEditorAppImageConfig):void 0),ret.addPropertyResult("jupyterLabAppImageConfig","JupyterLabAppImageConfig",properties.JupyterLabAppImageConfig!=null?CfnAppImageConfigJupyterLabAppImageConfigPropertyFromCloudFormation(properties.JupyterLabAppImageConfig):void 0),ret.addPropertyResult("kernelGatewayImageConfig","KernelGatewayImageConfig",properties.KernelGatewayImageConfig!=null?CfnAppImageConfigKernelGatewayImageConfigPropertyFromCloudFormation(properties.KernelGatewayImageConfig):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 CfnCodeRepository extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnCodeRepository",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::CodeRepository";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCodeRepositoryPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnCodeRepository(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 isCfnCodeRepository(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnCodeRepository.CFN_RESOURCE_TYPE_NAME}static arnForCodeRepository(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_ICodeRepositoryRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForCodeRepository),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:code-repository/${CodeRepositoryName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,CodeRepositoryName:resource.codeRepositoryRef.codeRepositoryName})}_codeRepositoryName;_gitConfig;tags;_tagsRaw;cfnPropertyNames={codeRepositoryName:"CodeRepositoryName",gitConfig:"GitConfig",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnCodeRepository.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnCodeRepositoryProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCodeRepository),error}cdk().requireProperty(props,"gitConfig",this),this._codeRepositoryName=props.codeRepositoryName,this._gitConfig=props.gitConfig,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::CodeRepository",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get codeRepositoryRef(){return{codeRepositoryId:this.ref,codeRepositoryName:this.attrCodeRepositoryName}}get codeRepositoryName(){return this._codeRepositoryName}set codeRepositoryName(value){cdk().traceProperty(this.node,"CodeRepositoryName"),this._codeRepositoryName=value}get gitConfig(){return this._gitConfig}set gitConfig(value){cdk().traceProperty(this.node,"GitConfig"),this._gitConfig=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCodeRepositoryName(){return cdk().Token.asString(this.getAtt("CodeRepositoryName",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{codeRepositoryName:this._codeRepositoryName,gitConfig:this._gitConfig,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",CfnCodeRepository.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnCodeRepositoryPropsToCloudFormation(props)}}exports.CfnCodeRepository=CfnCodeRepository;function CfnCodeRepositoryGitConfigPropertyValidator(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("branch",cdk().validateString)(properties.branch)),errors.collect(cdk().propertyValidator("repositoryUrl",cdk().requiredValidator)(properties.repositoryUrl)),errors.collect(cdk().propertyValidator("repositoryUrl",cdk().validateString)(properties.repositoryUrl)),errors.collect(cdk().propertyValidator("secretArn",cdk().validateString)(properties.secretArn)),errors.wrap('supplied properties not correct for "GitConfigProperty"')}function convertCfnCodeRepositoryGitConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCodeRepositoryGitConfigPropertyValidator(properties).assertSuccess(),{Branch:cdk().stringToCloudFormation(properties.branch),RepositoryUrl:cdk().stringToCloudFormation(properties.repositoryUrl),SecretArn:cdk().stringToCloudFormation(properties.secretArn)}):properties}function CfnCodeRepositoryGitConfigPropertyFromCloudFormation(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("branch","Branch",properties.Branch!=null?cfn_parse().FromCloudFormation.getString(properties.Branch):void 0),ret.addPropertyResult("repositoryUrl","RepositoryUrl",properties.RepositoryUrl!=null?cfn_parse().FromCloudFormation.getString(properties.RepositoryUrl):void 0),ret.addPropertyResult("secretArn","SecretArn",properties.SecretArn!=null?cfn_parse().FromCloudFormation.getString(properties.SecretArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCodeRepositoryPropsValidator(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("codeRepositoryName",cdk().validateString)(properties.codeRepositoryName)),errors.collect(cdk().propertyValidator("gitConfig",cdk().requiredValidator)(properties.gitConfig)),errors.collect(cdk().propertyValidator("gitConfig",CfnCodeRepositoryGitConfigPropertyValidator)(properties.gitConfig)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnCodeRepositoryProps"')}function convertCfnCodeRepositoryPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnCodeRepositoryPropsValidator(properties).assertSuccess(),{CodeRepositoryName:cdk().stringToCloudFormation(properties.codeRepositoryName),GitConfig:convertCfnCodeRepositoryGitConfigPropertyToCloudFormation(properties.gitConfig),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnCodeRepositoryPropsFromCloudFormation(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("codeRepositoryName","CodeRepositoryName",properties.CodeRepositoryName!=null?cfn_parse().FromCloudFormation.getString(properties.CodeRepositoryName):void 0),ret.addPropertyResult("gitConfig","GitConfig",properties.GitConfig!=null?CfnCodeRepositoryGitConfigPropertyFromCloudFormation(properties.GitConfig):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 CfnDataQualityJobDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnDataQualityJobDefinition",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::DataQualityJobDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDataQualityJobDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDataQualityJobDefinition(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 isCfnDataQualityJobDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDataQualityJobDefinition.CFN_RESOURCE_TYPE_NAME}_dataQualityAppSpecification;_dataQualityBaselineConfig;_dataQualityJobInput;_dataQualityJobOutputConfig;_endpointName;_jobDefinitionName;_jobResources;_networkConfig;_roleArn;_stoppingCondition;tags;_tagsRaw;cfnPropertyNames={dataQualityAppSpecification:"DataQualityAppSpecification",dataQualityBaselineConfig:"DataQualityBaselineConfig",dataQualityJobInput:"DataQualityJobInput",dataQualityJobOutputConfig:"DataQualityJobOutputConfig",endpointName:"EndpointName",jobDefinitionName:"JobDefinitionName",jobResources:"JobResources",networkConfig:"NetworkConfig",roleArn:"RoleArn",stoppingCondition:"StoppingCondition",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnDataQualityJobDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnDataQualityJobDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDataQualityJobDefinition),error}cdk().requireProperty(props,"dataQualityAppSpecification",this),cdk().requireProperty(props,"dataQualityJobInput",this),cdk().requireProperty(props,"dataQualityJobOutputConfig",this),cdk().requireProperty(props,"jobResources",this),cdk().requireProperty(props,"roleArn",this),this._dataQualityAppSpecification=props.dataQualityAppSpecification,this._dataQualityBaselineConfig=props.dataQualityBaselineConfig,this._dataQualityJobInput=props.dataQualityJobInput,this._dataQualityJobOutputConfig=props.dataQualityJobOutputConfig,this._endpointName=props.endpointName,this._jobDefinitionName=props.jobDefinitionName,this._jobResources=props.jobResources,this._networkConfig=props.networkConfig,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this._stoppingCondition=props.stoppingCondition,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::DataQualityJobDefinition",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get dataQualityJobDefinitionRef(){return{jobDefinitionArn:this.ref}}get dataQualityAppSpecification(){return this._dataQualityAppSpecification}set dataQualityAppSpecification(value){cdk().traceProperty(this.node,"DataQualityAppSpecification"),this._dataQualityAppSpecification=value}get dataQualityBaselineConfig(){return this._dataQualityBaselineConfig}set dataQualityBaselineConfig(value){cdk().traceProperty(this.node,"DataQualityBaselineConfig"),this._dataQualityBaselineConfig=value}get dataQualityJobInput(){return this._dataQualityJobInput}set dataQualityJobInput(value){cdk().traceProperty(this.node,"DataQualityJobInput"),this._dataQualityJobInput=value}get dataQualityJobOutputConfig(){return this._dataQualityJobOutputConfig}set dataQualityJobOutputConfig(value){cdk().traceProperty(this.node,"DataQualityJobOutputConfig"),this._dataQualityJobOutputConfig=value}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get jobDefinitionName(){return this._jobDefinitionName}set jobDefinitionName(value){cdk().traceProperty(this.node,"JobDefinitionName"),this._jobDefinitionName=value}get jobResources(){return this._jobResources}set jobResources(value){cdk().traceProperty(this.node,"JobResources"),this._jobResources=value}get networkConfig(){return this._networkConfig}set networkConfig(value){cdk().traceProperty(this.node,"NetworkConfig"),this._networkConfig=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get stoppingCondition(){return this._stoppingCondition}set stoppingCondition(value){cdk().traceProperty(this.node,"StoppingCondition"),this._stoppingCondition=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrJobDefinitionArn(){return cdk().Token.asString(this.getAtt("JobDefinitionArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{dataQualityAppSpecification:this._dataQualityAppSpecification,dataQualityBaselineConfig:this._dataQualityBaselineConfig,dataQualityJobInput:this._dataQualityJobInput,dataQualityJobOutputConfig:this._dataQualityJobOutputConfig,endpointName:this._endpointName,jobDefinitionName:this._jobDefinitionName,jobResources:this._jobResources,networkConfig:this._networkConfig,roleArn:this._roleArn,stoppingCondition:this._stoppingCondition,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",CfnDataQualityJobDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDataQualityJobDefinitionPropsToCloudFormation(props)}}exports.CfnDataQualityJobDefinition=CfnDataQualityJobDefinition;function CfnDataQualityJobDefinitionCsvPropertyValidator(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("header",cdk().validateBoolean)(properties.header)),errors.wrap('supplied properties not correct for "CsvProperty"')}function convertCfnDataQualityJobDefinitionCsvPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionCsvPropertyValidator(properties).assertSuccess(),{Header:cdk().booleanToCloudFormation(properties.header)}):properties}function CfnDataQualityJobDefinitionCsvPropertyFromCloudFormation(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("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Header):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionJsonPropertyValidator(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("line",cdk().validateBoolean)(properties.line)),errors.wrap('supplied properties not correct for "JsonProperty"')}function convertCfnDataQualityJobDefinitionJsonPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionJsonPropertyValidator(properties).assertSuccess(),{Line:cdk().booleanToCloudFormation(properties.line)}):properties}function CfnDataQualityJobDefinitionJsonPropertyFromCloudFormation(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("line","Line",properties.Line!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Line):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionDatasetFormatPropertyValidator(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("csv",CfnDataQualityJobDefinitionCsvPropertyValidator)(properties.csv)),errors.collect(cdk().propertyValidator("json",CfnDataQualityJobDefinitionJsonPropertyValidator)(properties.json)),errors.collect(cdk().propertyValidator("parquet",cdk().validateBoolean)(properties.parquet)),errors.wrap('supplied properties not correct for "DatasetFormatProperty"')}function convertCfnDataQualityJobDefinitionDatasetFormatPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionDatasetFormatPropertyValidator(properties).assertSuccess(),{Csv:convertCfnDataQualityJobDefinitionCsvPropertyToCloudFormation(properties.csv),Json:convertCfnDataQualityJobDefinitionJsonPropertyToCloudFormation(properties.json),Parquet:cdk().booleanToCloudFormation(properties.parquet)}):properties}function CfnDataQualityJobDefinitionDatasetFormatPropertyFromCloudFormation(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("csv","Csv",properties.Csv!=null?CfnDataQualityJobDefinitionCsvPropertyFromCloudFormation(properties.Csv):void 0),ret.addPropertyResult("json","Json",properties.Json!=null?CfnDataQualityJobDefinitionJsonPropertyFromCloudFormation(properties.Json):void 0),ret.addPropertyResult("parquet","Parquet",properties.Parquet!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Parquet):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionBatchTransformInputPropertyValidator(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("dataCapturedDestinationS3Uri",cdk().requiredValidator)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("dataCapturedDestinationS3Uri",cdk().validateString)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("datasetFormat",cdk().requiredValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("datasetFormat",CfnDataQualityJobDefinitionDatasetFormatPropertyValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("excludeFeaturesAttribute",cdk().validateString)(properties.excludeFeaturesAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.wrap('supplied properties not correct for "BatchTransformInputProperty"')}function convertCfnDataQualityJobDefinitionBatchTransformInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionBatchTransformInputPropertyValidator(properties).assertSuccess(),{DataCapturedDestinationS3Uri:cdk().stringToCloudFormation(properties.dataCapturedDestinationS3Uri),DatasetFormat:convertCfnDataQualityJobDefinitionDatasetFormatPropertyToCloudFormation(properties.datasetFormat),ExcludeFeaturesAttribute:cdk().stringToCloudFormation(properties.excludeFeaturesAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode)}):properties}function CfnDataQualityJobDefinitionBatchTransformInputPropertyFromCloudFormation(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("dataCapturedDestinationS3Uri","DataCapturedDestinationS3Uri",properties.DataCapturedDestinationS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.DataCapturedDestinationS3Uri):void 0),ret.addPropertyResult("datasetFormat","DatasetFormat",properties.DatasetFormat!=null?CfnDataQualityJobDefinitionDatasetFormatPropertyFromCloudFormation(properties.DatasetFormat):void 0),ret.addPropertyResult("excludeFeaturesAttribute","ExcludeFeaturesAttribute",properties.ExcludeFeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ExcludeFeaturesAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionEndpointInputPropertyValidator(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("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("excludeFeaturesAttribute",cdk().validateString)(properties.excludeFeaturesAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.wrap('supplied properties not correct for "EndpointInputProperty"')}function convertCfnDataQualityJobDefinitionEndpointInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionEndpointInputPropertyValidator(properties).assertSuccess(),{EndpointName:cdk().stringToCloudFormation(properties.endpointName),ExcludeFeaturesAttribute:cdk().stringToCloudFormation(properties.excludeFeaturesAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode)}):properties}function CfnDataQualityJobDefinitionEndpointInputPropertyFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("excludeFeaturesAttribute","ExcludeFeaturesAttribute",properties.ExcludeFeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ExcludeFeaturesAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionDataQualityJobInputPropertyValidator(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("batchTransformInput",CfnDataQualityJobDefinitionBatchTransformInputPropertyValidator)(properties.batchTransformInput)),errors.collect(cdk().propertyValidator("endpointInput",CfnDataQualityJobDefinitionEndpointInputPropertyValidator)(properties.endpointInput)),errors.wrap('supplied properties not correct for "DataQualityJobInputProperty"')}function convertCfnDataQualityJobDefinitionDataQualityJobInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionDataQualityJobInputPropertyValidator(properties).assertSuccess(),{BatchTransformInput:convertCfnDataQualityJobDefinitionBatchTransformInputPropertyToCloudFormation(properties.batchTransformInput),EndpointInput:convertCfnDataQualityJobDefinitionEndpointInputPropertyToCloudFormation(properties.endpointInput)}):properties}function CfnDataQualityJobDefinitionDataQualityJobInputPropertyFromCloudFormation(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("batchTransformInput","BatchTransformInput",properties.BatchTransformInput!=null?CfnDataQualityJobDefinitionBatchTransformInputPropertyFromCloudFormation(properties.BatchTransformInput):void 0),ret.addPropertyResult("endpointInput","EndpointInput",properties.EndpointInput!=null?CfnDataQualityJobDefinitionEndpointInputPropertyFromCloudFormation(properties.EndpointInput):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionDataQualityAppSpecificationPropertyValidator(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("containerArguments",cdk().listValidator(cdk().validateString))(properties.containerArguments)),errors.collect(cdk().propertyValidator("containerEntrypoint",cdk().listValidator(cdk().validateString))(properties.containerEntrypoint)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("imageUri",cdk().requiredValidator)(properties.imageUri)),errors.collect(cdk().propertyValidator("imageUri",cdk().validateString)(properties.imageUri)),errors.collect(cdk().propertyValidator("postAnalyticsProcessorSourceUri",cdk().validateString)(properties.postAnalyticsProcessorSourceUri)),errors.collect(cdk().propertyValidator("recordPreprocessorSourceUri",cdk().validateString)(properties.recordPreprocessorSourceUri)),errors.wrap('supplied properties not correct for "DataQualityAppSpecificationProperty"')}function convertCfnDataQualityJobDefinitionDataQualityAppSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionDataQualityAppSpecificationPropertyValidator(properties).assertSuccess(),{ContainerArguments:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerArguments),ContainerEntrypoint:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerEntrypoint),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),ImageUri:cdk().stringToCloudFormation(properties.imageUri),PostAnalyticsProcessorSourceUri:cdk().stringToCloudFormation(properties.postAnalyticsProcessorSourceUri),RecordPreprocessorSourceUri:cdk().stringToCloudFormation(properties.recordPreprocessorSourceUri)}):properties}function CfnDataQualityJobDefinitionDataQualityAppSpecificationPropertyFromCloudFormation(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("containerArguments","ContainerArguments",properties.ContainerArguments!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerArguments):void 0),ret.addPropertyResult("containerEntrypoint","ContainerEntrypoint",properties.ContainerEntrypoint!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerEntrypoint):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("imageUri","ImageUri",properties.ImageUri!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUri):void 0),ret.addPropertyResult("postAnalyticsProcessorSourceUri","PostAnalyticsProcessorSourceUri",properties.PostAnalyticsProcessorSourceUri!=null?cfn_parse().FromCloudFormation.getString(properties.PostAnalyticsProcessorSourceUri):void 0),ret.addPropertyResult("recordPreprocessorSourceUri","RecordPreprocessorSourceUri",properties.RecordPreprocessorSourceUri!=null?cfn_parse().FromCloudFormation.getString(properties.RecordPreprocessorSourceUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionStoppingConditionPropertyValidator(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("maxRuntimeInSeconds",cdk().requiredValidator)(properties.maxRuntimeInSeconds)),errors.collect(cdk().propertyValidator("maxRuntimeInSeconds",cdk().validateNumber)(properties.maxRuntimeInSeconds)),errors.wrap('supplied properties not correct for "StoppingConditionProperty"')}function convertCfnDataQualityJobDefinitionStoppingConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionStoppingConditionPropertyValidator(properties).assertSuccess(),{MaxRuntimeInSeconds:cdk().numberToCloudFormation(properties.maxRuntimeInSeconds)}):properties}function CfnDataQualityJobDefinitionStoppingConditionPropertyFromCloudFormation(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("maxRuntimeInSeconds","MaxRuntimeInSeconds",properties.MaxRuntimeInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRuntimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionClusterConfigPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().requiredValidator)(properties.volumeSizeInGb)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ClusterConfigProperty"')}function convertCfnDataQualityJobDefinitionClusterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionClusterConfigPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnDataQualityJobDefinitionClusterConfigPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionMonitoringResourcesPropertyValidator(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("clusterConfig",cdk().requiredValidator)(properties.clusterConfig)),errors.collect(cdk().propertyValidator("clusterConfig",CfnDataQualityJobDefinitionClusterConfigPropertyValidator)(properties.clusterConfig)),errors.wrap('supplied properties not correct for "MonitoringResourcesProperty"')}function convertCfnDataQualityJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionMonitoringResourcesPropertyValidator(properties).assertSuccess(),{ClusterConfig:convertCfnDataQualityJobDefinitionClusterConfigPropertyToCloudFormation(properties.clusterConfig)}):properties}function CfnDataQualityJobDefinitionMonitoringResourcesPropertyFromCloudFormation(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("clusterConfig","ClusterConfig",properties.ClusterConfig!=null?CfnDataQualityJobDefinitionClusterConfigPropertyFromCloudFormation(properties.ClusterConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnDataQualityJobDefinitionVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnDataQualityJobDefinitionVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionNetworkConfigPropertyValidator(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("enableInterContainerTrafficEncryption",cdk().validateBoolean)(properties.enableInterContainerTrafficEncryption)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("vpcConfig",CfnDataQualityJobDefinitionVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "NetworkConfigProperty"')}function convertCfnDataQualityJobDefinitionNetworkConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionNetworkConfigPropertyValidator(properties).assertSuccess(),{EnableInterContainerTrafficEncryption:cdk().booleanToCloudFormation(properties.enableInterContainerTrafficEncryption),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),VpcConfig:convertCfnDataQualityJobDefinitionVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnDataQualityJobDefinitionNetworkConfigPropertyFromCloudFormation(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("enableInterContainerTrafficEncryption","EnableInterContainerTrafficEncryption",properties.EnableInterContainerTrafficEncryption!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableInterContainerTrafficEncryption):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnDataQualityJobDefinitionVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionS3OutputPropertyValidator(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("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3UploadMode",cdk().validateString)(properties.s3UploadMode)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3OutputProperty"')}function convertCfnDataQualityJobDefinitionS3OutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionS3OutputPropertyValidator(properties).assertSuccess(),{LocalPath:cdk().stringToCloudFormation(properties.localPath),S3UploadMode:cdk().stringToCloudFormation(properties.s3UploadMode),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnDataQualityJobDefinitionS3OutputPropertyFromCloudFormation(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("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3UploadMode","S3UploadMode",properties.S3UploadMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3UploadMode):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionMonitoringOutputPropertyValidator(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("s3Output",cdk().requiredValidator)(properties.s3Output)),errors.collect(cdk().propertyValidator("s3Output",CfnDataQualityJobDefinitionS3OutputPropertyValidator)(properties.s3Output)),errors.wrap('supplied properties not correct for "MonitoringOutputProperty"')}function convertCfnDataQualityJobDefinitionMonitoringOutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionMonitoringOutputPropertyValidator(properties).assertSuccess(),{S3Output:convertCfnDataQualityJobDefinitionS3OutputPropertyToCloudFormation(properties.s3Output)}):properties}function CfnDataQualityJobDefinitionMonitoringOutputPropertyFromCloudFormation(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("s3Output","S3Output",properties.S3Output!=null?CfnDataQualityJobDefinitionS3OutputPropertyFromCloudFormation(properties.S3Output):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionMonitoringOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("monitoringOutputs",cdk().requiredValidator)(properties.monitoringOutputs)),errors.collect(cdk().propertyValidator("monitoringOutputs",cdk().listValidator(CfnDataQualityJobDefinitionMonitoringOutputPropertyValidator))(properties.monitoringOutputs)),errors.wrap('supplied properties not correct for "MonitoringOutputConfigProperty"')}function convertCfnDataQualityJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionMonitoringOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),MonitoringOutputs:cdk().listMapper(convertCfnDataQualityJobDefinitionMonitoringOutputPropertyToCloudFormation)(properties.monitoringOutputs)}):properties}function CfnDataQualityJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(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.addPropertyResult("monitoringOutputs","MonitoringOutputs",properties.MonitoringOutputs!=null?cfn_parse().FromCloudFormation.getArray(CfnDataQualityJobDefinitionMonitoringOutputPropertyFromCloudFormation)(properties.MonitoringOutputs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionStatisticsResourcePropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "StatisticsResourceProperty"')}function convertCfnDataQualityJobDefinitionStatisticsResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionStatisticsResourcePropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnDataQualityJobDefinitionStatisticsResourcePropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionConstraintsResourcePropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "ConstraintsResourceProperty"')}function convertCfnDataQualityJobDefinitionConstraintsResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionConstraintsResourcePropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnDataQualityJobDefinitionConstraintsResourcePropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionDataQualityBaselineConfigPropertyValidator(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("baseliningJobName",cdk().validateString)(properties.baseliningJobName)),errors.collect(cdk().propertyValidator("constraintsResource",CfnDataQualityJobDefinitionConstraintsResourcePropertyValidator)(properties.constraintsResource)),errors.collect(cdk().propertyValidator("statisticsResource",CfnDataQualityJobDefinitionStatisticsResourcePropertyValidator)(properties.statisticsResource)),errors.wrap('supplied properties not correct for "DataQualityBaselineConfigProperty"')}function convertCfnDataQualityJobDefinitionDataQualityBaselineConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionDataQualityBaselineConfigPropertyValidator(properties).assertSuccess(),{BaseliningJobName:cdk().stringToCloudFormation(properties.baseliningJobName),ConstraintsResource:convertCfnDataQualityJobDefinitionConstraintsResourcePropertyToCloudFormation(properties.constraintsResource),StatisticsResource:convertCfnDataQualityJobDefinitionStatisticsResourcePropertyToCloudFormation(properties.statisticsResource)}):properties}function CfnDataQualityJobDefinitionDataQualityBaselineConfigPropertyFromCloudFormation(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("baseliningJobName","BaseliningJobName",properties.BaseliningJobName!=null?cfn_parse().FromCloudFormation.getString(properties.BaseliningJobName):void 0),ret.addPropertyResult("constraintsResource","ConstraintsResource",properties.ConstraintsResource!=null?CfnDataQualityJobDefinitionConstraintsResourcePropertyFromCloudFormation(properties.ConstraintsResource):void 0),ret.addPropertyResult("statisticsResource","StatisticsResource",properties.StatisticsResource!=null?CfnDataQualityJobDefinitionStatisticsResourcePropertyFromCloudFormation(properties.StatisticsResource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataQualityJobDefinitionPropsValidator(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("dataQualityAppSpecification",cdk().requiredValidator)(properties.dataQualityAppSpecification)),errors.collect(cdk().propertyValidator("dataQualityAppSpecification",CfnDataQualityJobDefinitionDataQualityAppSpecificationPropertyValidator)(properties.dataQualityAppSpecification)),errors.collect(cdk().propertyValidator("dataQualityBaselineConfig",CfnDataQualityJobDefinitionDataQualityBaselineConfigPropertyValidator)(properties.dataQualityBaselineConfig)),errors.collect(cdk().propertyValidator("dataQualityJobInput",cdk().requiredValidator)(properties.dataQualityJobInput)),errors.collect(cdk().propertyValidator("dataQualityJobInput",CfnDataQualityJobDefinitionDataQualityJobInputPropertyValidator)(properties.dataQualityJobInput)),errors.collect(cdk().propertyValidator("dataQualityJobOutputConfig",cdk().requiredValidator)(properties.dataQualityJobOutputConfig)),errors.collect(cdk().propertyValidator("dataQualityJobOutputConfig",CfnDataQualityJobDefinitionMonitoringOutputConfigPropertyValidator)(properties.dataQualityJobOutputConfig)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("jobDefinitionName",cdk().validateString)(properties.jobDefinitionName)),errors.collect(cdk().propertyValidator("jobResources",cdk().requiredValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("jobResources",CfnDataQualityJobDefinitionMonitoringResourcesPropertyValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("networkConfig",CfnDataQualityJobDefinitionNetworkConfigPropertyValidator)(properties.networkConfig)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("stoppingCondition",CfnDataQualityJobDefinitionStoppingConditionPropertyValidator)(properties.stoppingCondition)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDataQualityJobDefinitionProps"')}function convertCfnDataQualityJobDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDataQualityJobDefinitionPropsValidator(properties).assertSuccess(),{DataQualityAppSpecification:convertCfnDataQualityJobDefinitionDataQualityAppSpecificationPropertyToCloudFormation(properties.dataQualityAppSpecification),DataQualityBaselineConfig:convertCfnDataQualityJobDefinitionDataQualityBaselineConfigPropertyToCloudFormation(properties.dataQualityBaselineConfig),DataQualityJobInput:convertCfnDataQualityJobDefinitionDataQualityJobInputPropertyToCloudFormation(properties.dataQualityJobInput),DataQualityJobOutputConfig:convertCfnDataQualityJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties.dataQualityJobOutputConfig),EndpointName:cdk().stringToCloudFormation(properties.endpointName),JobDefinitionName:cdk().stringToCloudFormation(properties.jobDefinitionName),JobResources:convertCfnDataQualityJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties.jobResources),NetworkConfig:convertCfnDataQualityJobDefinitionNetworkConfigPropertyToCloudFormation(properties.networkConfig),RoleArn:cdk().stringToCloudFormation(properties.roleArn),StoppingCondition:convertCfnDataQualityJobDefinitionStoppingConditionPropertyToCloudFormation(properties.stoppingCondition),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDataQualityJobDefinitionPropsFromCloudFormation(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("dataQualityAppSpecification","DataQualityAppSpecification",properties.DataQualityAppSpecification!=null?CfnDataQualityJobDefinitionDataQualityAppSpecificationPropertyFromCloudFormation(properties.DataQualityAppSpecification):void 0),ret.addPropertyResult("dataQualityBaselineConfig","DataQualityBaselineConfig",properties.DataQualityBaselineConfig!=null?CfnDataQualityJobDefinitionDataQualityBaselineConfigPropertyFromCloudFormation(properties.DataQualityBaselineConfig):void 0),ret.addPropertyResult("dataQualityJobInput","DataQualityJobInput",properties.DataQualityJobInput!=null?CfnDataQualityJobDefinitionDataQualityJobInputPropertyFromCloudFormation(properties.DataQualityJobInput):void 0),ret.addPropertyResult("dataQualityJobOutputConfig","DataQualityJobOutputConfig",properties.DataQualityJobOutputConfig!=null?CfnDataQualityJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(properties.DataQualityJobOutputConfig):void 0),ret.addPropertyResult("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("jobDefinitionName","JobDefinitionName",properties.JobDefinitionName!=null?cfn_parse().FromCloudFormation.getString(properties.JobDefinitionName):void 0),ret.addPropertyResult("jobResources","JobResources",properties.JobResources!=null?CfnDataQualityJobDefinitionMonitoringResourcesPropertyFromCloudFormation(properties.JobResources):void 0),ret.addPropertyResult("networkConfig","NetworkConfig",properties.NetworkConfig!=null?CfnDataQualityJobDefinitionNetworkConfigPropertyFromCloudFormation(properties.NetworkConfig):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("stoppingCondition","StoppingCondition",properties.StoppingCondition!=null?CfnDataQualityJobDefinitionStoppingConditionPropertyFromCloudFormation(properties.StoppingCondition):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 CfnDevice extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnDevice",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Device";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDevicePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDevice(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 isCfnDevice(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDevice.CFN_RESOURCE_TYPE_NAME}_device;_deviceFleetName;tags;_tagsRaw;cfnPropertyNames={device:"Device",deviceFleetName:"DeviceFleetName",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnDevice.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnDeviceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDevice),error}cdk().requireProperty(props,"deviceFleetName",this),this._device=props.device,this._deviceFleetName=props.deviceFleetName,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Device",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get deviceRef(){return{deviceFleetName:this.ref}}get device(){return this._device}set device(value){cdk().traceProperty(this.node,"Device"),this._device=value}get deviceFleetName(){return this._deviceFleetName}set deviceFleetName(value){cdk().traceProperty(this.node,"DeviceFleetName"),this._deviceFleetName=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get cfnProperties(){return{device:this._device,deviceFleetName:this._deviceFleetName,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",CfnDevice.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDevicePropsToCloudFormation(props)}}exports.CfnDevice=CfnDevice;function CfnDeviceDevicePropertyValidator(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("deviceName",cdk().requiredValidator)(properties.deviceName)),errors.collect(cdk().propertyValidator("deviceName",cdk().validateString)(properties.deviceName)),errors.collect(cdk().propertyValidator("iotThingName",cdk().validateString)(properties.iotThingName)),errors.wrap('supplied properties not correct for "DeviceProperty"')}function convertCfnDeviceDevicePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceDevicePropertyValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),DeviceName:cdk().stringToCloudFormation(properties.deviceName),IotThingName:cdk().stringToCloudFormation(properties.iotThingName)}):properties}function CfnDeviceDevicePropertyFromCloudFormation(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("deviceName","DeviceName",properties.DeviceName!=null?cfn_parse().FromCloudFormation.getString(properties.DeviceName):void 0),ret.addPropertyResult("iotThingName","IotThingName",properties.IotThingName!=null?cfn_parse().FromCloudFormation.getString(properties.IotThingName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDevicePropsValidator(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("device",CfnDeviceDevicePropertyValidator)(properties.device)),errors.collect(cdk().propertyValidator("deviceFleetName",cdk().requiredValidator)(properties.deviceFleetName)),errors.collect(cdk().propertyValidator("deviceFleetName",cdk().validateString)(properties.deviceFleetName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDeviceProps"')}function convertCfnDevicePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDevicePropsValidator(properties).assertSuccess(),{Device:convertCfnDeviceDevicePropertyToCloudFormation(properties.device),DeviceFleetName:cdk().stringToCloudFormation(properties.deviceFleetName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDevicePropsFromCloudFormation(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("device","Device",properties.Device!=null?CfnDeviceDevicePropertyFromCloudFormation(properties.Device):void 0),ret.addPropertyResult("deviceFleetName","DeviceFleetName",properties.DeviceFleetName!=null?cfn_parse().FromCloudFormation.getString(properties.DeviceFleetName):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 CfnDeviceFleet extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnDeviceFleet",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::DeviceFleet";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeviceFleetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDeviceFleet(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 isCfnDeviceFleet(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDeviceFleet.CFN_RESOURCE_TYPE_NAME}static fromDeviceFleetName(scope,id,deviceFleetName){class Import extends cdk().Resource{deviceFleetRef;constructor(scope2,id2,deviceFleetName2){super(scope2,id2),this.deviceFleetRef={deviceFleetName:deviceFleetName2}}}return new Import(scope,id,deviceFleetName)}static arnForDeviceFleet(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IDeviceFleetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDeviceFleet),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:device-fleet/${DeviceFleetName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,DeviceFleetName:resource.deviceFleetRef.deviceFleetName})}_description;_deviceFleetName;_outputConfig;_roleArn;tags;_tagsRaw;cfnPropertyNames={description:"Description",deviceFleetName:"DeviceFleetName",outputConfig:"OutputConfig",roleArn:"RoleArn",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnDeviceFleet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnDeviceFleetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDeviceFleet),error}cdk().requireProperty(props,"deviceFleetName",this),cdk().requireProperty(props,"outputConfig",this),cdk().requireProperty(props,"roleArn",this),this._description=props.description,this._deviceFleetName=props.deviceFleetName,this._outputConfig=props.outputConfig,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::DeviceFleet",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get deviceFleetRef(){return{deviceFleetName:this.ref}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get deviceFleetName(){return this._deviceFleetName}set deviceFleetName(value){cdk().traceProperty(this.node,"DeviceFleetName"),this._deviceFleetName=value}get outputConfig(){return this._outputConfig}set outputConfig(value){cdk().traceProperty(this.node,"OutputConfig"),this._outputConfig=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get cfnProperties(){return{description:this._description,deviceFleetName:this._deviceFleetName,outputConfig:this._outputConfig,roleArn:this._roleArn,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",CfnDeviceFleet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDeviceFleetPropsToCloudFormation(props)}}exports.CfnDeviceFleet=CfnDeviceFleet;function CfnDeviceFleetEdgeOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("s3OutputLocation",cdk().requiredValidator)(properties.s3OutputLocation)),errors.collect(cdk().propertyValidator("s3OutputLocation",cdk().validateString)(properties.s3OutputLocation)),errors.wrap('supplied properties not correct for "EdgeOutputConfigProperty"')}function convertCfnDeviceFleetEdgeOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceFleetEdgeOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),S3OutputLocation:cdk().stringToCloudFormation(properties.s3OutputLocation)}):properties}function CfnDeviceFleetEdgeOutputConfigPropertyFromCloudFormation(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.addPropertyResult("s3OutputLocation","S3OutputLocation",properties.S3OutputLocation!=null?cfn_parse().FromCloudFormation.getString(properties.S3OutputLocation):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDeviceFleetPropsValidator(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("deviceFleetName",cdk().requiredValidator)(properties.deviceFleetName)),errors.collect(cdk().propertyValidator("deviceFleetName",cdk().validateString)(properties.deviceFleetName)),errors.collect(cdk().propertyValidator("outputConfig",cdk().requiredValidator)(properties.outputConfig)),errors.collect(cdk().propertyValidator("outputConfig",CfnDeviceFleetEdgeOutputConfigPropertyValidator)(properties.outputConfig)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDeviceFleetProps"')}function convertCfnDeviceFleetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeviceFleetPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),DeviceFleetName:cdk().stringToCloudFormation(properties.deviceFleetName),OutputConfig:convertCfnDeviceFleetEdgeOutputConfigPropertyToCloudFormation(properties.outputConfig),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDeviceFleetPropsFromCloudFormation(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("deviceFleetName","DeviceFleetName",properties.DeviceFleetName!=null?cfn_parse().FromCloudFormation.getString(properties.DeviceFleetName):void 0),ret.addPropertyResult("outputConfig","OutputConfig",properties.OutputConfig!=null?CfnDeviceFleetEdgeOutputConfigPropertyFromCloudFormation(properties.OutputConfig):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):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 CfnDomain extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnDomain",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Domain";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDomainPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDomain(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnDomain(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDomain.CFN_RESOURCE_TYPE_NAME}static fromDomainArn(scope,id,arn){class Import extends cdk().Resource{domainRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:domain/${DomainId}").parse(arn2);this.domainRef={domainId:variables.DomainId,domainArn:arn2}}}return new Import(scope,id,arn)}static fromDomainId(scope,id,domainId){class Import extends cdk().Resource{domainRef;constructor(scope2,id2,domainId2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:domain/${DomainId}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,DomainId:domainId2});super(scope2,id2,{environmentFromArn:arn}),this.domainRef={domainId:domainId2,domainArn:arn}}}return new Import(scope,id,domainId)}static arnForDomain(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IDomainRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDomain),error}return resource.domainRef.domainArn}_appNetworkAccessType;_appSecurityGroupManagement;_authMode;_defaultSpaceSettings;_defaultUserSettings;_domainName;_domainSettings;_kmsKeyId;_subnetIds;_tagPropagation;tags;_tagsRaw;_vpcId;cfnPropertyNames={appNetworkAccessType:"AppNetworkAccessType",appSecurityGroupManagement:"AppSecurityGroupManagement",authMode:"AuthMode",defaultSpaceSettings:"DefaultSpaceSettings",defaultUserSettings:"DefaultUserSettings",domainName:"DomainName",domainSettings:"DomainSettings",kmsKeyId:"KmsKeyId",subnetIds:"SubnetIds",tagPropagation:"TagPropagation",tags:"Tags",vpcId:"VpcId"};constructor(scope,id,props){super(scope,id,{type:CfnDomain.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnDomainProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDomain),error}cdk().requireProperty(props,"authMode",this),cdk().requireProperty(props,"defaultUserSettings",this),cdk().requireProperty(props,"domainName",this),this._appNetworkAccessType=props.appNetworkAccessType,this._appSecurityGroupManagement=props.appSecurityGroupManagement,this._authMode=props.authMode,this._defaultSpaceSettings=props.defaultSpaceSettings,this._defaultUserSettings=props.defaultUserSettings,this._domainName=props.domainName,this._domainSettings=props.domainSettings,this._kmsKeyId=props.kmsKeyId,this._subnetIds=cdk().mapArrayInPlace(props.subnetIds,item=>cdk().getRefProperty(item?.subnetRef,"subnetId")??cdk().ensureStringOrUndefined(item,"subnetIds","ec2.ISubnetRef | string")),this._tagPropagation=props.tagPropagation,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Domain",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._vpcId=cdk().getRefProperty(props.vpcId?.vpcRef,"vpcId")??cdk().ensureStringOrUndefined(props.vpcId,"vpcId","ec2.IVPCRef | string")}get domainRef(){return{domainId:this.ref,domainArn:this.attrDomainArn}}get appNetworkAccessType(){return this._appNetworkAccessType}set appNetworkAccessType(value){cdk().traceProperty(this.node,"AppNetworkAccessType"),this._appNetworkAccessType=value}get appSecurityGroupManagement(){return this._appSecurityGroupManagement}set appSecurityGroupManagement(value){cdk().traceProperty(this.node,"AppSecurityGroupManagement"),this._appSecurityGroupManagement=value}get authMode(){return this._authMode}set authMode(value){cdk().traceProperty(this.node,"AuthMode"),this._authMode=value}get defaultSpaceSettings(){return this._defaultSpaceSettings}set defaultSpaceSettings(value){cdk().traceProperty(this.node,"DefaultSpaceSettings"),this._defaultSpaceSettings=value}get defaultUserSettings(){return this._defaultUserSettings}set defaultUserSettings(value){cdk().traceProperty(this.node,"DefaultUserSettings"),this._defaultUserSettings=value}get domainName(){return this._domainName}set domainName(value){cdk().traceProperty(this.node,"DomainName"),this._domainName=value}get domainSettings(){return this._domainSettings}set domainSettings(value){cdk().traceProperty(this.node,"DomainSettings"),this._domainSettings=value}get kmsKeyId(){return this._kmsKeyId}set kmsKeyId(value){cdk().traceProperty(this.node,"KmsKeyId"),this._kmsKeyId=value}get subnetIds(){return this._subnetIds}set subnetIds(value){cdk().traceProperty(this.node,"SubnetIds"),this._subnetIds=value}get tagPropagation(){return this._tagPropagation}set tagPropagation(value){cdk().traceProperty(this.node,"TagPropagation"),this._tagPropagation=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get vpcId(){return this._vpcId}set vpcId(value){cdk().traceProperty(this.node,"VpcId"),this._vpcId=value}get attrDomainArn(){return cdk().Token.asString(this.getAtt("DomainArn",cdk().ResolutionTypeHint.STRING))}get attrDomainId(){return cdk().Token.asString(this.getAtt("DomainId",cdk().ResolutionTypeHint.STRING))}get attrHomeEfsFileSystemId(){return cdk().Token.asString(this.getAtt("HomeEfsFileSystemId",cdk().ResolutionTypeHint.STRING))}get attrSecurityGroupIdForDomainBoundary(){return cdk().Token.asString(this.getAtt("SecurityGroupIdForDomainBoundary",cdk().ResolutionTypeHint.STRING))}get attrSingleSignOnApplicationArn(){return cdk().Token.asString(this.getAtt("SingleSignOnApplicationArn",cdk().ResolutionTypeHint.STRING))}get attrSingleSignOnManagedApplicationInstanceId(){return cdk().Token.asString(this.getAtt("SingleSignOnManagedApplicationInstanceId",cdk().ResolutionTypeHint.STRING))}get attrUrl(){return cdk().Token.asString(this.getAtt("Url",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{appNetworkAccessType:this._appNetworkAccessType,appSecurityGroupManagement:this._appSecurityGroupManagement,authMode:this._authMode,defaultSpaceSettings:this._defaultSpaceSettings,defaultUserSettings:this._defaultUserSettings,domainName:this._domainName,domainSettings:this._domainSettings,kmsKeyId:this._kmsKeyId,subnetIds:this._subnetIds,tagPropagation:this._tagPropagation,tags:this.tags.renderTags(),vpcId:this._vpcId}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnDomain.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDomainPropsToCloudFormation(props)}}exports.CfnDomain=CfnDomain;function CfnDomainCustomImagePropertyValidator(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("appImageConfigName",cdk().requiredValidator)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("appImageConfigName",cdk().validateString)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("imageName",cdk().requiredValidator)(properties.imageName)),errors.collect(cdk().propertyValidator("imageName",cdk().validateString)(properties.imageName)),errors.collect(cdk().propertyValidator("imageVersionNumber",cdk().validateNumber)(properties.imageVersionNumber)),errors.wrap('supplied properties not correct for "CustomImageProperty"')}function convertCfnDomainCustomImagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainCustomImagePropertyValidator(properties).assertSuccess(),{AppImageConfigName:cdk().stringToCloudFormation(properties.appImageConfigName),ImageName:cdk().stringToCloudFormation(properties.imageName),ImageVersionNumber:cdk().numberToCloudFormation(properties.imageVersionNumber)}):properties}function CfnDomainCustomImagePropertyFromCloudFormation(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("appImageConfigName","AppImageConfigName",properties.AppImageConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.AppImageConfigName):void 0),ret.addPropertyResult("imageName","ImageName",properties.ImageName!=null?cfn_parse().FromCloudFormation.getString(properties.ImageName):void 0),ret.addPropertyResult("imageVersionNumber","ImageVersionNumber",properties.ImageVersionNumber!=null?cfn_parse().FromCloudFormation.getNumber(properties.ImageVersionNumber):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainResourceSpecPropertyValidator(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("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("lifecycleConfigArn",cdk().validateString)(properties.lifecycleConfigArn)),errors.collect(cdk().propertyValidator("sageMakerImageArn",cdk().validateString)(properties.sageMakerImageArn)),errors.collect(cdk().propertyValidator("sageMakerImageVersionArn",cdk().validateString)(properties.sageMakerImageVersionArn)),errors.wrap('supplied properties not correct for "ResourceSpecProperty"')}function convertCfnDomainResourceSpecPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainResourceSpecPropertyValidator(properties).assertSuccess(),{InstanceType:cdk().stringToCloudFormation(properties.instanceType),LifecycleConfigArn:cdk().stringToCloudFormation(properties.lifecycleConfigArn),SageMakerImageArn:cdk().stringToCloudFormation(properties.sageMakerImageArn),SageMakerImageVersionArn:cdk().stringToCloudFormation(properties.sageMakerImageVersionArn)}):properties}function CfnDomainResourceSpecPropertyFromCloudFormation(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("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("lifecycleConfigArn","LifecycleConfigArn",properties.LifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.LifecycleConfigArn):void 0),ret.addPropertyResult("sageMakerImageArn","SageMakerImageArn",properties.SageMakerImageArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageArn):void 0),ret.addPropertyResult("sageMakerImageVersionArn","SageMakerImageVersionArn",properties.SageMakerImageVersionArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageVersionArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainKernelGatewayAppSettingsPropertyValidator(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("customImages",cdk().listValidator(CfnDomainCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnDomainResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "KernelGatewayAppSettingsProperty"')}function convertCfnDomainKernelGatewayAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainKernelGatewayAppSettingsPropertyValidator(properties).assertSuccess(),{CustomImages:cdk().listMapper(convertCfnDomainCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnDomainResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnDomainKernelGatewayAppSettingsPropertyFromCloudFormation(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("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnDomainResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainJupyterServerAppSettingsPropertyValidator(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("defaultResourceSpec",CfnDomainResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "JupyterServerAppSettingsProperty"')}function convertCfnDomainJupyterServerAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainJupyterServerAppSettingsPropertyValidator(properties).assertSuccess(),{DefaultResourceSpec:convertCfnDomainResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnDomainJupyterServerAppSettingsPropertyFromCloudFormation(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("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnDomainResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainCodeRepositoryPropertyValidator(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("repositoryUrl",cdk().requiredValidator)(properties.repositoryUrl)),errors.collect(cdk().propertyValidator("repositoryUrl",cdk().validateString)(properties.repositoryUrl)),errors.wrap('supplied properties not correct for "CodeRepositoryProperty"')}function convertCfnDomainCodeRepositoryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainCodeRepositoryPropertyValidator(properties).assertSuccess(),{RepositoryUrl:cdk().stringToCloudFormation(properties.repositoryUrl)}):properties}function CfnDomainCodeRepositoryPropertyFromCloudFormation(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("repositoryUrl","RepositoryUrl",properties.RepositoryUrl!=null?cfn_parse().FromCloudFormation.getString(properties.RepositoryUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainIdleSettingsPropertyValidator(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("idleTimeoutInMinutes",cdk().validateNumber)(properties.idleTimeoutInMinutes)),errors.collect(cdk().propertyValidator("lifecycleManagement",cdk().validateString)(properties.lifecycleManagement)),errors.collect(cdk().propertyValidator("maxIdleTimeoutInMinutes",cdk().validateNumber)(properties.maxIdleTimeoutInMinutes)),errors.collect(cdk().propertyValidator("minIdleTimeoutInMinutes",cdk().validateNumber)(properties.minIdleTimeoutInMinutes)),errors.wrap('supplied properties not correct for "IdleSettingsProperty"')}function convertCfnDomainIdleSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainIdleSettingsPropertyValidator(properties).assertSuccess(),{IdleTimeoutInMinutes:cdk().numberToCloudFormation(properties.idleTimeoutInMinutes),LifecycleManagement:cdk().stringToCloudFormation(properties.lifecycleManagement),MaxIdleTimeoutInMinutes:cdk().numberToCloudFormation(properties.maxIdleTimeoutInMinutes),MinIdleTimeoutInMinutes:cdk().numberToCloudFormation(properties.minIdleTimeoutInMinutes)}):properties}function CfnDomainIdleSettingsPropertyFromCloudFormation(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("idleTimeoutInMinutes","IdleTimeoutInMinutes",properties.IdleTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.IdleTimeoutInMinutes):void 0),ret.addPropertyResult("lifecycleManagement","LifecycleManagement",properties.LifecycleManagement!=null?cfn_parse().FromCloudFormation.getString(properties.LifecycleManagement):void 0),ret.addPropertyResult("maxIdleTimeoutInMinutes","MaxIdleTimeoutInMinutes",properties.MaxIdleTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxIdleTimeoutInMinutes):void 0),ret.addPropertyResult("minIdleTimeoutInMinutes","MinIdleTimeoutInMinutes",properties.MinIdleTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinIdleTimeoutInMinutes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainAppLifecycleManagementPropertyValidator(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("idleSettings",CfnDomainIdleSettingsPropertyValidator)(properties.idleSettings)),errors.wrap('supplied properties not correct for "AppLifecycleManagementProperty"')}function convertCfnDomainAppLifecycleManagementPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainAppLifecycleManagementPropertyValidator(properties).assertSuccess(),{IdleSettings:convertCfnDomainIdleSettingsPropertyToCloudFormation(properties.idleSettings)}):properties}function CfnDomainAppLifecycleManagementPropertyFromCloudFormation(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("idleSettings","IdleSettings",properties.IdleSettings!=null?CfnDomainIdleSettingsPropertyFromCloudFormation(properties.IdleSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainJupyterLabAppSettingsPropertyValidator(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("appLifecycleManagement",CfnDomainAppLifecycleManagementPropertyValidator)(properties.appLifecycleManagement)),errors.collect(cdk().propertyValidator("builtInLifecycleConfigArn",cdk().validateString)(properties.builtInLifecycleConfigArn)),errors.collect(cdk().propertyValidator("codeRepositories",cdk().listValidator(CfnDomainCodeRepositoryPropertyValidator))(properties.codeRepositories)),errors.collect(cdk().propertyValidator("customImages",cdk().listValidator(CfnDomainCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnDomainResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "JupyterLabAppSettingsProperty"')}function convertCfnDomainJupyterLabAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainJupyterLabAppSettingsPropertyValidator(properties).assertSuccess(),{AppLifecycleManagement:convertCfnDomainAppLifecycleManagementPropertyToCloudFormation(properties.appLifecycleManagement),BuiltInLifecycleConfigArn:cdk().stringToCloudFormation(properties.builtInLifecycleConfigArn),CodeRepositories:cdk().listMapper(convertCfnDomainCodeRepositoryPropertyToCloudFormation)(properties.codeRepositories),CustomImages:cdk().listMapper(convertCfnDomainCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnDomainResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnDomainJupyterLabAppSettingsPropertyFromCloudFormation(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("appLifecycleManagement","AppLifecycleManagement",properties.AppLifecycleManagement!=null?CfnDomainAppLifecycleManagementPropertyFromCloudFormation(properties.AppLifecycleManagement):void 0),ret.addPropertyResult("builtInLifecycleConfigArn","BuiltInLifecycleConfigArn",properties.BuiltInLifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.BuiltInLifecycleConfigArn):void 0),ret.addPropertyResult("codeRepositories","CodeRepositories",properties.CodeRepositories!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainCodeRepositoryPropertyFromCloudFormation)(properties.CodeRepositories):void 0),ret.addPropertyResult("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnDomainResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainDefaultEbsStorageSettingsPropertyValidator(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("defaultEbsVolumeSizeInGb",cdk().requiredValidator)(properties.defaultEbsVolumeSizeInGb)),errors.collect(cdk().propertyValidator("defaultEbsVolumeSizeInGb",cdk().validateNumber)(properties.defaultEbsVolumeSizeInGb)),errors.collect(cdk().propertyValidator("maximumEbsVolumeSizeInGb",cdk().requiredValidator)(properties.maximumEbsVolumeSizeInGb)),errors.collect(cdk().propertyValidator("maximumEbsVolumeSizeInGb",cdk().validateNumber)(properties.maximumEbsVolumeSizeInGb)),errors.wrap('supplied properties not correct for "DefaultEbsStorageSettingsProperty"')}function convertCfnDomainDefaultEbsStorageSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainDefaultEbsStorageSettingsPropertyValidator(properties).assertSuccess(),{DefaultEbsVolumeSizeInGb:cdk().numberToCloudFormation(properties.defaultEbsVolumeSizeInGb),MaximumEbsVolumeSizeInGb:cdk().numberToCloudFormation(properties.maximumEbsVolumeSizeInGb)}):properties}function CfnDomainDefaultEbsStorageSettingsPropertyFromCloudFormation(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("defaultEbsVolumeSizeInGb","DefaultEbsVolumeSizeInGb",properties.DefaultEbsVolumeSizeInGb!=null?cfn_parse().FromCloudFormation.getNumber(properties.DefaultEbsVolumeSizeInGb):void 0),ret.addPropertyResult("maximumEbsVolumeSizeInGb","MaximumEbsVolumeSizeInGb",properties.MaximumEbsVolumeSizeInGb!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaximumEbsVolumeSizeInGb):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainDefaultSpaceStorageSettingsPropertyValidator(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("defaultEbsStorageSettings",CfnDomainDefaultEbsStorageSettingsPropertyValidator)(properties.defaultEbsStorageSettings)),errors.wrap('supplied properties not correct for "DefaultSpaceStorageSettingsProperty"')}function convertCfnDomainDefaultSpaceStorageSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainDefaultSpaceStorageSettingsPropertyValidator(properties).assertSuccess(),{DefaultEbsStorageSettings:convertCfnDomainDefaultEbsStorageSettingsPropertyToCloudFormation(properties.defaultEbsStorageSettings)}):properties}function CfnDomainDefaultSpaceStorageSettingsPropertyFromCloudFormation(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("defaultEbsStorageSettings","DefaultEbsStorageSettings",properties.DefaultEbsStorageSettings!=null?CfnDomainDefaultEbsStorageSettingsPropertyFromCloudFormation(properties.DefaultEbsStorageSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainCustomPosixUserConfigPropertyValidator(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("gid",cdk().requiredValidator)(properties.gid)),errors.collect(cdk().propertyValidator("gid",cdk().validateNumber)(properties.gid)),errors.collect(cdk().propertyValidator("uid",cdk().requiredValidator)(properties.uid)),errors.collect(cdk().propertyValidator("uid",cdk().validateNumber)(properties.uid)),errors.wrap('supplied properties not correct for "CustomPosixUserConfigProperty"')}function convertCfnDomainCustomPosixUserConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainCustomPosixUserConfigPropertyValidator(properties).assertSuccess(),{Gid:cdk().numberToCloudFormation(properties.gid),Uid:cdk().numberToCloudFormation(properties.uid)}):properties}function CfnDomainCustomPosixUserConfigPropertyFromCloudFormation(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("gid","Gid",properties.Gid!=null?cfn_parse().FromCloudFormation.getNumber(properties.Gid):void 0),ret.addPropertyResult("uid","Uid",properties.Uid!=null?cfn_parse().FromCloudFormation.getNumber(properties.Uid):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainEFSFileSystemConfigPropertyValidator(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("fileSystemId",cdk().requiredValidator)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemId",cdk().validateString)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemPath",cdk().validateString)(properties.fileSystemPath)),errors.wrap('supplied properties not correct for "EFSFileSystemConfigProperty"')}function convertCfnDomainEFSFileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainEFSFileSystemConfigPropertyValidator(properties).assertSuccess(),{FileSystemId:cdk().stringToCloudFormation(properties.fileSystemId),FileSystemPath:cdk().stringToCloudFormation(properties.fileSystemPath)}):properties}function CfnDomainEFSFileSystemConfigPropertyFromCloudFormation(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("fileSystemId","FileSystemId",properties.FileSystemId!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemId):void 0),ret.addPropertyResult("fileSystemPath","FileSystemPath",properties.FileSystemPath!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainFSxLustreFileSystemConfigPropertyValidator(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("fileSystemId",cdk().requiredValidator)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemId",cdk().validateString)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemPath",cdk().validateString)(properties.fileSystemPath)),errors.wrap('supplied properties not correct for "FSxLustreFileSystemConfigProperty"')}function convertCfnDomainFSxLustreFileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainFSxLustreFileSystemConfigPropertyValidator(properties).assertSuccess(),{FileSystemId:cdk().stringToCloudFormation(properties.fileSystemId),FileSystemPath:cdk().stringToCloudFormation(properties.fileSystemPath)}):properties}function CfnDomainFSxLustreFileSystemConfigPropertyFromCloudFormation(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("fileSystemId","FileSystemId",properties.FileSystemId!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemId):void 0),ret.addPropertyResult("fileSystemPath","FileSystemPath",properties.FileSystemPath!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainS3FileSystemConfigPropertyValidator(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("mountPath",cdk().validateString)(properties.mountPath)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3FileSystemConfigProperty"')}function convertCfnDomainS3FileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainS3FileSystemConfigPropertyValidator(properties).assertSuccess(),{MountPath:cdk().stringToCloudFormation(properties.mountPath),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnDomainS3FileSystemConfigPropertyFromCloudFormation(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("mountPath","MountPath",properties.MountPath!=null?cfn_parse().FromCloudFormation.getString(properties.MountPath):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainCustomFileSystemConfigPropertyValidator(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("efsFileSystemConfig",CfnDomainEFSFileSystemConfigPropertyValidator)(properties.efsFileSystemConfig)),errors.collect(cdk().propertyValidator("fSxLustreFileSystemConfig",CfnDomainFSxLustreFileSystemConfigPropertyValidator)(properties.fSxLustreFileSystemConfig)),errors.collect(cdk().propertyValidator("s3FileSystemConfig",CfnDomainS3FileSystemConfigPropertyValidator)(properties.s3FileSystemConfig)),errors.wrap('supplied properties not correct for "CustomFileSystemConfigProperty"')}function convertCfnDomainCustomFileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainCustomFileSystemConfigPropertyValidator(properties).assertSuccess(),{EFSFileSystemConfig:convertCfnDomainEFSFileSystemConfigPropertyToCloudFormation(properties.efsFileSystemConfig),FSxLustreFileSystemConfig:convertCfnDomainFSxLustreFileSystemConfigPropertyToCloudFormation(properties.fSxLustreFileSystemConfig),S3FileSystemConfig:convertCfnDomainS3FileSystemConfigPropertyToCloudFormation(properties.s3FileSystemConfig)}):properties}function CfnDomainCustomFileSystemConfigPropertyFromCloudFormation(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("efsFileSystemConfig","EFSFileSystemConfig",properties.EFSFileSystemConfig!=null?CfnDomainEFSFileSystemConfigPropertyFromCloudFormation(properties.EFSFileSystemConfig):void 0),ret.addPropertyResult("fSxLustreFileSystemConfig","FSxLustreFileSystemConfig",properties.FSxLustreFileSystemConfig!=null?CfnDomainFSxLustreFileSystemConfigPropertyFromCloudFormation(properties.FSxLustreFileSystemConfig):void 0),ret.addPropertyResult("s3FileSystemConfig","S3FileSystemConfig",properties.S3FileSystemConfig!=null?CfnDomainS3FileSystemConfigPropertyFromCloudFormation(properties.S3FileSystemConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainDefaultSpaceSettingsPropertyValidator(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("customFileSystemConfigs",cdk().listValidator(CfnDomainCustomFileSystemConfigPropertyValidator))(properties.customFileSystemConfigs)),errors.collect(cdk().propertyValidator("customPosixUserConfig",CfnDomainCustomPosixUserConfigPropertyValidator)(properties.customPosixUserConfig)),errors.collect(cdk().propertyValidator("executionRole",cdk().requiredValidator)(properties.executionRole)),errors.collect(cdk().propertyValidator("executionRole",cdk().validateString)(properties.executionRole)),errors.collect(cdk().propertyValidator("jupyterLabAppSettings",CfnDomainJupyterLabAppSettingsPropertyValidator)(properties.jupyterLabAppSettings)),errors.collect(cdk().propertyValidator("jupyterServerAppSettings",CfnDomainJupyterServerAppSettingsPropertyValidator)(properties.jupyterServerAppSettings)),errors.collect(cdk().propertyValidator("kernelGatewayAppSettings",CfnDomainKernelGatewayAppSettingsPropertyValidator)(properties.kernelGatewayAppSettings)),errors.collect(cdk().propertyValidator("securityGroups",cdk().listValidator(cdk().validateString))(properties.securityGroups)),errors.collect(cdk().propertyValidator("spaceStorageSettings",CfnDomainDefaultSpaceStorageSettingsPropertyValidator)(properties.spaceStorageSettings)),errors.wrap('supplied properties not correct for "DefaultSpaceSettingsProperty"')}function convertCfnDomainDefaultSpaceSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainDefaultSpaceSettingsPropertyValidator(properties).assertSuccess(),{CustomFileSystemConfigs:cdk().listMapper(convertCfnDomainCustomFileSystemConfigPropertyToCloudFormation)(properties.customFileSystemConfigs),CustomPosixUserConfig:convertCfnDomainCustomPosixUserConfigPropertyToCloudFormation(properties.customPosixUserConfig),ExecutionRole:cdk().stringToCloudFormation(properties.executionRole),JupyterLabAppSettings:convertCfnDomainJupyterLabAppSettingsPropertyToCloudFormation(properties.jupyterLabAppSettings),JupyterServerAppSettings:convertCfnDomainJupyterServerAppSettingsPropertyToCloudFormation(properties.jupyterServerAppSettings),KernelGatewayAppSettings:convertCfnDomainKernelGatewayAppSettingsPropertyToCloudFormation(properties.kernelGatewayAppSettings),SecurityGroups:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroups),SpaceStorageSettings:convertCfnDomainDefaultSpaceStorageSettingsPropertyToCloudFormation(properties.spaceStorageSettings)}):properties}function CfnDomainDefaultSpaceSettingsPropertyFromCloudFormation(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("customFileSystemConfigs","CustomFileSystemConfigs",properties.CustomFileSystemConfigs!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainCustomFileSystemConfigPropertyFromCloudFormation)(properties.CustomFileSystemConfigs):void 0),ret.addPropertyResult("customPosixUserConfig","CustomPosixUserConfig",properties.CustomPosixUserConfig!=null?CfnDomainCustomPosixUserConfigPropertyFromCloudFormation(properties.CustomPosixUserConfig):void 0),ret.addPropertyResult("executionRole","ExecutionRole",properties.ExecutionRole!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRole):void 0),ret.addPropertyResult("jupyterLabAppSettings","JupyterLabAppSettings",properties.JupyterLabAppSettings!=null?CfnDomainJupyterLabAppSettingsPropertyFromCloudFormation(properties.JupyterLabAppSettings):void 0),ret.addPropertyResult("jupyterServerAppSettings","JupyterServerAppSettings",properties.JupyterServerAppSettings!=null?CfnDomainJupyterServerAppSettingsPropertyFromCloudFormation(properties.JupyterServerAppSettings):void 0),ret.addPropertyResult("kernelGatewayAppSettings","KernelGatewayAppSettings",properties.KernelGatewayAppSettings!=null?CfnDomainKernelGatewayAppSettingsPropertyFromCloudFormation(properties.KernelGatewayAppSettings):void 0),ret.addPropertyResult("securityGroups","SecurityGroups",properties.SecurityGroups!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroups):void 0),ret.addPropertyResult("spaceStorageSettings","SpaceStorageSettings",properties.SpaceStorageSettings!=null?CfnDomainDefaultSpaceStorageSettingsPropertyFromCloudFormation(properties.SpaceStorageSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainRStudioServerProAppSettingsPropertyValidator(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("accessStatus",cdk().validateString)(properties.accessStatus)),errors.collect(cdk().propertyValidator("userGroup",cdk().validateString)(properties.userGroup)),errors.wrap('supplied properties not correct for "RStudioServerProAppSettingsProperty"')}function convertCfnDomainRStudioServerProAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainRStudioServerProAppSettingsPropertyValidator(properties).assertSuccess(),{AccessStatus:cdk().stringToCloudFormation(properties.accessStatus),UserGroup:cdk().stringToCloudFormation(properties.userGroup)}):properties}function CfnDomainRStudioServerProAppSettingsPropertyFromCloudFormation(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("accessStatus","AccessStatus",properties.AccessStatus!=null?cfn_parse().FromCloudFormation.getString(properties.AccessStatus):void 0),ret.addPropertyResult("userGroup","UserGroup",properties.UserGroup!=null?cfn_parse().FromCloudFormation.getString(properties.UserGroup):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainRSessionAppSettingsPropertyValidator(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("customImages",cdk().listValidator(CfnDomainCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnDomainResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.wrap('supplied properties not correct for "RSessionAppSettingsProperty"')}function convertCfnDomainRSessionAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainRSessionAppSettingsPropertyValidator(properties).assertSuccess(),{CustomImages:cdk().listMapper(convertCfnDomainCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnDomainResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec)}):properties}function CfnDomainRSessionAppSettingsPropertyFromCloudFormation(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("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnDomainResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainSharingSettingsPropertyValidator(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("notebookOutputOption",cdk().validateString)(properties.notebookOutputOption)),errors.collect(cdk().propertyValidator("s3KmsKeyId",cdk().validateString)(properties.s3KmsKeyId)),errors.collect(cdk().propertyValidator("s3OutputPath",cdk().validateString)(properties.s3OutputPath)),errors.wrap('supplied properties not correct for "SharingSettingsProperty"')}function convertCfnDomainSharingSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainSharingSettingsPropertyValidator(properties).assertSuccess(),{NotebookOutputOption:cdk().stringToCloudFormation(properties.notebookOutputOption),S3KmsKeyId:cdk().stringToCloudFormation(properties.s3KmsKeyId),S3OutputPath:cdk().stringToCloudFormation(properties.s3OutputPath)}):properties}function CfnDomainSharingSettingsPropertyFromCloudFormation(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("notebookOutputOption","NotebookOutputOption",properties.NotebookOutputOption!=null?cfn_parse().FromCloudFormation.getString(properties.NotebookOutputOption):void 0),ret.addPropertyResult("s3KmsKeyId","S3KmsKeyId",properties.S3KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.S3KmsKeyId):void 0),ret.addPropertyResult("s3OutputPath","S3OutputPath",properties.S3OutputPath!=null?cfn_parse().FromCloudFormation.getString(properties.S3OutputPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainCodeEditorAppSettingsPropertyValidator(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("appLifecycleManagement",CfnDomainAppLifecycleManagementPropertyValidator)(properties.appLifecycleManagement)),errors.collect(cdk().propertyValidator("builtInLifecycleConfigArn",cdk().validateString)(properties.builtInLifecycleConfigArn)),errors.collect(cdk().propertyValidator("customImages",cdk().listValidator(CfnDomainCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnDomainResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "CodeEditorAppSettingsProperty"')}function convertCfnDomainCodeEditorAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainCodeEditorAppSettingsPropertyValidator(properties).assertSuccess(),{AppLifecycleManagement:convertCfnDomainAppLifecycleManagementPropertyToCloudFormation(properties.appLifecycleManagement),BuiltInLifecycleConfigArn:cdk().stringToCloudFormation(properties.builtInLifecycleConfigArn),CustomImages:cdk().listMapper(convertCfnDomainCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnDomainResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnDomainCodeEditorAppSettingsPropertyFromCloudFormation(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("appLifecycleManagement","AppLifecycleManagement",properties.AppLifecycleManagement!=null?CfnDomainAppLifecycleManagementPropertyFromCloudFormation(properties.AppLifecycleManagement):void 0),ret.addPropertyResult("builtInLifecycleConfigArn","BuiltInLifecycleConfigArn",properties.BuiltInLifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.BuiltInLifecycleConfigArn):void 0),ret.addPropertyResult("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnDomainResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainHiddenSageMakerImagePropertyValidator(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("sageMakerImageName",cdk().validateString)(properties.sageMakerImageName)),errors.collect(cdk().propertyValidator("versionAliases",cdk().listValidator(cdk().validateString))(properties.versionAliases)),errors.wrap('supplied properties not correct for "HiddenSageMakerImageProperty"')}function convertCfnDomainHiddenSageMakerImagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainHiddenSageMakerImagePropertyValidator(properties).assertSuccess(),{SageMakerImageName:cdk().stringToCloudFormation(properties.sageMakerImageName),VersionAliases:cdk().listMapper(cdk().stringToCloudFormation)(properties.versionAliases)}):properties}function CfnDomainHiddenSageMakerImagePropertyFromCloudFormation(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("sageMakerImageName","SageMakerImageName",properties.SageMakerImageName!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageName):void 0),ret.addPropertyResult("versionAliases","VersionAliases",properties.VersionAliases!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.VersionAliases):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainStudioWebPortalSettingsPropertyValidator(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("hiddenAppTypes",cdk().listValidator(cdk().validateString))(properties.hiddenAppTypes)),errors.collect(cdk().propertyValidator("hiddenInstanceTypes",cdk().listValidator(cdk().validateString))(properties.hiddenInstanceTypes)),errors.collect(cdk().propertyValidator("hiddenMlTools",cdk().listValidator(cdk().validateString))(properties.hiddenMlTools)),errors.collect(cdk().propertyValidator("hiddenSageMakerImageVersionAliases",cdk().listValidator(CfnDomainHiddenSageMakerImagePropertyValidator))(properties.hiddenSageMakerImageVersionAliases)),errors.wrap('supplied properties not correct for "StudioWebPortalSettingsProperty"')}function convertCfnDomainStudioWebPortalSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainStudioWebPortalSettingsPropertyValidator(properties).assertSuccess(),{HiddenAppTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.hiddenAppTypes),HiddenInstanceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.hiddenInstanceTypes),HiddenMlTools:cdk().listMapper(cdk().stringToCloudFormation)(properties.hiddenMlTools),HiddenSageMakerImageVersionAliases:cdk().listMapper(convertCfnDomainHiddenSageMakerImagePropertyToCloudFormation)(properties.hiddenSageMakerImageVersionAliases)}):properties}function CfnDomainStudioWebPortalSettingsPropertyFromCloudFormation(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("hiddenAppTypes","HiddenAppTypes",properties.HiddenAppTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.HiddenAppTypes):void 0),ret.addPropertyResult("hiddenInstanceTypes","HiddenInstanceTypes",properties.HiddenInstanceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.HiddenInstanceTypes):void 0),ret.addPropertyResult("hiddenMlTools","HiddenMlTools",properties.HiddenMlTools!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.HiddenMlTools):void 0),ret.addPropertyResult("hiddenSageMakerImageVersionAliases","HiddenSageMakerImageVersionAliases",properties.HiddenSageMakerImageVersionAliases!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainHiddenSageMakerImagePropertyFromCloudFormation)(properties.HiddenSageMakerImageVersionAliases):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainUserSettingsPropertyValidator(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("autoMountHomeEfs",cdk().validateString)(properties.autoMountHomeEfs)),errors.collect(cdk().propertyValidator("codeEditorAppSettings",CfnDomainCodeEditorAppSettingsPropertyValidator)(properties.codeEditorAppSettings)),errors.collect(cdk().propertyValidator("customFileSystemConfigs",cdk().listValidator(CfnDomainCustomFileSystemConfigPropertyValidator))(properties.customFileSystemConfigs)),errors.collect(cdk().propertyValidator("customPosixUserConfig",CfnDomainCustomPosixUserConfigPropertyValidator)(properties.customPosixUserConfig)),errors.collect(cdk().propertyValidator("defaultLandingUri",cdk().validateString)(properties.defaultLandingUri)),errors.collect(cdk().propertyValidator("executionRole",cdk().requiredValidator)(properties.executionRole)),errors.collect(cdk().propertyValidator("executionRole",cdk().validateString)(properties.executionRole)),errors.collect(cdk().propertyValidator("jupyterLabAppSettings",CfnDomainJupyterLabAppSettingsPropertyValidator)(properties.jupyterLabAppSettings)),errors.collect(cdk().propertyValidator("jupyterServerAppSettings",CfnDomainJupyterServerAppSettingsPropertyValidator)(properties.jupyterServerAppSettings)),errors.collect(cdk().propertyValidator("kernelGatewayAppSettings",CfnDomainKernelGatewayAppSettingsPropertyValidator)(properties.kernelGatewayAppSettings)),errors.collect(cdk().propertyValidator("rSessionAppSettings",CfnDomainRSessionAppSettingsPropertyValidator)(properties.rSessionAppSettings)),errors.collect(cdk().propertyValidator("rStudioServerProAppSettings",CfnDomainRStudioServerProAppSettingsPropertyValidator)(properties.rStudioServerProAppSettings)),errors.collect(cdk().propertyValidator("securityGroups",cdk().listValidator(cdk().validateString))(properties.securityGroups)),errors.collect(cdk().propertyValidator("sharingSettings",CfnDomainSharingSettingsPropertyValidator)(properties.sharingSettings)),errors.collect(cdk().propertyValidator("spaceStorageSettings",CfnDomainDefaultSpaceStorageSettingsPropertyValidator)(properties.spaceStorageSettings)),errors.collect(cdk().propertyValidator("studioWebPortal",cdk().validateString)(properties.studioWebPortal)),errors.collect(cdk().propertyValidator("studioWebPortalSettings",CfnDomainStudioWebPortalSettingsPropertyValidator)(properties.studioWebPortalSettings)),errors.wrap('supplied properties not correct for "UserSettingsProperty"')}function convertCfnDomainUserSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainUserSettingsPropertyValidator(properties).assertSuccess(),{AutoMountHomeEFS:cdk().stringToCloudFormation(properties.autoMountHomeEfs),CodeEditorAppSettings:convertCfnDomainCodeEditorAppSettingsPropertyToCloudFormation(properties.codeEditorAppSettings),CustomFileSystemConfigs:cdk().listMapper(convertCfnDomainCustomFileSystemConfigPropertyToCloudFormation)(properties.customFileSystemConfigs),CustomPosixUserConfig:convertCfnDomainCustomPosixUserConfigPropertyToCloudFormation(properties.customPosixUserConfig),DefaultLandingUri:cdk().stringToCloudFormation(properties.defaultLandingUri),ExecutionRole:cdk().stringToCloudFormation(properties.executionRole),JupyterLabAppSettings:convertCfnDomainJupyterLabAppSettingsPropertyToCloudFormation(properties.jupyterLabAppSettings),JupyterServerAppSettings:convertCfnDomainJupyterServerAppSettingsPropertyToCloudFormation(properties.jupyterServerAppSettings),KernelGatewayAppSettings:convertCfnDomainKernelGatewayAppSettingsPropertyToCloudFormation(properties.kernelGatewayAppSettings),RSessionAppSettings:convertCfnDomainRSessionAppSettingsPropertyToCloudFormation(properties.rSessionAppSettings),RStudioServerProAppSettings:convertCfnDomainRStudioServerProAppSettingsPropertyToCloudFormation(properties.rStudioServerProAppSettings),SecurityGroups:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroups),SharingSettings:convertCfnDomainSharingSettingsPropertyToCloudFormation(properties.sharingSettings),SpaceStorageSettings:convertCfnDomainDefaultSpaceStorageSettingsPropertyToCloudFormation(properties.spaceStorageSettings),StudioWebPortal:cdk().stringToCloudFormation(properties.studioWebPortal),StudioWebPortalSettings:convertCfnDomainStudioWebPortalSettingsPropertyToCloudFormation(properties.studioWebPortalSettings)}):properties}function CfnDomainUserSettingsPropertyFromCloudFormation(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("autoMountHomeEfs","AutoMountHomeEFS",properties.AutoMountHomeEFS!=null?cfn_parse().FromCloudFormation.getString(properties.AutoMountHomeEFS):void 0),ret.addPropertyResult("codeEditorAppSettings","CodeEditorAppSettings",properties.CodeEditorAppSettings!=null?CfnDomainCodeEditorAppSettingsPropertyFromCloudFormation(properties.CodeEditorAppSettings):void 0),ret.addPropertyResult("customFileSystemConfigs","CustomFileSystemConfigs",properties.CustomFileSystemConfigs!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainCustomFileSystemConfigPropertyFromCloudFormation)(properties.CustomFileSystemConfigs):void 0),ret.addPropertyResult("customPosixUserConfig","CustomPosixUserConfig",properties.CustomPosixUserConfig!=null?CfnDomainCustomPosixUserConfigPropertyFromCloudFormation(properties.CustomPosixUserConfig):void 0),ret.addPropertyResult("defaultLandingUri","DefaultLandingUri",properties.DefaultLandingUri!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultLandingUri):void 0),ret.addPropertyResult("executionRole","ExecutionRole",properties.ExecutionRole!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRole):void 0),ret.addPropertyResult("jupyterLabAppSettings","JupyterLabAppSettings",properties.JupyterLabAppSettings!=null?CfnDomainJupyterLabAppSettingsPropertyFromCloudFormation(properties.JupyterLabAppSettings):void 0),ret.addPropertyResult("jupyterServerAppSettings","JupyterServerAppSettings",properties.JupyterServerAppSettings!=null?CfnDomainJupyterServerAppSettingsPropertyFromCloudFormation(properties.JupyterServerAppSettings):void 0),ret.addPropertyResult("kernelGatewayAppSettings","KernelGatewayAppSettings",properties.KernelGatewayAppSettings!=null?CfnDomainKernelGatewayAppSettingsPropertyFromCloudFormation(properties.KernelGatewayAppSettings):void 0),ret.addPropertyResult("rSessionAppSettings","RSessionAppSettings",properties.RSessionAppSettings!=null?CfnDomainRSessionAppSettingsPropertyFromCloudFormation(properties.RSessionAppSettings):void 0),ret.addPropertyResult("rStudioServerProAppSettings","RStudioServerProAppSettings",properties.RStudioServerProAppSettings!=null?CfnDomainRStudioServerProAppSettingsPropertyFromCloudFormation(properties.RStudioServerProAppSettings):void 0),ret.addPropertyResult("securityGroups","SecurityGroups",properties.SecurityGroups!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroups):void 0),ret.addPropertyResult("sharingSettings","SharingSettings",properties.SharingSettings!=null?CfnDomainSharingSettingsPropertyFromCloudFormation(properties.SharingSettings):void 0),ret.addPropertyResult("spaceStorageSettings","SpaceStorageSettings",properties.SpaceStorageSettings!=null?CfnDomainDefaultSpaceStorageSettingsPropertyFromCloudFormation(properties.SpaceStorageSettings):void 0),ret.addPropertyResult("studioWebPortal","StudioWebPortal",properties.StudioWebPortal!=null?cfn_parse().FromCloudFormation.getString(properties.StudioWebPortal):void 0),ret.addPropertyResult("studioWebPortalSettings","StudioWebPortalSettings",properties.StudioWebPortalSettings!=null?CfnDomainStudioWebPortalSettingsPropertyFromCloudFormation(properties.StudioWebPortalSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainRStudioServerProDomainSettingsPropertyValidator(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("defaultResourceSpec",CfnDomainResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("domainExecutionRoleArn",cdk().requiredValidator)(properties.domainExecutionRoleArn)),errors.collect(cdk().propertyValidator("domainExecutionRoleArn",cdk().validateString)(properties.domainExecutionRoleArn)),errors.collect(cdk().propertyValidator("rStudioConnectUrl",cdk().validateString)(properties.rStudioConnectUrl)),errors.collect(cdk().propertyValidator("rStudioPackageManagerUrl",cdk().validateString)(properties.rStudioPackageManagerUrl)),errors.wrap('supplied properties not correct for "RStudioServerProDomainSettingsProperty"')}function convertCfnDomainRStudioServerProDomainSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainRStudioServerProDomainSettingsPropertyValidator(properties).assertSuccess(),{DefaultResourceSpec:convertCfnDomainResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),DomainExecutionRoleArn:cdk().stringToCloudFormation(properties.domainExecutionRoleArn),RStudioConnectUrl:cdk().stringToCloudFormation(properties.rStudioConnectUrl),RStudioPackageManagerUrl:cdk().stringToCloudFormation(properties.rStudioPackageManagerUrl)}):properties}function CfnDomainRStudioServerProDomainSettingsPropertyFromCloudFormation(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("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnDomainResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("domainExecutionRoleArn","DomainExecutionRoleArn",properties.DomainExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.DomainExecutionRoleArn):void 0),ret.addPropertyResult("rStudioConnectUrl","RStudioConnectUrl",properties.RStudioConnectUrl!=null?cfn_parse().FromCloudFormation.getString(properties.RStudioConnectUrl):void 0),ret.addPropertyResult("rStudioPackageManagerUrl","RStudioPackageManagerUrl",properties.RStudioPackageManagerUrl!=null?cfn_parse().FromCloudFormation.getString(properties.RStudioPackageManagerUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainDockerSettingsPropertyValidator(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("enableDockerAccess",cdk().validateString)(properties.enableDockerAccess)),errors.collect(cdk().propertyValidator("vpcOnlyTrustedAccounts",cdk().listValidator(cdk().validateString))(properties.vpcOnlyTrustedAccounts)),errors.wrap('supplied properties not correct for "DockerSettingsProperty"')}function convertCfnDomainDockerSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainDockerSettingsPropertyValidator(properties).assertSuccess(),{EnableDockerAccess:cdk().stringToCloudFormation(properties.enableDockerAccess),VpcOnlyTrustedAccounts:cdk().listMapper(cdk().stringToCloudFormation)(properties.vpcOnlyTrustedAccounts)}):properties}function CfnDomainDockerSettingsPropertyFromCloudFormation(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("enableDockerAccess","EnableDockerAccess",properties.EnableDockerAccess!=null?cfn_parse().FromCloudFormation.getString(properties.EnableDockerAccess):void 0),ret.addPropertyResult("vpcOnlyTrustedAccounts","VpcOnlyTrustedAccounts",properties.VpcOnlyTrustedAccounts!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.VpcOnlyTrustedAccounts):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainUnifiedStudioSettingsPropertyValidator(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("domainAccountId",cdk().validateString)(properties.domainAccountId)),errors.collect(cdk().propertyValidator("domainId",cdk().validateString)(properties.domainId)),errors.collect(cdk().propertyValidator("domainRegion",cdk().validateString)(properties.domainRegion)),errors.collect(cdk().propertyValidator("environmentId",cdk().validateString)(properties.environmentId)),errors.collect(cdk().propertyValidator("projectId",cdk().validateString)(properties.projectId)),errors.collect(cdk().propertyValidator("projectS3Path",cdk().validateString)(properties.projectS3Path)),errors.collect(cdk().propertyValidator("studioWebPortalAccess",cdk().validateString)(properties.studioWebPortalAccess)),errors.wrap('supplied properties not correct for "UnifiedStudioSettingsProperty"')}function convertCfnDomainUnifiedStudioSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainUnifiedStudioSettingsPropertyValidator(properties).assertSuccess(),{DomainAccountId:cdk().stringToCloudFormation(properties.domainAccountId),DomainId:cdk().stringToCloudFormation(properties.domainId),DomainRegion:cdk().stringToCloudFormation(properties.domainRegion),EnvironmentId:cdk().stringToCloudFormation(properties.environmentId),ProjectId:cdk().stringToCloudFormation(properties.projectId),ProjectS3Path:cdk().stringToCloudFormation(properties.projectS3Path),StudioWebPortalAccess:cdk().stringToCloudFormation(properties.studioWebPortalAccess)}):properties}function CfnDomainUnifiedStudioSettingsPropertyFromCloudFormation(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("domainAccountId","DomainAccountId",properties.DomainAccountId!=null?cfn_parse().FromCloudFormation.getString(properties.DomainAccountId):void 0),ret.addPropertyResult("domainId","DomainId",properties.DomainId!=null?cfn_parse().FromCloudFormation.getString(properties.DomainId):void 0),ret.addPropertyResult("domainRegion","DomainRegion",properties.DomainRegion!=null?cfn_parse().FromCloudFormation.getString(properties.DomainRegion):void 0),ret.addPropertyResult("environmentId","EnvironmentId",properties.EnvironmentId!=null?cfn_parse().FromCloudFormation.getString(properties.EnvironmentId):void 0),ret.addPropertyResult("projectId","ProjectId",properties.ProjectId!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectId):void 0),ret.addPropertyResult("projectS3Path","ProjectS3Path",properties.ProjectS3Path!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectS3Path):void 0),ret.addPropertyResult("studioWebPortalAccess","StudioWebPortalAccess",properties.StudioWebPortalAccess!=null?cfn_parse().FromCloudFormation.getString(properties.StudioWebPortalAccess):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainDomainSettingsPropertyValidator(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("dockerSettings",CfnDomainDockerSettingsPropertyValidator)(properties.dockerSettings)),errors.collect(cdk().propertyValidator("executionRoleIdentityConfig",cdk().validateString)(properties.executionRoleIdentityConfig)),errors.collect(cdk().propertyValidator("ipAddressType",cdk().validateString)(properties.ipAddressType)),errors.collect(cdk().propertyValidator("rStudioServerProDomainSettings",CfnDomainRStudioServerProDomainSettingsPropertyValidator)(properties.rStudioServerProDomainSettings)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("unifiedStudioSettings",CfnDomainUnifiedStudioSettingsPropertyValidator)(properties.unifiedStudioSettings)),errors.wrap('supplied properties not correct for "DomainSettingsProperty"')}function convertCfnDomainDomainSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainDomainSettingsPropertyValidator(properties).assertSuccess(),{DockerSettings:convertCfnDomainDockerSettingsPropertyToCloudFormation(properties.dockerSettings),ExecutionRoleIdentityConfig:cdk().stringToCloudFormation(properties.executionRoleIdentityConfig),IpAddressType:cdk().stringToCloudFormation(properties.ipAddressType),RStudioServerProDomainSettings:convertCfnDomainRStudioServerProDomainSettingsPropertyToCloudFormation(properties.rStudioServerProDomainSettings),SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),UnifiedStudioSettings:convertCfnDomainUnifiedStudioSettingsPropertyToCloudFormation(properties.unifiedStudioSettings)}):properties}function CfnDomainDomainSettingsPropertyFromCloudFormation(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("dockerSettings","DockerSettings",properties.DockerSettings!=null?CfnDomainDockerSettingsPropertyFromCloudFormation(properties.DockerSettings):void 0),ret.addPropertyResult("executionRoleIdentityConfig","ExecutionRoleIdentityConfig",properties.ExecutionRoleIdentityConfig!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleIdentityConfig):void 0),ret.addPropertyResult("ipAddressType","IpAddressType",properties.IpAddressType!=null?cfn_parse().FromCloudFormation.getString(properties.IpAddressType):void 0),ret.addPropertyResult("rStudioServerProDomainSettings","RStudioServerProDomainSettings",properties.RStudioServerProDomainSettings!=null?CfnDomainRStudioServerProDomainSettingsPropertyFromCloudFormation(properties.RStudioServerProDomainSettings):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("unifiedStudioSettings","UnifiedStudioSettings",properties.UnifiedStudioSettings!=null?CfnDomainUnifiedStudioSettingsPropertyFromCloudFormation(properties.UnifiedStudioSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainPropsValidator(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("appNetworkAccessType",cdk().validateString)(properties.appNetworkAccessType)),errors.collect(cdk().propertyValidator("appSecurityGroupManagement",cdk().validateString)(properties.appSecurityGroupManagement)),errors.collect(cdk().propertyValidator("authMode",cdk().requiredValidator)(properties.authMode)),errors.collect(cdk().propertyValidator("authMode",cdk().validateString)(properties.authMode)),errors.collect(cdk().propertyValidator("defaultSpaceSettings",CfnDomainDefaultSpaceSettingsPropertyValidator)(properties.defaultSpaceSettings)),errors.collect(cdk().propertyValidator("defaultUserSettings",cdk().requiredValidator)(properties.defaultUserSettings)),errors.collect(cdk().propertyValidator("defaultUserSettings",CfnDomainUserSettingsPropertyValidator)(properties.defaultUserSettings)),errors.collect(cdk().propertyValidator("domainName",cdk().requiredValidator)(properties.domainName)),errors.collect(cdk().propertyValidator("domainName",cdk().validateString)(properties.domainName)),errors.collect(cdk().propertyValidator("domainSettings",CfnDomainDomainSettingsPropertyValidator)(properties.domainSettings)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("subnetIds",cdk().listValidator(cdk().validateString))(properties.subnetIds)),errors.collect(cdk().propertyValidator("tagPropagation",cdk().validateString)(properties.tagPropagation)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("vpcId",cdk().validateString)(properties.vpcId)),errors.wrap('supplied properties not correct for "CfnDomainProps"')}function convertCfnDomainPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainPropsValidator(properties).assertSuccess(),{AppNetworkAccessType:cdk().stringToCloudFormation(properties.appNetworkAccessType),AppSecurityGroupManagement:cdk().stringToCloudFormation(properties.appSecurityGroupManagement),AuthMode:cdk().stringToCloudFormation(properties.authMode),DefaultSpaceSettings:convertCfnDomainDefaultSpaceSettingsPropertyToCloudFormation(properties.defaultSpaceSettings),DefaultUserSettings:convertCfnDomainUserSettingsPropertyToCloudFormation(properties.defaultUserSettings),DomainName:cdk().stringToCloudFormation(properties.domainName),DomainSettings:convertCfnDomainDomainSettingsPropertyToCloudFormation(properties.domainSettings),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),SubnetIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnetIds),TagPropagation:cdk().stringToCloudFormation(properties.tagPropagation),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VpcId:cdk().stringToCloudFormation(properties.vpcId)}):properties}function CfnDomainPropsFromCloudFormation(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("appNetworkAccessType","AppNetworkAccessType",properties.AppNetworkAccessType!=null?cfn_parse().FromCloudFormation.getString(properties.AppNetworkAccessType):void 0),ret.addPropertyResult("appSecurityGroupManagement","AppSecurityGroupManagement",properties.AppSecurityGroupManagement!=null?cfn_parse().FromCloudFormation.getString(properties.AppSecurityGroupManagement):void 0),ret.addPropertyResult("authMode","AuthMode",properties.AuthMode!=null?cfn_parse().FromCloudFormation.getString(properties.AuthMode):void 0),ret.addPropertyResult("defaultSpaceSettings","DefaultSpaceSettings",properties.DefaultSpaceSettings!=null?CfnDomainDefaultSpaceSettingsPropertyFromCloudFormation(properties.DefaultSpaceSettings):void 0),ret.addPropertyResult("defaultUserSettings","DefaultUserSettings",properties.DefaultUserSettings!=null?CfnDomainUserSettingsPropertyFromCloudFormation(properties.DefaultUserSettings):void 0),ret.addPropertyResult("domainName","DomainName",properties.DomainName!=null?cfn_parse().FromCloudFormation.getString(properties.DomainName):void 0),ret.addPropertyResult("domainSettings","DomainSettings",properties.DomainSettings!=null?CfnDomainDomainSettingsPropertyFromCloudFormation(properties.DomainSettings):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SubnetIds):void 0),ret.addPropertyResult("tagPropagation","TagPropagation",properties.TagPropagation!=null?cfn_parse().FromCloudFormation.getString(properties.TagPropagation):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcId","VpcId",properties.VpcId!=null?cfn_parse().FromCloudFormation.getString(properties.VpcId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEndpoint extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnEndpoint",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Endpoint";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEndpointPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnEndpoint(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 isCfnEndpoint(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnEndpoint.CFN_RESOURCE_TYPE_NAME}static arnForEndpoint(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IEndpointRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForEndpoint),error}return resource.endpointRef.endpointArn}_deploymentConfig;_endpointConfigName;_endpointName;_excludeRetainedVariantProperties;_retainAllVariantProperties;_retainDeploymentConfig;tags;_tagsRaw;cfnPropertyNames={deploymentConfig:"DeploymentConfig",endpointConfigName:"EndpointConfigName",endpointName:"EndpointName",excludeRetainedVariantProperties:"ExcludeRetainedVariantProperties",retainAllVariantProperties:"RetainAllVariantProperties",retainDeploymentConfig:"RetainDeploymentConfig",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnEndpoint.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnEndpointProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEndpoint),error}cdk().requireProperty(props,"endpointConfigName",this),this._deploymentConfig=props.deploymentConfig,this._endpointConfigName=props.endpointConfigName,this._endpointName=props.endpointName,this._excludeRetainedVariantProperties=props.excludeRetainedVariantProperties,this._retainAllVariantProperties=props.retainAllVariantProperties,this._retainDeploymentConfig=props.retainDeploymentConfig,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Endpoint",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get endpointRef(){return{endpointArn:this.ref}}get deploymentConfig(){return this._deploymentConfig}set deploymentConfig(value){cdk().traceProperty(this.node,"DeploymentConfig"),this._deploymentConfig=value}get endpointConfigName(){return this._endpointConfigName}set endpointConfigName(value){cdk().traceProperty(this.node,"EndpointConfigName"),this._endpointConfigName=value}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get excludeRetainedVariantProperties(){return this._excludeRetainedVariantProperties}set excludeRetainedVariantProperties(value){cdk().traceProperty(this.node,"ExcludeRetainedVariantProperties"),this._excludeRetainedVariantProperties=value}get retainAllVariantProperties(){return this._retainAllVariantProperties}set retainAllVariantProperties(value){cdk().traceProperty(this.node,"RetainAllVariantProperties"),this._retainAllVariantProperties=value}get retainDeploymentConfig(){return this._retainDeploymentConfig}set retainDeploymentConfig(value){cdk().traceProperty(this.node,"RetainDeploymentConfig"),this._retainDeploymentConfig=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrEndpointArn(){return cdk().Token.asString(this.getAtt("EndpointArn",cdk().ResolutionTypeHint.STRING))}get attrEndpointName(){return cdk().Token.asString(this.getAtt("EndpointName",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{deploymentConfig:this._deploymentConfig,endpointConfigName:this._endpointConfigName,endpointName:this._endpointName,excludeRetainedVariantProperties:this._excludeRetainedVariantProperties,retainAllVariantProperties:this._retainAllVariantProperties,retainDeploymentConfig:this._retainDeploymentConfig,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",CfnEndpoint.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnEndpointPropsToCloudFormation(props)}}exports.CfnEndpoint=CfnEndpoint;function CfnEndpointVariantPropertyPropertyValidator(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("variantPropertyType",cdk().validateString)(properties.variantPropertyType)),errors.wrap('supplied properties not correct for "VariantPropertyProperty"')}function convertCfnEndpointVariantPropertyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointVariantPropertyPropertyValidator(properties).assertSuccess(),{VariantPropertyType:cdk().stringToCloudFormation(properties.variantPropertyType)}):properties}function CfnEndpointVariantPropertyPropertyFromCloudFormation(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("variantPropertyType","VariantPropertyType",properties.VariantPropertyType!=null?cfn_parse().FromCloudFormation.getString(properties.VariantPropertyType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointAlarmPropertyValidator(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("alarmName",cdk().requiredValidator)(properties.alarmName)),errors.collect(cdk().propertyValidator("alarmName",cdk().validateString)(properties.alarmName)),errors.wrap('supplied properties not correct for "AlarmProperty"')}function convertCfnEndpointAlarmPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointAlarmPropertyValidator(properties).assertSuccess(),{AlarmName:cdk().stringToCloudFormation(properties.alarmName)}):properties}function CfnEndpointAlarmPropertyFromCloudFormation(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("alarmName","AlarmName",properties.AlarmName!=null?cfn_parse().FromCloudFormation.getString(properties.AlarmName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointAutoRollbackConfigPropertyValidator(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("alarms",cdk().requiredValidator)(properties.alarms)),errors.collect(cdk().propertyValidator("alarms",cdk().listValidator(CfnEndpointAlarmPropertyValidator))(properties.alarms)),errors.wrap('supplied properties not correct for "AutoRollbackConfigProperty"')}function convertCfnEndpointAutoRollbackConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointAutoRollbackConfigPropertyValidator(properties).assertSuccess(),{Alarms:cdk().listMapper(convertCfnEndpointAlarmPropertyToCloudFormation)(properties.alarms)}):properties}function CfnEndpointAutoRollbackConfigPropertyFromCloudFormation(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("alarms","Alarms",properties.Alarms!=null?cfn_parse().FromCloudFormation.getArray(CfnEndpointAlarmPropertyFromCloudFormation)(properties.Alarms):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointCapacitySizePropertyValidator(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().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "CapacitySizeProperty"')}function convertCfnEndpointCapacitySizePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointCapacitySizePropertyValidator(properties).assertSuccess(),{Type:cdk().stringToCloudFormation(properties.type),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnEndpointCapacitySizePropertyFromCloudFormation(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.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointRollingUpdatePolicyPropertyValidator(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("maximumBatchSize",cdk().requiredValidator)(properties.maximumBatchSize)),errors.collect(cdk().propertyValidator("maximumBatchSize",CfnEndpointCapacitySizePropertyValidator)(properties.maximumBatchSize)),errors.collect(cdk().propertyValidator("maximumExecutionTimeoutInSeconds",cdk().validateNumber)(properties.maximumExecutionTimeoutInSeconds)),errors.collect(cdk().propertyValidator("rollbackMaximumBatchSize",CfnEndpointCapacitySizePropertyValidator)(properties.rollbackMaximumBatchSize)),errors.collect(cdk().propertyValidator("waitIntervalInSeconds",cdk().requiredValidator)(properties.waitIntervalInSeconds)),errors.collect(cdk().propertyValidator("waitIntervalInSeconds",cdk().validateNumber)(properties.waitIntervalInSeconds)),errors.wrap('supplied properties not correct for "RollingUpdatePolicyProperty"')}function convertCfnEndpointRollingUpdatePolicyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointRollingUpdatePolicyPropertyValidator(properties).assertSuccess(),{MaximumBatchSize:convertCfnEndpointCapacitySizePropertyToCloudFormation(properties.maximumBatchSize),MaximumExecutionTimeoutInSeconds:cdk().numberToCloudFormation(properties.maximumExecutionTimeoutInSeconds),RollbackMaximumBatchSize:convertCfnEndpointCapacitySizePropertyToCloudFormation(properties.rollbackMaximumBatchSize),WaitIntervalInSeconds:cdk().numberToCloudFormation(properties.waitIntervalInSeconds)}):properties}function CfnEndpointRollingUpdatePolicyPropertyFromCloudFormation(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("maximumBatchSize","MaximumBatchSize",properties.MaximumBatchSize!=null?CfnEndpointCapacitySizePropertyFromCloudFormation(properties.MaximumBatchSize):void 0),ret.addPropertyResult("maximumExecutionTimeoutInSeconds","MaximumExecutionTimeoutInSeconds",properties.MaximumExecutionTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaximumExecutionTimeoutInSeconds):void 0),ret.addPropertyResult("rollbackMaximumBatchSize","RollbackMaximumBatchSize",properties.RollbackMaximumBatchSize!=null?CfnEndpointCapacitySizePropertyFromCloudFormation(properties.RollbackMaximumBatchSize):void 0),ret.addPropertyResult("waitIntervalInSeconds","WaitIntervalInSeconds",properties.WaitIntervalInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.WaitIntervalInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointTrafficRoutingConfigPropertyValidator(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("canarySize",CfnEndpointCapacitySizePropertyValidator)(properties.canarySize)),errors.collect(cdk().propertyValidator("linearStepSize",CfnEndpointCapacitySizePropertyValidator)(properties.linearStepSize)),errors.collect(cdk().propertyValidator("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.collect(cdk().propertyValidator("waitIntervalInSeconds",cdk().validateNumber)(properties.waitIntervalInSeconds)),errors.wrap('supplied properties not correct for "TrafficRoutingConfigProperty"')}function convertCfnEndpointTrafficRoutingConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointTrafficRoutingConfigPropertyValidator(properties).assertSuccess(),{CanarySize:convertCfnEndpointCapacitySizePropertyToCloudFormation(properties.canarySize),LinearStepSize:convertCfnEndpointCapacitySizePropertyToCloudFormation(properties.linearStepSize),Type:cdk().stringToCloudFormation(properties.type),WaitIntervalInSeconds:cdk().numberToCloudFormation(properties.waitIntervalInSeconds)}):properties}function CfnEndpointTrafficRoutingConfigPropertyFromCloudFormation(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("canarySize","CanarySize",properties.CanarySize!=null?CfnEndpointCapacitySizePropertyFromCloudFormation(properties.CanarySize):void 0),ret.addPropertyResult("linearStepSize","LinearStepSize",properties.LinearStepSize!=null?CfnEndpointCapacitySizePropertyFromCloudFormation(properties.LinearStepSize):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addPropertyResult("waitIntervalInSeconds","WaitIntervalInSeconds",properties.WaitIntervalInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.WaitIntervalInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointBlueGreenUpdatePolicyPropertyValidator(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("maximumExecutionTimeoutInSeconds",cdk().validateNumber)(properties.maximumExecutionTimeoutInSeconds)),errors.collect(cdk().propertyValidator("terminationWaitInSeconds",cdk().validateNumber)(properties.terminationWaitInSeconds)),errors.collect(cdk().propertyValidator("trafficRoutingConfiguration",cdk().requiredValidator)(properties.trafficRoutingConfiguration)),errors.collect(cdk().propertyValidator("trafficRoutingConfiguration",CfnEndpointTrafficRoutingConfigPropertyValidator)(properties.trafficRoutingConfiguration)),errors.wrap('supplied properties not correct for "BlueGreenUpdatePolicyProperty"')}function convertCfnEndpointBlueGreenUpdatePolicyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointBlueGreenUpdatePolicyPropertyValidator(properties).assertSuccess(),{MaximumExecutionTimeoutInSeconds:cdk().numberToCloudFormation(properties.maximumExecutionTimeoutInSeconds),TerminationWaitInSeconds:cdk().numberToCloudFormation(properties.terminationWaitInSeconds),TrafficRoutingConfiguration:convertCfnEndpointTrafficRoutingConfigPropertyToCloudFormation(properties.trafficRoutingConfiguration)}):properties}function CfnEndpointBlueGreenUpdatePolicyPropertyFromCloudFormation(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("maximumExecutionTimeoutInSeconds","MaximumExecutionTimeoutInSeconds",properties.MaximumExecutionTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaximumExecutionTimeoutInSeconds):void 0),ret.addPropertyResult("terminationWaitInSeconds","TerminationWaitInSeconds",properties.TerminationWaitInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.TerminationWaitInSeconds):void 0),ret.addPropertyResult("trafficRoutingConfiguration","TrafficRoutingConfiguration",properties.TrafficRoutingConfiguration!=null?CfnEndpointTrafficRoutingConfigPropertyFromCloudFormation(properties.TrafficRoutingConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointDeploymentConfigPropertyValidator(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("autoRollbackConfiguration",CfnEndpointAutoRollbackConfigPropertyValidator)(properties.autoRollbackConfiguration)),errors.collect(cdk().propertyValidator("blueGreenUpdatePolicy",CfnEndpointBlueGreenUpdatePolicyPropertyValidator)(properties.blueGreenUpdatePolicy)),errors.collect(cdk().propertyValidator("rollingUpdatePolicy",CfnEndpointRollingUpdatePolicyPropertyValidator)(properties.rollingUpdatePolicy)),errors.wrap('supplied properties not correct for "DeploymentConfigProperty"')}function convertCfnEndpointDeploymentConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointDeploymentConfigPropertyValidator(properties).assertSuccess(),{AutoRollbackConfiguration:convertCfnEndpointAutoRollbackConfigPropertyToCloudFormation(properties.autoRollbackConfiguration),BlueGreenUpdatePolicy:convertCfnEndpointBlueGreenUpdatePolicyPropertyToCloudFormation(properties.blueGreenUpdatePolicy),RollingUpdatePolicy:convertCfnEndpointRollingUpdatePolicyPropertyToCloudFormation(properties.rollingUpdatePolicy)}):properties}function CfnEndpointDeploymentConfigPropertyFromCloudFormation(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("autoRollbackConfiguration","AutoRollbackConfiguration",properties.AutoRollbackConfiguration!=null?CfnEndpointAutoRollbackConfigPropertyFromCloudFormation(properties.AutoRollbackConfiguration):void 0),ret.addPropertyResult("blueGreenUpdatePolicy","BlueGreenUpdatePolicy",properties.BlueGreenUpdatePolicy!=null?CfnEndpointBlueGreenUpdatePolicyPropertyFromCloudFormation(properties.BlueGreenUpdatePolicy):void 0),ret.addPropertyResult("rollingUpdatePolicy","RollingUpdatePolicy",properties.RollingUpdatePolicy!=null?CfnEndpointRollingUpdatePolicyPropertyFromCloudFormation(properties.RollingUpdatePolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointPropsValidator(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("deploymentConfig",CfnEndpointDeploymentConfigPropertyValidator)(properties.deploymentConfig)),errors.collect(cdk().propertyValidator("endpointConfigName",cdk().requiredValidator)(properties.endpointConfigName)),errors.collect(cdk().propertyValidator("endpointConfigName",cdk().validateString)(properties.endpointConfigName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("excludeRetainedVariantProperties",cdk().listValidator(CfnEndpointVariantPropertyPropertyValidator))(properties.excludeRetainedVariantProperties)),errors.collect(cdk().propertyValidator("retainAllVariantProperties",cdk().validateBoolean)(properties.retainAllVariantProperties)),errors.collect(cdk().propertyValidator("retainDeploymentConfig",cdk().validateBoolean)(properties.retainDeploymentConfig)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnEndpointProps"')}function convertCfnEndpointPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointPropsValidator(properties).assertSuccess(),{DeploymentConfig:convertCfnEndpointDeploymentConfigPropertyToCloudFormation(properties.deploymentConfig),EndpointConfigName:cdk().stringToCloudFormation(properties.endpointConfigName),EndpointName:cdk().stringToCloudFormation(properties.endpointName),ExcludeRetainedVariantProperties:cdk().listMapper(convertCfnEndpointVariantPropertyPropertyToCloudFormation)(properties.excludeRetainedVariantProperties),RetainAllVariantProperties:cdk().booleanToCloudFormation(properties.retainAllVariantProperties),RetainDeploymentConfig:cdk().booleanToCloudFormation(properties.retainDeploymentConfig),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnEndpointPropsFromCloudFormation(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("deploymentConfig","DeploymentConfig",properties.DeploymentConfig!=null?CfnEndpointDeploymentConfigPropertyFromCloudFormation(properties.DeploymentConfig):void 0),ret.addPropertyResult("endpointConfigName","EndpointConfigName",properties.EndpointConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointConfigName):void 0),ret.addPropertyResult("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("excludeRetainedVariantProperties","ExcludeRetainedVariantProperties",properties.ExcludeRetainedVariantProperties!=null?cfn_parse().FromCloudFormation.getArray(CfnEndpointVariantPropertyPropertyFromCloudFormation)(properties.ExcludeRetainedVariantProperties):void 0),ret.addPropertyResult("retainAllVariantProperties","RetainAllVariantProperties",properties.RetainAllVariantProperties!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RetainAllVariantProperties):void 0),ret.addPropertyResult("retainDeploymentConfig","RetainDeploymentConfig",properties.RetainDeploymentConfig!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RetainDeploymentConfig):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 CfnEndpointConfig extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnEndpointConfig",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::EndpointConfig";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEndpointConfigPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnEndpointConfig(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 isCfnEndpointConfig(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnEndpointConfig.CFN_RESOURCE_TYPE_NAME}static arnForEndpointConfig(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IEndpointConfigRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForEndpointConfig),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:endpoint-config/${EndpointConfigName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,EndpointConfigName:resource.endpointConfigRef.endpointConfigName})}_asyncInferenceConfig;_dataCaptureConfig;_enableNetworkIsolation;_endpointConfigName;_executionRoleArn;_explainerConfig;_kmsKeyId;_productionVariants;_shadowProductionVariants;tags;_tagsRaw;_vpcConfig;cfnPropertyNames={asyncInferenceConfig:"AsyncInferenceConfig",dataCaptureConfig:"DataCaptureConfig",enableNetworkIsolation:"EnableNetworkIsolation",endpointConfigName:"EndpointConfigName",executionRoleArn:"ExecutionRoleArn",explainerConfig:"ExplainerConfig",kmsKeyId:"KmsKeyId",productionVariants:"ProductionVariants",shadowProductionVariants:"ShadowProductionVariants",tags:"Tags",vpcConfig:"VpcConfig"};constructor(scope,id,props){super(scope,id,{type:CfnEndpointConfig.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnEndpointConfigProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEndpointConfig),error}cdk().requireProperty(props,"productionVariants",this),this._asyncInferenceConfig=props.asyncInferenceConfig,this._dataCaptureConfig=props.dataCaptureConfig,this._enableNetworkIsolation=props.enableNetworkIsolation,this._endpointConfigName=props.endpointConfigName,this._executionRoleArn=props.executionRoleArn,this._explainerConfig=props.explainerConfig,this._kmsKeyId=props.kmsKeyId,this._productionVariants=props.productionVariants,this._shadowProductionVariants=props.shadowProductionVariants,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::EndpointConfig",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._vpcConfig=props.vpcConfig}get endpointConfigRef(){return{endpointConfigId:this.ref,endpointConfigName:this.attrEndpointConfigName}}get asyncInferenceConfig(){return this._asyncInferenceConfig}set asyncInferenceConfig(value){cdk().traceProperty(this.node,"AsyncInferenceConfig"),this._asyncInferenceConfig=value}get dataCaptureConfig(){return this._dataCaptureConfig}set dataCaptureConfig(value){cdk().traceProperty(this.node,"DataCaptureConfig"),this._dataCaptureConfig=value}get enableNetworkIsolation(){return this._enableNetworkIsolation}set enableNetworkIsolation(value){cdk().traceProperty(this.node,"EnableNetworkIsolation"),this._enableNetworkIsolation=value}get endpointConfigName(){return this._endpointConfigName}set endpointConfigName(value){cdk().traceProperty(this.node,"EndpointConfigName"),this._endpointConfigName=value}get executionRoleArn(){return this._executionRoleArn}set executionRoleArn(value){cdk().traceProperty(this.node,"ExecutionRoleArn"),this._executionRoleArn=value}get explainerConfig(){return this._explainerConfig}set explainerConfig(value){cdk().traceProperty(this.node,"ExplainerConfig"),this._explainerConfig=value}get kmsKeyId(){return this._kmsKeyId}set kmsKeyId(value){cdk().traceProperty(this.node,"KmsKeyId"),this._kmsKeyId=value}get productionVariants(){return this._productionVariants}set productionVariants(value){cdk().traceProperty(this.node,"ProductionVariants"),this._productionVariants=value}get shadowProductionVariants(){return this._shadowProductionVariants}set shadowProductionVariants(value){cdk().traceProperty(this.node,"ShadowProductionVariants"),this._shadowProductionVariants=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get vpcConfig(){return this._vpcConfig}set vpcConfig(value){cdk().traceProperty(this.node,"VpcConfig"),this._vpcConfig=value}get attrEndpointConfigName(){return cdk().Token.asString(this.getAtt("EndpointConfigName",cdk().ResolutionTypeHint.STRING))}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{asyncInferenceConfig:this._asyncInferenceConfig,dataCaptureConfig:this._dataCaptureConfig,enableNetworkIsolation:this._enableNetworkIsolation,endpointConfigName:this._endpointConfigName,executionRoleArn:this._executionRoleArn,explainerConfig:this._explainerConfig,kmsKeyId:this._kmsKeyId,productionVariants:this._productionVariants,shadowProductionVariants:this._shadowProductionVariants,tags:this.tags.renderTags(),vpcConfig:this._vpcConfig}}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",CfnEndpointConfig.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnEndpointConfigPropsToCloudFormation(props)}}exports.CfnEndpointConfig=CfnEndpointConfig;function CfnEndpointConfigServerlessConfigPropertyValidator(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("maxConcurrency",cdk().requiredValidator)(properties.maxConcurrency)),errors.collect(cdk().propertyValidator("maxConcurrency",cdk().validateNumber)(properties.maxConcurrency)),errors.collect(cdk().propertyValidator("memorySizeInMb",cdk().requiredValidator)(properties.memorySizeInMb)),errors.collect(cdk().propertyValidator("memorySizeInMb",cdk().validateNumber)(properties.memorySizeInMb)),errors.collect(cdk().propertyValidator("provisionedConcurrency",cdk().validateNumber)(properties.provisionedConcurrency)),errors.wrap('supplied properties not correct for "ServerlessConfigProperty"')}function convertCfnEndpointConfigServerlessConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigServerlessConfigPropertyValidator(properties).assertSuccess(),{MaxConcurrency:cdk().numberToCloudFormation(properties.maxConcurrency),MemorySizeInMB:cdk().numberToCloudFormation(properties.memorySizeInMb),ProvisionedConcurrency:cdk().numberToCloudFormation(properties.provisionedConcurrency)}):properties}function CfnEndpointConfigServerlessConfigPropertyFromCloudFormation(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("maxConcurrency","MaxConcurrency",properties.MaxConcurrency!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxConcurrency):void 0),ret.addPropertyResult("memorySizeInMb","MemorySizeInMB",properties.MemorySizeInMB!=null?cfn_parse().FromCloudFormation.getNumber(properties.MemorySizeInMB):void 0),ret.addPropertyResult("provisionedConcurrency","ProvisionedConcurrency",properties.ProvisionedConcurrency!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProvisionedConcurrency):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigManagedInstanceScalingPropertyValidator(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("maxInstanceCount",cdk().validateNumber)(properties.maxInstanceCount)),errors.collect(cdk().propertyValidator("minInstanceCount",cdk().validateNumber)(properties.minInstanceCount)),errors.collect(cdk().propertyValidator("status",cdk().validateString)(properties.status)),errors.wrap('supplied properties not correct for "ManagedInstanceScalingProperty"')}function convertCfnEndpointConfigManagedInstanceScalingPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigManagedInstanceScalingPropertyValidator(properties).assertSuccess(),{MaxInstanceCount:cdk().numberToCloudFormation(properties.maxInstanceCount),MinInstanceCount:cdk().numberToCloudFormation(properties.minInstanceCount),Status:cdk().stringToCloudFormation(properties.status)}):properties}function CfnEndpointConfigManagedInstanceScalingPropertyFromCloudFormation(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("maxInstanceCount","MaxInstanceCount",properties.MaxInstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxInstanceCount):void 0),ret.addPropertyResult("minInstanceCount","MinInstanceCount",properties.MinInstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinInstanceCount):void 0),ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse().FromCloudFormation.getString(properties.Status):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigRoutingConfigPropertyValidator(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("routingStrategy",cdk().validateString)(properties.routingStrategy)),errors.wrap('supplied properties not correct for "RoutingConfigProperty"')}function convertCfnEndpointConfigRoutingConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigRoutingConfigPropertyValidator(properties).assertSuccess(),{RoutingStrategy:cdk().stringToCloudFormation(properties.routingStrategy)}):properties}function CfnEndpointConfigRoutingConfigPropertyFromCloudFormation(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("routingStrategy","RoutingStrategy",properties.RoutingStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.RoutingStrategy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigCapacityReservationConfigPropertyValidator(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("capacityReservationPreference",cdk().validateString)(properties.capacityReservationPreference)),errors.collect(cdk().propertyValidator("mlReservationArn",cdk().validateString)(properties.mlReservationArn)),errors.wrap('supplied properties not correct for "CapacityReservationConfigProperty"')}function convertCfnEndpointConfigCapacityReservationConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigCapacityReservationConfigPropertyValidator(properties).assertSuccess(),{CapacityReservationPreference:cdk().stringToCloudFormation(properties.capacityReservationPreference),MlReservationArn:cdk().stringToCloudFormation(properties.mlReservationArn)}):properties}function CfnEndpointConfigCapacityReservationConfigPropertyFromCloudFormation(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("capacityReservationPreference","CapacityReservationPreference",properties.CapacityReservationPreference!=null?cfn_parse().FromCloudFormation.getString(properties.CapacityReservationPreference):void 0),ret.addPropertyResult("mlReservationArn","MlReservationArn",properties.MlReservationArn!=null?cfn_parse().FromCloudFormation.getString(properties.MlReservationArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigProductionVariantPropertyValidator(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("acceleratorType",cdk().validateString)(properties.acceleratorType)),errors.collect(cdk().propertyValidator("capacityReservationConfig",CfnEndpointConfigCapacityReservationConfigPropertyValidator)(properties.capacityReservationConfig)),errors.collect(cdk().propertyValidator("containerStartupHealthCheckTimeoutInSeconds",cdk().validateNumber)(properties.containerStartupHealthCheckTimeoutInSeconds)),errors.collect(cdk().propertyValidator("enableSsmAccess",cdk().validateBoolean)(properties.enableSsmAccess)),errors.collect(cdk().propertyValidator("inferenceAmiVersion",cdk().validateString)(properties.inferenceAmiVersion)),errors.collect(cdk().propertyValidator("initialInstanceCount",cdk().validateNumber)(properties.initialInstanceCount)),errors.collect(cdk().propertyValidator("initialVariantWeight",cdk().validateNumber)(properties.initialVariantWeight)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("managedInstanceScaling",CfnEndpointConfigManagedInstanceScalingPropertyValidator)(properties.managedInstanceScaling)),errors.collect(cdk().propertyValidator("modelDataDownloadTimeoutInSeconds",cdk().validateNumber)(properties.modelDataDownloadTimeoutInSeconds)),errors.collect(cdk().propertyValidator("modelName",cdk().validateString)(properties.modelName)),errors.collect(cdk().propertyValidator("routingConfig",CfnEndpointConfigRoutingConfigPropertyValidator)(properties.routingConfig)),errors.collect(cdk().propertyValidator("serverlessConfig",CfnEndpointConfigServerlessConfigPropertyValidator)(properties.serverlessConfig)),errors.collect(cdk().propertyValidator("variantName",cdk().requiredValidator)(properties.variantName)),errors.collect(cdk().propertyValidator("variantName",cdk().validateString)(properties.variantName)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ProductionVariantProperty"')}function convertCfnEndpointConfigProductionVariantPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigProductionVariantPropertyValidator(properties).assertSuccess(),{AcceleratorType:cdk().stringToCloudFormation(properties.acceleratorType),CapacityReservationConfig:convertCfnEndpointConfigCapacityReservationConfigPropertyToCloudFormation(properties.capacityReservationConfig),ContainerStartupHealthCheckTimeoutInSeconds:cdk().numberToCloudFormation(properties.containerStartupHealthCheckTimeoutInSeconds),EnableSSMAccess:cdk().booleanToCloudFormation(properties.enableSsmAccess),InferenceAmiVersion:cdk().stringToCloudFormation(properties.inferenceAmiVersion),InitialInstanceCount:cdk().numberToCloudFormation(properties.initialInstanceCount),InitialVariantWeight:cdk().numberToCloudFormation(properties.initialVariantWeight),InstanceType:cdk().stringToCloudFormation(properties.instanceType),ManagedInstanceScaling:convertCfnEndpointConfigManagedInstanceScalingPropertyToCloudFormation(properties.managedInstanceScaling),ModelDataDownloadTimeoutInSeconds:cdk().numberToCloudFormation(properties.modelDataDownloadTimeoutInSeconds),ModelName:cdk().stringToCloudFormation(properties.modelName),RoutingConfig:convertCfnEndpointConfigRoutingConfigPropertyToCloudFormation(properties.routingConfig),ServerlessConfig:convertCfnEndpointConfigServerlessConfigPropertyToCloudFormation(properties.serverlessConfig),VariantName:cdk().stringToCloudFormation(properties.variantName),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnEndpointConfigProductionVariantPropertyFromCloudFormation(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("acceleratorType","AcceleratorType",properties.AcceleratorType!=null?cfn_parse().FromCloudFormation.getString(properties.AcceleratorType):void 0),ret.addPropertyResult("capacityReservationConfig","CapacityReservationConfig",properties.CapacityReservationConfig!=null?CfnEndpointConfigCapacityReservationConfigPropertyFromCloudFormation(properties.CapacityReservationConfig):void 0),ret.addPropertyResult("containerStartupHealthCheckTimeoutInSeconds","ContainerStartupHealthCheckTimeoutInSeconds",properties.ContainerStartupHealthCheckTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.ContainerStartupHealthCheckTimeoutInSeconds):void 0),ret.addPropertyResult("enableSsmAccess","EnableSSMAccess",properties.EnableSSMAccess!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableSSMAccess):void 0),ret.addPropertyResult("inferenceAmiVersion","InferenceAmiVersion",properties.InferenceAmiVersion!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceAmiVersion):void 0),ret.addPropertyResult("initialInstanceCount","InitialInstanceCount",properties.InitialInstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InitialInstanceCount):void 0),ret.addPropertyResult("initialVariantWeight","InitialVariantWeight",properties.InitialVariantWeight!=null?cfn_parse().FromCloudFormation.getNumber(properties.InitialVariantWeight):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("managedInstanceScaling","ManagedInstanceScaling",properties.ManagedInstanceScaling!=null?CfnEndpointConfigManagedInstanceScalingPropertyFromCloudFormation(properties.ManagedInstanceScaling):void 0),ret.addPropertyResult("modelDataDownloadTimeoutInSeconds","ModelDataDownloadTimeoutInSeconds",properties.ModelDataDownloadTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModelDataDownloadTimeoutInSeconds):void 0),ret.addPropertyResult("modelName","ModelName",properties.ModelName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelName):void 0),ret.addPropertyResult("routingConfig","RoutingConfig",properties.RoutingConfig!=null?CfnEndpointConfigRoutingConfigPropertyFromCloudFormation(properties.RoutingConfig):void 0),ret.addPropertyResult("serverlessConfig","ServerlessConfig",properties.ServerlessConfig!=null?CfnEndpointConfigServerlessConfigPropertyFromCloudFormation(properties.ServerlessConfig):void 0),ret.addPropertyResult("variantName","VariantName",properties.VariantName!=null?cfn_parse().FromCloudFormation.getString(properties.VariantName):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigCaptureOptionPropertyValidator(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("captureMode",cdk().requiredValidator)(properties.captureMode)),errors.collect(cdk().propertyValidator("captureMode",cdk().validateString)(properties.captureMode)),errors.wrap('supplied properties not correct for "CaptureOptionProperty"')}function convertCfnEndpointConfigCaptureOptionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigCaptureOptionPropertyValidator(properties).assertSuccess(),{CaptureMode:cdk().stringToCloudFormation(properties.captureMode)}):properties}function CfnEndpointConfigCaptureOptionPropertyFromCloudFormation(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("captureMode","CaptureMode",properties.CaptureMode!=null?cfn_parse().FromCloudFormation.getString(properties.CaptureMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigCaptureContentTypeHeaderPropertyValidator(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("csvContentTypes",cdk().listValidator(cdk().validateString))(properties.csvContentTypes)),errors.collect(cdk().propertyValidator("jsonContentTypes",cdk().listValidator(cdk().validateString))(properties.jsonContentTypes)),errors.wrap('supplied properties not correct for "CaptureContentTypeHeaderProperty"')}function convertCfnEndpointConfigCaptureContentTypeHeaderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigCaptureContentTypeHeaderPropertyValidator(properties).assertSuccess(),{CsvContentTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.csvContentTypes),JsonContentTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.jsonContentTypes)}):properties}function CfnEndpointConfigCaptureContentTypeHeaderPropertyFromCloudFormation(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("csvContentTypes","CsvContentTypes",properties.CsvContentTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.CsvContentTypes):void 0),ret.addPropertyResult("jsonContentTypes","JsonContentTypes",properties.JsonContentTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.JsonContentTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigDataCaptureConfigPropertyValidator(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("captureContentTypeHeader",CfnEndpointConfigCaptureContentTypeHeaderPropertyValidator)(properties.captureContentTypeHeader)),errors.collect(cdk().propertyValidator("captureOptions",cdk().requiredValidator)(properties.captureOptions)),errors.collect(cdk().propertyValidator("captureOptions",cdk().listValidator(CfnEndpointConfigCaptureOptionPropertyValidator))(properties.captureOptions)),errors.collect(cdk().propertyValidator("destinationS3Uri",cdk().requiredValidator)(properties.destinationS3Uri)),errors.collect(cdk().propertyValidator("destinationS3Uri",cdk().validateString)(properties.destinationS3Uri)),errors.collect(cdk().propertyValidator("enableCapture",cdk().validateBoolean)(properties.enableCapture)),errors.collect(cdk().propertyValidator("initialSamplingPercentage",cdk().requiredValidator)(properties.initialSamplingPercentage)),errors.collect(cdk().propertyValidator("initialSamplingPercentage",cdk().validateNumber)(properties.initialSamplingPercentage)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.wrap('supplied properties not correct for "DataCaptureConfigProperty"')}function convertCfnEndpointConfigDataCaptureConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigDataCaptureConfigPropertyValidator(properties).assertSuccess(),{CaptureContentTypeHeader:convertCfnEndpointConfigCaptureContentTypeHeaderPropertyToCloudFormation(properties.captureContentTypeHeader),CaptureOptions:cdk().listMapper(convertCfnEndpointConfigCaptureOptionPropertyToCloudFormation)(properties.captureOptions),DestinationS3Uri:cdk().stringToCloudFormation(properties.destinationS3Uri),EnableCapture:cdk().booleanToCloudFormation(properties.enableCapture),InitialSamplingPercentage:cdk().numberToCloudFormation(properties.initialSamplingPercentage),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId)}):properties}function CfnEndpointConfigDataCaptureConfigPropertyFromCloudFormation(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("captureContentTypeHeader","CaptureContentTypeHeader",properties.CaptureContentTypeHeader!=null?CfnEndpointConfigCaptureContentTypeHeaderPropertyFromCloudFormation(properties.CaptureContentTypeHeader):void 0),ret.addPropertyResult("captureOptions","CaptureOptions",properties.CaptureOptions!=null?cfn_parse().FromCloudFormation.getArray(CfnEndpointConfigCaptureOptionPropertyFromCloudFormation)(properties.CaptureOptions):void 0),ret.addPropertyResult("destinationS3Uri","DestinationS3Uri",properties.DestinationS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationS3Uri):void 0),ret.addPropertyResult("enableCapture","EnableCapture",properties.EnableCapture!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableCapture):void 0),ret.addPropertyResult("initialSamplingPercentage","InitialSamplingPercentage",properties.InitialSamplingPercentage!=null?cfn_parse().FromCloudFormation.getNumber(properties.InitialSamplingPercentage):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigAsyncInferenceNotificationConfigPropertyValidator(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("errorTopic",cdk().validateString)(properties.errorTopic)),errors.collect(cdk().propertyValidator("includeInferenceResponseIn",cdk().listValidator(cdk().validateString))(properties.includeInferenceResponseIn)),errors.collect(cdk().propertyValidator("successTopic",cdk().validateString)(properties.successTopic)),errors.wrap('supplied properties not correct for "AsyncInferenceNotificationConfigProperty"')}function convertCfnEndpointConfigAsyncInferenceNotificationConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigAsyncInferenceNotificationConfigPropertyValidator(properties).assertSuccess(),{ErrorTopic:cdk().stringToCloudFormation(properties.errorTopic),IncludeInferenceResponseIn:cdk().listMapper(cdk().stringToCloudFormation)(properties.includeInferenceResponseIn),SuccessTopic:cdk().stringToCloudFormation(properties.successTopic)}):properties}function CfnEndpointConfigAsyncInferenceNotificationConfigPropertyFromCloudFormation(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("errorTopic","ErrorTopic",properties.ErrorTopic!=null?cfn_parse().FromCloudFormation.getString(properties.ErrorTopic):void 0),ret.addPropertyResult("includeInferenceResponseIn","IncludeInferenceResponseIn",properties.IncludeInferenceResponseIn!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.IncludeInferenceResponseIn):void 0),ret.addPropertyResult("successTopic","SuccessTopic",properties.SuccessTopic!=null?cfn_parse().FromCloudFormation.getString(properties.SuccessTopic):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigAsyncInferenceOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("notificationConfig",CfnEndpointConfigAsyncInferenceNotificationConfigPropertyValidator)(properties.notificationConfig)),errors.collect(cdk().propertyValidator("s3FailurePath",cdk().validateString)(properties.s3FailurePath)),errors.collect(cdk().propertyValidator("s3OutputPath",cdk().validateString)(properties.s3OutputPath)),errors.wrap('supplied properties not correct for "AsyncInferenceOutputConfigProperty"')}function convertCfnEndpointConfigAsyncInferenceOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigAsyncInferenceOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),NotificationConfig:convertCfnEndpointConfigAsyncInferenceNotificationConfigPropertyToCloudFormation(properties.notificationConfig),S3FailurePath:cdk().stringToCloudFormation(properties.s3FailurePath),S3OutputPath:cdk().stringToCloudFormation(properties.s3OutputPath)}):properties}function CfnEndpointConfigAsyncInferenceOutputConfigPropertyFromCloudFormation(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.addPropertyResult("notificationConfig","NotificationConfig",properties.NotificationConfig!=null?CfnEndpointConfigAsyncInferenceNotificationConfigPropertyFromCloudFormation(properties.NotificationConfig):void 0),ret.addPropertyResult("s3FailurePath","S3FailurePath",properties.S3FailurePath!=null?cfn_parse().FromCloudFormation.getString(properties.S3FailurePath):void 0),ret.addPropertyResult("s3OutputPath","S3OutputPath",properties.S3OutputPath!=null?cfn_parse().FromCloudFormation.getString(properties.S3OutputPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigAsyncInferenceClientConfigPropertyValidator(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("maxConcurrentInvocationsPerInstance",cdk().validateNumber)(properties.maxConcurrentInvocationsPerInstance)),errors.wrap('supplied properties not correct for "AsyncInferenceClientConfigProperty"')}function convertCfnEndpointConfigAsyncInferenceClientConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigAsyncInferenceClientConfigPropertyValidator(properties).assertSuccess(),{MaxConcurrentInvocationsPerInstance:cdk().numberToCloudFormation(properties.maxConcurrentInvocationsPerInstance)}):properties}function CfnEndpointConfigAsyncInferenceClientConfigPropertyFromCloudFormation(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("maxConcurrentInvocationsPerInstance","MaxConcurrentInvocationsPerInstance",properties.MaxConcurrentInvocationsPerInstance!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxConcurrentInvocationsPerInstance):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigAsyncInferenceConfigPropertyValidator(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("clientConfig",CfnEndpointConfigAsyncInferenceClientConfigPropertyValidator)(properties.clientConfig)),errors.collect(cdk().propertyValidator("outputConfig",cdk().requiredValidator)(properties.outputConfig)),errors.collect(cdk().propertyValidator("outputConfig",CfnEndpointConfigAsyncInferenceOutputConfigPropertyValidator)(properties.outputConfig)),errors.wrap('supplied properties not correct for "AsyncInferenceConfigProperty"')}function convertCfnEndpointConfigAsyncInferenceConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigAsyncInferenceConfigPropertyValidator(properties).assertSuccess(),{ClientConfig:convertCfnEndpointConfigAsyncInferenceClientConfigPropertyToCloudFormation(properties.clientConfig),OutputConfig:convertCfnEndpointConfigAsyncInferenceOutputConfigPropertyToCloudFormation(properties.outputConfig)}):properties}function CfnEndpointConfigAsyncInferenceConfigPropertyFromCloudFormation(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("clientConfig","ClientConfig",properties.ClientConfig!=null?CfnEndpointConfigAsyncInferenceClientConfigPropertyFromCloudFormation(properties.ClientConfig):void 0),ret.addPropertyResult("outputConfig","OutputConfig",properties.OutputConfig!=null?CfnEndpointConfigAsyncInferenceOutputConfigPropertyFromCloudFormation(properties.OutputConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigClarifyInferenceConfigPropertyValidator(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("contentTemplate",cdk().validateString)(properties.contentTemplate)),errors.collect(cdk().propertyValidator("featureHeaders",cdk().listValidator(cdk().validateString))(properties.featureHeaders)),errors.collect(cdk().propertyValidator("featureTypes",cdk().listValidator(cdk().validateString))(properties.featureTypes)),errors.collect(cdk().propertyValidator("featuresAttribute",cdk().validateString)(properties.featuresAttribute)),errors.collect(cdk().propertyValidator("labelAttribute",cdk().validateString)(properties.labelAttribute)),errors.collect(cdk().propertyValidator("labelHeaders",cdk().listValidator(cdk().validateString))(properties.labelHeaders)),errors.collect(cdk().propertyValidator("labelIndex",cdk().validateNumber)(properties.labelIndex)),errors.collect(cdk().propertyValidator("maxPayloadInMb",cdk().validateNumber)(properties.maxPayloadInMb)),errors.collect(cdk().propertyValidator("maxRecordCount",cdk().validateNumber)(properties.maxRecordCount)),errors.collect(cdk().propertyValidator("probabilityAttribute",cdk().validateString)(properties.probabilityAttribute)),errors.collect(cdk().propertyValidator("probabilityIndex",cdk().validateNumber)(properties.probabilityIndex)),errors.wrap('supplied properties not correct for "ClarifyInferenceConfigProperty"')}function convertCfnEndpointConfigClarifyInferenceConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigClarifyInferenceConfigPropertyValidator(properties).assertSuccess(),{ContentTemplate:cdk().stringToCloudFormation(properties.contentTemplate),FeatureHeaders:cdk().listMapper(cdk().stringToCloudFormation)(properties.featureHeaders),FeatureTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.featureTypes),FeaturesAttribute:cdk().stringToCloudFormation(properties.featuresAttribute),LabelAttribute:cdk().stringToCloudFormation(properties.labelAttribute),LabelHeaders:cdk().listMapper(cdk().stringToCloudFormation)(properties.labelHeaders),LabelIndex:cdk().numberToCloudFormation(properties.labelIndex),MaxPayloadInMB:cdk().numberToCloudFormation(properties.maxPayloadInMb),MaxRecordCount:cdk().numberToCloudFormation(properties.maxRecordCount),ProbabilityAttribute:cdk().stringToCloudFormation(properties.probabilityAttribute),ProbabilityIndex:cdk().numberToCloudFormation(properties.probabilityIndex)}):properties}function CfnEndpointConfigClarifyInferenceConfigPropertyFromCloudFormation(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("contentTemplate","ContentTemplate",properties.ContentTemplate!=null?cfn_parse().FromCloudFormation.getString(properties.ContentTemplate):void 0),ret.addPropertyResult("featureHeaders","FeatureHeaders",properties.FeatureHeaders!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.FeatureHeaders):void 0),ret.addPropertyResult("featuresAttribute","FeaturesAttribute",properties.FeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.FeaturesAttribute):void 0),ret.addPropertyResult("featureTypes","FeatureTypes",properties.FeatureTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.FeatureTypes):void 0),ret.addPropertyResult("labelAttribute","LabelAttribute",properties.LabelAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.LabelAttribute):void 0),ret.addPropertyResult("labelHeaders","LabelHeaders",properties.LabelHeaders!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LabelHeaders):void 0),ret.addPropertyResult("labelIndex","LabelIndex",properties.LabelIndex!=null?cfn_parse().FromCloudFormation.getNumber(properties.LabelIndex):void 0),ret.addPropertyResult("maxPayloadInMb","MaxPayloadInMB",properties.MaxPayloadInMB!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxPayloadInMB):void 0),ret.addPropertyResult("maxRecordCount","MaxRecordCount",properties.MaxRecordCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRecordCount):void 0),ret.addPropertyResult("probabilityAttribute","ProbabilityAttribute",properties.ProbabilityAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ProbabilityAttribute):void 0),ret.addPropertyResult("probabilityIndex","ProbabilityIndex",properties.ProbabilityIndex!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProbabilityIndex):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigClarifyTextConfigPropertyValidator(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("granularity",cdk().requiredValidator)(properties.granularity)),errors.collect(cdk().propertyValidator("granularity",cdk().validateString)(properties.granularity)),errors.collect(cdk().propertyValidator("language",cdk().requiredValidator)(properties.language)),errors.collect(cdk().propertyValidator("language",cdk().validateString)(properties.language)),errors.wrap('supplied properties not correct for "ClarifyTextConfigProperty"')}function convertCfnEndpointConfigClarifyTextConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigClarifyTextConfigPropertyValidator(properties).assertSuccess(),{Granularity:cdk().stringToCloudFormation(properties.granularity),Language:cdk().stringToCloudFormation(properties.language)}):properties}function CfnEndpointConfigClarifyTextConfigPropertyFromCloudFormation(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("granularity","Granularity",properties.Granularity!=null?cfn_parse().FromCloudFormation.getString(properties.Granularity):void 0),ret.addPropertyResult("language","Language",properties.Language!=null?cfn_parse().FromCloudFormation.getString(properties.Language):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigClarifyShapBaselineConfigPropertyValidator(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("mimeType",cdk().validateString)(properties.mimeType)),errors.collect(cdk().propertyValidator("shapBaseline",cdk().validateString)(properties.shapBaseline)),errors.collect(cdk().propertyValidator("shapBaselineUri",cdk().validateString)(properties.shapBaselineUri)),errors.wrap('supplied properties not correct for "ClarifyShapBaselineConfigProperty"')}function convertCfnEndpointConfigClarifyShapBaselineConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigClarifyShapBaselineConfigPropertyValidator(properties).assertSuccess(),{MimeType:cdk().stringToCloudFormation(properties.mimeType),ShapBaseline:cdk().stringToCloudFormation(properties.shapBaseline),ShapBaselineUri:cdk().stringToCloudFormation(properties.shapBaselineUri)}):properties}function CfnEndpointConfigClarifyShapBaselineConfigPropertyFromCloudFormation(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("mimeType","MimeType",properties.MimeType!=null?cfn_parse().FromCloudFormation.getString(properties.MimeType):void 0),ret.addPropertyResult("shapBaseline","ShapBaseline",properties.ShapBaseline!=null?cfn_parse().FromCloudFormation.getString(properties.ShapBaseline):void 0),ret.addPropertyResult("shapBaselineUri","ShapBaselineUri",properties.ShapBaselineUri!=null?cfn_parse().FromCloudFormation.getString(properties.ShapBaselineUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigClarifyShapConfigPropertyValidator(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("numberOfSamples",cdk().validateNumber)(properties.numberOfSamples)),errors.collect(cdk().propertyValidator("seed",cdk().validateNumber)(properties.seed)),errors.collect(cdk().propertyValidator("shapBaselineConfig",cdk().requiredValidator)(properties.shapBaselineConfig)),errors.collect(cdk().propertyValidator("shapBaselineConfig",CfnEndpointConfigClarifyShapBaselineConfigPropertyValidator)(properties.shapBaselineConfig)),errors.collect(cdk().propertyValidator("textConfig",CfnEndpointConfigClarifyTextConfigPropertyValidator)(properties.textConfig)),errors.collect(cdk().propertyValidator("useLogit",cdk().validateBoolean)(properties.useLogit)),errors.wrap('supplied properties not correct for "ClarifyShapConfigProperty"')}function convertCfnEndpointConfigClarifyShapConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigClarifyShapConfigPropertyValidator(properties).assertSuccess(),{NumberOfSamples:cdk().numberToCloudFormation(properties.numberOfSamples),Seed:cdk().numberToCloudFormation(properties.seed),ShapBaselineConfig:convertCfnEndpointConfigClarifyShapBaselineConfigPropertyToCloudFormation(properties.shapBaselineConfig),TextConfig:convertCfnEndpointConfigClarifyTextConfigPropertyToCloudFormation(properties.textConfig),UseLogit:cdk().booleanToCloudFormation(properties.useLogit)}):properties}function CfnEndpointConfigClarifyShapConfigPropertyFromCloudFormation(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("numberOfSamples","NumberOfSamples",properties.NumberOfSamples!=null?cfn_parse().FromCloudFormation.getNumber(properties.NumberOfSamples):void 0),ret.addPropertyResult("seed","Seed",properties.Seed!=null?cfn_parse().FromCloudFormation.getNumber(properties.Seed):void 0),ret.addPropertyResult("shapBaselineConfig","ShapBaselineConfig",properties.ShapBaselineConfig!=null?CfnEndpointConfigClarifyShapBaselineConfigPropertyFromCloudFormation(properties.ShapBaselineConfig):void 0),ret.addPropertyResult("textConfig","TextConfig",properties.TextConfig!=null?CfnEndpointConfigClarifyTextConfigPropertyFromCloudFormation(properties.TextConfig):void 0),ret.addPropertyResult("useLogit","UseLogit",properties.UseLogit!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UseLogit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigClarifyExplainerConfigPropertyValidator(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("enableExplanations",cdk().validateString)(properties.enableExplanations)),errors.collect(cdk().propertyValidator("inferenceConfig",CfnEndpointConfigClarifyInferenceConfigPropertyValidator)(properties.inferenceConfig)),errors.collect(cdk().propertyValidator("shapConfig",cdk().requiredValidator)(properties.shapConfig)),errors.collect(cdk().propertyValidator("shapConfig",CfnEndpointConfigClarifyShapConfigPropertyValidator)(properties.shapConfig)),errors.wrap('supplied properties not correct for "ClarifyExplainerConfigProperty"')}function convertCfnEndpointConfigClarifyExplainerConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigClarifyExplainerConfigPropertyValidator(properties).assertSuccess(),{EnableExplanations:cdk().stringToCloudFormation(properties.enableExplanations),InferenceConfig:convertCfnEndpointConfigClarifyInferenceConfigPropertyToCloudFormation(properties.inferenceConfig),ShapConfig:convertCfnEndpointConfigClarifyShapConfigPropertyToCloudFormation(properties.shapConfig)}):properties}function CfnEndpointConfigClarifyExplainerConfigPropertyFromCloudFormation(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("enableExplanations","EnableExplanations",properties.EnableExplanations!=null?cfn_parse().FromCloudFormation.getString(properties.EnableExplanations):void 0),ret.addPropertyResult("inferenceConfig","InferenceConfig",properties.InferenceConfig!=null?CfnEndpointConfigClarifyInferenceConfigPropertyFromCloudFormation(properties.InferenceConfig):void 0),ret.addPropertyResult("shapConfig","ShapConfig",properties.ShapConfig!=null?CfnEndpointConfigClarifyShapConfigPropertyFromCloudFormation(properties.ShapConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigExplainerConfigPropertyValidator(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("clarifyExplainerConfig",CfnEndpointConfigClarifyExplainerConfigPropertyValidator)(properties.clarifyExplainerConfig)),errors.wrap('supplied properties not correct for "ExplainerConfigProperty"')}function convertCfnEndpointConfigExplainerConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigExplainerConfigPropertyValidator(properties).assertSuccess(),{ClarifyExplainerConfig:convertCfnEndpointConfigClarifyExplainerConfigPropertyToCloudFormation(properties.clarifyExplainerConfig)}):properties}function CfnEndpointConfigExplainerConfigPropertyFromCloudFormation(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("clarifyExplainerConfig","ClarifyExplainerConfig",properties.ClarifyExplainerConfig!=null?CfnEndpointConfigClarifyExplainerConfigPropertyFromCloudFormation(properties.ClarifyExplainerConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnEndpointConfigVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnEndpointConfigVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointConfigPropsValidator(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("asyncInferenceConfig",CfnEndpointConfigAsyncInferenceConfigPropertyValidator)(properties.asyncInferenceConfig)),errors.collect(cdk().propertyValidator("dataCaptureConfig",CfnEndpointConfigDataCaptureConfigPropertyValidator)(properties.dataCaptureConfig)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("endpointConfigName",cdk().validateString)(properties.endpointConfigName)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().validateString)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("explainerConfig",CfnEndpointConfigExplainerConfigPropertyValidator)(properties.explainerConfig)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("productionVariants",cdk().requiredValidator)(properties.productionVariants)),errors.collect(cdk().propertyValidator("productionVariants",cdk().listValidator(CfnEndpointConfigProductionVariantPropertyValidator))(properties.productionVariants)),errors.collect(cdk().propertyValidator("shadowProductionVariants",cdk().listValidator(CfnEndpointConfigProductionVariantPropertyValidator))(properties.shadowProductionVariants)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("vpcConfig",CfnEndpointConfigVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "CfnEndpointConfigProps"')}function convertCfnEndpointConfigPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnEndpointConfigPropsValidator(properties).assertSuccess(),{AsyncInferenceConfig:convertCfnEndpointConfigAsyncInferenceConfigPropertyToCloudFormation(properties.asyncInferenceConfig),DataCaptureConfig:convertCfnEndpointConfigDataCaptureConfigPropertyToCloudFormation(properties.dataCaptureConfig),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),EndpointConfigName:cdk().stringToCloudFormation(properties.endpointConfigName),ExecutionRoleArn:cdk().stringToCloudFormation(properties.executionRoleArn),ExplainerConfig:convertCfnEndpointConfigExplainerConfigPropertyToCloudFormation(properties.explainerConfig),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),ProductionVariants:cdk().listMapper(convertCfnEndpointConfigProductionVariantPropertyToCloudFormation)(properties.productionVariants),ShadowProductionVariants:cdk().listMapper(convertCfnEndpointConfigProductionVariantPropertyToCloudFormation)(properties.shadowProductionVariants),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VpcConfig:convertCfnEndpointConfigVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnEndpointConfigPropsFromCloudFormation(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("asyncInferenceConfig","AsyncInferenceConfig",properties.AsyncInferenceConfig!=null?CfnEndpointConfigAsyncInferenceConfigPropertyFromCloudFormation(properties.AsyncInferenceConfig):void 0),ret.addPropertyResult("dataCaptureConfig","DataCaptureConfig",properties.DataCaptureConfig!=null?CfnEndpointConfigDataCaptureConfigPropertyFromCloudFormation(properties.DataCaptureConfig):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("endpointConfigName","EndpointConfigName",properties.EndpointConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointConfigName):void 0),ret.addPropertyResult("executionRoleArn","ExecutionRoleArn",properties.ExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleArn):void 0),ret.addPropertyResult("explainerConfig","ExplainerConfig",properties.ExplainerConfig!=null?CfnEndpointConfigExplainerConfigPropertyFromCloudFormation(properties.ExplainerConfig):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("productionVariants","ProductionVariants",properties.ProductionVariants!=null?cfn_parse().FromCloudFormation.getArray(CfnEndpointConfigProductionVariantPropertyFromCloudFormation)(properties.ProductionVariants):void 0),ret.addPropertyResult("shadowProductionVariants","ShadowProductionVariants",properties.ShadowProductionVariants!=null?cfn_parse().FromCloudFormation.getArray(CfnEndpointConfigProductionVariantPropertyFromCloudFormation)(properties.ShadowProductionVariants):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnEndpointConfigVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFeatureGroup extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnFeatureGroup",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::FeatureGroup";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFeatureGroupPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnFeatureGroup(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 isCfnFeatureGroup(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnFeatureGroup.CFN_RESOURCE_TYPE_NAME}static fromFeatureGroupName(scope,id,featureGroupName){class Import extends cdk().Resource{featureGroupRef;constructor(scope2,id2,featureGroupName2){super(scope2,id2),this.featureGroupRef={featureGroupName:featureGroupName2}}}return new Import(scope,id,featureGroupName)}static arnForFeatureGroup(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IFeatureGroupRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForFeatureGroup),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:feature-group/${FeatureGroupName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,FeatureGroupName:resource.featureGroupRef.featureGroupName})}_description;_eventTimeFeatureName;_featureDefinitions;_featureGroupName;_offlineStoreConfig;_onlineStoreConfig;_recordIdentifierFeatureName;_roleArn;tags;_tagsRaw;_throughputConfig;cfnPropertyNames={description:"Description",eventTimeFeatureName:"EventTimeFeatureName",featureDefinitions:"FeatureDefinitions",featureGroupName:"FeatureGroupName",offlineStoreConfig:"OfflineStoreConfig",onlineStoreConfig:"OnlineStoreConfig",recordIdentifierFeatureName:"RecordIdentifierFeatureName",roleArn:"RoleArn",tags:"Tags",throughputConfig:"ThroughputConfig"};constructor(scope,id,props){super(scope,id,{type:CfnFeatureGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnFeatureGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFeatureGroup),error}cdk().requireProperty(props,"eventTimeFeatureName",this),cdk().requireProperty(props,"featureDefinitions",this),cdk().requireProperty(props,"featureGroupName",this),cdk().requireProperty(props,"recordIdentifierFeatureName",this),this._description=props.description,this._eventTimeFeatureName=props.eventTimeFeatureName,this._featureDefinitions=props.featureDefinitions,this._featureGroupName=props.featureGroupName,this._offlineStoreConfig=props.offlineStoreConfig,this._onlineStoreConfig=props.onlineStoreConfig,this._recordIdentifierFeatureName=props.recordIdentifierFeatureName,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::FeatureGroup",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._throughputConfig=props.throughputConfig}get featureGroupRef(){return{featureGroupName:this.ref}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get eventTimeFeatureName(){return this._eventTimeFeatureName}set eventTimeFeatureName(value){cdk().traceProperty(this.node,"EventTimeFeatureName"),this._eventTimeFeatureName=value}get featureDefinitions(){return this._featureDefinitions}set featureDefinitions(value){cdk().traceProperty(this.node,"FeatureDefinitions"),this._featureDefinitions=value}get featureGroupName(){return this._featureGroupName}set featureGroupName(value){cdk().traceProperty(this.node,"FeatureGroupName"),this._featureGroupName=value}get offlineStoreConfig(){return this._offlineStoreConfig}set offlineStoreConfig(value){cdk().traceProperty(this.node,"OfflineStoreConfig"),this._offlineStoreConfig=value}get onlineStoreConfig(){return this._onlineStoreConfig}set onlineStoreConfig(value){cdk().traceProperty(this.node,"OnlineStoreConfig"),this._onlineStoreConfig=value}get recordIdentifierFeatureName(){return this._recordIdentifierFeatureName}set recordIdentifierFeatureName(value){cdk().traceProperty(this.node,"RecordIdentifierFeatureName"),this._recordIdentifierFeatureName=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get throughputConfig(){return this._throughputConfig}set throughputConfig(value){cdk().traceProperty(this.node,"ThroughputConfig"),this._throughputConfig=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrFeatureGroupStatus(){return cdk().Token.asString(this.getAtt("FeatureGroupStatus",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{description:this._description,eventTimeFeatureName:this._eventTimeFeatureName,featureDefinitions:this._featureDefinitions,featureGroupName:this._featureGroupName,offlineStoreConfig:this._offlineStoreConfig,onlineStoreConfig:this._onlineStoreConfig,recordIdentifierFeatureName:this._recordIdentifierFeatureName,roleArn:this._roleArn,tags:this.tags.renderTags(),throughputConfig:this._throughputConfig}}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",CfnFeatureGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnFeatureGroupPropsToCloudFormation(props)}}exports.CfnFeatureGroup=CfnFeatureGroup;function CfnFeatureGroupDataCatalogConfigPropertyValidator(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("catalog",cdk().requiredValidator)(properties.catalog)),errors.collect(cdk().propertyValidator("catalog",cdk().validateString)(properties.catalog)),errors.collect(cdk().propertyValidator("database",cdk().requiredValidator)(properties.database)),errors.collect(cdk().propertyValidator("database",cdk().validateString)(properties.database)),errors.collect(cdk().propertyValidator("tableName",cdk().requiredValidator)(properties.tableName)),errors.collect(cdk().propertyValidator("tableName",cdk().validateString)(properties.tableName)),errors.wrap('supplied properties not correct for "DataCatalogConfigProperty"')}function convertCfnFeatureGroupDataCatalogConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupDataCatalogConfigPropertyValidator(properties).assertSuccess(),{Catalog:cdk().stringToCloudFormation(properties.catalog),Database:cdk().stringToCloudFormation(properties.database),TableName:cdk().stringToCloudFormation(properties.tableName)}):properties}function CfnFeatureGroupDataCatalogConfigPropertyFromCloudFormation(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("catalog","Catalog",properties.Catalog!=null?cfn_parse().FromCloudFormation.getString(properties.Catalog):void 0),ret.addPropertyResult("database","Database",properties.Database!=null?cfn_parse().FromCloudFormation.getString(properties.Database):void 0),ret.addPropertyResult("tableName","TableName",properties.TableName!=null?cfn_parse().FromCloudFormation.getString(properties.TableName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFeatureGroupS3StorageConfigPropertyValidator(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.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3StorageConfigProperty"')}function convertCfnFeatureGroupS3StorageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupS3StorageConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnFeatureGroupS3StorageConfigPropertyFromCloudFormation(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.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFeatureGroupOfflineStoreConfigPropertyValidator(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("dataCatalogConfig",CfnFeatureGroupDataCatalogConfigPropertyValidator)(properties.dataCatalogConfig)),errors.collect(cdk().propertyValidator("disableGlueTableCreation",cdk().validateBoolean)(properties.disableGlueTableCreation)),errors.collect(cdk().propertyValidator("s3StorageConfig",cdk().requiredValidator)(properties.s3StorageConfig)),errors.collect(cdk().propertyValidator("s3StorageConfig",CfnFeatureGroupS3StorageConfigPropertyValidator)(properties.s3StorageConfig)),errors.collect(cdk().propertyValidator("tableFormat",cdk().validateString)(properties.tableFormat)),errors.wrap('supplied properties not correct for "OfflineStoreConfigProperty"')}function convertCfnFeatureGroupOfflineStoreConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupOfflineStoreConfigPropertyValidator(properties).assertSuccess(),{DataCatalogConfig:convertCfnFeatureGroupDataCatalogConfigPropertyToCloudFormation(properties.dataCatalogConfig),DisableGlueTableCreation:cdk().booleanToCloudFormation(properties.disableGlueTableCreation),S3StorageConfig:convertCfnFeatureGroupS3StorageConfigPropertyToCloudFormation(properties.s3StorageConfig),TableFormat:cdk().stringToCloudFormation(properties.tableFormat)}):properties}function CfnFeatureGroupOfflineStoreConfigPropertyFromCloudFormation(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("dataCatalogConfig","DataCatalogConfig",properties.DataCatalogConfig!=null?CfnFeatureGroupDataCatalogConfigPropertyFromCloudFormation(properties.DataCatalogConfig):void 0),ret.addPropertyResult("disableGlueTableCreation","DisableGlueTableCreation",properties.DisableGlueTableCreation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DisableGlueTableCreation):void 0),ret.addPropertyResult("s3StorageConfig","S3StorageConfig",properties.S3StorageConfig!=null?CfnFeatureGroupS3StorageConfigPropertyFromCloudFormation(properties.S3StorageConfig):void 0),ret.addPropertyResult("tableFormat","TableFormat",properties.TableFormat!=null?cfn_parse().FromCloudFormation.getString(properties.TableFormat):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFeatureGroupFeatureDefinitionPropertyValidator(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("featureName",cdk().requiredValidator)(properties.featureName)),errors.collect(cdk().propertyValidator("featureName",cdk().validateString)(properties.featureName)),errors.collect(cdk().propertyValidator("featureType",cdk().requiredValidator)(properties.featureType)),errors.collect(cdk().propertyValidator("featureType",cdk().validateString)(properties.featureType)),errors.wrap('supplied properties not correct for "FeatureDefinitionProperty"')}function convertCfnFeatureGroupFeatureDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupFeatureDefinitionPropertyValidator(properties).assertSuccess(),{FeatureName:cdk().stringToCloudFormation(properties.featureName),FeatureType:cdk().stringToCloudFormation(properties.featureType)}):properties}function CfnFeatureGroupFeatureDefinitionPropertyFromCloudFormation(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("featureName","FeatureName",properties.FeatureName!=null?cfn_parse().FromCloudFormation.getString(properties.FeatureName):void 0),ret.addPropertyResult("featureType","FeatureType",properties.FeatureType!=null?cfn_parse().FromCloudFormation.getString(properties.FeatureType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFeatureGroupOnlineStoreSecurityConfigPropertyValidator(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 "OnlineStoreSecurityConfigProperty"')}function convertCfnFeatureGroupOnlineStoreSecurityConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupOnlineStoreSecurityConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId)}):properties}function CfnFeatureGroupOnlineStoreSecurityConfigPropertyFromCloudFormation(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 CfnFeatureGroupTtlDurationPropertyValidator(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("unit",cdk().validateString)(properties.unit)),errors.collect(cdk().propertyValidator("value",cdk().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "TtlDurationProperty"')}function convertCfnFeatureGroupTtlDurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupTtlDurationPropertyValidator(properties).assertSuccess(),{Unit:cdk().stringToCloudFormation(properties.unit),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnFeatureGroupTtlDurationPropertyFromCloudFormation(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("unit","Unit",properties.Unit!=null?cfn_parse().FromCloudFormation.getString(properties.Unit):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFeatureGroupOnlineStoreConfigPropertyValidator(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("enableOnlineStore",cdk().validateBoolean)(properties.enableOnlineStore)),errors.collect(cdk().propertyValidator("securityConfig",CfnFeatureGroupOnlineStoreSecurityConfigPropertyValidator)(properties.securityConfig)),errors.collect(cdk().propertyValidator("storageType",cdk().validateString)(properties.storageType)),errors.collect(cdk().propertyValidator("ttlDuration",CfnFeatureGroupTtlDurationPropertyValidator)(properties.ttlDuration)),errors.wrap('supplied properties not correct for "OnlineStoreConfigProperty"')}function convertCfnFeatureGroupOnlineStoreConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupOnlineStoreConfigPropertyValidator(properties).assertSuccess(),{EnableOnlineStore:cdk().booleanToCloudFormation(properties.enableOnlineStore),SecurityConfig:convertCfnFeatureGroupOnlineStoreSecurityConfigPropertyToCloudFormation(properties.securityConfig),StorageType:cdk().stringToCloudFormation(properties.storageType),TtlDuration:convertCfnFeatureGroupTtlDurationPropertyToCloudFormation(properties.ttlDuration)}):properties}function CfnFeatureGroupOnlineStoreConfigPropertyFromCloudFormation(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("enableOnlineStore","EnableOnlineStore",properties.EnableOnlineStore!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableOnlineStore):void 0),ret.addPropertyResult("securityConfig","SecurityConfig",properties.SecurityConfig!=null?CfnFeatureGroupOnlineStoreSecurityConfigPropertyFromCloudFormation(properties.SecurityConfig):void 0),ret.addPropertyResult("storageType","StorageType",properties.StorageType!=null?cfn_parse().FromCloudFormation.getString(properties.StorageType):void 0),ret.addPropertyResult("ttlDuration","TtlDuration",properties.TtlDuration!=null?CfnFeatureGroupTtlDurationPropertyFromCloudFormation(properties.TtlDuration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFeatureGroupThroughputConfigPropertyValidator(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("provisionedReadCapacityUnits",cdk().validateNumber)(properties.provisionedReadCapacityUnits)),errors.collect(cdk().propertyValidator("provisionedWriteCapacityUnits",cdk().validateNumber)(properties.provisionedWriteCapacityUnits)),errors.collect(cdk().propertyValidator("throughputMode",cdk().requiredValidator)(properties.throughputMode)),errors.collect(cdk().propertyValidator("throughputMode",cdk().validateString)(properties.throughputMode)),errors.wrap('supplied properties not correct for "ThroughputConfigProperty"')}function convertCfnFeatureGroupThroughputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupThroughputConfigPropertyValidator(properties).assertSuccess(),{ProvisionedReadCapacityUnits:cdk().numberToCloudFormation(properties.provisionedReadCapacityUnits),ProvisionedWriteCapacityUnits:cdk().numberToCloudFormation(properties.provisionedWriteCapacityUnits),ThroughputMode:cdk().stringToCloudFormation(properties.throughputMode)}):properties}function CfnFeatureGroupThroughputConfigPropertyFromCloudFormation(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("provisionedReadCapacityUnits","ProvisionedReadCapacityUnits",properties.ProvisionedReadCapacityUnits!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProvisionedReadCapacityUnits):void 0),ret.addPropertyResult("provisionedWriteCapacityUnits","ProvisionedWriteCapacityUnits",properties.ProvisionedWriteCapacityUnits!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProvisionedWriteCapacityUnits):void 0),ret.addPropertyResult("throughputMode","ThroughputMode",properties.ThroughputMode!=null?cfn_parse().FromCloudFormation.getString(properties.ThroughputMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFeatureGroupPropsValidator(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("eventTimeFeatureName",cdk().requiredValidator)(properties.eventTimeFeatureName)),errors.collect(cdk().propertyValidator("eventTimeFeatureName",cdk().validateString)(properties.eventTimeFeatureName)),errors.collect(cdk().propertyValidator("featureDefinitions",cdk().requiredValidator)(properties.featureDefinitions)),errors.collect(cdk().propertyValidator("featureDefinitions",cdk().listValidator(CfnFeatureGroupFeatureDefinitionPropertyValidator))(properties.featureDefinitions)),errors.collect(cdk().propertyValidator("featureGroupName",cdk().requiredValidator)(properties.featureGroupName)),errors.collect(cdk().propertyValidator("featureGroupName",cdk().validateString)(properties.featureGroupName)),errors.collect(cdk().propertyValidator("offlineStoreConfig",cdk().validateObject)(properties.offlineStoreConfig)),errors.collect(cdk().propertyValidator("onlineStoreConfig",cdk().validateObject)(properties.onlineStoreConfig)),errors.collect(cdk().propertyValidator("recordIdentifierFeatureName",cdk().requiredValidator)(properties.recordIdentifierFeatureName)),errors.collect(cdk().propertyValidator("recordIdentifierFeatureName",cdk().validateString)(properties.recordIdentifierFeatureName)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("throughputConfig",CfnFeatureGroupThroughputConfigPropertyValidator)(properties.throughputConfig)),errors.wrap('supplied properties not correct for "CfnFeatureGroupProps"')}function convertCfnFeatureGroupPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFeatureGroupPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),EventTimeFeatureName:cdk().stringToCloudFormation(properties.eventTimeFeatureName),FeatureDefinitions:cdk().listMapper(convertCfnFeatureGroupFeatureDefinitionPropertyToCloudFormation)(properties.featureDefinitions),FeatureGroupName:cdk().stringToCloudFormation(properties.featureGroupName),OfflineStoreConfig:cdk().objectToCloudFormation(properties.offlineStoreConfig),OnlineStoreConfig:cdk().objectToCloudFormation(properties.onlineStoreConfig),RecordIdentifierFeatureName:cdk().stringToCloudFormation(properties.recordIdentifierFeatureName),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),ThroughputConfig:convertCfnFeatureGroupThroughputConfigPropertyToCloudFormation(properties.throughputConfig)}):properties}function CfnFeatureGroupPropsFromCloudFormation(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("eventTimeFeatureName","EventTimeFeatureName",properties.EventTimeFeatureName!=null?cfn_parse().FromCloudFormation.getString(properties.EventTimeFeatureName):void 0),ret.addPropertyResult("featureDefinitions","FeatureDefinitions",properties.FeatureDefinitions!=null?cfn_parse().FromCloudFormation.getArray(CfnFeatureGroupFeatureDefinitionPropertyFromCloudFormation)(properties.FeatureDefinitions):void 0),ret.addPropertyResult("featureGroupName","FeatureGroupName",properties.FeatureGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.FeatureGroupName):void 0),ret.addPropertyResult("offlineStoreConfig","OfflineStoreConfig",properties.OfflineStoreConfig!=null?cfn_parse().FromCloudFormation.getAny(properties.OfflineStoreConfig):void 0),ret.addPropertyResult("onlineStoreConfig","OnlineStoreConfig",properties.OnlineStoreConfig!=null?cfn_parse().FromCloudFormation.getAny(properties.OnlineStoreConfig):void 0),ret.addPropertyResult("recordIdentifierFeatureName","RecordIdentifierFeatureName",properties.RecordIdentifierFeatureName!=null?cfn_parse().FromCloudFormation.getString(properties.RecordIdentifierFeatureName):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("throughputConfig","ThroughputConfig",properties.ThroughputConfig!=null?CfnFeatureGroupThroughputConfigPropertyFromCloudFormation(properties.ThroughputConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnImage extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnImage",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Image";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnImagePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnImage(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 isCfnImage(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnImage.CFN_RESOURCE_TYPE_NAME}static arnForImage(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IImageRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForImage),error}return resource.imageRef.imageArn}_imageDescription;_imageDisplayName;_imageName;_imageRoleArn;tags;_tagsRaw;cfnPropertyNames={imageDescription:"ImageDescription",imageDisplayName:"ImageDisplayName",imageName:"ImageName",imageRoleArn:"ImageRoleArn",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnImage.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnImageProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnImage),error}cdk().requireProperty(props,"imageName",this),cdk().requireProperty(props,"imageRoleArn",this),this._imageDescription=props.imageDescription,this._imageDisplayName=props.imageDisplayName,this._imageName=props.imageName,this._imageRoleArn=props.imageRoleArn,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Image",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get imageRef(){return{imageArn:this.ref}}get imageDescription(){return this._imageDescription}set imageDescription(value){cdk().traceProperty(this.node,"ImageDescription"),this._imageDescription=value}get imageDisplayName(){return this._imageDisplayName}set imageDisplayName(value){cdk().traceProperty(this.node,"ImageDisplayName"),this._imageDisplayName=value}get imageName(){return this._imageName}set imageName(value){cdk().traceProperty(this.node,"ImageName"),this._imageName=value}get imageRoleArn(){return this._imageRoleArn}set imageRoleArn(value){cdk().traceProperty(this.node,"ImageRoleArn"),this._imageRoleArn=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrImageArn(){return cdk().Token.asString(this.getAtt("ImageArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{imageDescription:this._imageDescription,imageDisplayName:this._imageDisplayName,imageName:this._imageName,imageRoleArn:this._imageRoleArn,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",CfnImage.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnImagePropsToCloudFormation(props)}}exports.CfnImage=CfnImage;function CfnImagePropsValidator(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("imageDescription",cdk().validateString)(properties.imageDescription)),errors.collect(cdk().propertyValidator("imageDisplayName",cdk().validateString)(properties.imageDisplayName)),errors.collect(cdk().propertyValidator("imageName",cdk().requiredValidator)(properties.imageName)),errors.collect(cdk().propertyValidator("imageName",cdk().validateString)(properties.imageName)),errors.collect(cdk().propertyValidator("imageRoleArn",cdk().requiredValidator)(properties.imageRoleArn)),errors.collect(cdk().propertyValidator("imageRoleArn",cdk().validateString)(properties.imageRoleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnImageProps"')}function convertCfnImagePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnImagePropsValidator(properties).assertSuccess(),{ImageDescription:cdk().stringToCloudFormation(properties.imageDescription),ImageDisplayName:cdk().stringToCloudFormation(properties.imageDisplayName),ImageName:cdk().stringToCloudFormation(properties.imageName),ImageRoleArn:cdk().stringToCloudFormation(properties.imageRoleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnImagePropsFromCloudFormation(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("imageDescription","ImageDescription",properties.ImageDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ImageDescription):void 0),ret.addPropertyResult("imageDisplayName","ImageDisplayName",properties.ImageDisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.ImageDisplayName):void 0),ret.addPropertyResult("imageName","ImageName",properties.ImageName!=null?cfn_parse().FromCloudFormation.getString(properties.ImageName):void 0),ret.addPropertyResult("imageRoleArn","ImageRoleArn",properties.ImageRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ImageRoleArn):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 CfnImageVersion extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnImageVersion",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ImageVersion";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnImageVersionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnImageVersion(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 isCfnImageVersion(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnImageVersion.CFN_RESOURCE_TYPE_NAME}static arnForImageVersion(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IImageVersionRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForImageVersion),error}return resource.imageVersionRef.imageVersionArn}_alias;_aliases;_baseImage;_horovod;_imageName;_jobType;_mlFramework;_processor;_programmingLang;_releaseNotes;_vendorGuidance;cfnPropertyNames={alias:"Alias",aliases:"Aliases",baseImage:"BaseImage",horovod:"Horovod",imageName:"ImageName",jobType:"JobType",mlFramework:"MLFramework",processor:"Processor",programmingLang:"ProgrammingLang",releaseNotes:"ReleaseNotes",vendorGuidance:"VendorGuidance"};constructor(scope,id,props){super(scope,id,{type:CfnImageVersion.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnImageVersionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnImageVersion),error}cdk().requireProperty(props,"baseImage",this),cdk().requireProperty(props,"imageName",this),this._alias=props.alias,this._aliases=props.aliases,this._baseImage=props.baseImage,this._horovod=props.horovod,this._imageName=props.imageName,this._jobType=props.jobType,this._mlFramework=props.mlFramework,this._processor=props.processor,this._programmingLang=props.programmingLang,this._releaseNotes=props.releaseNotes,this._vendorGuidance=props.vendorGuidance}get imageVersionRef(){return{imageVersionArn:this.ref}}get alias(){return this._alias}set alias(value){cdk().traceProperty(this.node,"Alias"),this._alias=value}get aliases(){return this._aliases}set aliases(value){cdk().traceProperty(this.node,"Aliases"),this._aliases=value}get baseImage(){return this._baseImage}set baseImage(value){cdk().traceProperty(this.node,"BaseImage"),this._baseImage=value}get horovod(){return this._horovod}set horovod(value){cdk().traceProperty(this.node,"Horovod"),this._horovod=value}get imageName(){return this._imageName}set imageName(value){cdk().traceProperty(this.node,"ImageName"),this._imageName=value}get jobType(){return this._jobType}set jobType(value){cdk().traceProperty(this.node,"JobType"),this._jobType=value}get mlFramework(){return this._mlFramework}set mlFramework(value){cdk().traceProperty(this.node,"MLFramework"),this._mlFramework=value}get processor(){return this._processor}set processor(value){cdk().traceProperty(this.node,"Processor"),this._processor=value}get programmingLang(){return this._programmingLang}set programmingLang(value){cdk().traceProperty(this.node,"ProgrammingLang"),this._programmingLang=value}get releaseNotes(){return this._releaseNotes}set releaseNotes(value){cdk().traceProperty(this.node,"ReleaseNotes"),this._releaseNotes=value}get vendorGuidance(){return this._vendorGuidance}set vendorGuidance(value){cdk().traceProperty(this.node,"VendorGuidance"),this._vendorGuidance=value}get attrContainerImage(){return cdk().Token.asString(this.getAtt("ContainerImage",cdk().ResolutionTypeHint.STRING))}get attrImageArn(){return cdk().Token.asString(this.getAtt("ImageArn",cdk().ResolutionTypeHint.STRING))}get attrImageVersionArn(){return cdk().Token.asString(this.getAtt("ImageVersionArn",cdk().ResolutionTypeHint.STRING))}get attrVersion(){return cdk().Token.asNumber(this.getAtt("Version",cdk().ResolutionTypeHint.NUMBER))}get cfnProperties(){return{alias:this._alias,aliases:this._aliases,baseImage:this._baseImage,horovod:this._horovod,imageName:this._imageName,jobType:this._jobType,mlFramework:this._mlFramework,processor:this._processor,programmingLang:this._programmingLang,releaseNotes:this._releaseNotes,vendorGuidance:this._vendorGuidance}}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",CfnImageVersion.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnImageVersionPropsToCloudFormation(props)}}exports.CfnImageVersion=CfnImageVersion;function CfnImageVersionPropsValidator(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("alias",cdk().validateString)(properties.alias)),errors.collect(cdk().propertyValidator("aliases",cdk().listValidator(cdk().validateString))(properties.aliases)),errors.collect(cdk().propertyValidator("baseImage",cdk().requiredValidator)(properties.baseImage)),errors.collect(cdk().propertyValidator("baseImage",cdk().validateString)(properties.baseImage)),errors.collect(cdk().propertyValidator("horovod",cdk().validateBoolean)(properties.horovod)),errors.collect(cdk().propertyValidator("imageName",cdk().requiredValidator)(properties.imageName)),errors.collect(cdk().propertyValidator("imageName",cdk().validateString)(properties.imageName)),errors.collect(cdk().propertyValidator("jobType",cdk().validateString)(properties.jobType)),errors.collect(cdk().propertyValidator("mlFramework",cdk().validateString)(properties.mlFramework)),errors.collect(cdk().propertyValidator("processor",cdk().validateString)(properties.processor)),errors.collect(cdk().propertyValidator("programmingLang",cdk().validateString)(properties.programmingLang)),errors.collect(cdk().propertyValidator("releaseNotes",cdk().validateString)(properties.releaseNotes)),errors.collect(cdk().propertyValidator("vendorGuidance",cdk().validateString)(properties.vendorGuidance)),errors.wrap('supplied properties not correct for "CfnImageVersionProps"')}function convertCfnImageVersionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnImageVersionPropsValidator(properties).assertSuccess(),{Alias:cdk().stringToCloudFormation(properties.alias),Aliases:cdk().listMapper(cdk().stringToCloudFormation)(properties.aliases),BaseImage:cdk().stringToCloudFormation(properties.baseImage),Horovod:cdk().booleanToCloudFormation(properties.horovod),ImageName:cdk().stringToCloudFormation(properties.imageName),JobType:cdk().stringToCloudFormation(properties.jobType),MLFramework:cdk().stringToCloudFormation(properties.mlFramework),Processor:cdk().stringToCloudFormation(properties.processor),ProgrammingLang:cdk().stringToCloudFormation(properties.programmingLang),ReleaseNotes:cdk().stringToCloudFormation(properties.releaseNotes),VendorGuidance:cdk().stringToCloudFormation(properties.vendorGuidance)}):properties}function CfnImageVersionPropsFromCloudFormation(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("alias","Alias",properties.Alias!=null?cfn_parse().FromCloudFormation.getString(properties.Alias):void 0),ret.addPropertyResult("aliases","Aliases",properties.Aliases!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Aliases):void 0),ret.addPropertyResult("baseImage","BaseImage",properties.BaseImage!=null?cfn_parse().FromCloudFormation.getString(properties.BaseImage):void 0),ret.addPropertyResult("horovod","Horovod",properties.Horovod!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Horovod):void 0),ret.addPropertyResult("imageName","ImageName",properties.ImageName!=null?cfn_parse().FromCloudFormation.getString(properties.ImageName):void 0),ret.addPropertyResult("jobType","JobType",properties.JobType!=null?cfn_parse().FromCloudFormation.getString(properties.JobType):void 0),ret.addPropertyResult("mlFramework","MLFramework",properties.MLFramework!=null?cfn_parse().FromCloudFormation.getString(properties.MLFramework):void 0),ret.addPropertyResult("processor","Processor",properties.Processor!=null?cfn_parse().FromCloudFormation.getString(properties.Processor):void 0),ret.addPropertyResult("programmingLang","ProgrammingLang",properties.ProgrammingLang!=null?cfn_parse().FromCloudFormation.getString(properties.ProgrammingLang):void 0),ret.addPropertyResult("releaseNotes","ReleaseNotes",properties.ReleaseNotes!=null?cfn_parse().FromCloudFormation.getString(properties.ReleaseNotes):void 0),ret.addPropertyResult("vendorGuidance","VendorGuidance",properties.VendorGuidance!=null?cfn_parse().FromCloudFormation.getString(properties.VendorGuidance):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnInferenceExperiment extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnInferenceExperiment",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::InferenceExperiment";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnInferenceExperimentPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnInferenceExperiment(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 isCfnInferenceExperiment(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnInferenceExperiment.CFN_RESOURCE_TYPE_NAME}static fromInferenceExperimentArn(scope,id,arn){class Import extends cdk().Resource{inferenceExperimentRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:inference-experiment/${InferenceExperimentName}").parse(arn2);this.inferenceExperimentRef={inferenceExperimentName:variables.InferenceExperimentName,inferenceExperimentArn:arn2}}}return new Import(scope,id,arn)}static fromInferenceExperimentName(scope,id,inferenceExperimentName){class Import extends cdk().Resource{inferenceExperimentRef;constructor(scope2,id2,inferenceExperimentName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:inference-experiment/${InferenceExperimentName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,InferenceExperimentName:inferenceExperimentName2});super(scope2,id2,{environmentFromArn:arn}),this.inferenceExperimentRef={inferenceExperimentName:inferenceExperimentName2,inferenceExperimentArn:arn}}}return new Import(scope,id,inferenceExperimentName)}static arnForInferenceExperiment(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IInferenceExperimentRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForInferenceExperiment),error}return resource.inferenceExperimentRef.inferenceExperimentArn}_dataStorageConfig;_description;_desiredState;_endpointName;_kmsKey;_modelVariants;_name;_roleArn;_schedule;_shadowModeConfig;_statusReason;tags;_tagsRaw;_type;cfnPropertyNames={dataStorageConfig:"DataStorageConfig",description:"Description",desiredState:"DesiredState",endpointName:"EndpointName",kmsKey:"KmsKey",modelVariants:"ModelVariants",name:"Name",roleArn:"RoleArn",schedule:"Schedule",shadowModeConfig:"ShadowModeConfig",statusReason:"StatusReason",tags:"Tags",type:"Type"};constructor(scope,id,props){super(scope,id,{type:CfnInferenceExperiment.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnInferenceExperimentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnInferenceExperiment),error}cdk().requireProperty(props,"endpointName",this),cdk().requireProperty(props,"modelVariants",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"roleArn",this),cdk().requireProperty(props,"type",this),this._dataStorageConfig=props.dataStorageConfig,this._description=props.description,this._desiredState=props.desiredState,this._endpointName=props.endpointName,this._kmsKey=props.kmsKey,this._modelVariants=props.modelVariants,this._name=props.name,this._roleArn=props.roleArn,this._schedule=props.schedule,this._shadowModeConfig=props.shadowModeConfig,this._statusReason=props.statusReason,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::InferenceExperiment",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._type=props.type}get inferenceExperimentRef(){return{inferenceExperimentName:this.ref,inferenceExperimentArn:this.attrArn}}get dataStorageConfig(){return this._dataStorageConfig}set dataStorageConfig(value){cdk().traceProperty(this.node,"DataStorageConfig"),this._dataStorageConfig=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get desiredState(){return this._desiredState}set desiredState(value){cdk().traceProperty(this.node,"DesiredState"),this._desiredState=value}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get kmsKey(){return this._kmsKey}set kmsKey(value){cdk().traceProperty(this.node,"KmsKey"),this._kmsKey=value}get modelVariants(){return this._modelVariants}set modelVariants(value){cdk().traceProperty(this.node,"ModelVariants"),this._modelVariants=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get schedule(){return this._schedule}set schedule(value){cdk().traceProperty(this.node,"Schedule"),this._schedule=value}get shadowModeConfig(){return this._shadowModeConfig}set shadowModeConfig(value){cdk().traceProperty(this.node,"ShadowModeConfig"),this._shadowModeConfig=value}get statusReason(){return this._statusReason}set statusReason(value){cdk().traceProperty(this.node,"StatusReason"),this._statusReason=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 attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrEndpointMetadata(){return this.getAtt("EndpointMetadata")}get attrEndpointMetadataEndpointConfigName(){return cdk().Token.asString(this.getAtt("EndpointMetadata.EndpointConfigName",cdk().ResolutionTypeHint.STRING))}get attrEndpointMetadataEndpointName(){return cdk().Token.asString(this.getAtt("EndpointMetadata.EndpointName",cdk().ResolutionTypeHint.STRING))}get attrEndpointMetadataEndpointStatus(){return cdk().Token.asString(this.getAtt("EndpointMetadata.EndpointStatus",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedTime(){return cdk().Token.asString(this.getAtt("LastModifiedTime",cdk().ResolutionTypeHint.STRING))}get attrStatus(){return cdk().Token.asString(this.getAtt("Status",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{dataStorageConfig:this._dataStorageConfig,description:this._description,desiredState:this._desiredState,endpointName:this._endpointName,kmsKey:this._kmsKey,modelVariants:this._modelVariants,name:this._name,roleArn:this._roleArn,schedule:this._schedule,shadowModeConfig:this._shadowModeConfig,statusReason:this._statusReason,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",CfnInferenceExperiment.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnInferenceExperimentPropsToCloudFormation(props)}}exports.CfnInferenceExperiment=CfnInferenceExperiment;function CfnInferenceExperimentCaptureContentTypeHeaderPropertyValidator(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("csvContentTypes",cdk().listValidator(cdk().validateString))(properties.csvContentTypes)),errors.collect(cdk().propertyValidator("jsonContentTypes",cdk().listValidator(cdk().validateString))(properties.jsonContentTypes)),errors.wrap('supplied properties not correct for "CaptureContentTypeHeaderProperty"')}function convertCfnInferenceExperimentCaptureContentTypeHeaderPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentCaptureContentTypeHeaderPropertyValidator(properties).assertSuccess(),{CsvContentTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.csvContentTypes),JsonContentTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.jsonContentTypes)}):properties}function CfnInferenceExperimentCaptureContentTypeHeaderPropertyFromCloudFormation(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("csvContentTypes","CsvContentTypes",properties.CsvContentTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.CsvContentTypes):void 0),ret.addPropertyResult("jsonContentTypes","JsonContentTypes",properties.JsonContentTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.JsonContentTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentDataStorageConfigPropertyValidator(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("contentType",CfnInferenceExperimentCaptureContentTypeHeaderPropertyValidator)(properties.contentType)),errors.collect(cdk().propertyValidator("destination",cdk().requiredValidator)(properties.destination)),errors.collect(cdk().propertyValidator("destination",cdk().validateString)(properties.destination)),errors.collect(cdk().propertyValidator("kmsKey",cdk().validateString)(properties.kmsKey)),errors.wrap('supplied properties not correct for "DataStorageConfigProperty"')}function convertCfnInferenceExperimentDataStorageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentDataStorageConfigPropertyValidator(properties).assertSuccess(),{ContentType:convertCfnInferenceExperimentCaptureContentTypeHeaderPropertyToCloudFormation(properties.contentType),Destination:cdk().stringToCloudFormation(properties.destination),KmsKey:cdk().stringToCloudFormation(properties.kmsKey)}):properties}function CfnInferenceExperimentDataStorageConfigPropertyFromCloudFormation(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("contentType","ContentType",properties.ContentType!=null?CfnInferenceExperimentCaptureContentTypeHeaderPropertyFromCloudFormation(properties.ContentType):void 0),ret.addPropertyResult("destination","Destination",properties.Destination!=null?cfn_parse().FromCloudFormation.getString(properties.Destination):void 0),ret.addPropertyResult("kmsKey","KmsKey",properties.KmsKey!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentRealTimeInferenceConfigPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.wrap('supplied properties not correct for "RealTimeInferenceConfigProperty"')}function convertCfnInferenceExperimentRealTimeInferenceConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentRealTimeInferenceConfigPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType)}):properties}function CfnInferenceExperimentRealTimeInferenceConfigPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentModelInfrastructureConfigPropertyValidator(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("infrastructureType",cdk().requiredValidator)(properties.infrastructureType)),errors.collect(cdk().propertyValidator("infrastructureType",cdk().validateString)(properties.infrastructureType)),errors.collect(cdk().propertyValidator("realTimeInferenceConfig",cdk().requiredValidator)(properties.realTimeInferenceConfig)),errors.collect(cdk().propertyValidator("realTimeInferenceConfig",CfnInferenceExperimentRealTimeInferenceConfigPropertyValidator)(properties.realTimeInferenceConfig)),errors.wrap('supplied properties not correct for "ModelInfrastructureConfigProperty"')}function convertCfnInferenceExperimentModelInfrastructureConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentModelInfrastructureConfigPropertyValidator(properties).assertSuccess(),{InfrastructureType:cdk().stringToCloudFormation(properties.infrastructureType),RealTimeInferenceConfig:convertCfnInferenceExperimentRealTimeInferenceConfigPropertyToCloudFormation(properties.realTimeInferenceConfig)}):properties}function CfnInferenceExperimentModelInfrastructureConfigPropertyFromCloudFormation(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("infrastructureType","InfrastructureType",properties.InfrastructureType!=null?cfn_parse().FromCloudFormation.getString(properties.InfrastructureType):void 0),ret.addPropertyResult("realTimeInferenceConfig","RealTimeInferenceConfig",properties.RealTimeInferenceConfig!=null?CfnInferenceExperimentRealTimeInferenceConfigPropertyFromCloudFormation(properties.RealTimeInferenceConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentModelVariantConfigPropertyValidator(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("infrastructureConfig",cdk().requiredValidator)(properties.infrastructureConfig)),errors.collect(cdk().propertyValidator("infrastructureConfig",CfnInferenceExperimentModelInfrastructureConfigPropertyValidator)(properties.infrastructureConfig)),errors.collect(cdk().propertyValidator("modelName",cdk().requiredValidator)(properties.modelName)),errors.collect(cdk().propertyValidator("modelName",cdk().validateString)(properties.modelName)),errors.collect(cdk().propertyValidator("variantName",cdk().requiredValidator)(properties.variantName)),errors.collect(cdk().propertyValidator("variantName",cdk().validateString)(properties.variantName)),errors.wrap('supplied properties not correct for "ModelVariantConfigProperty"')}function convertCfnInferenceExperimentModelVariantConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentModelVariantConfigPropertyValidator(properties).assertSuccess(),{InfrastructureConfig:convertCfnInferenceExperimentModelInfrastructureConfigPropertyToCloudFormation(properties.infrastructureConfig),ModelName:cdk().stringToCloudFormation(properties.modelName),VariantName:cdk().stringToCloudFormation(properties.variantName)}):properties}function CfnInferenceExperimentModelVariantConfigPropertyFromCloudFormation(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("infrastructureConfig","InfrastructureConfig",properties.InfrastructureConfig!=null?CfnInferenceExperimentModelInfrastructureConfigPropertyFromCloudFormation(properties.InfrastructureConfig):void 0),ret.addPropertyResult("modelName","ModelName",properties.ModelName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelName):void 0),ret.addPropertyResult("variantName","VariantName",properties.VariantName!=null?cfn_parse().FromCloudFormation.getString(properties.VariantName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentShadowModelVariantConfigPropertyValidator(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("samplingPercentage",cdk().requiredValidator)(properties.samplingPercentage)),errors.collect(cdk().propertyValidator("samplingPercentage",cdk().validateNumber)(properties.samplingPercentage)),errors.collect(cdk().propertyValidator("shadowModelVariantName",cdk().requiredValidator)(properties.shadowModelVariantName)),errors.collect(cdk().propertyValidator("shadowModelVariantName",cdk().validateString)(properties.shadowModelVariantName)),errors.wrap('supplied properties not correct for "ShadowModelVariantConfigProperty"')}function convertCfnInferenceExperimentShadowModelVariantConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentShadowModelVariantConfigPropertyValidator(properties).assertSuccess(),{SamplingPercentage:cdk().numberToCloudFormation(properties.samplingPercentage),ShadowModelVariantName:cdk().stringToCloudFormation(properties.shadowModelVariantName)}):properties}function CfnInferenceExperimentShadowModelVariantConfigPropertyFromCloudFormation(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("samplingPercentage","SamplingPercentage",properties.SamplingPercentage!=null?cfn_parse().FromCloudFormation.getNumber(properties.SamplingPercentage):void 0),ret.addPropertyResult("shadowModelVariantName","ShadowModelVariantName",properties.ShadowModelVariantName!=null?cfn_parse().FromCloudFormation.getString(properties.ShadowModelVariantName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentShadowModeConfigPropertyValidator(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("shadowModelVariants",cdk().requiredValidator)(properties.shadowModelVariants)),errors.collect(cdk().propertyValidator("shadowModelVariants",cdk().listValidator(CfnInferenceExperimentShadowModelVariantConfigPropertyValidator))(properties.shadowModelVariants)),errors.collect(cdk().propertyValidator("sourceModelVariantName",cdk().requiredValidator)(properties.sourceModelVariantName)),errors.collect(cdk().propertyValidator("sourceModelVariantName",cdk().validateString)(properties.sourceModelVariantName)),errors.wrap('supplied properties not correct for "ShadowModeConfigProperty"')}function convertCfnInferenceExperimentShadowModeConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentShadowModeConfigPropertyValidator(properties).assertSuccess(),{ShadowModelVariants:cdk().listMapper(convertCfnInferenceExperimentShadowModelVariantConfigPropertyToCloudFormation)(properties.shadowModelVariants),SourceModelVariantName:cdk().stringToCloudFormation(properties.sourceModelVariantName)}):properties}function CfnInferenceExperimentShadowModeConfigPropertyFromCloudFormation(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("shadowModelVariants","ShadowModelVariants",properties.ShadowModelVariants!=null?cfn_parse().FromCloudFormation.getArray(CfnInferenceExperimentShadowModelVariantConfigPropertyFromCloudFormation)(properties.ShadowModelVariants):void 0),ret.addPropertyResult("sourceModelVariantName","SourceModelVariantName",properties.SourceModelVariantName!=null?cfn_parse().FromCloudFormation.getString(properties.SourceModelVariantName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentInferenceExperimentSchedulePropertyValidator(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("endTime",cdk().validateString)(properties.endTime)),errors.collect(cdk().propertyValidator("startTime",cdk().validateString)(properties.startTime)),errors.wrap('supplied properties not correct for "InferenceExperimentScheduleProperty"')}function convertCfnInferenceExperimentInferenceExperimentSchedulePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentInferenceExperimentSchedulePropertyValidator(properties).assertSuccess(),{EndTime:cdk().stringToCloudFormation(properties.endTime),StartTime:cdk().stringToCloudFormation(properties.startTime)}):properties}function CfnInferenceExperimentInferenceExperimentSchedulePropertyFromCloudFormation(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("endTime","EndTime",properties.EndTime!=null?cfn_parse().FromCloudFormation.getString(properties.EndTime):void 0),ret.addPropertyResult("startTime","StartTime",properties.StartTime!=null?cfn_parse().FromCloudFormation.getString(properties.StartTime):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentEndpointMetadataPropertyValidator(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("endpointConfigName",cdk().validateString)(properties.endpointConfigName)),errors.collect(cdk().propertyValidator("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointStatus",cdk().validateString)(properties.endpointStatus)),errors.wrap('supplied properties not correct for "EndpointMetadataProperty"')}function convertCfnInferenceExperimentEndpointMetadataPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentEndpointMetadataPropertyValidator(properties).assertSuccess(),{EndpointConfigName:cdk().stringToCloudFormation(properties.endpointConfigName),EndpointName:cdk().stringToCloudFormation(properties.endpointName),EndpointStatus:cdk().stringToCloudFormation(properties.endpointStatus)}):properties}function CfnInferenceExperimentEndpointMetadataPropertyFromCloudFormation(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("endpointConfigName","EndpointConfigName",properties.EndpointConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointConfigName):void 0),ret.addPropertyResult("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("endpointStatus","EndpointStatus",properties.EndpointStatus!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointStatus):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceExperimentPropsValidator(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("dataStorageConfig",CfnInferenceExperimentDataStorageConfigPropertyValidator)(properties.dataStorageConfig)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("desiredState",cdk().validateString)(properties.desiredState)),errors.collect(cdk().propertyValidator("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("kmsKey",cdk().validateString)(properties.kmsKey)),errors.collect(cdk().propertyValidator("modelVariants",cdk().requiredValidator)(properties.modelVariants)),errors.collect(cdk().propertyValidator("modelVariants",cdk().listValidator(CfnInferenceExperimentModelVariantConfigPropertyValidator))(properties.modelVariants)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("schedule",CfnInferenceExperimentInferenceExperimentSchedulePropertyValidator)(properties.schedule)),errors.collect(cdk().propertyValidator("shadowModeConfig",CfnInferenceExperimentShadowModeConfigPropertyValidator)(properties.shadowModeConfig)),errors.collect(cdk().propertyValidator("statusReason",cdk().validateString)(properties.statusReason)),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 "CfnInferenceExperimentProps"')}function convertCfnInferenceExperimentPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceExperimentPropsValidator(properties).assertSuccess(),{DataStorageConfig:convertCfnInferenceExperimentDataStorageConfigPropertyToCloudFormation(properties.dataStorageConfig),Description:cdk().stringToCloudFormation(properties.description),DesiredState:cdk().stringToCloudFormation(properties.desiredState),EndpointName:cdk().stringToCloudFormation(properties.endpointName),KmsKey:cdk().stringToCloudFormation(properties.kmsKey),ModelVariants:cdk().listMapper(convertCfnInferenceExperimentModelVariantConfigPropertyToCloudFormation)(properties.modelVariants),Name:cdk().stringToCloudFormation(properties.name),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Schedule:convertCfnInferenceExperimentInferenceExperimentSchedulePropertyToCloudFormation(properties.schedule),ShadowModeConfig:convertCfnInferenceExperimentShadowModeConfigPropertyToCloudFormation(properties.shadowModeConfig),StatusReason:cdk().stringToCloudFormation(properties.statusReason),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnInferenceExperimentPropsFromCloudFormation(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("dataStorageConfig","DataStorageConfig",properties.DataStorageConfig!=null?CfnInferenceExperimentDataStorageConfigPropertyFromCloudFormation(properties.DataStorageConfig):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("desiredState","DesiredState",properties.DesiredState!=null?cfn_parse().FromCloudFormation.getString(properties.DesiredState):void 0),ret.addPropertyResult("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("kmsKey","KmsKey",properties.KmsKey!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKey):void 0),ret.addPropertyResult("modelVariants","ModelVariants",properties.ModelVariants!=null?cfn_parse().FromCloudFormation.getArray(CfnInferenceExperimentModelVariantConfigPropertyFromCloudFormation)(properties.ModelVariants):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("schedule","Schedule",properties.Schedule!=null?CfnInferenceExperimentInferenceExperimentSchedulePropertyFromCloudFormation(properties.Schedule):void 0),ret.addPropertyResult("shadowModeConfig","ShadowModeConfig",properties.ShadowModeConfig!=null?CfnInferenceExperimentShadowModeConfigPropertyFromCloudFormation(properties.ShadowModeConfig):void 0),ret.addPropertyResult("statusReason","StatusReason",properties.StatusReason!=null?cfn_parse().FromCloudFormation.getString(properties.StatusReason):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 CfnModel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnModel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Model";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModel(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 isCfnModel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModel.CFN_RESOURCE_TYPE_NAME}static arnForModel(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IModelRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForModel),error}return resource.modelRef.modelArn}_containers;_enableNetworkIsolation;_executionRoleArn;_inferenceExecutionConfig;_modelName;_primaryContainer;tags;_tagsRaw;_vpcConfig;cfnPropertyNames={containers:"Containers",enableNetworkIsolation:"EnableNetworkIsolation",executionRoleArn:"ExecutionRoleArn",inferenceExecutionConfig:"InferenceExecutionConfig",modelName:"ModelName",primaryContainer:"PrimaryContainer",tags:"Tags",vpcConfig:"VpcConfig"};constructor(scope,id,props={}){super(scope,id,{type:CfnModel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnModelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModel),error}this._containers=props.containers,this._enableNetworkIsolation=props.enableNetworkIsolation,this._executionRoleArn=props.executionRoleArn,this._inferenceExecutionConfig=props.inferenceExecutionConfig,this._modelName=props.modelName,this._primaryContainer=props.primaryContainer,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Model",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._vpcConfig=props.vpcConfig}get modelRef(){return{modelArn:this.ref}}get containers(){return this._containers}set containers(value){cdk().traceProperty(this.node,"Containers"),this._containers=value}get enableNetworkIsolation(){return this._enableNetworkIsolation}set enableNetworkIsolation(value){cdk().traceProperty(this.node,"EnableNetworkIsolation"),this._enableNetworkIsolation=value}get executionRoleArn(){return this._executionRoleArn}set executionRoleArn(value){cdk().traceProperty(this.node,"ExecutionRoleArn"),this._executionRoleArn=value}get inferenceExecutionConfig(){return this._inferenceExecutionConfig}set inferenceExecutionConfig(value){cdk().traceProperty(this.node,"InferenceExecutionConfig"),this._inferenceExecutionConfig=value}get modelName(){return this._modelName}set modelName(value){cdk().traceProperty(this.node,"ModelName"),this._modelName=value}get primaryContainer(){return this._primaryContainer}set primaryContainer(value){cdk().traceProperty(this.node,"PrimaryContainer"),this._primaryContainer=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get vpcConfig(){return this._vpcConfig}set vpcConfig(value){cdk().traceProperty(this.node,"VpcConfig"),this._vpcConfig=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrModelArn(){return cdk().Token.asString(this.getAtt("ModelArn",cdk().ResolutionTypeHint.STRING))}get attrModelName(){return cdk().Token.asString(this.getAtt("ModelName",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{containers:this._containers,enableNetworkIsolation:this._enableNetworkIsolation,executionRoleArn:this._executionRoleArn,inferenceExecutionConfig:this._inferenceExecutionConfig,modelName:this._modelName,primaryContainer:this._primaryContainer,tags:this.tags.renderTags(),vpcConfig:this._vpcConfig}}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",CfnModel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelPropsToCloudFormation(props)}}exports.CfnModel=CfnModel;function CfnModelRepositoryAuthConfigPropertyValidator(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("repositoryCredentialsProviderArn",cdk().requiredValidator)(properties.repositoryCredentialsProviderArn)),errors.collect(cdk().propertyValidator("repositoryCredentialsProviderArn",cdk().validateString)(properties.repositoryCredentialsProviderArn)),errors.wrap('supplied properties not correct for "RepositoryAuthConfigProperty"')}function convertCfnModelRepositoryAuthConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelRepositoryAuthConfigPropertyValidator(properties).assertSuccess(),{RepositoryCredentialsProviderArn:cdk().stringToCloudFormation(properties.repositoryCredentialsProviderArn)}):properties}function CfnModelRepositoryAuthConfigPropertyFromCloudFormation(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("repositoryCredentialsProviderArn","RepositoryCredentialsProviderArn",properties.RepositoryCredentialsProviderArn!=null?cfn_parse().FromCloudFormation.getString(properties.RepositoryCredentialsProviderArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelImageConfigPropertyValidator(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("repositoryAccessMode",cdk().requiredValidator)(properties.repositoryAccessMode)),errors.collect(cdk().propertyValidator("repositoryAccessMode",cdk().validateString)(properties.repositoryAccessMode)),errors.collect(cdk().propertyValidator("repositoryAuthConfig",CfnModelRepositoryAuthConfigPropertyValidator)(properties.repositoryAuthConfig)),errors.wrap('supplied properties not correct for "ImageConfigProperty"')}function convertCfnModelImageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelImageConfigPropertyValidator(properties).assertSuccess(),{RepositoryAccessMode:cdk().stringToCloudFormation(properties.repositoryAccessMode),RepositoryAuthConfig:convertCfnModelRepositoryAuthConfigPropertyToCloudFormation(properties.repositoryAuthConfig)}):properties}function CfnModelImageConfigPropertyFromCloudFormation(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("repositoryAccessMode","RepositoryAccessMode",properties.RepositoryAccessMode!=null?cfn_parse().FromCloudFormation.getString(properties.RepositoryAccessMode):void 0),ret.addPropertyResult("repositoryAuthConfig","RepositoryAuthConfig",properties.RepositoryAuthConfig!=null?CfnModelRepositoryAuthConfigPropertyFromCloudFormation(properties.RepositoryAuthConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelMultiModelConfigPropertyValidator(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("modelCacheSetting",cdk().validateString)(properties.modelCacheSetting)),errors.wrap('supplied properties not correct for "MultiModelConfigProperty"')}function convertCfnModelMultiModelConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelMultiModelConfigPropertyValidator(properties).assertSuccess(),{ModelCacheSetting:cdk().stringToCloudFormation(properties.modelCacheSetting)}):properties}function CfnModelMultiModelConfigPropertyFromCloudFormation(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("modelCacheSetting","ModelCacheSetting",properties.ModelCacheSetting!=null?cfn_parse().FromCloudFormation.getString(properties.ModelCacheSetting):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelHubAccessConfigPropertyValidator(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("hubContentArn",cdk().requiredValidator)(properties.hubContentArn)),errors.collect(cdk().propertyValidator("hubContentArn",cdk().validateString)(properties.hubContentArn)),errors.wrap('supplied properties not correct for "HubAccessConfigProperty"')}function convertCfnModelHubAccessConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelHubAccessConfigPropertyValidator(properties).assertSuccess(),{HubContentArn:cdk().stringToCloudFormation(properties.hubContentArn)}):properties}function CfnModelHubAccessConfigPropertyFromCloudFormation(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("hubContentArn","HubContentArn",properties.HubContentArn!=null?cfn_parse().FromCloudFormation.getString(properties.HubContentArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelModelAccessConfigPropertyValidator(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("acceptEula",cdk().requiredValidator)(properties.acceptEula)),errors.collect(cdk().propertyValidator("acceptEula",cdk().validateBoolean)(properties.acceptEula)),errors.wrap('supplied properties not correct for "ModelAccessConfigProperty"')}function convertCfnModelModelAccessConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelModelAccessConfigPropertyValidator(properties).assertSuccess(),{AcceptEula:cdk().booleanToCloudFormation(properties.acceptEula)}):properties}function CfnModelModelAccessConfigPropertyFromCloudFormation(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("acceptEula","AcceptEula",properties.AcceptEula!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AcceptEula):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelS3DataSourcePropertyValidator(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("compressionType",cdk().requiredValidator)(properties.compressionType)),errors.collect(cdk().propertyValidator("compressionType",cdk().validateString)(properties.compressionType)),errors.collect(cdk().propertyValidator("hubAccessConfig",CfnModelHubAccessConfigPropertyValidator)(properties.hubAccessConfig)),errors.collect(cdk().propertyValidator("modelAccessConfig",CfnModelModelAccessConfigPropertyValidator)(properties.modelAccessConfig)),errors.collect(cdk().propertyValidator("s3DataType",cdk().requiredValidator)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3DataType",cdk().validateString)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3DataSourceProperty"')}function convertCfnModelS3DataSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelS3DataSourcePropertyValidator(properties).assertSuccess(),{CompressionType:cdk().stringToCloudFormation(properties.compressionType),HubAccessConfig:convertCfnModelHubAccessConfigPropertyToCloudFormation(properties.hubAccessConfig),ModelAccessConfig:convertCfnModelModelAccessConfigPropertyToCloudFormation(properties.modelAccessConfig),S3DataType:cdk().stringToCloudFormation(properties.s3DataType),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelS3DataSourcePropertyFromCloudFormation(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("compressionType","CompressionType",properties.CompressionType!=null?cfn_parse().FromCloudFormation.getString(properties.CompressionType):void 0),ret.addPropertyResult("hubAccessConfig","HubAccessConfig",properties.HubAccessConfig!=null?CfnModelHubAccessConfigPropertyFromCloudFormation(properties.HubAccessConfig):void 0),ret.addPropertyResult("modelAccessConfig","ModelAccessConfig",properties.ModelAccessConfig!=null?CfnModelModelAccessConfigPropertyFromCloudFormation(properties.ModelAccessConfig):void 0),ret.addPropertyResult("s3DataType","S3DataType",properties.S3DataType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataType):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelModelDataSourcePropertyValidator(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("s3DataSource",cdk().requiredValidator)(properties.s3DataSource)),errors.collect(cdk().propertyValidator("s3DataSource",CfnModelS3DataSourcePropertyValidator)(properties.s3DataSource)),errors.wrap('supplied properties not correct for "ModelDataSourceProperty"')}function convertCfnModelModelDataSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelModelDataSourcePropertyValidator(properties).assertSuccess(),{S3DataSource:convertCfnModelS3DataSourcePropertyToCloudFormation(properties.s3DataSource)}):properties}function CfnModelModelDataSourcePropertyFromCloudFormation(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("s3DataSource","S3DataSource",properties.S3DataSource!=null?CfnModelS3DataSourcePropertyFromCloudFormation(properties.S3DataSource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelContainerDefinitionPropertyValidator(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("containerHostname",cdk().validateString)(properties.containerHostname)),errors.collect(cdk().propertyValidator("environment",cdk().validateObject)(properties.environment)),errors.collect(cdk().propertyValidator("image",cdk().validateString)(properties.image)),errors.collect(cdk().propertyValidator("imageConfig",CfnModelImageConfigPropertyValidator)(properties.imageConfig)),errors.collect(cdk().propertyValidator("inferenceSpecificationName",cdk().validateString)(properties.inferenceSpecificationName)),errors.collect(cdk().propertyValidator("mode",cdk().validateString)(properties.mode)),errors.collect(cdk().propertyValidator("modelDataSource",CfnModelModelDataSourcePropertyValidator)(properties.modelDataSource)),errors.collect(cdk().propertyValidator("modelDataUrl",cdk().validateString)(properties.modelDataUrl)),errors.collect(cdk().propertyValidator("modelPackageName",cdk().validateString)(properties.modelPackageName)),errors.collect(cdk().propertyValidator("multiModelConfig",CfnModelMultiModelConfigPropertyValidator)(properties.multiModelConfig)),errors.wrap('supplied properties not correct for "ContainerDefinitionProperty"')}function convertCfnModelContainerDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelContainerDefinitionPropertyValidator(properties).assertSuccess(),{ContainerHostname:cdk().stringToCloudFormation(properties.containerHostname),Environment:cdk().objectToCloudFormation(properties.environment),Image:cdk().stringToCloudFormation(properties.image),ImageConfig:convertCfnModelImageConfigPropertyToCloudFormation(properties.imageConfig),InferenceSpecificationName:cdk().stringToCloudFormation(properties.inferenceSpecificationName),Mode:cdk().stringToCloudFormation(properties.mode),ModelDataSource:convertCfnModelModelDataSourcePropertyToCloudFormation(properties.modelDataSource),ModelDataUrl:cdk().stringToCloudFormation(properties.modelDataUrl),ModelPackageName:cdk().stringToCloudFormation(properties.modelPackageName),MultiModelConfig:convertCfnModelMultiModelConfigPropertyToCloudFormation(properties.multiModelConfig)}):properties}function CfnModelContainerDefinitionPropertyFromCloudFormation(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("containerHostname","ContainerHostname",properties.ContainerHostname!=null?cfn_parse().FromCloudFormation.getString(properties.ContainerHostname):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getAny(properties.Environment):void 0),ret.addPropertyResult("image","Image",properties.Image!=null?cfn_parse().FromCloudFormation.getString(properties.Image):void 0),ret.addPropertyResult("imageConfig","ImageConfig",properties.ImageConfig!=null?CfnModelImageConfigPropertyFromCloudFormation(properties.ImageConfig):void 0),ret.addPropertyResult("inferenceSpecificationName","InferenceSpecificationName",properties.InferenceSpecificationName!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceSpecificationName):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addPropertyResult("modelDataSource","ModelDataSource",properties.ModelDataSource!=null?CfnModelModelDataSourcePropertyFromCloudFormation(properties.ModelDataSource):void 0),ret.addPropertyResult("modelDataUrl","ModelDataUrl",properties.ModelDataUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ModelDataUrl):void 0),ret.addPropertyResult("modelPackageName","ModelPackageName",properties.ModelPackageName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageName):void 0),ret.addPropertyResult("multiModelConfig","MultiModelConfig",properties.MultiModelConfig!=null?CfnModelMultiModelConfigPropertyFromCloudFormation(properties.MultiModelConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnModelVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnModelVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelInferenceExecutionConfigPropertyValidator(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("mode",cdk().requiredValidator)(properties.mode)),errors.collect(cdk().propertyValidator("mode",cdk().validateString)(properties.mode)),errors.wrap('supplied properties not correct for "InferenceExecutionConfigProperty"')}function convertCfnModelInferenceExecutionConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelInferenceExecutionConfigPropertyValidator(properties).assertSuccess(),{Mode:cdk().stringToCloudFormation(properties.mode)}):properties}function CfnModelInferenceExecutionConfigPropertyFromCloudFormation(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("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPropsValidator(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("containers",cdk().listValidator(CfnModelContainerDefinitionPropertyValidator))(properties.containers)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().validateString)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("inferenceExecutionConfig",CfnModelInferenceExecutionConfigPropertyValidator)(properties.inferenceExecutionConfig)),errors.collect(cdk().propertyValidator("modelName",cdk().validateString)(properties.modelName)),errors.collect(cdk().propertyValidator("primaryContainer",CfnModelContainerDefinitionPropertyValidator)(properties.primaryContainer)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("vpcConfig",CfnModelVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "CfnModelProps"')}function convertCfnModelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPropsValidator(properties).assertSuccess(),{Containers:cdk().listMapper(convertCfnModelContainerDefinitionPropertyToCloudFormation)(properties.containers),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),ExecutionRoleArn:cdk().stringToCloudFormation(properties.executionRoleArn),InferenceExecutionConfig:convertCfnModelInferenceExecutionConfigPropertyToCloudFormation(properties.inferenceExecutionConfig),ModelName:cdk().stringToCloudFormation(properties.modelName),PrimaryContainer:convertCfnModelContainerDefinitionPropertyToCloudFormation(properties.primaryContainer),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VpcConfig:convertCfnModelVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnModelPropsFromCloudFormation(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("containers","Containers",properties.Containers!=null?cfn_parse().FromCloudFormation.getArray(CfnModelContainerDefinitionPropertyFromCloudFormation)(properties.Containers):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("executionRoleArn","ExecutionRoleArn",properties.ExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleArn):void 0),ret.addPropertyResult("inferenceExecutionConfig","InferenceExecutionConfig",properties.InferenceExecutionConfig!=null?CfnModelInferenceExecutionConfigPropertyFromCloudFormation(properties.InferenceExecutionConfig):void 0),ret.addPropertyResult("modelName","ModelName",properties.ModelName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelName):void 0),ret.addPropertyResult("primaryContainer","PrimaryContainer",properties.PrimaryContainer!=null?CfnModelContainerDefinitionPropertyFromCloudFormation(properties.PrimaryContainer):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnModelVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnModelBiasJobDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnModelBiasJobDefinition",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ModelBiasJobDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelBiasJobDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModelBiasJobDefinition(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 isCfnModelBiasJobDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModelBiasJobDefinition.CFN_RESOURCE_TYPE_NAME}_endpointName;_jobDefinitionName;_jobResources;_modelBiasAppSpecification;_modelBiasBaselineConfig;_modelBiasJobInput;_modelBiasJobOutputConfig;_networkConfig;_roleArn;_stoppingCondition;tags;_tagsRaw;cfnPropertyNames={endpointName:"EndpointName",jobDefinitionName:"JobDefinitionName",jobResources:"JobResources",modelBiasAppSpecification:"ModelBiasAppSpecification",modelBiasBaselineConfig:"ModelBiasBaselineConfig",modelBiasJobInput:"ModelBiasJobInput",modelBiasJobOutputConfig:"ModelBiasJobOutputConfig",networkConfig:"NetworkConfig",roleArn:"RoleArn",stoppingCondition:"StoppingCondition",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnModelBiasJobDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnModelBiasJobDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModelBiasJobDefinition),error}cdk().requireProperty(props,"jobResources",this),cdk().requireProperty(props,"modelBiasAppSpecification",this),cdk().requireProperty(props,"modelBiasJobInput",this),cdk().requireProperty(props,"modelBiasJobOutputConfig",this),cdk().requireProperty(props,"roleArn",this),this._endpointName=props.endpointName,this._jobDefinitionName=props.jobDefinitionName,this._jobResources=props.jobResources,this._modelBiasAppSpecification=props.modelBiasAppSpecification,this._modelBiasBaselineConfig=props.modelBiasBaselineConfig,this._modelBiasJobInput=props.modelBiasJobInput,this._modelBiasJobOutputConfig=props.modelBiasJobOutputConfig,this._networkConfig=props.networkConfig,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this._stoppingCondition=props.stoppingCondition,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::ModelBiasJobDefinition",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get modelBiasJobDefinitionRef(){return{jobDefinitionArn:this.ref}}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get jobDefinitionName(){return this._jobDefinitionName}set jobDefinitionName(value){cdk().traceProperty(this.node,"JobDefinitionName"),this._jobDefinitionName=value}get jobResources(){return this._jobResources}set jobResources(value){cdk().traceProperty(this.node,"JobResources"),this._jobResources=value}get modelBiasAppSpecification(){return this._modelBiasAppSpecification}set modelBiasAppSpecification(value){cdk().traceProperty(this.node,"ModelBiasAppSpecification"),this._modelBiasAppSpecification=value}get modelBiasBaselineConfig(){return this._modelBiasBaselineConfig}set modelBiasBaselineConfig(value){cdk().traceProperty(this.node,"ModelBiasBaselineConfig"),this._modelBiasBaselineConfig=value}get modelBiasJobInput(){return this._modelBiasJobInput}set modelBiasJobInput(value){cdk().traceProperty(this.node,"ModelBiasJobInput"),this._modelBiasJobInput=value}get modelBiasJobOutputConfig(){return this._modelBiasJobOutputConfig}set modelBiasJobOutputConfig(value){cdk().traceProperty(this.node,"ModelBiasJobOutputConfig"),this._modelBiasJobOutputConfig=value}get networkConfig(){return this._networkConfig}set networkConfig(value){cdk().traceProperty(this.node,"NetworkConfig"),this._networkConfig=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get stoppingCondition(){return this._stoppingCondition}set stoppingCondition(value){cdk().traceProperty(this.node,"StoppingCondition"),this._stoppingCondition=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrJobDefinitionArn(){return cdk().Token.asString(this.getAtt("JobDefinitionArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{endpointName:this._endpointName,jobDefinitionName:this._jobDefinitionName,jobResources:this._jobResources,modelBiasAppSpecification:this._modelBiasAppSpecification,modelBiasBaselineConfig:this._modelBiasBaselineConfig,modelBiasJobInput:this._modelBiasJobInput,modelBiasJobOutputConfig:this._modelBiasJobOutputConfig,networkConfig:this._networkConfig,roleArn:this._roleArn,stoppingCondition:this._stoppingCondition,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",CfnModelBiasJobDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelBiasJobDefinitionPropsToCloudFormation(props)}}exports.CfnModelBiasJobDefinition=CfnModelBiasJobDefinition;function CfnModelBiasJobDefinitionMonitoringGroundTruthS3InputPropertyValidator(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("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "MonitoringGroundTruthS3InputProperty"')}function convertCfnModelBiasJobDefinitionMonitoringGroundTruthS3InputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionMonitoringGroundTruthS3InputPropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelBiasJobDefinitionMonitoringGroundTruthS3InputPropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionCsvPropertyValidator(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("header",cdk().validateBoolean)(properties.header)),errors.wrap('supplied properties not correct for "CsvProperty"')}function convertCfnModelBiasJobDefinitionCsvPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionCsvPropertyValidator(properties).assertSuccess(),{Header:cdk().booleanToCloudFormation(properties.header)}):properties}function CfnModelBiasJobDefinitionCsvPropertyFromCloudFormation(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("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Header):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionJsonPropertyValidator(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("line",cdk().validateBoolean)(properties.line)),errors.wrap('supplied properties not correct for "JsonProperty"')}function convertCfnModelBiasJobDefinitionJsonPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionJsonPropertyValidator(properties).assertSuccess(),{Line:cdk().booleanToCloudFormation(properties.line)}):properties}function CfnModelBiasJobDefinitionJsonPropertyFromCloudFormation(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("line","Line",properties.Line!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Line):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionDatasetFormatPropertyValidator(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("csv",CfnModelBiasJobDefinitionCsvPropertyValidator)(properties.csv)),errors.collect(cdk().propertyValidator("json",CfnModelBiasJobDefinitionJsonPropertyValidator)(properties.json)),errors.collect(cdk().propertyValidator("parquet",cdk().validateBoolean)(properties.parquet)),errors.wrap('supplied properties not correct for "DatasetFormatProperty"')}function convertCfnModelBiasJobDefinitionDatasetFormatPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionDatasetFormatPropertyValidator(properties).assertSuccess(),{Csv:convertCfnModelBiasJobDefinitionCsvPropertyToCloudFormation(properties.csv),Json:convertCfnModelBiasJobDefinitionJsonPropertyToCloudFormation(properties.json),Parquet:cdk().booleanToCloudFormation(properties.parquet)}):properties}function CfnModelBiasJobDefinitionDatasetFormatPropertyFromCloudFormation(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("csv","Csv",properties.Csv!=null?CfnModelBiasJobDefinitionCsvPropertyFromCloudFormation(properties.Csv):void 0),ret.addPropertyResult("json","Json",properties.Json!=null?CfnModelBiasJobDefinitionJsonPropertyFromCloudFormation(properties.Json):void 0),ret.addPropertyResult("parquet","Parquet",properties.Parquet!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Parquet):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionBatchTransformInputPropertyValidator(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("dataCapturedDestinationS3Uri",cdk().requiredValidator)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("dataCapturedDestinationS3Uri",cdk().validateString)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("datasetFormat",cdk().requiredValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("datasetFormat",CfnModelBiasJobDefinitionDatasetFormatPropertyValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("endTimeOffset",cdk().validateString)(properties.endTimeOffset)),errors.collect(cdk().propertyValidator("featuresAttribute",cdk().validateString)(properties.featuresAttribute)),errors.collect(cdk().propertyValidator("inferenceAttribute",cdk().validateString)(properties.inferenceAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("probabilityAttribute",cdk().validateString)(properties.probabilityAttribute)),errors.collect(cdk().propertyValidator("probabilityThresholdAttribute",cdk().validateNumber)(properties.probabilityThresholdAttribute)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.collect(cdk().propertyValidator("startTimeOffset",cdk().validateString)(properties.startTimeOffset)),errors.wrap('supplied properties not correct for "BatchTransformInputProperty"')}function convertCfnModelBiasJobDefinitionBatchTransformInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionBatchTransformInputPropertyValidator(properties).assertSuccess(),{DataCapturedDestinationS3Uri:cdk().stringToCloudFormation(properties.dataCapturedDestinationS3Uri),DatasetFormat:convertCfnModelBiasJobDefinitionDatasetFormatPropertyToCloudFormation(properties.datasetFormat),EndTimeOffset:cdk().stringToCloudFormation(properties.endTimeOffset),FeaturesAttribute:cdk().stringToCloudFormation(properties.featuresAttribute),InferenceAttribute:cdk().stringToCloudFormation(properties.inferenceAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),ProbabilityAttribute:cdk().stringToCloudFormation(properties.probabilityAttribute),ProbabilityThresholdAttribute:cdk().numberToCloudFormation(properties.probabilityThresholdAttribute),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode),StartTimeOffset:cdk().stringToCloudFormation(properties.startTimeOffset)}):properties}function CfnModelBiasJobDefinitionBatchTransformInputPropertyFromCloudFormation(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("dataCapturedDestinationS3Uri","DataCapturedDestinationS3Uri",properties.DataCapturedDestinationS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.DataCapturedDestinationS3Uri):void 0),ret.addPropertyResult("datasetFormat","DatasetFormat",properties.DatasetFormat!=null?CfnModelBiasJobDefinitionDatasetFormatPropertyFromCloudFormation(properties.DatasetFormat):void 0),ret.addPropertyResult("endTimeOffset","EndTimeOffset",properties.EndTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.EndTimeOffset):void 0),ret.addPropertyResult("featuresAttribute","FeaturesAttribute",properties.FeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.FeaturesAttribute):void 0),ret.addPropertyResult("inferenceAttribute","InferenceAttribute",properties.InferenceAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("probabilityAttribute","ProbabilityAttribute",properties.ProbabilityAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ProbabilityAttribute):void 0),ret.addPropertyResult("probabilityThresholdAttribute","ProbabilityThresholdAttribute",properties.ProbabilityThresholdAttribute!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProbabilityThresholdAttribute):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addPropertyResult("startTimeOffset","StartTimeOffset",properties.StartTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.StartTimeOffset):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionEndpointInputPropertyValidator(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("endTimeOffset",cdk().validateString)(properties.endTimeOffset)),errors.collect(cdk().propertyValidator("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("featuresAttribute",cdk().validateString)(properties.featuresAttribute)),errors.collect(cdk().propertyValidator("inferenceAttribute",cdk().validateString)(properties.inferenceAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("probabilityAttribute",cdk().validateString)(properties.probabilityAttribute)),errors.collect(cdk().propertyValidator("probabilityThresholdAttribute",cdk().validateNumber)(properties.probabilityThresholdAttribute)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.collect(cdk().propertyValidator("startTimeOffset",cdk().validateString)(properties.startTimeOffset)),errors.wrap('supplied properties not correct for "EndpointInputProperty"')}function convertCfnModelBiasJobDefinitionEndpointInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionEndpointInputPropertyValidator(properties).assertSuccess(),{EndTimeOffset:cdk().stringToCloudFormation(properties.endTimeOffset),EndpointName:cdk().stringToCloudFormation(properties.endpointName),FeaturesAttribute:cdk().stringToCloudFormation(properties.featuresAttribute),InferenceAttribute:cdk().stringToCloudFormation(properties.inferenceAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),ProbabilityAttribute:cdk().stringToCloudFormation(properties.probabilityAttribute),ProbabilityThresholdAttribute:cdk().numberToCloudFormation(properties.probabilityThresholdAttribute),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode),StartTimeOffset:cdk().stringToCloudFormation(properties.startTimeOffset)}):properties}function CfnModelBiasJobDefinitionEndpointInputPropertyFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("endTimeOffset","EndTimeOffset",properties.EndTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.EndTimeOffset):void 0),ret.addPropertyResult("featuresAttribute","FeaturesAttribute",properties.FeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.FeaturesAttribute):void 0),ret.addPropertyResult("inferenceAttribute","InferenceAttribute",properties.InferenceAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("probabilityAttribute","ProbabilityAttribute",properties.ProbabilityAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ProbabilityAttribute):void 0),ret.addPropertyResult("probabilityThresholdAttribute","ProbabilityThresholdAttribute",properties.ProbabilityThresholdAttribute!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProbabilityThresholdAttribute):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addPropertyResult("startTimeOffset","StartTimeOffset",properties.StartTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.StartTimeOffset):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionModelBiasJobInputPropertyValidator(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("batchTransformInput",CfnModelBiasJobDefinitionBatchTransformInputPropertyValidator)(properties.batchTransformInput)),errors.collect(cdk().propertyValidator("endpointInput",CfnModelBiasJobDefinitionEndpointInputPropertyValidator)(properties.endpointInput)),errors.collect(cdk().propertyValidator("groundTruthS3Input",cdk().requiredValidator)(properties.groundTruthS3Input)),errors.collect(cdk().propertyValidator("groundTruthS3Input",CfnModelBiasJobDefinitionMonitoringGroundTruthS3InputPropertyValidator)(properties.groundTruthS3Input)),errors.wrap('supplied properties not correct for "ModelBiasJobInputProperty"')}function convertCfnModelBiasJobDefinitionModelBiasJobInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionModelBiasJobInputPropertyValidator(properties).assertSuccess(),{BatchTransformInput:convertCfnModelBiasJobDefinitionBatchTransformInputPropertyToCloudFormation(properties.batchTransformInput),EndpointInput:convertCfnModelBiasJobDefinitionEndpointInputPropertyToCloudFormation(properties.endpointInput),GroundTruthS3Input:convertCfnModelBiasJobDefinitionMonitoringGroundTruthS3InputPropertyToCloudFormation(properties.groundTruthS3Input)}):properties}function CfnModelBiasJobDefinitionModelBiasJobInputPropertyFromCloudFormation(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("batchTransformInput","BatchTransformInput",properties.BatchTransformInput!=null?CfnModelBiasJobDefinitionBatchTransformInputPropertyFromCloudFormation(properties.BatchTransformInput):void 0),ret.addPropertyResult("endpointInput","EndpointInput",properties.EndpointInput!=null?CfnModelBiasJobDefinitionEndpointInputPropertyFromCloudFormation(properties.EndpointInput):void 0),ret.addPropertyResult("groundTruthS3Input","GroundTruthS3Input",properties.GroundTruthS3Input!=null?CfnModelBiasJobDefinitionMonitoringGroundTruthS3InputPropertyFromCloudFormation(properties.GroundTruthS3Input):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionS3OutputPropertyValidator(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("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3UploadMode",cdk().validateString)(properties.s3UploadMode)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3OutputProperty"')}function convertCfnModelBiasJobDefinitionS3OutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionS3OutputPropertyValidator(properties).assertSuccess(),{LocalPath:cdk().stringToCloudFormation(properties.localPath),S3UploadMode:cdk().stringToCloudFormation(properties.s3UploadMode),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelBiasJobDefinitionS3OutputPropertyFromCloudFormation(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("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3UploadMode","S3UploadMode",properties.S3UploadMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3UploadMode):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionMonitoringOutputPropertyValidator(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("s3Output",cdk().requiredValidator)(properties.s3Output)),errors.collect(cdk().propertyValidator("s3Output",CfnModelBiasJobDefinitionS3OutputPropertyValidator)(properties.s3Output)),errors.wrap('supplied properties not correct for "MonitoringOutputProperty"')}function convertCfnModelBiasJobDefinitionMonitoringOutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionMonitoringOutputPropertyValidator(properties).assertSuccess(),{S3Output:convertCfnModelBiasJobDefinitionS3OutputPropertyToCloudFormation(properties.s3Output)}):properties}function CfnModelBiasJobDefinitionMonitoringOutputPropertyFromCloudFormation(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("s3Output","S3Output",properties.S3Output!=null?CfnModelBiasJobDefinitionS3OutputPropertyFromCloudFormation(properties.S3Output):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionMonitoringOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("monitoringOutputs",cdk().requiredValidator)(properties.monitoringOutputs)),errors.collect(cdk().propertyValidator("monitoringOutputs",cdk().listValidator(CfnModelBiasJobDefinitionMonitoringOutputPropertyValidator))(properties.monitoringOutputs)),errors.wrap('supplied properties not correct for "MonitoringOutputConfigProperty"')}function convertCfnModelBiasJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionMonitoringOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),MonitoringOutputs:cdk().listMapper(convertCfnModelBiasJobDefinitionMonitoringOutputPropertyToCloudFormation)(properties.monitoringOutputs)}):properties}function CfnModelBiasJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(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.addPropertyResult("monitoringOutputs","MonitoringOutputs",properties.MonitoringOutputs!=null?cfn_parse().FromCloudFormation.getArray(CfnModelBiasJobDefinitionMonitoringOutputPropertyFromCloudFormation)(properties.MonitoringOutputs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionStoppingConditionPropertyValidator(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("maxRuntimeInSeconds",cdk().requiredValidator)(properties.maxRuntimeInSeconds)),errors.collect(cdk().propertyValidator("maxRuntimeInSeconds",cdk().validateNumber)(properties.maxRuntimeInSeconds)),errors.wrap('supplied properties not correct for "StoppingConditionProperty"')}function convertCfnModelBiasJobDefinitionStoppingConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionStoppingConditionPropertyValidator(properties).assertSuccess(),{MaxRuntimeInSeconds:cdk().numberToCloudFormation(properties.maxRuntimeInSeconds)}):properties}function CfnModelBiasJobDefinitionStoppingConditionPropertyFromCloudFormation(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("maxRuntimeInSeconds","MaxRuntimeInSeconds",properties.MaxRuntimeInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRuntimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionClusterConfigPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().requiredValidator)(properties.volumeSizeInGb)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ClusterConfigProperty"')}function convertCfnModelBiasJobDefinitionClusterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionClusterConfigPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnModelBiasJobDefinitionClusterConfigPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionMonitoringResourcesPropertyValidator(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("clusterConfig",cdk().requiredValidator)(properties.clusterConfig)),errors.collect(cdk().propertyValidator("clusterConfig",CfnModelBiasJobDefinitionClusterConfigPropertyValidator)(properties.clusterConfig)),errors.wrap('supplied properties not correct for "MonitoringResourcesProperty"')}function convertCfnModelBiasJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionMonitoringResourcesPropertyValidator(properties).assertSuccess(),{ClusterConfig:convertCfnModelBiasJobDefinitionClusterConfigPropertyToCloudFormation(properties.clusterConfig)}):properties}function CfnModelBiasJobDefinitionMonitoringResourcesPropertyFromCloudFormation(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("clusterConfig","ClusterConfig",properties.ClusterConfig!=null?CfnModelBiasJobDefinitionClusterConfigPropertyFromCloudFormation(properties.ClusterConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnModelBiasJobDefinitionVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnModelBiasJobDefinitionVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionNetworkConfigPropertyValidator(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("enableInterContainerTrafficEncryption",cdk().validateBoolean)(properties.enableInterContainerTrafficEncryption)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("vpcConfig",CfnModelBiasJobDefinitionVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "NetworkConfigProperty"')}function convertCfnModelBiasJobDefinitionNetworkConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionNetworkConfigPropertyValidator(properties).assertSuccess(),{EnableInterContainerTrafficEncryption:cdk().booleanToCloudFormation(properties.enableInterContainerTrafficEncryption),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),VpcConfig:convertCfnModelBiasJobDefinitionVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnModelBiasJobDefinitionNetworkConfigPropertyFromCloudFormation(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("enableInterContainerTrafficEncryption","EnableInterContainerTrafficEncryption",properties.EnableInterContainerTrafficEncryption!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableInterContainerTrafficEncryption):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnModelBiasJobDefinitionVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionConstraintsResourcePropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "ConstraintsResourceProperty"')}function convertCfnModelBiasJobDefinitionConstraintsResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionConstraintsResourcePropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelBiasJobDefinitionConstraintsResourcePropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionModelBiasBaselineConfigPropertyValidator(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("baseliningJobName",cdk().validateString)(properties.baseliningJobName)),errors.collect(cdk().propertyValidator("constraintsResource",CfnModelBiasJobDefinitionConstraintsResourcePropertyValidator)(properties.constraintsResource)),errors.wrap('supplied properties not correct for "ModelBiasBaselineConfigProperty"')}function convertCfnModelBiasJobDefinitionModelBiasBaselineConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionModelBiasBaselineConfigPropertyValidator(properties).assertSuccess(),{BaseliningJobName:cdk().stringToCloudFormation(properties.baseliningJobName),ConstraintsResource:convertCfnModelBiasJobDefinitionConstraintsResourcePropertyToCloudFormation(properties.constraintsResource)}):properties}function CfnModelBiasJobDefinitionModelBiasBaselineConfigPropertyFromCloudFormation(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("baseliningJobName","BaseliningJobName",properties.BaseliningJobName!=null?cfn_parse().FromCloudFormation.getString(properties.BaseliningJobName):void 0),ret.addPropertyResult("constraintsResource","ConstraintsResource",properties.ConstraintsResource!=null?CfnModelBiasJobDefinitionConstraintsResourcePropertyFromCloudFormation(properties.ConstraintsResource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionModelBiasAppSpecificationPropertyValidator(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("configUri",cdk().requiredValidator)(properties.configUri)),errors.collect(cdk().propertyValidator("configUri",cdk().validateString)(properties.configUri)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("imageUri",cdk().requiredValidator)(properties.imageUri)),errors.collect(cdk().propertyValidator("imageUri",cdk().validateString)(properties.imageUri)),errors.wrap('supplied properties not correct for "ModelBiasAppSpecificationProperty"')}function convertCfnModelBiasJobDefinitionModelBiasAppSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionModelBiasAppSpecificationPropertyValidator(properties).assertSuccess(),{ConfigUri:cdk().stringToCloudFormation(properties.configUri),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),ImageUri:cdk().stringToCloudFormation(properties.imageUri)}):properties}function CfnModelBiasJobDefinitionModelBiasAppSpecificationPropertyFromCloudFormation(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("configUri","ConfigUri",properties.ConfigUri!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigUri):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("imageUri","ImageUri",properties.ImageUri!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelBiasJobDefinitionPropsValidator(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("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("jobDefinitionName",cdk().validateString)(properties.jobDefinitionName)),errors.collect(cdk().propertyValidator("jobResources",cdk().requiredValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("jobResources",CfnModelBiasJobDefinitionMonitoringResourcesPropertyValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("modelBiasAppSpecification",cdk().requiredValidator)(properties.modelBiasAppSpecification)),errors.collect(cdk().propertyValidator("modelBiasAppSpecification",CfnModelBiasJobDefinitionModelBiasAppSpecificationPropertyValidator)(properties.modelBiasAppSpecification)),errors.collect(cdk().propertyValidator("modelBiasBaselineConfig",CfnModelBiasJobDefinitionModelBiasBaselineConfigPropertyValidator)(properties.modelBiasBaselineConfig)),errors.collect(cdk().propertyValidator("modelBiasJobInput",cdk().requiredValidator)(properties.modelBiasJobInput)),errors.collect(cdk().propertyValidator("modelBiasJobInput",CfnModelBiasJobDefinitionModelBiasJobInputPropertyValidator)(properties.modelBiasJobInput)),errors.collect(cdk().propertyValidator("modelBiasJobOutputConfig",cdk().requiredValidator)(properties.modelBiasJobOutputConfig)),errors.collect(cdk().propertyValidator("modelBiasJobOutputConfig",CfnModelBiasJobDefinitionMonitoringOutputConfigPropertyValidator)(properties.modelBiasJobOutputConfig)),errors.collect(cdk().propertyValidator("networkConfig",CfnModelBiasJobDefinitionNetworkConfigPropertyValidator)(properties.networkConfig)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("stoppingCondition",CfnModelBiasJobDefinitionStoppingConditionPropertyValidator)(properties.stoppingCondition)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnModelBiasJobDefinitionProps"')}function convertCfnModelBiasJobDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelBiasJobDefinitionPropsValidator(properties).assertSuccess(),{EndpointName:cdk().stringToCloudFormation(properties.endpointName),JobDefinitionName:cdk().stringToCloudFormation(properties.jobDefinitionName),JobResources:convertCfnModelBiasJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties.jobResources),ModelBiasAppSpecification:convertCfnModelBiasJobDefinitionModelBiasAppSpecificationPropertyToCloudFormation(properties.modelBiasAppSpecification),ModelBiasBaselineConfig:convertCfnModelBiasJobDefinitionModelBiasBaselineConfigPropertyToCloudFormation(properties.modelBiasBaselineConfig),ModelBiasJobInput:convertCfnModelBiasJobDefinitionModelBiasJobInputPropertyToCloudFormation(properties.modelBiasJobInput),ModelBiasJobOutputConfig:convertCfnModelBiasJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties.modelBiasJobOutputConfig),NetworkConfig:convertCfnModelBiasJobDefinitionNetworkConfigPropertyToCloudFormation(properties.networkConfig),RoleArn:cdk().stringToCloudFormation(properties.roleArn),StoppingCondition:convertCfnModelBiasJobDefinitionStoppingConditionPropertyToCloudFormation(properties.stoppingCondition),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnModelBiasJobDefinitionPropsFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("jobDefinitionName","JobDefinitionName",properties.JobDefinitionName!=null?cfn_parse().FromCloudFormation.getString(properties.JobDefinitionName):void 0),ret.addPropertyResult("jobResources","JobResources",properties.JobResources!=null?CfnModelBiasJobDefinitionMonitoringResourcesPropertyFromCloudFormation(properties.JobResources):void 0),ret.addPropertyResult("modelBiasAppSpecification","ModelBiasAppSpecification",properties.ModelBiasAppSpecification!=null?CfnModelBiasJobDefinitionModelBiasAppSpecificationPropertyFromCloudFormation(properties.ModelBiasAppSpecification):void 0),ret.addPropertyResult("modelBiasBaselineConfig","ModelBiasBaselineConfig",properties.ModelBiasBaselineConfig!=null?CfnModelBiasJobDefinitionModelBiasBaselineConfigPropertyFromCloudFormation(properties.ModelBiasBaselineConfig):void 0),ret.addPropertyResult("modelBiasJobInput","ModelBiasJobInput",properties.ModelBiasJobInput!=null?CfnModelBiasJobDefinitionModelBiasJobInputPropertyFromCloudFormation(properties.ModelBiasJobInput):void 0),ret.addPropertyResult("modelBiasJobOutputConfig","ModelBiasJobOutputConfig",properties.ModelBiasJobOutputConfig!=null?CfnModelBiasJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(properties.ModelBiasJobOutputConfig):void 0),ret.addPropertyResult("networkConfig","NetworkConfig",properties.NetworkConfig!=null?CfnModelBiasJobDefinitionNetworkConfigPropertyFromCloudFormation(properties.NetworkConfig):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("stoppingCondition","StoppingCondition",properties.StoppingCondition!=null?CfnModelBiasJobDefinitionStoppingConditionPropertyFromCloudFormation(properties.StoppingCondition):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 CfnModelCard extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnModelCard",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ModelCard";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelCardPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModelCard(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 isCfnModelCard(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModelCard.CFN_RESOURCE_TYPE_NAME}static fromModelCardArn(scope,id,arn){class Import extends cdk().Resource{modelCardRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:model-card/${ModelCardName}").parse(arn2);this.modelCardRef={modelCardName:variables.ModelCardName,modelCardArn:arn2}}}return new Import(scope,id,arn)}static fromModelCardName(scope,id,modelCardName){class Import extends cdk().Resource{modelCardRef;constructor(scope2,id2,modelCardName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:model-card/${ModelCardName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ModelCardName:modelCardName2});super(scope2,id2,{environmentFromArn:arn}),this.modelCardRef={modelCardName:modelCardName2,modelCardArn:arn}}}return new Import(scope,id,modelCardName)}static arnForModelCard(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IModelCardRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForModelCard),error}return resource.modelCardRef.modelCardArn}_content;_createdBy;_lastModifiedBy;_modelCardName;_modelCardStatus;_securityConfig;tags;_tagsRaw;cfnPropertyNames={content:"Content",createdBy:"CreatedBy",lastModifiedBy:"LastModifiedBy",modelCardName:"ModelCardName",modelCardStatus:"ModelCardStatus",securityConfig:"SecurityConfig",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnModelCard.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnModelCardProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModelCard),error}cdk().requireProperty(props,"content",this),cdk().requireProperty(props,"modelCardName",this),cdk().requireProperty(props,"modelCardStatus",this),this._content=props.content,this._createdBy=props.createdBy,this._lastModifiedBy=props.lastModifiedBy,this._modelCardName=props.modelCardName,this._modelCardStatus=props.modelCardStatus,this._securityConfig=props.securityConfig,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::ModelCard",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get modelCardRef(){return{modelCardName:this.ref,modelCardArn:this.attrModelCardArn}}get content(){return this._content}set content(value){cdk().traceProperty(this.node,"Content"),this._content=value}get createdBy(){return this._createdBy}set createdBy(value){cdk().traceProperty(this.node,"CreatedBy"),this._createdBy=value}get lastModifiedBy(){return this._lastModifiedBy}set lastModifiedBy(value){cdk().traceProperty(this.node,"LastModifiedBy"),this._lastModifiedBy=value}get modelCardName(){return this._modelCardName}set modelCardName(value){cdk().traceProperty(this.node,"ModelCardName"),this._modelCardName=value}get modelCardStatus(){return this._modelCardStatus}set modelCardStatus(value){cdk().traceProperty(this.node,"ModelCardStatus"),this._modelCardStatus=value}get securityConfig(){return this._securityConfig}set securityConfig(value){cdk().traceProperty(this.node,"SecurityConfig"),this._securityConfig=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCreatedByDomainId(){return cdk().Token.asString(this.getAtt("CreatedBy.DomainId",cdk().ResolutionTypeHint.STRING))}get attrCreatedByUserProfileArn(){return cdk().Token.asString(this.getAtt("CreatedBy.UserProfileArn",cdk().ResolutionTypeHint.STRING))}get attrCreatedByUserProfileName(){return cdk().Token.asString(this.getAtt("CreatedBy.UserProfileName",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedByDomainId(){return cdk().Token.asString(this.getAtt("LastModifiedBy.DomainId",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedByUserProfileArn(){return cdk().Token.asString(this.getAtt("LastModifiedBy.UserProfileArn",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedByUserProfileName(){return cdk().Token.asString(this.getAtt("LastModifiedBy.UserProfileName",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedTime(){return cdk().Token.asString(this.getAtt("LastModifiedTime",cdk().ResolutionTypeHint.STRING))}get attrModelCardArn(){return cdk().Token.asString(this.getAtt("ModelCardArn",cdk().ResolutionTypeHint.STRING))}get attrModelCardProcessingStatus(){return cdk().Token.asString(this.getAtt("ModelCardProcessingStatus",cdk().ResolutionTypeHint.STRING))}get attrModelCardVersion(){return cdk().Token.asNumber(this.getAtt("ModelCardVersion",cdk().ResolutionTypeHint.NUMBER))}get cfnProperties(){return{content:this._content,createdBy:this._createdBy,lastModifiedBy:this._lastModifiedBy,modelCardName:this._modelCardName,modelCardStatus:this._modelCardStatus,securityConfig:this._securityConfig,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",CfnModelCard.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelCardPropsToCloudFormation(props)}}exports.CfnModelCard=CfnModelCard;function CfnModelCardUserContextPropertyValidator(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("domainId",cdk().validateString)(properties.domainId)),errors.collect(cdk().propertyValidator("userProfileArn",cdk().validateString)(properties.userProfileArn)),errors.collect(cdk().propertyValidator("userProfileName",cdk().validateString)(properties.userProfileName)),errors.wrap('supplied properties not correct for "UserContextProperty"')}function convertCfnModelCardUserContextPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardUserContextPropertyValidator(properties).assertSuccess(),{DomainId:cdk().stringToCloudFormation(properties.domainId),UserProfileArn:cdk().stringToCloudFormation(properties.userProfileArn),UserProfileName:cdk().stringToCloudFormation(properties.userProfileName)}):properties}function CfnModelCardUserContextPropertyFromCloudFormation(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("domainId","DomainId",properties.DomainId!=null?cfn_parse().FromCloudFormation.getString(properties.DomainId):void 0),ret.addPropertyResult("userProfileArn","UserProfileArn",properties.UserProfileArn!=null?cfn_parse().FromCloudFormation.getString(properties.UserProfileArn):void 0),ret.addPropertyResult("userProfileName","UserProfileName",properties.UserProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.UserProfileName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardSecurityConfigPropertyValidator(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 "SecurityConfigProperty"')}function convertCfnModelCardSecurityConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardSecurityConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId)}):properties}function CfnModelCardSecurityConfigPropertyFromCloudFormation(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 CfnModelCardIntendedUsesPropertyValidator(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("explanationsForRiskRating",cdk().validateString)(properties.explanationsForRiskRating)),errors.collect(cdk().propertyValidator("factorsAffectingModelEfficiency",cdk().validateString)(properties.factorsAffectingModelEfficiency)),errors.collect(cdk().propertyValidator("intendedUses",cdk().validateString)(properties.intendedUses)),errors.collect(cdk().propertyValidator("purposeOfModel",cdk().validateString)(properties.purposeOfModel)),errors.collect(cdk().propertyValidator("riskRating",cdk().validateString)(properties.riskRating)),errors.wrap('supplied properties not correct for "IntendedUsesProperty"')}function convertCfnModelCardIntendedUsesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardIntendedUsesPropertyValidator(properties).assertSuccess(),{ExplanationsForRiskRating:cdk().stringToCloudFormation(properties.explanationsForRiskRating),FactorsAffectingModelEfficiency:cdk().stringToCloudFormation(properties.factorsAffectingModelEfficiency),IntendedUses:cdk().stringToCloudFormation(properties.intendedUses),PurposeOfModel:cdk().stringToCloudFormation(properties.purposeOfModel),RiskRating:cdk().stringToCloudFormation(properties.riskRating)}):properties}function CfnModelCardIntendedUsesPropertyFromCloudFormation(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("explanationsForRiskRating","ExplanationsForRiskRating",properties.ExplanationsForRiskRating!=null?cfn_parse().FromCloudFormation.getString(properties.ExplanationsForRiskRating):void 0),ret.addPropertyResult("factorsAffectingModelEfficiency","FactorsAffectingModelEfficiency",properties.FactorsAffectingModelEfficiency!=null?cfn_parse().FromCloudFormation.getString(properties.FactorsAffectingModelEfficiency):void 0),ret.addPropertyResult("intendedUses","IntendedUses",properties.IntendedUses!=null?cfn_parse().FromCloudFormation.getString(properties.IntendedUses):void 0),ret.addPropertyResult("purposeOfModel","PurposeOfModel",properties.PurposeOfModel!=null?cfn_parse().FromCloudFormation.getString(properties.PurposeOfModel):void 0),ret.addPropertyResult("riskRating","RiskRating",properties.RiskRating!=null?cfn_parse().FromCloudFormation.getString(properties.RiskRating):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardAdditionalInformationPropertyValidator(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("caveatsAndRecommendations",cdk().validateString)(properties.caveatsAndRecommendations)),errors.collect(cdk().propertyValidator("customDetails",cdk().hashValidator(cdk().validateString))(properties.customDetails)),errors.collect(cdk().propertyValidator("ethicalConsiderations",cdk().validateString)(properties.ethicalConsiderations)),errors.wrap('supplied properties not correct for "AdditionalInformationProperty"')}function convertCfnModelCardAdditionalInformationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardAdditionalInformationPropertyValidator(properties).assertSuccess(),{CaveatsAndRecommendations:cdk().stringToCloudFormation(properties.caveatsAndRecommendations),CustomDetails:cdk().hashMapper(cdk().stringToCloudFormation)(properties.customDetails),EthicalConsiderations:cdk().stringToCloudFormation(properties.ethicalConsiderations)}):properties}function CfnModelCardAdditionalInformationPropertyFromCloudFormation(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("caveatsAndRecommendations","CaveatsAndRecommendations",properties.CaveatsAndRecommendations!=null?cfn_parse().FromCloudFormation.getString(properties.CaveatsAndRecommendations):void 0),ret.addPropertyResult("customDetails","CustomDetails",properties.CustomDetails!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.CustomDetails):void 0),ret.addPropertyResult("ethicalConsiderations","EthicalConsiderations",properties.EthicalConsiderations!=null?cfn_parse().FromCloudFormation.getString(properties.EthicalConsiderations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardInferenceEnvironmentPropertyValidator(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("containerImage",cdk().listValidator(cdk().validateString))(properties.containerImage)),errors.wrap('supplied properties not correct for "InferenceEnvironmentProperty"')}function convertCfnModelCardInferenceEnvironmentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardInferenceEnvironmentPropertyValidator(properties).assertSuccess(),{ContainerImage:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerImage)}):properties}function CfnModelCardInferenceEnvironmentPropertyFromCloudFormation(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("containerImage","ContainerImage",properties.ContainerImage!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerImage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardModelOverviewPropertyValidator(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("algorithmType",cdk().validateString)(properties.algorithmType)),errors.collect(cdk().propertyValidator("inferenceEnvironment",CfnModelCardInferenceEnvironmentPropertyValidator)(properties.inferenceEnvironment)),errors.collect(cdk().propertyValidator("modelArtifact",cdk().listValidator(cdk().validateString))(properties.modelArtifact)),errors.collect(cdk().propertyValidator("modelCreator",cdk().validateString)(properties.modelCreator)),errors.collect(cdk().propertyValidator("modelDescription",cdk().validateString)(properties.modelDescription)),errors.collect(cdk().propertyValidator("modelId",cdk().validateString)(properties.modelId)),errors.collect(cdk().propertyValidator("modelName",cdk().validateString)(properties.modelName)),errors.collect(cdk().propertyValidator("modelOwner",cdk().validateString)(properties.modelOwner)),errors.collect(cdk().propertyValidator("modelVersion",cdk().validateNumber)(properties.modelVersion)),errors.collect(cdk().propertyValidator("problemType",cdk().validateString)(properties.problemType)),errors.wrap('supplied properties not correct for "ModelOverviewProperty"')}function convertCfnModelCardModelOverviewPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardModelOverviewPropertyValidator(properties).assertSuccess(),{AlgorithmType:cdk().stringToCloudFormation(properties.algorithmType),InferenceEnvironment:convertCfnModelCardInferenceEnvironmentPropertyToCloudFormation(properties.inferenceEnvironment),ModelArtifact:cdk().listMapper(cdk().stringToCloudFormation)(properties.modelArtifact),ModelCreator:cdk().stringToCloudFormation(properties.modelCreator),ModelDescription:cdk().stringToCloudFormation(properties.modelDescription),ModelId:cdk().stringToCloudFormation(properties.modelId),ModelName:cdk().stringToCloudFormation(properties.modelName),ModelOwner:cdk().stringToCloudFormation(properties.modelOwner),ModelVersion:cdk().numberToCloudFormation(properties.modelVersion),ProblemType:cdk().stringToCloudFormation(properties.problemType)}):properties}function CfnModelCardModelOverviewPropertyFromCloudFormation(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("algorithmType","AlgorithmType",properties.AlgorithmType!=null?cfn_parse().FromCloudFormation.getString(properties.AlgorithmType):void 0),ret.addPropertyResult("inferenceEnvironment","InferenceEnvironment",properties.InferenceEnvironment!=null?CfnModelCardInferenceEnvironmentPropertyFromCloudFormation(properties.InferenceEnvironment):void 0),ret.addPropertyResult("modelArtifact","ModelArtifact",properties.ModelArtifact!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ModelArtifact):void 0),ret.addPropertyResult("modelCreator","ModelCreator",properties.ModelCreator!=null?cfn_parse().FromCloudFormation.getString(properties.ModelCreator):void 0),ret.addPropertyResult("modelDescription","ModelDescription",properties.ModelDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ModelDescription):void 0),ret.addPropertyResult("modelId","ModelId",properties.ModelId!=null?cfn_parse().FromCloudFormation.getString(properties.ModelId):void 0),ret.addPropertyResult("modelName","ModelName",properties.ModelName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelName):void 0),ret.addPropertyResult("modelOwner","ModelOwner",properties.ModelOwner!=null?cfn_parse().FromCloudFormation.getString(properties.ModelOwner):void 0),ret.addPropertyResult("modelVersion","ModelVersion",properties.ModelVersion!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModelVersion):void 0),ret.addPropertyResult("problemType","ProblemType",properties.ProblemType!=null?cfn_parse().FromCloudFormation.getString(properties.ProblemType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardFunctionPropertyValidator(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("condition",cdk().validateString)(properties.condition)),errors.collect(cdk().propertyValidator("facet",cdk().validateString)(properties.facet)),errors.collect(cdk().propertyValidator("function",cdk().validateString)(properties.function)),errors.wrap('supplied properties not correct for "FunctionProperty"')}function convertCfnModelCardFunctionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardFunctionPropertyValidator(properties).assertSuccess(),{Condition:cdk().stringToCloudFormation(properties.condition),Facet:cdk().stringToCloudFormation(properties.facet),Function:cdk().stringToCloudFormation(properties.function)}):properties}function CfnModelCardFunctionPropertyFromCloudFormation(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("condition","Condition",properties.Condition!=null?cfn_parse().FromCloudFormation.getString(properties.Condition):void 0),ret.addPropertyResult("facet","Facet",properties.Facet!=null?cfn_parse().FromCloudFormation.getString(properties.Facet):void 0),ret.addPropertyResult("function","Function",properties.Function!=null?cfn_parse().FromCloudFormation.getString(properties.Function):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardObjectiveFunctionPropertyValidator(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("function",CfnModelCardFunctionPropertyValidator)(properties.function)),errors.collect(cdk().propertyValidator("notes",cdk().validateString)(properties.notes)),errors.wrap('supplied properties not correct for "ObjectiveFunctionProperty"')}function convertCfnModelCardObjectiveFunctionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardObjectiveFunctionPropertyValidator(properties).assertSuccess(),{Function:convertCfnModelCardFunctionPropertyToCloudFormation(properties.function),Notes:cdk().stringToCloudFormation(properties.notes)}):properties}function CfnModelCardObjectiveFunctionPropertyFromCloudFormation(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("function","Function",properties.Function!=null?CfnModelCardFunctionPropertyFromCloudFormation(properties.Function):void 0),ret.addPropertyResult("notes","Notes",properties.Notes!=null?cfn_parse().FromCloudFormation.getString(properties.Notes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardTrainingMetricPropertyValidator(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().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("notes",cdk().validateString)(properties.notes)),errors.collect(cdk().propertyValidator("value",cdk().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "TrainingMetricProperty"')}function convertCfnModelCardTrainingMetricPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardTrainingMetricPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Notes:cdk().stringToCloudFormation(properties.notes),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnModelCardTrainingMetricPropertyFromCloudFormation(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("notes","Notes",properties.Notes!=null?cfn_parse().FromCloudFormation.getString(properties.Notes):void 0),ret.addPropertyResult("value","Value",properties.Value!=null?cfn_parse().FromCloudFormation.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardTrainingHyperParameterPropertyValidator(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().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),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 "TrainingHyperParameterProperty"')}function convertCfnModelCardTrainingHyperParameterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardTrainingHyperParameterPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnModelCardTrainingHyperParameterPropertyFromCloudFormation(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 CfnModelCardTrainingEnvironmentPropertyValidator(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("containerImage",cdk().listValidator(cdk().validateString))(properties.containerImage)),errors.wrap('supplied properties not correct for "TrainingEnvironmentProperty"')}function convertCfnModelCardTrainingEnvironmentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardTrainingEnvironmentPropertyValidator(properties).assertSuccess(),{ContainerImage:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerImage)}):properties}function CfnModelCardTrainingEnvironmentPropertyFromCloudFormation(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("containerImage","ContainerImage",properties.ContainerImage!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerImage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardTrainingJobDetailsPropertyValidator(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("hyperParameters",cdk().listValidator(CfnModelCardTrainingHyperParameterPropertyValidator))(properties.hyperParameters)),errors.collect(cdk().propertyValidator("trainingArn",cdk().validateString)(properties.trainingArn)),errors.collect(cdk().propertyValidator("trainingDatasets",cdk().listValidator(cdk().validateString))(properties.trainingDatasets)),errors.collect(cdk().propertyValidator("trainingEnvironment",CfnModelCardTrainingEnvironmentPropertyValidator)(properties.trainingEnvironment)),errors.collect(cdk().propertyValidator("trainingMetrics",cdk().listValidator(CfnModelCardTrainingMetricPropertyValidator))(properties.trainingMetrics)),errors.collect(cdk().propertyValidator("userProvidedHyperParameters",cdk().listValidator(CfnModelCardTrainingHyperParameterPropertyValidator))(properties.userProvidedHyperParameters)),errors.collect(cdk().propertyValidator("userProvidedTrainingMetrics",cdk().listValidator(CfnModelCardTrainingMetricPropertyValidator))(properties.userProvidedTrainingMetrics)),errors.wrap('supplied properties not correct for "TrainingJobDetailsProperty"')}function convertCfnModelCardTrainingJobDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardTrainingJobDetailsPropertyValidator(properties).assertSuccess(),{HyperParameters:cdk().listMapper(convertCfnModelCardTrainingHyperParameterPropertyToCloudFormation)(properties.hyperParameters),TrainingArn:cdk().stringToCloudFormation(properties.trainingArn),TrainingDatasets:cdk().listMapper(cdk().stringToCloudFormation)(properties.trainingDatasets),TrainingEnvironment:convertCfnModelCardTrainingEnvironmentPropertyToCloudFormation(properties.trainingEnvironment),TrainingMetrics:cdk().listMapper(convertCfnModelCardTrainingMetricPropertyToCloudFormation)(properties.trainingMetrics),UserProvidedHyperParameters:cdk().listMapper(convertCfnModelCardTrainingHyperParameterPropertyToCloudFormation)(properties.userProvidedHyperParameters),UserProvidedTrainingMetrics:cdk().listMapper(convertCfnModelCardTrainingMetricPropertyToCloudFormation)(properties.userProvidedTrainingMetrics)}):properties}function CfnModelCardTrainingJobDetailsPropertyFromCloudFormation(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("hyperParameters","HyperParameters",properties.HyperParameters!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardTrainingHyperParameterPropertyFromCloudFormation)(properties.HyperParameters):void 0),ret.addPropertyResult("trainingArn","TrainingArn",properties.TrainingArn!=null?cfn_parse().FromCloudFormation.getString(properties.TrainingArn):void 0),ret.addPropertyResult("trainingDatasets","TrainingDatasets",properties.TrainingDatasets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.TrainingDatasets):void 0),ret.addPropertyResult("trainingEnvironment","TrainingEnvironment",properties.TrainingEnvironment!=null?CfnModelCardTrainingEnvironmentPropertyFromCloudFormation(properties.TrainingEnvironment):void 0),ret.addPropertyResult("trainingMetrics","TrainingMetrics",properties.TrainingMetrics!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardTrainingMetricPropertyFromCloudFormation)(properties.TrainingMetrics):void 0),ret.addPropertyResult("userProvidedHyperParameters","UserProvidedHyperParameters",properties.UserProvidedHyperParameters!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardTrainingHyperParameterPropertyFromCloudFormation)(properties.UserProvidedHyperParameters):void 0),ret.addPropertyResult("userProvidedTrainingMetrics","UserProvidedTrainingMetrics",properties.UserProvidedTrainingMetrics!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardTrainingMetricPropertyFromCloudFormation)(properties.UserProvidedTrainingMetrics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardTrainingDetailsPropertyValidator(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("objectiveFunction",CfnModelCardObjectiveFunctionPropertyValidator)(properties.objectiveFunction)),errors.collect(cdk().propertyValidator("trainingJobDetails",CfnModelCardTrainingJobDetailsPropertyValidator)(properties.trainingJobDetails)),errors.collect(cdk().propertyValidator("trainingObservations",cdk().validateString)(properties.trainingObservations)),errors.wrap('supplied properties not correct for "TrainingDetailsProperty"')}function convertCfnModelCardTrainingDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardTrainingDetailsPropertyValidator(properties).assertSuccess(),{ObjectiveFunction:convertCfnModelCardObjectiveFunctionPropertyToCloudFormation(properties.objectiveFunction),TrainingJobDetails:convertCfnModelCardTrainingJobDetailsPropertyToCloudFormation(properties.trainingJobDetails),TrainingObservations:cdk().stringToCloudFormation(properties.trainingObservations)}):properties}function CfnModelCardTrainingDetailsPropertyFromCloudFormation(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("objectiveFunction","ObjectiveFunction",properties.ObjectiveFunction!=null?CfnModelCardObjectiveFunctionPropertyFromCloudFormation(properties.ObjectiveFunction):void 0),ret.addPropertyResult("trainingJobDetails","TrainingJobDetails",properties.TrainingJobDetails!=null?CfnModelCardTrainingJobDetailsPropertyFromCloudFormation(properties.TrainingJobDetails):void 0),ret.addPropertyResult("trainingObservations","TrainingObservations",properties.TrainingObservations!=null?cfn_parse().FromCloudFormation.getString(properties.TrainingObservations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardMetricDataItemsPropertyValidator(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().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("notes",cdk().validateString)(properties.notes)),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().validateObject)(properties.value)),errors.collect(cdk().propertyValidator("xAxisName",cdk().listValidator(cdk().validateString))(properties.xAxisName)),errors.collect(cdk().propertyValidator("yAxisName",cdk().listValidator(cdk().validateString))(properties.yAxisName)),errors.wrap('supplied properties not correct for "MetricDataItemsProperty"')}function convertCfnModelCardMetricDataItemsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardMetricDataItemsPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Notes:cdk().stringToCloudFormation(properties.notes),Type:cdk().stringToCloudFormation(properties.type),Value:cdk().objectToCloudFormation(properties.value),XAxisName:cdk().listMapper(cdk().stringToCloudFormation)(properties.xAxisName),YAxisName:cdk().listMapper(cdk().stringToCloudFormation)(properties.yAxisName)}):properties}function CfnModelCardMetricDataItemsPropertyFromCloudFormation(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("notes","Notes",properties.Notes!=null?cfn_parse().FromCloudFormation.getString(properties.Notes):void 0),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.getAny(properties.Value):void 0),ret.addPropertyResult("xAxisName","XAxisName",properties.XAxisName!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.XAxisName):void 0),ret.addPropertyResult("yAxisName","YAxisName",properties.YAxisName!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.YAxisName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardMetricGroupPropertyValidator(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("metricData",cdk().requiredValidator)(properties.metricData)),errors.collect(cdk().propertyValidator("metricData",cdk().listValidator(CfnModelCardMetricDataItemsPropertyValidator))(properties.metricData)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "MetricGroupProperty"')}function convertCfnModelCardMetricGroupPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardMetricGroupPropertyValidator(properties).assertSuccess(),{MetricData:cdk().listMapper(convertCfnModelCardMetricDataItemsPropertyToCloudFormation)(properties.metricData),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnModelCardMetricGroupPropertyFromCloudFormation(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("metricData","MetricData",properties.MetricData!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardMetricDataItemsPropertyFromCloudFormation)(properties.MetricData):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardEvaluationDetailPropertyValidator(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("datasets",cdk().listValidator(cdk().validateString))(properties.datasets)),errors.collect(cdk().propertyValidator("evaluationJobArn",cdk().validateString)(properties.evaluationJobArn)),errors.collect(cdk().propertyValidator("evaluationObservation",cdk().validateString)(properties.evaluationObservation)),errors.collect(cdk().propertyValidator("metadata",cdk().hashValidator(cdk().validateString))(properties.metadata)),errors.collect(cdk().propertyValidator("metricGroups",cdk().listValidator(CfnModelCardMetricGroupPropertyValidator))(properties.metricGroups)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "EvaluationDetailProperty"')}function convertCfnModelCardEvaluationDetailPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardEvaluationDetailPropertyValidator(properties).assertSuccess(),{Datasets:cdk().listMapper(cdk().stringToCloudFormation)(properties.datasets),EvaluationJobArn:cdk().stringToCloudFormation(properties.evaluationJobArn),EvaluationObservation:cdk().stringToCloudFormation(properties.evaluationObservation),Metadata:cdk().hashMapper(cdk().stringToCloudFormation)(properties.metadata),MetricGroups:cdk().listMapper(convertCfnModelCardMetricGroupPropertyToCloudFormation)(properties.metricGroups),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnModelCardEvaluationDetailPropertyFromCloudFormation(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("datasets","Datasets",properties.Datasets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Datasets):void 0),ret.addPropertyResult("evaluationJobArn","EvaluationJobArn",properties.EvaluationJobArn!=null?cfn_parse().FromCloudFormation.getString(properties.EvaluationJobArn):void 0),ret.addPropertyResult("evaluationObservation","EvaluationObservation",properties.EvaluationObservation!=null?cfn_parse().FromCloudFormation.getString(properties.EvaluationObservation):void 0),ret.addPropertyResult("metadata","Metadata",properties.Metadata!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Metadata):void 0),ret.addPropertyResult("metricGroups","MetricGroups",properties.MetricGroups!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardMetricGroupPropertyFromCloudFormation)(properties.MetricGroups):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardModelPackageCreatorPropertyValidator(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("userProfileName",cdk().validateString)(properties.userProfileName)),errors.wrap('supplied properties not correct for "ModelPackageCreatorProperty"')}function convertCfnModelCardModelPackageCreatorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardModelPackageCreatorPropertyValidator(properties).assertSuccess(),{UserProfileName:cdk().stringToCloudFormation(properties.userProfileName)}):properties}function CfnModelCardModelPackageCreatorPropertyFromCloudFormation(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("userProfileName","UserProfileName",properties.UserProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.UserProfileName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardSourceAlgorithmPropertyValidator(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("algorithmName",cdk().requiredValidator)(properties.algorithmName)),errors.collect(cdk().propertyValidator("algorithmName",cdk().validateString)(properties.algorithmName)),errors.collect(cdk().propertyValidator("modelDataUrl",cdk().validateString)(properties.modelDataUrl)),errors.wrap('supplied properties not correct for "SourceAlgorithmProperty"')}function convertCfnModelCardSourceAlgorithmPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardSourceAlgorithmPropertyValidator(properties).assertSuccess(),{AlgorithmName:cdk().stringToCloudFormation(properties.algorithmName),ModelDataUrl:cdk().stringToCloudFormation(properties.modelDataUrl)}):properties}function CfnModelCardSourceAlgorithmPropertyFromCloudFormation(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("algorithmName","AlgorithmName",properties.AlgorithmName!=null?cfn_parse().FromCloudFormation.getString(properties.AlgorithmName):void 0),ret.addPropertyResult("modelDataUrl","ModelDataUrl",properties.ModelDataUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ModelDataUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardContainerPropertyValidator(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("image",cdk().requiredValidator)(properties.image)),errors.collect(cdk().propertyValidator("image",cdk().validateString)(properties.image)),errors.collect(cdk().propertyValidator("modelDataUrl",cdk().validateString)(properties.modelDataUrl)),errors.collect(cdk().propertyValidator("nearestModelName",cdk().validateString)(properties.nearestModelName)),errors.wrap('supplied properties not correct for "ContainerProperty"')}function convertCfnModelCardContainerPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardContainerPropertyValidator(properties).assertSuccess(),{Image:cdk().stringToCloudFormation(properties.image),ModelDataUrl:cdk().stringToCloudFormation(properties.modelDataUrl),NearestModelName:cdk().stringToCloudFormation(properties.nearestModelName)}):properties}function CfnModelCardContainerPropertyFromCloudFormation(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("image","Image",properties.Image!=null?cfn_parse().FromCloudFormation.getString(properties.Image):void 0),ret.addPropertyResult("modelDataUrl","ModelDataUrl",properties.ModelDataUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ModelDataUrl):void 0),ret.addPropertyResult("nearestModelName","NearestModelName",properties.NearestModelName!=null?cfn_parse().FromCloudFormation.getString(properties.NearestModelName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardInferenceSpecificationPropertyValidator(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("containers",cdk().requiredValidator)(properties.containers)),errors.collect(cdk().propertyValidator("containers",cdk().listValidator(CfnModelCardContainerPropertyValidator))(properties.containers)),errors.wrap('supplied properties not correct for "InferenceSpecificationProperty"')}function convertCfnModelCardInferenceSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardInferenceSpecificationPropertyValidator(properties).assertSuccess(),{Containers:cdk().listMapper(convertCfnModelCardContainerPropertyToCloudFormation)(properties.containers)}):properties}function CfnModelCardInferenceSpecificationPropertyFromCloudFormation(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("containers","Containers",properties.Containers!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardContainerPropertyFromCloudFormation)(properties.Containers):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardModelPackageDetailsPropertyValidator(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("approvalDescription",cdk().validateString)(properties.approvalDescription)),errors.collect(cdk().propertyValidator("createdBy",CfnModelCardModelPackageCreatorPropertyValidator)(properties.createdBy)),errors.collect(cdk().propertyValidator("domain",cdk().validateString)(properties.domain)),errors.collect(cdk().propertyValidator("inferenceSpecification",CfnModelCardInferenceSpecificationPropertyValidator)(properties.inferenceSpecification)),errors.collect(cdk().propertyValidator("modelApprovalStatus",cdk().validateString)(properties.modelApprovalStatus)),errors.collect(cdk().propertyValidator("modelPackageArn",cdk().validateString)(properties.modelPackageArn)),errors.collect(cdk().propertyValidator("modelPackageDescription",cdk().validateString)(properties.modelPackageDescription)),errors.collect(cdk().propertyValidator("modelPackageGroupName",cdk().validateString)(properties.modelPackageGroupName)),errors.collect(cdk().propertyValidator("modelPackageName",cdk().validateString)(properties.modelPackageName)),errors.collect(cdk().propertyValidator("modelPackageStatus",cdk().validateString)(properties.modelPackageStatus)),errors.collect(cdk().propertyValidator("modelPackageVersion",cdk().validateNumber)(properties.modelPackageVersion)),errors.collect(cdk().propertyValidator("sourceAlgorithms",cdk().listValidator(CfnModelCardSourceAlgorithmPropertyValidator))(properties.sourceAlgorithms)),errors.collect(cdk().propertyValidator("task",cdk().validateString)(properties.task)),errors.wrap('supplied properties not correct for "ModelPackageDetailsProperty"')}function convertCfnModelCardModelPackageDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardModelPackageDetailsPropertyValidator(properties).assertSuccess(),{ApprovalDescription:cdk().stringToCloudFormation(properties.approvalDescription),CreatedBy:convertCfnModelCardModelPackageCreatorPropertyToCloudFormation(properties.createdBy),Domain:cdk().stringToCloudFormation(properties.domain),InferenceSpecification:convertCfnModelCardInferenceSpecificationPropertyToCloudFormation(properties.inferenceSpecification),ModelApprovalStatus:cdk().stringToCloudFormation(properties.modelApprovalStatus),ModelPackageArn:cdk().stringToCloudFormation(properties.modelPackageArn),ModelPackageDescription:cdk().stringToCloudFormation(properties.modelPackageDescription),ModelPackageGroupName:cdk().stringToCloudFormation(properties.modelPackageGroupName),ModelPackageName:cdk().stringToCloudFormation(properties.modelPackageName),ModelPackageStatus:cdk().stringToCloudFormation(properties.modelPackageStatus),ModelPackageVersion:cdk().numberToCloudFormation(properties.modelPackageVersion),SourceAlgorithms:cdk().listMapper(convertCfnModelCardSourceAlgorithmPropertyToCloudFormation)(properties.sourceAlgorithms),Task:cdk().stringToCloudFormation(properties.task)}):properties}function CfnModelCardModelPackageDetailsPropertyFromCloudFormation(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("approvalDescription","ApprovalDescription",properties.ApprovalDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ApprovalDescription):void 0),ret.addPropertyResult("createdBy","CreatedBy",properties.CreatedBy!=null?CfnModelCardModelPackageCreatorPropertyFromCloudFormation(properties.CreatedBy):void 0),ret.addPropertyResult("domain","Domain",properties.Domain!=null?cfn_parse().FromCloudFormation.getString(properties.Domain):void 0),ret.addPropertyResult("inferenceSpecification","InferenceSpecification",properties.InferenceSpecification!=null?CfnModelCardInferenceSpecificationPropertyFromCloudFormation(properties.InferenceSpecification):void 0),ret.addPropertyResult("modelApprovalStatus","ModelApprovalStatus",properties.ModelApprovalStatus!=null?cfn_parse().FromCloudFormation.getString(properties.ModelApprovalStatus):void 0),ret.addPropertyResult("modelPackageArn","ModelPackageArn",properties.ModelPackageArn!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageArn):void 0),ret.addPropertyResult("modelPackageDescription","ModelPackageDescription",properties.ModelPackageDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageDescription):void 0),ret.addPropertyResult("modelPackageGroupName","ModelPackageGroupName",properties.ModelPackageGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageGroupName):void 0),ret.addPropertyResult("modelPackageName","ModelPackageName",properties.ModelPackageName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageName):void 0),ret.addPropertyResult("modelPackageStatus","ModelPackageStatus",properties.ModelPackageStatus!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageStatus):void 0),ret.addPropertyResult("modelPackageVersion","ModelPackageVersion",properties.ModelPackageVersion!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModelPackageVersion):void 0),ret.addPropertyResult("sourceAlgorithms","SourceAlgorithms",properties.SourceAlgorithms!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardSourceAlgorithmPropertyFromCloudFormation)(properties.SourceAlgorithms):void 0),ret.addPropertyResult("task","Task",properties.Task!=null?cfn_parse().FromCloudFormation.getString(properties.Task):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardBusinessDetailsPropertyValidator(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("businessProblem",cdk().validateString)(properties.businessProblem)),errors.collect(cdk().propertyValidator("businessStakeholders",cdk().validateString)(properties.businessStakeholders)),errors.collect(cdk().propertyValidator("lineOfBusiness",cdk().validateString)(properties.lineOfBusiness)),errors.wrap('supplied properties not correct for "BusinessDetailsProperty"')}function convertCfnModelCardBusinessDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardBusinessDetailsPropertyValidator(properties).assertSuccess(),{BusinessProblem:cdk().stringToCloudFormation(properties.businessProblem),BusinessStakeholders:cdk().stringToCloudFormation(properties.businessStakeholders),LineOfBusiness:cdk().stringToCloudFormation(properties.lineOfBusiness)}):properties}function CfnModelCardBusinessDetailsPropertyFromCloudFormation(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("businessProblem","BusinessProblem",properties.BusinessProblem!=null?cfn_parse().FromCloudFormation.getString(properties.BusinessProblem):void 0),ret.addPropertyResult("businessStakeholders","BusinessStakeholders",properties.BusinessStakeholders!=null?cfn_parse().FromCloudFormation.getString(properties.BusinessStakeholders):void 0),ret.addPropertyResult("lineOfBusiness","LineOfBusiness",properties.LineOfBusiness!=null?cfn_parse().FromCloudFormation.getString(properties.LineOfBusiness):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardContentPropertyValidator(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("additionalInformation",CfnModelCardAdditionalInformationPropertyValidator)(properties.additionalInformation)),errors.collect(cdk().propertyValidator("businessDetails",CfnModelCardBusinessDetailsPropertyValidator)(properties.businessDetails)),errors.collect(cdk().propertyValidator("evaluationDetails",cdk().listValidator(CfnModelCardEvaluationDetailPropertyValidator))(properties.evaluationDetails)),errors.collect(cdk().propertyValidator("intendedUses",CfnModelCardIntendedUsesPropertyValidator)(properties.intendedUses)),errors.collect(cdk().propertyValidator("modelOverview",CfnModelCardModelOverviewPropertyValidator)(properties.modelOverview)),errors.collect(cdk().propertyValidator("modelPackageDetails",CfnModelCardModelPackageDetailsPropertyValidator)(properties.modelPackageDetails)),errors.collect(cdk().propertyValidator("trainingDetails",CfnModelCardTrainingDetailsPropertyValidator)(properties.trainingDetails)),errors.wrap('supplied properties not correct for "ContentProperty"')}function convertCfnModelCardContentPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardContentPropertyValidator(properties).assertSuccess(),{AdditionalInformation:convertCfnModelCardAdditionalInformationPropertyToCloudFormation(properties.additionalInformation),BusinessDetails:convertCfnModelCardBusinessDetailsPropertyToCloudFormation(properties.businessDetails),EvaluationDetails:cdk().listMapper(convertCfnModelCardEvaluationDetailPropertyToCloudFormation)(properties.evaluationDetails),IntendedUses:convertCfnModelCardIntendedUsesPropertyToCloudFormation(properties.intendedUses),ModelOverview:convertCfnModelCardModelOverviewPropertyToCloudFormation(properties.modelOverview),ModelPackageDetails:convertCfnModelCardModelPackageDetailsPropertyToCloudFormation(properties.modelPackageDetails),TrainingDetails:convertCfnModelCardTrainingDetailsPropertyToCloudFormation(properties.trainingDetails)}):properties}function CfnModelCardContentPropertyFromCloudFormation(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("additionalInformation","AdditionalInformation",properties.AdditionalInformation!=null?CfnModelCardAdditionalInformationPropertyFromCloudFormation(properties.AdditionalInformation):void 0),ret.addPropertyResult("businessDetails","BusinessDetails",properties.BusinessDetails!=null?CfnModelCardBusinessDetailsPropertyFromCloudFormation(properties.BusinessDetails):void 0),ret.addPropertyResult("evaluationDetails","EvaluationDetails",properties.EvaluationDetails!=null?cfn_parse().FromCloudFormation.getArray(CfnModelCardEvaluationDetailPropertyFromCloudFormation)(properties.EvaluationDetails):void 0),ret.addPropertyResult("intendedUses","IntendedUses",properties.IntendedUses!=null?CfnModelCardIntendedUsesPropertyFromCloudFormation(properties.IntendedUses):void 0),ret.addPropertyResult("modelOverview","ModelOverview",properties.ModelOverview!=null?CfnModelCardModelOverviewPropertyFromCloudFormation(properties.ModelOverview):void 0),ret.addPropertyResult("modelPackageDetails","ModelPackageDetails",properties.ModelPackageDetails!=null?CfnModelCardModelPackageDetailsPropertyFromCloudFormation(properties.ModelPackageDetails):void 0),ret.addPropertyResult("trainingDetails","TrainingDetails",properties.TrainingDetails!=null?CfnModelCardTrainingDetailsPropertyFromCloudFormation(properties.TrainingDetails):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelCardPropsValidator(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().requiredValidator)(properties.content)),errors.collect(cdk().propertyValidator("content",CfnModelCardContentPropertyValidator)(properties.content)),errors.collect(cdk().propertyValidator("createdBy",CfnModelCardUserContextPropertyValidator)(properties.createdBy)),errors.collect(cdk().propertyValidator("lastModifiedBy",CfnModelCardUserContextPropertyValidator)(properties.lastModifiedBy)),errors.collect(cdk().propertyValidator("modelCardName",cdk().requiredValidator)(properties.modelCardName)),errors.collect(cdk().propertyValidator("modelCardName",cdk().validateString)(properties.modelCardName)),errors.collect(cdk().propertyValidator("modelCardStatus",cdk().requiredValidator)(properties.modelCardStatus)),errors.collect(cdk().propertyValidator("modelCardStatus",cdk().validateString)(properties.modelCardStatus)),errors.collect(cdk().propertyValidator("securityConfig",CfnModelCardSecurityConfigPropertyValidator)(properties.securityConfig)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnModelCardProps"')}function convertCfnModelCardPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelCardPropsValidator(properties).assertSuccess(),{Content:convertCfnModelCardContentPropertyToCloudFormation(properties.content),CreatedBy:convertCfnModelCardUserContextPropertyToCloudFormation(properties.createdBy),LastModifiedBy:convertCfnModelCardUserContextPropertyToCloudFormation(properties.lastModifiedBy),ModelCardName:cdk().stringToCloudFormation(properties.modelCardName),ModelCardStatus:cdk().stringToCloudFormation(properties.modelCardStatus),SecurityConfig:convertCfnModelCardSecurityConfigPropertyToCloudFormation(properties.securityConfig),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnModelCardPropsFromCloudFormation(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?CfnModelCardContentPropertyFromCloudFormation(properties.Content):void 0),ret.addPropertyResult("createdBy","CreatedBy",properties.CreatedBy!=null?CfnModelCardUserContextPropertyFromCloudFormation(properties.CreatedBy):void 0),ret.addPropertyResult("lastModifiedBy","LastModifiedBy",properties.LastModifiedBy!=null?CfnModelCardUserContextPropertyFromCloudFormation(properties.LastModifiedBy):void 0),ret.addPropertyResult("modelCardName","ModelCardName",properties.ModelCardName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelCardName):void 0),ret.addPropertyResult("modelCardStatus","ModelCardStatus",properties.ModelCardStatus!=null?cfn_parse().FromCloudFormation.getString(properties.ModelCardStatus):void 0),ret.addPropertyResult("securityConfig","SecurityConfig",properties.SecurityConfig!=null?CfnModelCardSecurityConfigPropertyFromCloudFormation(properties.SecurityConfig):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 CfnModelExplainabilityJobDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnModelExplainabilityJobDefinition",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ModelExplainabilityJobDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelExplainabilityJobDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModelExplainabilityJobDefinition(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 isCfnModelExplainabilityJobDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModelExplainabilityJobDefinition.CFN_RESOURCE_TYPE_NAME}_endpointName;_jobDefinitionName;_jobResources;_modelExplainabilityAppSpecification;_modelExplainabilityBaselineConfig;_modelExplainabilityJobInput;_modelExplainabilityJobOutputConfig;_networkConfig;_roleArn;_stoppingCondition;tags;_tagsRaw;cfnPropertyNames={endpointName:"EndpointName",jobDefinitionName:"JobDefinitionName",jobResources:"JobResources",modelExplainabilityAppSpecification:"ModelExplainabilityAppSpecification",modelExplainabilityBaselineConfig:"ModelExplainabilityBaselineConfig",modelExplainabilityJobInput:"ModelExplainabilityJobInput",modelExplainabilityJobOutputConfig:"ModelExplainabilityJobOutputConfig",networkConfig:"NetworkConfig",roleArn:"RoleArn",stoppingCondition:"StoppingCondition",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnModelExplainabilityJobDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnModelExplainabilityJobDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModelExplainabilityJobDefinition),error}cdk().requireProperty(props,"jobResources",this),cdk().requireProperty(props,"modelExplainabilityAppSpecification",this),cdk().requireProperty(props,"modelExplainabilityJobInput",this),cdk().requireProperty(props,"modelExplainabilityJobOutputConfig",this),cdk().requireProperty(props,"roleArn",this),this._endpointName=props.endpointName,this._jobDefinitionName=props.jobDefinitionName,this._jobResources=props.jobResources,this._modelExplainabilityAppSpecification=props.modelExplainabilityAppSpecification,this._modelExplainabilityBaselineConfig=props.modelExplainabilityBaselineConfig,this._modelExplainabilityJobInput=props.modelExplainabilityJobInput,this._modelExplainabilityJobOutputConfig=props.modelExplainabilityJobOutputConfig,this._networkConfig=props.networkConfig,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this._stoppingCondition=props.stoppingCondition,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::ModelExplainabilityJobDefinition",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get modelExplainabilityJobDefinitionRef(){return{jobDefinitionArn:this.ref}}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get jobDefinitionName(){return this._jobDefinitionName}set jobDefinitionName(value){cdk().traceProperty(this.node,"JobDefinitionName"),this._jobDefinitionName=value}get jobResources(){return this._jobResources}set jobResources(value){cdk().traceProperty(this.node,"JobResources"),this._jobResources=value}get modelExplainabilityAppSpecification(){return this._modelExplainabilityAppSpecification}set modelExplainabilityAppSpecification(value){cdk().traceProperty(this.node,"ModelExplainabilityAppSpecification"),this._modelExplainabilityAppSpecification=value}get modelExplainabilityBaselineConfig(){return this._modelExplainabilityBaselineConfig}set modelExplainabilityBaselineConfig(value){cdk().traceProperty(this.node,"ModelExplainabilityBaselineConfig"),this._modelExplainabilityBaselineConfig=value}get modelExplainabilityJobInput(){return this._modelExplainabilityJobInput}set modelExplainabilityJobInput(value){cdk().traceProperty(this.node,"ModelExplainabilityJobInput"),this._modelExplainabilityJobInput=value}get modelExplainabilityJobOutputConfig(){return this._modelExplainabilityJobOutputConfig}set modelExplainabilityJobOutputConfig(value){cdk().traceProperty(this.node,"ModelExplainabilityJobOutputConfig"),this._modelExplainabilityJobOutputConfig=value}get networkConfig(){return this._networkConfig}set networkConfig(value){cdk().traceProperty(this.node,"NetworkConfig"),this._networkConfig=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get stoppingCondition(){return this._stoppingCondition}set stoppingCondition(value){cdk().traceProperty(this.node,"StoppingCondition"),this._stoppingCondition=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrJobDefinitionArn(){return cdk().Token.asString(this.getAtt("JobDefinitionArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{endpointName:this._endpointName,jobDefinitionName:this._jobDefinitionName,jobResources:this._jobResources,modelExplainabilityAppSpecification:this._modelExplainabilityAppSpecification,modelExplainabilityBaselineConfig:this._modelExplainabilityBaselineConfig,modelExplainabilityJobInput:this._modelExplainabilityJobInput,modelExplainabilityJobOutputConfig:this._modelExplainabilityJobOutputConfig,networkConfig:this._networkConfig,roleArn:this._roleArn,stoppingCondition:this._stoppingCondition,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",CfnModelExplainabilityJobDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelExplainabilityJobDefinitionPropsToCloudFormation(props)}}exports.CfnModelExplainabilityJobDefinition=CfnModelExplainabilityJobDefinition;function CfnModelExplainabilityJobDefinitionS3OutputPropertyValidator(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("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3UploadMode",cdk().validateString)(properties.s3UploadMode)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3OutputProperty"')}function convertCfnModelExplainabilityJobDefinitionS3OutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionS3OutputPropertyValidator(properties).assertSuccess(),{LocalPath:cdk().stringToCloudFormation(properties.localPath),S3UploadMode:cdk().stringToCloudFormation(properties.s3UploadMode),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelExplainabilityJobDefinitionS3OutputPropertyFromCloudFormation(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("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3UploadMode","S3UploadMode",properties.S3UploadMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3UploadMode):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionMonitoringOutputPropertyValidator(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("s3Output",cdk().requiredValidator)(properties.s3Output)),errors.collect(cdk().propertyValidator("s3Output",CfnModelExplainabilityJobDefinitionS3OutputPropertyValidator)(properties.s3Output)),errors.wrap('supplied properties not correct for "MonitoringOutputProperty"')}function convertCfnModelExplainabilityJobDefinitionMonitoringOutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionMonitoringOutputPropertyValidator(properties).assertSuccess(),{S3Output:convertCfnModelExplainabilityJobDefinitionS3OutputPropertyToCloudFormation(properties.s3Output)}):properties}function CfnModelExplainabilityJobDefinitionMonitoringOutputPropertyFromCloudFormation(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("s3Output","S3Output",properties.S3Output!=null?CfnModelExplainabilityJobDefinitionS3OutputPropertyFromCloudFormation(properties.S3Output):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionMonitoringOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("monitoringOutputs",cdk().requiredValidator)(properties.monitoringOutputs)),errors.collect(cdk().propertyValidator("monitoringOutputs",cdk().listValidator(CfnModelExplainabilityJobDefinitionMonitoringOutputPropertyValidator))(properties.monitoringOutputs)),errors.wrap('supplied properties not correct for "MonitoringOutputConfigProperty"')}function convertCfnModelExplainabilityJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionMonitoringOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),MonitoringOutputs:cdk().listMapper(convertCfnModelExplainabilityJobDefinitionMonitoringOutputPropertyToCloudFormation)(properties.monitoringOutputs)}):properties}function CfnModelExplainabilityJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(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.addPropertyResult("monitoringOutputs","MonitoringOutputs",properties.MonitoringOutputs!=null?cfn_parse().FromCloudFormation.getArray(CfnModelExplainabilityJobDefinitionMonitoringOutputPropertyFromCloudFormation)(properties.MonitoringOutputs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionStoppingConditionPropertyValidator(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("maxRuntimeInSeconds",cdk().requiredValidator)(properties.maxRuntimeInSeconds)),errors.collect(cdk().propertyValidator("maxRuntimeInSeconds",cdk().validateNumber)(properties.maxRuntimeInSeconds)),errors.wrap('supplied properties not correct for "StoppingConditionProperty"')}function convertCfnModelExplainabilityJobDefinitionStoppingConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionStoppingConditionPropertyValidator(properties).assertSuccess(),{MaxRuntimeInSeconds:cdk().numberToCloudFormation(properties.maxRuntimeInSeconds)}):properties}function CfnModelExplainabilityJobDefinitionStoppingConditionPropertyFromCloudFormation(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("maxRuntimeInSeconds","MaxRuntimeInSeconds",properties.MaxRuntimeInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRuntimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionConstraintsResourcePropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "ConstraintsResourceProperty"')}function convertCfnModelExplainabilityJobDefinitionConstraintsResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionConstraintsResourcePropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelExplainabilityJobDefinitionConstraintsResourcePropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionModelExplainabilityBaselineConfigPropertyValidator(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("baseliningJobName",cdk().validateString)(properties.baseliningJobName)),errors.collect(cdk().propertyValidator("constraintsResource",CfnModelExplainabilityJobDefinitionConstraintsResourcePropertyValidator)(properties.constraintsResource)),errors.wrap('supplied properties not correct for "ModelExplainabilityBaselineConfigProperty"')}function convertCfnModelExplainabilityJobDefinitionModelExplainabilityBaselineConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionModelExplainabilityBaselineConfigPropertyValidator(properties).assertSuccess(),{BaseliningJobName:cdk().stringToCloudFormation(properties.baseliningJobName),ConstraintsResource:convertCfnModelExplainabilityJobDefinitionConstraintsResourcePropertyToCloudFormation(properties.constraintsResource)}):properties}function CfnModelExplainabilityJobDefinitionModelExplainabilityBaselineConfigPropertyFromCloudFormation(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("baseliningJobName","BaseliningJobName",properties.BaseliningJobName!=null?cfn_parse().FromCloudFormation.getString(properties.BaseliningJobName):void 0),ret.addPropertyResult("constraintsResource","ConstraintsResource",properties.ConstraintsResource!=null?CfnModelExplainabilityJobDefinitionConstraintsResourcePropertyFromCloudFormation(properties.ConstraintsResource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionClusterConfigPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().requiredValidator)(properties.volumeSizeInGb)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ClusterConfigProperty"')}function convertCfnModelExplainabilityJobDefinitionClusterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionClusterConfigPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnModelExplainabilityJobDefinitionClusterConfigPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionMonitoringResourcesPropertyValidator(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("clusterConfig",cdk().requiredValidator)(properties.clusterConfig)),errors.collect(cdk().propertyValidator("clusterConfig",CfnModelExplainabilityJobDefinitionClusterConfigPropertyValidator)(properties.clusterConfig)),errors.wrap('supplied properties not correct for "MonitoringResourcesProperty"')}function convertCfnModelExplainabilityJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionMonitoringResourcesPropertyValidator(properties).assertSuccess(),{ClusterConfig:convertCfnModelExplainabilityJobDefinitionClusterConfigPropertyToCloudFormation(properties.clusterConfig)}):properties}function CfnModelExplainabilityJobDefinitionMonitoringResourcesPropertyFromCloudFormation(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("clusterConfig","ClusterConfig",properties.ClusterConfig!=null?CfnModelExplainabilityJobDefinitionClusterConfigPropertyFromCloudFormation(properties.ClusterConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnModelExplainabilityJobDefinitionVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnModelExplainabilityJobDefinitionVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionNetworkConfigPropertyValidator(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("enableInterContainerTrafficEncryption",cdk().validateBoolean)(properties.enableInterContainerTrafficEncryption)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("vpcConfig",CfnModelExplainabilityJobDefinitionVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "NetworkConfigProperty"')}function convertCfnModelExplainabilityJobDefinitionNetworkConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionNetworkConfigPropertyValidator(properties).assertSuccess(),{EnableInterContainerTrafficEncryption:cdk().booleanToCloudFormation(properties.enableInterContainerTrafficEncryption),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),VpcConfig:convertCfnModelExplainabilityJobDefinitionVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnModelExplainabilityJobDefinitionNetworkConfigPropertyFromCloudFormation(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("enableInterContainerTrafficEncryption","EnableInterContainerTrafficEncryption",properties.EnableInterContainerTrafficEncryption!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableInterContainerTrafficEncryption):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnModelExplainabilityJobDefinitionVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionCsvPropertyValidator(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("header",cdk().validateBoolean)(properties.header)),errors.wrap('supplied properties not correct for "CsvProperty"')}function convertCfnModelExplainabilityJobDefinitionCsvPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionCsvPropertyValidator(properties).assertSuccess(),{Header:cdk().booleanToCloudFormation(properties.header)}):properties}function CfnModelExplainabilityJobDefinitionCsvPropertyFromCloudFormation(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("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Header):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionJsonPropertyValidator(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("line",cdk().validateBoolean)(properties.line)),errors.wrap('supplied properties not correct for "JsonProperty"')}function convertCfnModelExplainabilityJobDefinitionJsonPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionJsonPropertyValidator(properties).assertSuccess(),{Line:cdk().booleanToCloudFormation(properties.line)}):properties}function CfnModelExplainabilityJobDefinitionJsonPropertyFromCloudFormation(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("line","Line",properties.Line!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Line):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionDatasetFormatPropertyValidator(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("csv",CfnModelExplainabilityJobDefinitionCsvPropertyValidator)(properties.csv)),errors.collect(cdk().propertyValidator("json",CfnModelExplainabilityJobDefinitionJsonPropertyValidator)(properties.json)),errors.collect(cdk().propertyValidator("parquet",cdk().validateBoolean)(properties.parquet)),errors.wrap('supplied properties not correct for "DatasetFormatProperty"')}function convertCfnModelExplainabilityJobDefinitionDatasetFormatPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionDatasetFormatPropertyValidator(properties).assertSuccess(),{Csv:convertCfnModelExplainabilityJobDefinitionCsvPropertyToCloudFormation(properties.csv),Json:convertCfnModelExplainabilityJobDefinitionJsonPropertyToCloudFormation(properties.json),Parquet:cdk().booleanToCloudFormation(properties.parquet)}):properties}function CfnModelExplainabilityJobDefinitionDatasetFormatPropertyFromCloudFormation(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("csv","Csv",properties.Csv!=null?CfnModelExplainabilityJobDefinitionCsvPropertyFromCloudFormation(properties.Csv):void 0),ret.addPropertyResult("json","Json",properties.Json!=null?CfnModelExplainabilityJobDefinitionJsonPropertyFromCloudFormation(properties.Json):void 0),ret.addPropertyResult("parquet","Parquet",properties.Parquet!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Parquet):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionBatchTransformInputPropertyValidator(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("dataCapturedDestinationS3Uri",cdk().requiredValidator)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("dataCapturedDestinationS3Uri",cdk().validateString)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("datasetFormat",cdk().requiredValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("datasetFormat",CfnModelExplainabilityJobDefinitionDatasetFormatPropertyValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("featuresAttribute",cdk().validateString)(properties.featuresAttribute)),errors.collect(cdk().propertyValidator("inferenceAttribute",cdk().validateString)(properties.inferenceAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("probabilityAttribute",cdk().validateString)(properties.probabilityAttribute)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.wrap('supplied properties not correct for "BatchTransformInputProperty"')}function convertCfnModelExplainabilityJobDefinitionBatchTransformInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionBatchTransformInputPropertyValidator(properties).assertSuccess(),{DataCapturedDestinationS3Uri:cdk().stringToCloudFormation(properties.dataCapturedDestinationS3Uri),DatasetFormat:convertCfnModelExplainabilityJobDefinitionDatasetFormatPropertyToCloudFormation(properties.datasetFormat),FeaturesAttribute:cdk().stringToCloudFormation(properties.featuresAttribute),InferenceAttribute:cdk().stringToCloudFormation(properties.inferenceAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),ProbabilityAttribute:cdk().stringToCloudFormation(properties.probabilityAttribute),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode)}):properties}function CfnModelExplainabilityJobDefinitionBatchTransformInputPropertyFromCloudFormation(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("dataCapturedDestinationS3Uri","DataCapturedDestinationS3Uri",properties.DataCapturedDestinationS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.DataCapturedDestinationS3Uri):void 0),ret.addPropertyResult("datasetFormat","DatasetFormat",properties.DatasetFormat!=null?CfnModelExplainabilityJobDefinitionDatasetFormatPropertyFromCloudFormation(properties.DatasetFormat):void 0),ret.addPropertyResult("featuresAttribute","FeaturesAttribute",properties.FeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.FeaturesAttribute):void 0),ret.addPropertyResult("inferenceAttribute","InferenceAttribute",properties.InferenceAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("probabilityAttribute","ProbabilityAttribute",properties.ProbabilityAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ProbabilityAttribute):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionEndpointInputPropertyValidator(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("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("featuresAttribute",cdk().validateString)(properties.featuresAttribute)),errors.collect(cdk().propertyValidator("inferenceAttribute",cdk().validateString)(properties.inferenceAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("probabilityAttribute",cdk().validateString)(properties.probabilityAttribute)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.wrap('supplied properties not correct for "EndpointInputProperty"')}function convertCfnModelExplainabilityJobDefinitionEndpointInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionEndpointInputPropertyValidator(properties).assertSuccess(),{EndpointName:cdk().stringToCloudFormation(properties.endpointName),FeaturesAttribute:cdk().stringToCloudFormation(properties.featuresAttribute),InferenceAttribute:cdk().stringToCloudFormation(properties.inferenceAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),ProbabilityAttribute:cdk().stringToCloudFormation(properties.probabilityAttribute),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode)}):properties}function CfnModelExplainabilityJobDefinitionEndpointInputPropertyFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("featuresAttribute","FeaturesAttribute",properties.FeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.FeaturesAttribute):void 0),ret.addPropertyResult("inferenceAttribute","InferenceAttribute",properties.InferenceAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("probabilityAttribute","ProbabilityAttribute",properties.ProbabilityAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ProbabilityAttribute):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionModelExplainabilityJobInputPropertyValidator(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("batchTransformInput",CfnModelExplainabilityJobDefinitionBatchTransformInputPropertyValidator)(properties.batchTransformInput)),errors.collect(cdk().propertyValidator("endpointInput",CfnModelExplainabilityJobDefinitionEndpointInputPropertyValidator)(properties.endpointInput)),errors.wrap('supplied properties not correct for "ModelExplainabilityJobInputProperty"')}function convertCfnModelExplainabilityJobDefinitionModelExplainabilityJobInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionModelExplainabilityJobInputPropertyValidator(properties).assertSuccess(),{BatchTransformInput:convertCfnModelExplainabilityJobDefinitionBatchTransformInputPropertyToCloudFormation(properties.batchTransformInput),EndpointInput:convertCfnModelExplainabilityJobDefinitionEndpointInputPropertyToCloudFormation(properties.endpointInput)}):properties}function CfnModelExplainabilityJobDefinitionModelExplainabilityJobInputPropertyFromCloudFormation(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("batchTransformInput","BatchTransformInput",properties.BatchTransformInput!=null?CfnModelExplainabilityJobDefinitionBatchTransformInputPropertyFromCloudFormation(properties.BatchTransformInput):void 0),ret.addPropertyResult("endpointInput","EndpointInput",properties.EndpointInput!=null?CfnModelExplainabilityJobDefinitionEndpointInputPropertyFromCloudFormation(properties.EndpointInput):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionModelExplainabilityAppSpecificationPropertyValidator(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("configUri",cdk().requiredValidator)(properties.configUri)),errors.collect(cdk().propertyValidator("configUri",cdk().validateString)(properties.configUri)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("imageUri",cdk().requiredValidator)(properties.imageUri)),errors.collect(cdk().propertyValidator("imageUri",cdk().validateString)(properties.imageUri)),errors.wrap('supplied properties not correct for "ModelExplainabilityAppSpecificationProperty"')}function convertCfnModelExplainabilityJobDefinitionModelExplainabilityAppSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionModelExplainabilityAppSpecificationPropertyValidator(properties).assertSuccess(),{ConfigUri:cdk().stringToCloudFormation(properties.configUri),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),ImageUri:cdk().stringToCloudFormation(properties.imageUri)}):properties}function CfnModelExplainabilityJobDefinitionModelExplainabilityAppSpecificationPropertyFromCloudFormation(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("configUri","ConfigUri",properties.ConfigUri!=null?cfn_parse().FromCloudFormation.getString(properties.ConfigUri):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("imageUri","ImageUri",properties.ImageUri!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelExplainabilityJobDefinitionPropsValidator(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("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("jobDefinitionName",cdk().validateString)(properties.jobDefinitionName)),errors.collect(cdk().propertyValidator("jobResources",cdk().requiredValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("jobResources",CfnModelExplainabilityJobDefinitionMonitoringResourcesPropertyValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("modelExplainabilityAppSpecification",cdk().requiredValidator)(properties.modelExplainabilityAppSpecification)),errors.collect(cdk().propertyValidator("modelExplainabilityAppSpecification",CfnModelExplainabilityJobDefinitionModelExplainabilityAppSpecificationPropertyValidator)(properties.modelExplainabilityAppSpecification)),errors.collect(cdk().propertyValidator("modelExplainabilityBaselineConfig",CfnModelExplainabilityJobDefinitionModelExplainabilityBaselineConfigPropertyValidator)(properties.modelExplainabilityBaselineConfig)),errors.collect(cdk().propertyValidator("modelExplainabilityJobInput",cdk().requiredValidator)(properties.modelExplainabilityJobInput)),errors.collect(cdk().propertyValidator("modelExplainabilityJobInput",CfnModelExplainabilityJobDefinitionModelExplainabilityJobInputPropertyValidator)(properties.modelExplainabilityJobInput)),errors.collect(cdk().propertyValidator("modelExplainabilityJobOutputConfig",cdk().requiredValidator)(properties.modelExplainabilityJobOutputConfig)),errors.collect(cdk().propertyValidator("modelExplainabilityJobOutputConfig",CfnModelExplainabilityJobDefinitionMonitoringOutputConfigPropertyValidator)(properties.modelExplainabilityJobOutputConfig)),errors.collect(cdk().propertyValidator("networkConfig",CfnModelExplainabilityJobDefinitionNetworkConfigPropertyValidator)(properties.networkConfig)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("stoppingCondition",CfnModelExplainabilityJobDefinitionStoppingConditionPropertyValidator)(properties.stoppingCondition)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnModelExplainabilityJobDefinitionProps"')}function convertCfnModelExplainabilityJobDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelExplainabilityJobDefinitionPropsValidator(properties).assertSuccess(),{EndpointName:cdk().stringToCloudFormation(properties.endpointName),JobDefinitionName:cdk().stringToCloudFormation(properties.jobDefinitionName),JobResources:convertCfnModelExplainabilityJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties.jobResources),ModelExplainabilityAppSpecification:convertCfnModelExplainabilityJobDefinitionModelExplainabilityAppSpecificationPropertyToCloudFormation(properties.modelExplainabilityAppSpecification),ModelExplainabilityBaselineConfig:convertCfnModelExplainabilityJobDefinitionModelExplainabilityBaselineConfigPropertyToCloudFormation(properties.modelExplainabilityBaselineConfig),ModelExplainabilityJobInput:convertCfnModelExplainabilityJobDefinitionModelExplainabilityJobInputPropertyToCloudFormation(properties.modelExplainabilityJobInput),ModelExplainabilityJobOutputConfig:convertCfnModelExplainabilityJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties.modelExplainabilityJobOutputConfig),NetworkConfig:convertCfnModelExplainabilityJobDefinitionNetworkConfigPropertyToCloudFormation(properties.networkConfig),RoleArn:cdk().stringToCloudFormation(properties.roleArn),StoppingCondition:convertCfnModelExplainabilityJobDefinitionStoppingConditionPropertyToCloudFormation(properties.stoppingCondition),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnModelExplainabilityJobDefinitionPropsFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("jobDefinitionName","JobDefinitionName",properties.JobDefinitionName!=null?cfn_parse().FromCloudFormation.getString(properties.JobDefinitionName):void 0),ret.addPropertyResult("jobResources","JobResources",properties.JobResources!=null?CfnModelExplainabilityJobDefinitionMonitoringResourcesPropertyFromCloudFormation(properties.JobResources):void 0),ret.addPropertyResult("modelExplainabilityAppSpecification","ModelExplainabilityAppSpecification",properties.ModelExplainabilityAppSpecification!=null?CfnModelExplainabilityJobDefinitionModelExplainabilityAppSpecificationPropertyFromCloudFormation(properties.ModelExplainabilityAppSpecification):void 0),ret.addPropertyResult("modelExplainabilityBaselineConfig","ModelExplainabilityBaselineConfig",properties.ModelExplainabilityBaselineConfig!=null?CfnModelExplainabilityJobDefinitionModelExplainabilityBaselineConfigPropertyFromCloudFormation(properties.ModelExplainabilityBaselineConfig):void 0),ret.addPropertyResult("modelExplainabilityJobInput","ModelExplainabilityJobInput",properties.ModelExplainabilityJobInput!=null?CfnModelExplainabilityJobDefinitionModelExplainabilityJobInputPropertyFromCloudFormation(properties.ModelExplainabilityJobInput):void 0),ret.addPropertyResult("modelExplainabilityJobOutputConfig","ModelExplainabilityJobOutputConfig",properties.ModelExplainabilityJobOutputConfig!=null?CfnModelExplainabilityJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(properties.ModelExplainabilityJobOutputConfig):void 0),ret.addPropertyResult("networkConfig","NetworkConfig",properties.NetworkConfig!=null?CfnModelExplainabilityJobDefinitionNetworkConfigPropertyFromCloudFormation(properties.NetworkConfig):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("stoppingCondition","StoppingCondition",properties.StoppingCondition!=null?CfnModelExplainabilityJobDefinitionStoppingConditionPropertyFromCloudFormation(properties.StoppingCondition):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 CfnModelPackage extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnModelPackage",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ModelPackage";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelPackagePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModelPackage(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 isCfnModelPackage(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModelPackage.CFN_RESOURCE_TYPE_NAME}static arnForModelPackage(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IModelPackageRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForModelPackage),error}return resource.modelPackageRef.modelPackageArn}_additionalInferenceSpecifications;_additionalInferenceSpecificationsToAdd;_approvalDescription;_certifyForMarketplace;_clientToken;_customerMetadataProperties;_domain;_driftCheckBaselines;_inferenceSpecification;_lastModifiedTime;_metadataProperties;_modelApprovalStatus;_modelCard;_modelMetrics;_modelPackageDescription;_modelPackageGroupName;_modelPackageName;_modelPackageStatusDetails;_modelPackageVersion;_samplePayloadUrl;_securityConfig;_skipModelValidation;_sourceAlgorithmSpecification;_sourceUri;tags;_tagsRaw;_task;_validationSpecification;cfnPropertyNames={additionalInferenceSpecifications:"AdditionalInferenceSpecifications",additionalInferenceSpecificationsToAdd:"AdditionalInferenceSpecificationsToAdd",approvalDescription:"ApprovalDescription",certifyForMarketplace:"CertifyForMarketplace",clientToken:"ClientToken",customerMetadataProperties:"CustomerMetadataProperties",domain:"Domain",driftCheckBaselines:"DriftCheckBaselines",inferenceSpecification:"InferenceSpecification",lastModifiedTime:"LastModifiedTime",metadataProperties:"MetadataProperties",modelApprovalStatus:"ModelApprovalStatus",modelCard:"ModelCard",modelMetrics:"ModelMetrics",modelPackageDescription:"ModelPackageDescription",modelPackageGroupName:"ModelPackageGroupName",modelPackageName:"ModelPackageName",modelPackageStatusDetails:"ModelPackageStatusDetails",modelPackageVersion:"ModelPackageVersion",samplePayloadUrl:"SamplePayloadUrl",securityConfig:"SecurityConfig",skipModelValidation:"SkipModelValidation",sourceAlgorithmSpecification:"SourceAlgorithmSpecification",sourceUri:"SourceUri",tags:"Tags",task:"Task",validationSpecification:"ValidationSpecification"};constructor(scope,id,props={}){super(scope,id,{type:CfnModelPackage.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnModelPackageProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModelPackage),error}this._additionalInferenceSpecifications=props.additionalInferenceSpecifications,this._additionalInferenceSpecificationsToAdd=props.additionalInferenceSpecificationsToAdd,this._approvalDescription=props.approvalDescription,this._certifyForMarketplace=props.certifyForMarketplace,this._clientToken=props.clientToken,this._customerMetadataProperties=props.customerMetadataProperties,this._domain=props.domain,this._driftCheckBaselines=props.driftCheckBaselines,this._inferenceSpecification=props.inferenceSpecification,this._lastModifiedTime=props.lastModifiedTime,this._metadataProperties=props.metadataProperties,this._modelApprovalStatus=props.modelApprovalStatus,this._modelCard=props.modelCard,this._modelMetrics=props.modelMetrics,this._modelPackageDescription=props.modelPackageDescription,this._modelPackageGroupName=props.modelPackageGroupName,this._modelPackageName=props.modelPackageName,this._modelPackageStatusDetails=props.modelPackageStatusDetails,this._modelPackageVersion=props.modelPackageVersion,this._samplePayloadUrl=props.samplePayloadUrl,this._securityConfig=props.securityConfig,this._skipModelValidation=props.skipModelValidation,this._sourceAlgorithmSpecification=props.sourceAlgorithmSpecification,this._sourceUri=props.sourceUri,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::ModelPackage",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._task=props.task,this._validationSpecification=props.validationSpecification}get modelPackageRef(){return{modelPackageArn:this.ref}}get additionalInferenceSpecifications(){return this._additionalInferenceSpecifications}set additionalInferenceSpecifications(value){cdk().traceProperty(this.node,"AdditionalInferenceSpecifications"),this._additionalInferenceSpecifications=value}get additionalInferenceSpecificationsToAdd(){return this._additionalInferenceSpecificationsToAdd}set additionalInferenceSpecificationsToAdd(value){cdk().traceProperty(this.node,"AdditionalInferenceSpecificationsToAdd"),this._additionalInferenceSpecificationsToAdd=value}get approvalDescription(){return this._approvalDescription}set approvalDescription(value){cdk().traceProperty(this.node,"ApprovalDescription"),this._approvalDescription=value}get certifyForMarketplace(){return this._certifyForMarketplace}set certifyForMarketplace(value){cdk().traceProperty(this.node,"CertifyForMarketplace"),this._certifyForMarketplace=value}get clientToken(){return this._clientToken}set clientToken(value){cdk().traceProperty(this.node,"ClientToken"),this._clientToken=value}get customerMetadataProperties(){return this._customerMetadataProperties}set customerMetadataProperties(value){cdk().traceProperty(this.node,"CustomerMetadataProperties"),this._customerMetadataProperties=value}get domain(){return this._domain}set domain(value){cdk().traceProperty(this.node,"Domain"),this._domain=value}get driftCheckBaselines(){return this._driftCheckBaselines}set driftCheckBaselines(value){cdk().traceProperty(this.node,"DriftCheckBaselines"),this._driftCheckBaselines=value}get inferenceSpecification(){return this._inferenceSpecification}set inferenceSpecification(value){cdk().traceProperty(this.node,"InferenceSpecification"),this._inferenceSpecification=value}get lastModifiedTime(){return this._lastModifiedTime}set lastModifiedTime(value){cdk().traceProperty(this.node,"LastModifiedTime"),this._lastModifiedTime=value}get metadataProperties(){return this._metadataProperties}set metadataProperties(value){cdk().traceProperty(this.node,"MetadataProperties"),this._metadataProperties=value}get modelApprovalStatus(){return this._modelApprovalStatus}set modelApprovalStatus(value){cdk().traceProperty(this.node,"ModelApprovalStatus"),this._modelApprovalStatus=value}get modelCard(){return this._modelCard}set modelCard(value){cdk().traceProperty(this.node,"ModelCard"),this._modelCard=value}get modelMetrics(){return this._modelMetrics}set modelMetrics(value){cdk().traceProperty(this.node,"ModelMetrics"),this._modelMetrics=value}get modelPackageDescription(){return this._modelPackageDescription}set modelPackageDescription(value){cdk().traceProperty(this.node,"ModelPackageDescription"),this._modelPackageDescription=value}get modelPackageGroupName(){return this._modelPackageGroupName}set modelPackageGroupName(value){cdk().traceProperty(this.node,"ModelPackageGroupName"),this._modelPackageGroupName=value}get modelPackageName(){return this._modelPackageName}set modelPackageName(value){cdk().traceProperty(this.node,"ModelPackageName"),this._modelPackageName=value}get modelPackageStatusDetails(){return this._modelPackageStatusDetails}set modelPackageStatusDetails(value){cdk().traceProperty(this.node,"ModelPackageStatusDetails"),this._modelPackageStatusDetails=value}get modelPackageVersion(){return this._modelPackageVersion}set modelPackageVersion(value){cdk().traceProperty(this.node,"ModelPackageVersion"),this._modelPackageVersion=value}get samplePayloadUrl(){return this._samplePayloadUrl}set samplePayloadUrl(value){cdk().traceProperty(this.node,"SamplePayloadUrl"),this._samplePayloadUrl=value}get securityConfig(){return this._securityConfig}set securityConfig(value){cdk().traceProperty(this.node,"SecurityConfig"),this._securityConfig=value}get skipModelValidation(){return this._skipModelValidation}set skipModelValidation(value){cdk().traceProperty(this.node,"SkipModelValidation"),this._skipModelValidation=value}get sourceAlgorithmSpecification(){return this._sourceAlgorithmSpecification}set sourceAlgorithmSpecification(value){cdk().traceProperty(this.node,"SourceAlgorithmSpecification"),this._sourceAlgorithmSpecification=value}get sourceUri(){return this._sourceUri}set sourceUri(value){cdk().traceProperty(this.node,"SourceUri"),this._sourceUri=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get task(){return this._task}set task(value){cdk().traceProperty(this.node,"Task"),this._task=value}get validationSpecification(){return this._validationSpecification}set validationSpecification(value){cdk().traceProperty(this.node,"ValidationSpecification"),this._validationSpecification=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedTime(){return cdk().Token.asString(this.getAtt("LastModifiedTime",cdk().ResolutionTypeHint.STRING))}get attrModelPackageArn(){return cdk().Token.asString(this.getAtt("ModelPackageArn",cdk().ResolutionTypeHint.STRING))}get attrModelPackageStatus(){return cdk().Token.asString(this.getAtt("ModelPackageStatus",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{additionalInferenceSpecifications:this._additionalInferenceSpecifications,additionalInferenceSpecificationsToAdd:this._additionalInferenceSpecificationsToAdd,approvalDescription:this._approvalDescription,certifyForMarketplace:this._certifyForMarketplace,clientToken:this._clientToken,customerMetadataProperties:this._customerMetadataProperties,domain:this._domain,driftCheckBaselines:this._driftCheckBaselines,inferenceSpecification:this._inferenceSpecification,lastModifiedTime:this._lastModifiedTime,metadataProperties:this._metadataProperties,modelApprovalStatus:this._modelApprovalStatus,modelCard:this._modelCard,modelMetrics:this._modelMetrics,modelPackageDescription:this._modelPackageDescription,modelPackageGroupName:this._modelPackageGroupName,modelPackageName:this._modelPackageName,modelPackageStatusDetails:this._modelPackageStatusDetails,modelPackageVersion:this._modelPackageVersion,samplePayloadUrl:this._samplePayloadUrl,securityConfig:this._securityConfig,skipModelValidation:this._skipModelValidation,sourceAlgorithmSpecification:this._sourceAlgorithmSpecification,sourceUri:this._sourceUri,tags:this.tags.renderTags(),task:this._task,validationSpecification:this._validationSpecification}}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",CfnModelPackage.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelPackagePropsToCloudFormation(props)}}exports.CfnModelPackage=CfnModelPackage;function CfnModelPackageMetricsSourcePropertyValidator(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("contentDigest",cdk().validateString)(properties.contentDigest)),errors.collect(cdk().propertyValidator("contentType",cdk().requiredValidator)(properties.contentType)),errors.collect(cdk().propertyValidator("contentType",cdk().validateString)(properties.contentType)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "MetricsSourceProperty"')}function convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageMetricsSourcePropertyValidator(properties).assertSuccess(),{ContentDigest:cdk().stringToCloudFormation(properties.contentDigest),ContentType:cdk().stringToCloudFormation(properties.contentType),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelPackageMetricsSourcePropertyFromCloudFormation(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("contentDigest","ContentDigest",properties.ContentDigest!=null?cfn_parse().FromCloudFormation.getString(properties.ContentDigest):void 0),ret.addPropertyResult("contentType","ContentType",properties.ContentType!=null?cfn_parse().FromCloudFormation.getString(properties.ContentType):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageDriftCheckModelDataQualityPropertyValidator(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("constraints",CfnModelPackageMetricsSourcePropertyValidator)(properties.constraints)),errors.collect(cdk().propertyValidator("statistics",CfnModelPackageMetricsSourcePropertyValidator)(properties.statistics)),errors.wrap('supplied properties not correct for "DriftCheckModelDataQualityProperty"')}function convertCfnModelPackageDriftCheckModelDataQualityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageDriftCheckModelDataQualityPropertyValidator(properties).assertSuccess(),{Constraints:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.constraints),Statistics:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.statistics)}):properties}function CfnModelPackageDriftCheckModelDataQualityPropertyFromCloudFormation(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("constraints","Constraints",properties.Constraints!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Constraints):void 0),ret.addPropertyResult("statistics","Statistics",properties.Statistics!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Statistics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageFileSourcePropertyValidator(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("contentDigest",cdk().validateString)(properties.contentDigest)),errors.collect(cdk().propertyValidator("contentType",cdk().validateString)(properties.contentType)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "FileSourceProperty"')}function convertCfnModelPackageFileSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageFileSourcePropertyValidator(properties).assertSuccess(),{ContentDigest:cdk().stringToCloudFormation(properties.contentDigest),ContentType:cdk().stringToCloudFormation(properties.contentType),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelPackageFileSourcePropertyFromCloudFormation(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("contentDigest","ContentDigest",properties.ContentDigest!=null?cfn_parse().FromCloudFormation.getString(properties.ContentDigest):void 0),ret.addPropertyResult("contentType","ContentType",properties.ContentType!=null?cfn_parse().FromCloudFormation.getString(properties.ContentType):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageDriftCheckBiasPropertyValidator(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("configFile",CfnModelPackageFileSourcePropertyValidator)(properties.configFile)),errors.collect(cdk().propertyValidator("postTrainingConstraints",CfnModelPackageMetricsSourcePropertyValidator)(properties.postTrainingConstraints)),errors.collect(cdk().propertyValidator("preTrainingConstraints",CfnModelPackageMetricsSourcePropertyValidator)(properties.preTrainingConstraints)),errors.wrap('supplied properties not correct for "DriftCheckBiasProperty"')}function convertCfnModelPackageDriftCheckBiasPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageDriftCheckBiasPropertyValidator(properties).assertSuccess(),{ConfigFile:convertCfnModelPackageFileSourcePropertyToCloudFormation(properties.configFile),PostTrainingConstraints:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.postTrainingConstraints),PreTrainingConstraints:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.preTrainingConstraints)}):properties}function CfnModelPackageDriftCheckBiasPropertyFromCloudFormation(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("configFile","ConfigFile",properties.ConfigFile!=null?CfnModelPackageFileSourcePropertyFromCloudFormation(properties.ConfigFile):void 0),ret.addPropertyResult("postTrainingConstraints","PostTrainingConstraints",properties.PostTrainingConstraints!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.PostTrainingConstraints):void 0),ret.addPropertyResult("preTrainingConstraints","PreTrainingConstraints",properties.PreTrainingConstraints!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.PreTrainingConstraints):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageDriftCheckModelQualityPropertyValidator(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("constraints",CfnModelPackageMetricsSourcePropertyValidator)(properties.constraints)),errors.collect(cdk().propertyValidator("statistics",CfnModelPackageMetricsSourcePropertyValidator)(properties.statistics)),errors.wrap('supplied properties not correct for "DriftCheckModelQualityProperty"')}function convertCfnModelPackageDriftCheckModelQualityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageDriftCheckModelQualityPropertyValidator(properties).assertSuccess(),{Constraints:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.constraints),Statistics:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.statistics)}):properties}function CfnModelPackageDriftCheckModelQualityPropertyFromCloudFormation(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("constraints","Constraints",properties.Constraints!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Constraints):void 0),ret.addPropertyResult("statistics","Statistics",properties.Statistics!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Statistics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageDriftCheckExplainabilityPropertyValidator(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("configFile",CfnModelPackageFileSourcePropertyValidator)(properties.configFile)),errors.collect(cdk().propertyValidator("constraints",CfnModelPackageMetricsSourcePropertyValidator)(properties.constraints)),errors.wrap('supplied properties not correct for "DriftCheckExplainabilityProperty"')}function convertCfnModelPackageDriftCheckExplainabilityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageDriftCheckExplainabilityPropertyValidator(properties).assertSuccess(),{ConfigFile:convertCfnModelPackageFileSourcePropertyToCloudFormation(properties.configFile),Constraints:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.constraints)}):properties}function CfnModelPackageDriftCheckExplainabilityPropertyFromCloudFormation(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("configFile","ConfigFile",properties.ConfigFile!=null?CfnModelPackageFileSourcePropertyFromCloudFormation(properties.ConfigFile):void 0),ret.addPropertyResult("constraints","Constraints",properties.Constraints!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Constraints):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageDriftCheckBaselinesPropertyValidator(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("bias",CfnModelPackageDriftCheckBiasPropertyValidator)(properties.bias)),errors.collect(cdk().propertyValidator("explainability",CfnModelPackageDriftCheckExplainabilityPropertyValidator)(properties.explainability)),errors.collect(cdk().propertyValidator("modelDataQuality",CfnModelPackageDriftCheckModelDataQualityPropertyValidator)(properties.modelDataQuality)),errors.collect(cdk().propertyValidator("modelQuality",CfnModelPackageDriftCheckModelQualityPropertyValidator)(properties.modelQuality)),errors.wrap('supplied properties not correct for "DriftCheckBaselinesProperty"')}function convertCfnModelPackageDriftCheckBaselinesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageDriftCheckBaselinesPropertyValidator(properties).assertSuccess(),{Bias:convertCfnModelPackageDriftCheckBiasPropertyToCloudFormation(properties.bias),Explainability:convertCfnModelPackageDriftCheckExplainabilityPropertyToCloudFormation(properties.explainability),ModelDataQuality:convertCfnModelPackageDriftCheckModelDataQualityPropertyToCloudFormation(properties.modelDataQuality),ModelQuality:convertCfnModelPackageDriftCheckModelQualityPropertyToCloudFormation(properties.modelQuality)}):properties}function CfnModelPackageDriftCheckBaselinesPropertyFromCloudFormation(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("bias","Bias",properties.Bias!=null?CfnModelPackageDriftCheckBiasPropertyFromCloudFormation(properties.Bias):void 0),ret.addPropertyResult("explainability","Explainability",properties.Explainability!=null?CfnModelPackageDriftCheckExplainabilityPropertyFromCloudFormation(properties.Explainability):void 0),ret.addPropertyResult("modelDataQuality","ModelDataQuality",properties.ModelDataQuality!=null?CfnModelPackageDriftCheckModelDataQualityPropertyFromCloudFormation(properties.ModelDataQuality):void 0),ret.addPropertyResult("modelQuality","ModelQuality",properties.ModelQuality!=null?CfnModelPackageDriftCheckModelQualityPropertyFromCloudFormation(properties.ModelQuality):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelDataQualityPropertyValidator(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("constraints",CfnModelPackageMetricsSourcePropertyValidator)(properties.constraints)),errors.collect(cdk().propertyValidator("statistics",CfnModelPackageMetricsSourcePropertyValidator)(properties.statistics)),errors.wrap('supplied properties not correct for "ModelDataQualityProperty"')}function convertCfnModelPackageModelDataQualityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelDataQualityPropertyValidator(properties).assertSuccess(),{Constraints:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.constraints),Statistics:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.statistics)}):properties}function CfnModelPackageModelDataQualityPropertyFromCloudFormation(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("constraints","Constraints",properties.Constraints!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Constraints):void 0),ret.addPropertyResult("statistics","Statistics",properties.Statistics!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Statistics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageBiasPropertyValidator(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("postTrainingReport",CfnModelPackageMetricsSourcePropertyValidator)(properties.postTrainingReport)),errors.collect(cdk().propertyValidator("preTrainingReport",CfnModelPackageMetricsSourcePropertyValidator)(properties.preTrainingReport)),errors.collect(cdk().propertyValidator("report",CfnModelPackageMetricsSourcePropertyValidator)(properties.report)),errors.wrap('supplied properties not correct for "BiasProperty"')}function convertCfnModelPackageBiasPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageBiasPropertyValidator(properties).assertSuccess(),{PostTrainingReport:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.postTrainingReport),PreTrainingReport:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.preTrainingReport),Report:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.report)}):properties}function CfnModelPackageBiasPropertyFromCloudFormation(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("postTrainingReport","PostTrainingReport",properties.PostTrainingReport!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.PostTrainingReport):void 0),ret.addPropertyResult("preTrainingReport","PreTrainingReport",properties.PreTrainingReport!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.PreTrainingReport):void 0),ret.addPropertyResult("report","Report",properties.Report!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Report):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelQualityPropertyValidator(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("constraints",CfnModelPackageMetricsSourcePropertyValidator)(properties.constraints)),errors.collect(cdk().propertyValidator("statistics",CfnModelPackageMetricsSourcePropertyValidator)(properties.statistics)),errors.wrap('supplied properties not correct for "ModelQualityProperty"')}function convertCfnModelPackageModelQualityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelQualityPropertyValidator(properties).assertSuccess(),{Constraints:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.constraints),Statistics:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.statistics)}):properties}function CfnModelPackageModelQualityPropertyFromCloudFormation(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("constraints","Constraints",properties.Constraints!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Constraints):void 0),ret.addPropertyResult("statistics","Statistics",properties.Statistics!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Statistics):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageExplainabilityPropertyValidator(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("report",CfnModelPackageMetricsSourcePropertyValidator)(properties.report)),errors.wrap('supplied properties not correct for "ExplainabilityProperty"')}function convertCfnModelPackageExplainabilityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageExplainabilityPropertyValidator(properties).assertSuccess(),{Report:convertCfnModelPackageMetricsSourcePropertyToCloudFormation(properties.report)}):properties}function CfnModelPackageExplainabilityPropertyFromCloudFormation(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("report","Report",properties.Report!=null?CfnModelPackageMetricsSourcePropertyFromCloudFormation(properties.Report):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelMetricsPropertyValidator(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("bias",CfnModelPackageBiasPropertyValidator)(properties.bias)),errors.collect(cdk().propertyValidator("explainability",CfnModelPackageExplainabilityPropertyValidator)(properties.explainability)),errors.collect(cdk().propertyValidator("modelDataQuality",CfnModelPackageModelDataQualityPropertyValidator)(properties.modelDataQuality)),errors.collect(cdk().propertyValidator("modelQuality",CfnModelPackageModelQualityPropertyValidator)(properties.modelQuality)),errors.wrap('supplied properties not correct for "ModelMetricsProperty"')}function convertCfnModelPackageModelMetricsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelMetricsPropertyValidator(properties).assertSuccess(),{Bias:convertCfnModelPackageBiasPropertyToCloudFormation(properties.bias),Explainability:convertCfnModelPackageExplainabilityPropertyToCloudFormation(properties.explainability),ModelDataQuality:convertCfnModelPackageModelDataQualityPropertyToCloudFormation(properties.modelDataQuality),ModelQuality:convertCfnModelPackageModelQualityPropertyToCloudFormation(properties.modelQuality)}):properties}function CfnModelPackageModelMetricsPropertyFromCloudFormation(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("bias","Bias",properties.Bias!=null?CfnModelPackageBiasPropertyFromCloudFormation(properties.Bias):void 0),ret.addPropertyResult("explainability","Explainability",properties.Explainability!=null?CfnModelPackageExplainabilityPropertyFromCloudFormation(properties.Explainability):void 0),ret.addPropertyResult("modelDataQuality","ModelDataQuality",properties.ModelDataQuality!=null?CfnModelPackageModelDataQualityPropertyFromCloudFormation(properties.ModelDataQuality):void 0),ret.addPropertyResult("modelQuality","ModelQuality",properties.ModelQuality!=null?CfnModelPackageModelQualityPropertyFromCloudFormation(properties.ModelQuality):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageMetadataPropertiesPropertyValidator(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("commitId",cdk().validateString)(properties.commitId)),errors.collect(cdk().propertyValidator("generatedBy",cdk().validateString)(properties.generatedBy)),errors.collect(cdk().propertyValidator("projectId",cdk().validateString)(properties.projectId)),errors.collect(cdk().propertyValidator("repository",cdk().validateString)(properties.repository)),errors.wrap('supplied properties not correct for "MetadataPropertiesProperty"')}function convertCfnModelPackageMetadataPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageMetadataPropertiesPropertyValidator(properties).assertSuccess(),{CommitId:cdk().stringToCloudFormation(properties.commitId),GeneratedBy:cdk().stringToCloudFormation(properties.generatedBy),ProjectId:cdk().stringToCloudFormation(properties.projectId),Repository:cdk().stringToCloudFormation(properties.repository)}):properties}function CfnModelPackageMetadataPropertiesPropertyFromCloudFormation(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("commitId","CommitId",properties.CommitId!=null?cfn_parse().FromCloudFormation.getString(properties.CommitId):void 0),ret.addPropertyResult("generatedBy","GeneratedBy",properties.GeneratedBy!=null?cfn_parse().FromCloudFormation.getString(properties.GeneratedBy):void 0),ret.addPropertyResult("projectId","ProjectId",properties.ProjectId!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectId):void 0),ret.addPropertyResult("repository","Repository",properties.Repository!=null?cfn_parse().FromCloudFormation.getString(properties.Repository):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageTransformResourcesPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.wrap('supplied properties not correct for "TransformResourcesProperty"')}function convertCfnModelPackageTransformResourcesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageTransformResourcesPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId)}):properties}function CfnModelPackageTransformResourcesPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageTransformOutputPropertyValidator(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("accept",cdk().validateString)(properties.accept)),errors.collect(cdk().propertyValidator("assembleWith",cdk().validateString)(properties.assembleWith)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("s3OutputPath",cdk().requiredValidator)(properties.s3OutputPath)),errors.collect(cdk().propertyValidator("s3OutputPath",cdk().validateString)(properties.s3OutputPath)),errors.wrap('supplied properties not correct for "TransformOutputProperty"')}function convertCfnModelPackageTransformOutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageTransformOutputPropertyValidator(properties).assertSuccess(),{Accept:cdk().stringToCloudFormation(properties.accept),AssembleWith:cdk().stringToCloudFormation(properties.assembleWith),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),S3OutputPath:cdk().stringToCloudFormation(properties.s3OutputPath)}):properties}function CfnModelPackageTransformOutputPropertyFromCloudFormation(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("accept","Accept",properties.Accept!=null?cfn_parse().FromCloudFormation.getString(properties.Accept):void 0),ret.addPropertyResult("assembleWith","AssembleWith",properties.AssembleWith!=null?cfn_parse().FromCloudFormation.getString(properties.AssembleWith):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("s3OutputPath","S3OutputPath",properties.S3OutputPath!=null?cfn_parse().FromCloudFormation.getString(properties.S3OutputPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageS3DataSourcePropertyValidator(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("s3DataType",cdk().requiredValidator)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3DataType",cdk().validateString)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3DataSourceProperty"')}function convertCfnModelPackageS3DataSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageS3DataSourcePropertyValidator(properties).assertSuccess(),{S3DataType:cdk().stringToCloudFormation(properties.s3DataType),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelPackageS3DataSourcePropertyFromCloudFormation(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("s3DataType","S3DataType",properties.S3DataType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataType):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageDataSourcePropertyValidator(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("s3DataSource",cdk().requiredValidator)(properties.s3DataSource)),errors.collect(cdk().propertyValidator("s3DataSource",CfnModelPackageS3DataSourcePropertyValidator)(properties.s3DataSource)),errors.wrap('supplied properties not correct for "DataSourceProperty"')}function convertCfnModelPackageDataSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageDataSourcePropertyValidator(properties).assertSuccess(),{S3DataSource:convertCfnModelPackageS3DataSourcePropertyToCloudFormation(properties.s3DataSource)}):properties}function CfnModelPackageDataSourcePropertyFromCloudFormation(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("s3DataSource","S3DataSource",properties.S3DataSource!=null?CfnModelPackageS3DataSourcePropertyFromCloudFormation(properties.S3DataSource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageTransformInputPropertyValidator(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("compressionType",cdk().validateString)(properties.compressionType)),errors.collect(cdk().propertyValidator("contentType",cdk().validateString)(properties.contentType)),errors.collect(cdk().propertyValidator("dataSource",cdk().requiredValidator)(properties.dataSource)),errors.collect(cdk().propertyValidator("dataSource",CfnModelPackageDataSourcePropertyValidator)(properties.dataSource)),errors.collect(cdk().propertyValidator("splitType",cdk().validateString)(properties.splitType)),errors.wrap('supplied properties not correct for "TransformInputProperty"')}function convertCfnModelPackageTransformInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageTransformInputPropertyValidator(properties).assertSuccess(),{CompressionType:cdk().stringToCloudFormation(properties.compressionType),ContentType:cdk().stringToCloudFormation(properties.contentType),DataSource:convertCfnModelPackageDataSourcePropertyToCloudFormation(properties.dataSource),SplitType:cdk().stringToCloudFormation(properties.splitType)}):properties}function CfnModelPackageTransformInputPropertyFromCloudFormation(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("compressionType","CompressionType",properties.CompressionType!=null?cfn_parse().FromCloudFormation.getString(properties.CompressionType):void 0),ret.addPropertyResult("contentType","ContentType",properties.ContentType!=null?cfn_parse().FromCloudFormation.getString(properties.ContentType):void 0),ret.addPropertyResult("dataSource","DataSource",properties.DataSource!=null?CfnModelPackageDataSourcePropertyFromCloudFormation(properties.DataSource):void 0),ret.addPropertyResult("splitType","SplitType",properties.SplitType!=null?cfn_parse().FromCloudFormation.getString(properties.SplitType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageTransformJobDefinitionPropertyValidator(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("batchStrategy",cdk().validateString)(properties.batchStrategy)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("maxConcurrentTransforms",cdk().validateNumber)(properties.maxConcurrentTransforms)),errors.collect(cdk().propertyValidator("maxPayloadInMb",cdk().validateNumber)(properties.maxPayloadInMb)),errors.collect(cdk().propertyValidator("transformInput",cdk().requiredValidator)(properties.transformInput)),errors.collect(cdk().propertyValidator("transformInput",CfnModelPackageTransformInputPropertyValidator)(properties.transformInput)),errors.collect(cdk().propertyValidator("transformOutput",cdk().requiredValidator)(properties.transformOutput)),errors.collect(cdk().propertyValidator("transformOutput",CfnModelPackageTransformOutputPropertyValidator)(properties.transformOutput)),errors.collect(cdk().propertyValidator("transformResources",cdk().requiredValidator)(properties.transformResources)),errors.collect(cdk().propertyValidator("transformResources",CfnModelPackageTransformResourcesPropertyValidator)(properties.transformResources)),errors.wrap('supplied properties not correct for "TransformJobDefinitionProperty"')}function convertCfnModelPackageTransformJobDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageTransformJobDefinitionPropertyValidator(properties).assertSuccess(),{BatchStrategy:cdk().stringToCloudFormation(properties.batchStrategy),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),MaxConcurrentTransforms:cdk().numberToCloudFormation(properties.maxConcurrentTransforms),MaxPayloadInMB:cdk().numberToCloudFormation(properties.maxPayloadInMb),TransformInput:convertCfnModelPackageTransformInputPropertyToCloudFormation(properties.transformInput),TransformOutput:convertCfnModelPackageTransformOutputPropertyToCloudFormation(properties.transformOutput),TransformResources:convertCfnModelPackageTransformResourcesPropertyToCloudFormation(properties.transformResources)}):properties}function CfnModelPackageTransformJobDefinitionPropertyFromCloudFormation(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("batchStrategy","BatchStrategy",properties.BatchStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.BatchStrategy):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("maxConcurrentTransforms","MaxConcurrentTransforms",properties.MaxConcurrentTransforms!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxConcurrentTransforms):void 0),ret.addPropertyResult("maxPayloadInMb","MaxPayloadInMB",properties.MaxPayloadInMB!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxPayloadInMB):void 0),ret.addPropertyResult("transformInput","TransformInput",properties.TransformInput!=null?CfnModelPackageTransformInputPropertyFromCloudFormation(properties.TransformInput):void 0),ret.addPropertyResult("transformOutput","TransformOutput",properties.TransformOutput!=null?CfnModelPackageTransformOutputPropertyFromCloudFormation(properties.TransformOutput):void 0),ret.addPropertyResult("transformResources","TransformResources",properties.TransformResources!=null?CfnModelPackageTransformResourcesPropertyFromCloudFormation(properties.TransformResources):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageValidationProfilePropertyValidator(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("profileName",cdk().requiredValidator)(properties.profileName)),errors.collect(cdk().propertyValidator("profileName",cdk().validateString)(properties.profileName)),errors.collect(cdk().propertyValidator("transformJobDefinition",cdk().requiredValidator)(properties.transformJobDefinition)),errors.collect(cdk().propertyValidator("transformJobDefinition",CfnModelPackageTransformJobDefinitionPropertyValidator)(properties.transformJobDefinition)),errors.wrap('supplied properties not correct for "ValidationProfileProperty"')}function convertCfnModelPackageValidationProfilePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageValidationProfilePropertyValidator(properties).assertSuccess(),{ProfileName:cdk().stringToCloudFormation(properties.profileName),TransformJobDefinition:convertCfnModelPackageTransformJobDefinitionPropertyToCloudFormation(properties.transformJobDefinition)}):properties}function CfnModelPackageValidationProfilePropertyFromCloudFormation(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("profileName","ProfileName",properties.ProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.ProfileName):void 0),ret.addPropertyResult("transformJobDefinition","TransformJobDefinition",properties.TransformJobDefinition!=null?CfnModelPackageTransformJobDefinitionPropertyFromCloudFormation(properties.TransformJobDefinition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageValidationSpecificationPropertyValidator(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("validationProfiles",cdk().requiredValidator)(properties.validationProfiles)),errors.collect(cdk().propertyValidator("validationProfiles",cdk().listValidator(CfnModelPackageValidationProfilePropertyValidator))(properties.validationProfiles)),errors.collect(cdk().propertyValidator("validationRole",cdk().requiredValidator)(properties.validationRole)),errors.collect(cdk().propertyValidator("validationRole",cdk().validateString)(properties.validationRole)),errors.wrap('supplied properties not correct for "ValidationSpecificationProperty"')}function convertCfnModelPackageValidationSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageValidationSpecificationPropertyValidator(properties).assertSuccess(),{ValidationProfiles:cdk().listMapper(convertCfnModelPackageValidationProfilePropertyToCloudFormation)(properties.validationProfiles),ValidationRole:cdk().stringToCloudFormation(properties.validationRole)}):properties}function CfnModelPackageValidationSpecificationPropertyFromCloudFormation(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("validationProfiles","ValidationProfiles",properties.ValidationProfiles!=null?cfn_parse().FromCloudFormation.getArray(CfnModelPackageValidationProfilePropertyFromCloudFormation)(properties.ValidationProfiles):void 0),ret.addPropertyResult("validationRole","ValidationRole",properties.ValidationRole!=null?cfn_parse().FromCloudFormation.getString(properties.ValidationRole):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageSourceAlgorithmPropertyValidator(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("algorithmName",cdk().requiredValidator)(properties.algorithmName)),errors.collect(cdk().propertyValidator("algorithmName",cdk().validateString)(properties.algorithmName)),errors.collect(cdk().propertyValidator("modelDataUrl",cdk().validateString)(properties.modelDataUrl)),errors.wrap('supplied properties not correct for "SourceAlgorithmProperty"')}function convertCfnModelPackageSourceAlgorithmPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageSourceAlgorithmPropertyValidator(properties).assertSuccess(),{AlgorithmName:cdk().stringToCloudFormation(properties.algorithmName),ModelDataUrl:cdk().stringToCloudFormation(properties.modelDataUrl)}):properties}function CfnModelPackageSourceAlgorithmPropertyFromCloudFormation(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("algorithmName","AlgorithmName",properties.AlgorithmName!=null?cfn_parse().FromCloudFormation.getString(properties.AlgorithmName):void 0),ret.addPropertyResult("modelDataUrl","ModelDataUrl",properties.ModelDataUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ModelDataUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageSourceAlgorithmSpecificationPropertyValidator(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("sourceAlgorithms",cdk().requiredValidator)(properties.sourceAlgorithms)),errors.collect(cdk().propertyValidator("sourceAlgorithms",cdk().listValidator(CfnModelPackageSourceAlgorithmPropertyValidator))(properties.sourceAlgorithms)),errors.wrap('supplied properties not correct for "SourceAlgorithmSpecificationProperty"')}function convertCfnModelPackageSourceAlgorithmSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageSourceAlgorithmSpecificationPropertyValidator(properties).assertSuccess(),{SourceAlgorithms:cdk().listMapper(convertCfnModelPackageSourceAlgorithmPropertyToCloudFormation)(properties.sourceAlgorithms)}):properties}function CfnModelPackageSourceAlgorithmSpecificationPropertyFromCloudFormation(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("sourceAlgorithms","SourceAlgorithms",properties.SourceAlgorithms!=null?cfn_parse().FromCloudFormation.getArray(CfnModelPackageSourceAlgorithmPropertyFromCloudFormation)(properties.SourceAlgorithms):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelPackageStatusItemPropertyValidator(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("failureReason",cdk().validateString)(properties.failureReason)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("status",cdk().requiredValidator)(properties.status)),errors.collect(cdk().propertyValidator("status",cdk().validateString)(properties.status)),errors.wrap('supplied properties not correct for "ModelPackageStatusItemProperty"')}function convertCfnModelPackageModelPackageStatusItemPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelPackageStatusItemPropertyValidator(properties).assertSuccess(),{FailureReason:cdk().stringToCloudFormation(properties.failureReason),Name:cdk().stringToCloudFormation(properties.name),Status:cdk().stringToCloudFormation(properties.status)}):properties}function CfnModelPackageModelPackageStatusItemPropertyFromCloudFormation(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("failureReason","FailureReason",properties.FailureReason!=null?cfn_parse().FromCloudFormation.getString(properties.FailureReason):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse().FromCloudFormation.getString(properties.Status):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelPackageStatusDetailsPropertyValidator(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("validationStatuses",cdk().listValidator(CfnModelPackageModelPackageStatusItemPropertyValidator))(properties.validationStatuses)),errors.wrap('supplied properties not correct for "ModelPackageStatusDetailsProperty"')}function convertCfnModelPackageModelPackageStatusDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelPackageStatusDetailsPropertyValidator(properties).assertSuccess(),{ValidationStatuses:cdk().listMapper(convertCfnModelPackageModelPackageStatusItemPropertyToCloudFormation)(properties.validationStatuses)}):properties}function CfnModelPackageModelPackageStatusDetailsPropertyFromCloudFormation(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("validationStatuses","ValidationStatuses",properties.ValidationStatuses!=null?cfn_parse().FromCloudFormation.getArray(CfnModelPackageModelPackageStatusItemPropertyFromCloudFormation)(properties.ValidationStatuses):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelAccessConfigPropertyValidator(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("acceptEula",cdk().requiredValidator)(properties.acceptEula)),errors.collect(cdk().propertyValidator("acceptEula",cdk().validateBoolean)(properties.acceptEula)),errors.wrap('supplied properties not correct for "ModelAccessConfigProperty"')}function convertCfnModelPackageModelAccessConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelAccessConfigPropertyValidator(properties).assertSuccess(),{AcceptEula:cdk().booleanToCloudFormation(properties.acceptEula)}):properties}function CfnModelPackageModelAccessConfigPropertyFromCloudFormation(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("acceptEula","AcceptEula",properties.AcceptEula!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AcceptEula):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageS3ModelDataSourcePropertyValidator(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("compressionType",cdk().requiredValidator)(properties.compressionType)),errors.collect(cdk().propertyValidator("compressionType",cdk().validateString)(properties.compressionType)),errors.collect(cdk().propertyValidator("modelAccessConfig",CfnModelPackageModelAccessConfigPropertyValidator)(properties.modelAccessConfig)),errors.collect(cdk().propertyValidator("s3DataType",cdk().requiredValidator)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3DataType",cdk().validateString)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3ModelDataSourceProperty"')}function convertCfnModelPackageS3ModelDataSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageS3ModelDataSourcePropertyValidator(properties).assertSuccess(),{CompressionType:cdk().stringToCloudFormation(properties.compressionType),ModelAccessConfig:convertCfnModelPackageModelAccessConfigPropertyToCloudFormation(properties.modelAccessConfig),S3DataType:cdk().stringToCloudFormation(properties.s3DataType),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelPackageS3ModelDataSourcePropertyFromCloudFormation(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("compressionType","CompressionType",properties.CompressionType!=null?cfn_parse().FromCloudFormation.getString(properties.CompressionType):void 0),ret.addPropertyResult("modelAccessConfig","ModelAccessConfig",properties.ModelAccessConfig!=null?CfnModelPackageModelAccessConfigPropertyFromCloudFormation(properties.ModelAccessConfig):void 0),ret.addPropertyResult("s3DataType","S3DataType",properties.S3DataType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataType):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelDataSourcePropertyValidator(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("s3DataSource",CfnModelPackageS3ModelDataSourcePropertyValidator)(properties.s3DataSource)),errors.wrap('supplied properties not correct for "ModelDataSourceProperty"')}function convertCfnModelPackageModelDataSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelDataSourcePropertyValidator(properties).assertSuccess(),{S3DataSource:convertCfnModelPackageS3ModelDataSourcePropertyToCloudFormation(properties.s3DataSource)}):properties}function CfnModelPackageModelDataSourcePropertyFromCloudFormation(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("s3DataSource","S3DataSource",properties.S3DataSource!=null?CfnModelPackageS3ModelDataSourcePropertyFromCloudFormation(properties.S3DataSource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelPackageContainerDefinitionPropertyValidator(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("containerHostname",cdk().validateString)(properties.containerHostname)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("framework",cdk().validateString)(properties.framework)),errors.collect(cdk().propertyValidator("frameworkVersion",cdk().validateString)(properties.frameworkVersion)),errors.collect(cdk().propertyValidator("image",cdk().requiredValidator)(properties.image)),errors.collect(cdk().propertyValidator("image",cdk().validateString)(properties.image)),errors.collect(cdk().propertyValidator("imageDigest",cdk().validateString)(properties.imageDigest)),errors.collect(cdk().propertyValidator("modelDataSource",CfnModelPackageModelDataSourcePropertyValidator)(properties.modelDataSource)),errors.collect(cdk().propertyValidator("modelDataUrl",cdk().validateString)(properties.modelDataUrl)),errors.collect(cdk().propertyValidator("modelInput",cdk().validateObject)(properties.modelInput)),errors.collect(cdk().propertyValidator("nearestModelName",cdk().validateString)(properties.nearestModelName)),errors.wrap('supplied properties not correct for "ModelPackageContainerDefinitionProperty"')}function convertCfnModelPackageModelPackageContainerDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelPackageContainerDefinitionPropertyValidator(properties).assertSuccess(),{ContainerHostname:cdk().stringToCloudFormation(properties.containerHostname),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),Framework:cdk().stringToCloudFormation(properties.framework),FrameworkVersion:cdk().stringToCloudFormation(properties.frameworkVersion),Image:cdk().stringToCloudFormation(properties.image),ImageDigest:cdk().stringToCloudFormation(properties.imageDigest),ModelDataSource:convertCfnModelPackageModelDataSourcePropertyToCloudFormation(properties.modelDataSource),ModelDataUrl:cdk().stringToCloudFormation(properties.modelDataUrl),ModelInput:cdk().objectToCloudFormation(properties.modelInput),NearestModelName:cdk().stringToCloudFormation(properties.nearestModelName)}):properties}function CfnModelPackageModelPackageContainerDefinitionPropertyFromCloudFormation(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("containerHostname","ContainerHostname",properties.ContainerHostname!=null?cfn_parse().FromCloudFormation.getString(properties.ContainerHostname):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("framework","Framework",properties.Framework!=null?cfn_parse().FromCloudFormation.getString(properties.Framework):void 0),ret.addPropertyResult("frameworkVersion","FrameworkVersion",properties.FrameworkVersion!=null?cfn_parse().FromCloudFormation.getString(properties.FrameworkVersion):void 0),ret.addPropertyResult("image","Image",properties.Image!=null?cfn_parse().FromCloudFormation.getString(properties.Image):void 0),ret.addPropertyResult("imageDigest","ImageDigest",properties.ImageDigest!=null?cfn_parse().FromCloudFormation.getString(properties.ImageDigest):void 0),ret.addPropertyResult("modelDataSource","ModelDataSource",properties.ModelDataSource!=null?CfnModelPackageModelDataSourcePropertyFromCloudFormation(properties.ModelDataSource):void 0),ret.addPropertyResult("modelDataUrl","ModelDataUrl",properties.ModelDataUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ModelDataUrl):void 0),ret.addPropertyResult("modelInput","ModelInput",properties.ModelInput!=null?cfn_parse().FromCloudFormation.getAny(properties.ModelInput):void 0),ret.addPropertyResult("nearestModelName","NearestModelName",properties.NearestModelName!=null?cfn_parse().FromCloudFormation.getString(properties.NearestModelName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyValidator(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("containers",cdk().requiredValidator)(properties.containers)),errors.collect(cdk().propertyValidator("containers",cdk().listValidator(CfnModelPackageModelPackageContainerDefinitionPropertyValidator))(properties.containers)),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("supportedContentTypes",cdk().listValidator(cdk().validateString))(properties.supportedContentTypes)),errors.collect(cdk().propertyValidator("supportedRealtimeInferenceInstanceTypes",cdk().listValidator(cdk().validateString))(properties.supportedRealtimeInferenceInstanceTypes)),errors.collect(cdk().propertyValidator("supportedResponseMimeTypes",cdk().listValidator(cdk().validateString))(properties.supportedResponseMimeTypes)),errors.collect(cdk().propertyValidator("supportedTransformInstanceTypes",cdk().listValidator(cdk().validateString))(properties.supportedTransformInstanceTypes)),errors.wrap('supplied properties not correct for "AdditionalInferenceSpecificationDefinitionProperty"')}function convertCfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyValidator(properties).assertSuccess(),{Containers:cdk().listMapper(convertCfnModelPackageModelPackageContainerDefinitionPropertyToCloudFormation)(properties.containers),Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),SupportedContentTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedContentTypes),SupportedRealtimeInferenceInstanceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedRealtimeInferenceInstanceTypes),SupportedResponseMIMETypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedResponseMimeTypes),SupportedTransformInstanceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedTransformInstanceTypes)}):properties}function CfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyFromCloudFormation(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("containers","Containers",properties.Containers!=null?cfn_parse().FromCloudFormation.getArray(CfnModelPackageModelPackageContainerDefinitionPropertyFromCloudFormation)(properties.Containers):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("supportedContentTypes","SupportedContentTypes",properties.SupportedContentTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedContentTypes):void 0),ret.addPropertyResult("supportedRealtimeInferenceInstanceTypes","SupportedRealtimeInferenceInstanceTypes",properties.SupportedRealtimeInferenceInstanceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedRealtimeInferenceInstanceTypes):void 0),ret.addPropertyResult("supportedResponseMimeTypes","SupportedResponseMIMETypes",properties.SupportedResponseMIMETypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedResponseMIMETypes):void 0),ret.addPropertyResult("supportedTransformInstanceTypes","SupportedTransformInstanceTypes",properties.SupportedTransformInstanceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedTransformInstanceTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageInferenceSpecificationPropertyValidator(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("containers",cdk().requiredValidator)(properties.containers)),errors.collect(cdk().propertyValidator("containers",cdk().listValidator(CfnModelPackageModelPackageContainerDefinitionPropertyValidator))(properties.containers)),errors.collect(cdk().propertyValidator("supportedContentTypes",cdk().requiredValidator)(properties.supportedContentTypes)),errors.collect(cdk().propertyValidator("supportedContentTypes",cdk().listValidator(cdk().validateString))(properties.supportedContentTypes)),errors.collect(cdk().propertyValidator("supportedRealtimeInferenceInstanceTypes",cdk().listValidator(cdk().validateString))(properties.supportedRealtimeInferenceInstanceTypes)),errors.collect(cdk().propertyValidator("supportedResponseMimeTypes",cdk().requiredValidator)(properties.supportedResponseMimeTypes)),errors.collect(cdk().propertyValidator("supportedResponseMimeTypes",cdk().listValidator(cdk().validateString))(properties.supportedResponseMimeTypes)),errors.collect(cdk().propertyValidator("supportedTransformInstanceTypes",cdk().listValidator(cdk().validateString))(properties.supportedTransformInstanceTypes)),errors.wrap('supplied properties not correct for "InferenceSpecificationProperty"')}function convertCfnModelPackageInferenceSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageInferenceSpecificationPropertyValidator(properties).assertSuccess(),{Containers:cdk().listMapper(convertCfnModelPackageModelPackageContainerDefinitionPropertyToCloudFormation)(properties.containers),SupportedContentTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedContentTypes),SupportedRealtimeInferenceInstanceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedRealtimeInferenceInstanceTypes),SupportedResponseMIMETypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedResponseMimeTypes),SupportedTransformInstanceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.supportedTransformInstanceTypes)}):properties}function CfnModelPackageInferenceSpecificationPropertyFromCloudFormation(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("containers","Containers",properties.Containers!=null?cfn_parse().FromCloudFormation.getArray(CfnModelPackageModelPackageContainerDefinitionPropertyFromCloudFormation)(properties.Containers):void 0),ret.addPropertyResult("supportedContentTypes","SupportedContentTypes",properties.SupportedContentTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedContentTypes):void 0),ret.addPropertyResult("supportedRealtimeInferenceInstanceTypes","SupportedRealtimeInferenceInstanceTypes",properties.SupportedRealtimeInferenceInstanceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedRealtimeInferenceInstanceTypes):void 0),ret.addPropertyResult("supportedResponseMimeTypes","SupportedResponseMIMETypes",properties.SupportedResponseMIMETypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedResponseMIMETypes):void 0),ret.addPropertyResult("supportedTransformInstanceTypes","SupportedTransformInstanceTypes",properties.SupportedTransformInstanceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SupportedTransformInstanceTypes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelCardPropertyValidator(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("modelCardContent",cdk().requiredValidator)(properties.modelCardContent)),errors.collect(cdk().propertyValidator("modelCardContent",cdk().validateString)(properties.modelCardContent)),errors.collect(cdk().propertyValidator("modelCardStatus",cdk().requiredValidator)(properties.modelCardStatus)),errors.collect(cdk().propertyValidator("modelCardStatus",cdk().validateString)(properties.modelCardStatus)),errors.wrap('supplied properties not correct for "ModelCardProperty"')}function convertCfnModelPackageModelCardPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelCardPropertyValidator(properties).assertSuccess(),{ModelCardContent:cdk().stringToCloudFormation(properties.modelCardContent),ModelCardStatus:cdk().stringToCloudFormation(properties.modelCardStatus)}):properties}function CfnModelPackageModelCardPropertyFromCloudFormation(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("modelCardContent","ModelCardContent",properties.ModelCardContent!=null?cfn_parse().FromCloudFormation.getString(properties.ModelCardContent):void 0),ret.addPropertyResult("modelCardStatus","ModelCardStatus",properties.ModelCardStatus!=null?cfn_parse().FromCloudFormation.getString(properties.ModelCardStatus):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageSecurityConfigPropertyValidator(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().requiredValidator)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.wrap('supplied properties not correct for "SecurityConfigProperty"')}function convertCfnModelPackageSecurityConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageSecurityConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId)}):properties}function CfnModelPackageSecurityConfigPropertyFromCloudFormation(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 CfnModelPackagePropsValidator(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("additionalInferenceSpecifications",cdk().listValidator(CfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyValidator))(properties.additionalInferenceSpecifications)),errors.collect(cdk().propertyValidator("additionalInferenceSpecificationsToAdd",cdk().listValidator(CfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyValidator))(properties.additionalInferenceSpecificationsToAdd)),errors.collect(cdk().propertyValidator("approvalDescription",cdk().validateString)(properties.approvalDescription)),errors.collect(cdk().propertyValidator("certifyForMarketplace",cdk().validateBoolean)(properties.certifyForMarketplace)),errors.collect(cdk().propertyValidator("clientToken",cdk().validateString)(properties.clientToken)),errors.collect(cdk().propertyValidator("customerMetadataProperties",cdk().hashValidator(cdk().validateString))(properties.customerMetadataProperties)),errors.collect(cdk().propertyValidator("domain",cdk().validateString)(properties.domain)),errors.collect(cdk().propertyValidator("driftCheckBaselines",CfnModelPackageDriftCheckBaselinesPropertyValidator)(properties.driftCheckBaselines)),errors.collect(cdk().propertyValidator("inferenceSpecification",CfnModelPackageInferenceSpecificationPropertyValidator)(properties.inferenceSpecification)),errors.collect(cdk().propertyValidator("lastModifiedTime",cdk().validateString)(properties.lastModifiedTime)),errors.collect(cdk().propertyValidator("metadataProperties",CfnModelPackageMetadataPropertiesPropertyValidator)(properties.metadataProperties)),errors.collect(cdk().propertyValidator("modelApprovalStatus",cdk().validateString)(properties.modelApprovalStatus)),errors.collect(cdk().propertyValidator("modelCard",CfnModelPackageModelCardPropertyValidator)(properties.modelCard)),errors.collect(cdk().propertyValidator("modelMetrics",CfnModelPackageModelMetricsPropertyValidator)(properties.modelMetrics)),errors.collect(cdk().propertyValidator("modelPackageDescription",cdk().validateString)(properties.modelPackageDescription)),errors.collect(cdk().propertyValidator("modelPackageGroupName",cdk().validateString)(properties.modelPackageGroupName)),errors.collect(cdk().propertyValidator("modelPackageName",cdk().validateString)(properties.modelPackageName)),errors.collect(cdk().propertyValidator("modelPackageStatusDetails",CfnModelPackageModelPackageStatusDetailsPropertyValidator)(properties.modelPackageStatusDetails)),errors.collect(cdk().propertyValidator("modelPackageVersion",cdk().validateNumber)(properties.modelPackageVersion)),errors.collect(cdk().propertyValidator("samplePayloadUrl",cdk().validateString)(properties.samplePayloadUrl)),errors.collect(cdk().propertyValidator("securityConfig",CfnModelPackageSecurityConfigPropertyValidator)(properties.securityConfig)),errors.collect(cdk().propertyValidator("skipModelValidation",cdk().validateString)(properties.skipModelValidation)),errors.collect(cdk().propertyValidator("sourceAlgorithmSpecification",CfnModelPackageSourceAlgorithmSpecificationPropertyValidator)(properties.sourceAlgorithmSpecification)),errors.collect(cdk().propertyValidator("sourceUri",cdk().validateString)(properties.sourceUri)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("task",cdk().validateString)(properties.task)),errors.collect(cdk().propertyValidator("validationSpecification",CfnModelPackageValidationSpecificationPropertyValidator)(properties.validationSpecification)),errors.wrap('supplied properties not correct for "CfnModelPackageProps"')}function convertCfnModelPackagePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackagePropsValidator(properties).assertSuccess(),{AdditionalInferenceSpecifications:cdk().listMapper(convertCfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyToCloudFormation)(properties.additionalInferenceSpecifications),AdditionalInferenceSpecificationsToAdd:cdk().listMapper(convertCfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyToCloudFormation)(properties.additionalInferenceSpecificationsToAdd),ApprovalDescription:cdk().stringToCloudFormation(properties.approvalDescription),CertifyForMarketplace:cdk().booleanToCloudFormation(properties.certifyForMarketplace),ClientToken:cdk().stringToCloudFormation(properties.clientToken),CustomerMetadataProperties:cdk().hashMapper(cdk().stringToCloudFormation)(properties.customerMetadataProperties),Domain:cdk().stringToCloudFormation(properties.domain),DriftCheckBaselines:convertCfnModelPackageDriftCheckBaselinesPropertyToCloudFormation(properties.driftCheckBaselines),InferenceSpecification:convertCfnModelPackageInferenceSpecificationPropertyToCloudFormation(properties.inferenceSpecification),LastModifiedTime:cdk().stringToCloudFormation(properties.lastModifiedTime),MetadataProperties:convertCfnModelPackageMetadataPropertiesPropertyToCloudFormation(properties.metadataProperties),ModelApprovalStatus:cdk().stringToCloudFormation(properties.modelApprovalStatus),ModelCard:convertCfnModelPackageModelCardPropertyToCloudFormation(properties.modelCard),ModelMetrics:convertCfnModelPackageModelMetricsPropertyToCloudFormation(properties.modelMetrics),ModelPackageDescription:cdk().stringToCloudFormation(properties.modelPackageDescription),ModelPackageGroupName:cdk().stringToCloudFormation(properties.modelPackageGroupName),ModelPackageName:cdk().stringToCloudFormation(properties.modelPackageName),ModelPackageStatusDetails:convertCfnModelPackageModelPackageStatusDetailsPropertyToCloudFormation(properties.modelPackageStatusDetails),ModelPackageVersion:cdk().numberToCloudFormation(properties.modelPackageVersion),SamplePayloadUrl:cdk().stringToCloudFormation(properties.samplePayloadUrl),SecurityConfig:convertCfnModelPackageSecurityConfigPropertyToCloudFormation(properties.securityConfig),SkipModelValidation:cdk().stringToCloudFormation(properties.skipModelValidation),SourceAlgorithmSpecification:convertCfnModelPackageSourceAlgorithmSpecificationPropertyToCloudFormation(properties.sourceAlgorithmSpecification),SourceUri:cdk().stringToCloudFormation(properties.sourceUri),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Task:cdk().stringToCloudFormation(properties.task),ValidationSpecification:convertCfnModelPackageValidationSpecificationPropertyToCloudFormation(properties.validationSpecification)}):properties}function CfnModelPackagePropsFromCloudFormation(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("additionalInferenceSpecifications","AdditionalInferenceSpecifications",properties.AdditionalInferenceSpecifications!=null?cfn_parse().FromCloudFormation.getArray(CfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyFromCloudFormation)(properties.AdditionalInferenceSpecifications):void 0),ret.addPropertyResult("additionalInferenceSpecificationsToAdd","AdditionalInferenceSpecificationsToAdd",properties.AdditionalInferenceSpecificationsToAdd!=null?cfn_parse().FromCloudFormation.getArray(CfnModelPackageAdditionalInferenceSpecificationDefinitionPropertyFromCloudFormation)(properties.AdditionalInferenceSpecificationsToAdd):void 0),ret.addPropertyResult("approvalDescription","ApprovalDescription",properties.ApprovalDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ApprovalDescription):void 0),ret.addPropertyResult("certifyForMarketplace","CertifyForMarketplace",properties.CertifyForMarketplace!=null?cfn_parse().FromCloudFormation.getBoolean(properties.CertifyForMarketplace):void 0),ret.addPropertyResult("clientToken","ClientToken",properties.ClientToken!=null?cfn_parse().FromCloudFormation.getString(properties.ClientToken):void 0),ret.addPropertyResult("customerMetadataProperties","CustomerMetadataProperties",properties.CustomerMetadataProperties!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.CustomerMetadataProperties):void 0),ret.addPropertyResult("domain","Domain",properties.Domain!=null?cfn_parse().FromCloudFormation.getString(properties.Domain):void 0),ret.addPropertyResult("driftCheckBaselines","DriftCheckBaselines",properties.DriftCheckBaselines!=null?CfnModelPackageDriftCheckBaselinesPropertyFromCloudFormation(properties.DriftCheckBaselines):void 0),ret.addPropertyResult("inferenceSpecification","InferenceSpecification",properties.InferenceSpecification!=null?CfnModelPackageInferenceSpecificationPropertyFromCloudFormation(properties.InferenceSpecification):void 0),ret.addPropertyResult("lastModifiedTime","LastModifiedTime",properties.LastModifiedTime!=null?cfn_parse().FromCloudFormation.getString(properties.LastModifiedTime):void 0),ret.addPropertyResult("metadataProperties","MetadataProperties",properties.MetadataProperties!=null?CfnModelPackageMetadataPropertiesPropertyFromCloudFormation(properties.MetadataProperties):void 0),ret.addPropertyResult("modelApprovalStatus","ModelApprovalStatus",properties.ModelApprovalStatus!=null?cfn_parse().FromCloudFormation.getString(properties.ModelApprovalStatus):void 0),ret.addPropertyResult("modelCard","ModelCard",properties.ModelCard!=null?CfnModelPackageModelCardPropertyFromCloudFormation(properties.ModelCard):void 0),ret.addPropertyResult("modelMetrics","ModelMetrics",properties.ModelMetrics!=null?CfnModelPackageModelMetricsPropertyFromCloudFormation(properties.ModelMetrics):void 0),ret.addPropertyResult("modelPackageDescription","ModelPackageDescription",properties.ModelPackageDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageDescription):void 0),ret.addPropertyResult("modelPackageGroupName","ModelPackageGroupName",properties.ModelPackageGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageGroupName):void 0),ret.addPropertyResult("modelPackageName","ModelPackageName",properties.ModelPackageName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageName):void 0),ret.addPropertyResult("modelPackageStatusDetails","ModelPackageStatusDetails",properties.ModelPackageStatusDetails!=null?CfnModelPackageModelPackageStatusDetailsPropertyFromCloudFormation(properties.ModelPackageStatusDetails):void 0),ret.addPropertyResult("modelPackageVersion","ModelPackageVersion",properties.ModelPackageVersion!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModelPackageVersion):void 0),ret.addPropertyResult("samplePayloadUrl","SamplePayloadUrl",properties.SamplePayloadUrl!=null?cfn_parse().FromCloudFormation.getString(properties.SamplePayloadUrl):void 0),ret.addPropertyResult("securityConfig","SecurityConfig",properties.SecurityConfig!=null?CfnModelPackageSecurityConfigPropertyFromCloudFormation(properties.SecurityConfig):void 0),ret.addPropertyResult("skipModelValidation","SkipModelValidation",properties.SkipModelValidation!=null?cfn_parse().FromCloudFormation.getString(properties.SkipModelValidation):void 0),ret.addPropertyResult("sourceAlgorithmSpecification","SourceAlgorithmSpecification",properties.SourceAlgorithmSpecification!=null?CfnModelPackageSourceAlgorithmSpecificationPropertyFromCloudFormation(properties.SourceAlgorithmSpecification):void 0),ret.addPropertyResult("sourceUri","SourceUri",properties.SourceUri!=null?cfn_parse().FromCloudFormation.getString(properties.SourceUri):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("task","Task",properties.Task!=null?cfn_parse().FromCloudFormation.getString(properties.Task):void 0),ret.addPropertyResult("validationSpecification","ValidationSpecification",properties.ValidationSpecification!=null?CfnModelPackageValidationSpecificationPropertyFromCloudFormation(properties.ValidationSpecification):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelPackageModelInputPropertyValidator(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("dataInputConfig",cdk().requiredValidator)(properties.dataInputConfig)),errors.collect(cdk().propertyValidator("dataInputConfig",cdk().validateString)(properties.dataInputConfig)),errors.wrap('supplied properties not correct for "ModelInputProperty"')}function convertCfnModelPackageModelInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageModelInputPropertyValidator(properties).assertSuccess(),{DataInputConfig:cdk().stringToCloudFormation(properties.dataInputConfig)}):properties}function CfnModelPackageModelInputPropertyFromCloudFormation(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("dataInputConfig","DataInputConfig",properties.DataInputConfig!=null?cfn_parse().FromCloudFormation.getString(properties.DataInputConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnModelPackageGroup extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnModelPackageGroup",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ModelPackageGroup";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelPackageGroupPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModelPackageGroup(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 isCfnModelPackageGroup(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModelPackageGroup.CFN_RESOURCE_TYPE_NAME}static arnForModelPackageGroup(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IModelPackageGroupRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForModelPackageGroup),error}return resource.modelPackageGroupRef.modelPackageGroupArn}_modelPackageGroupDescription;_modelPackageGroupName;_modelPackageGroupPolicy;tags;_tagsRaw;cfnPropertyNames={modelPackageGroupDescription:"ModelPackageGroupDescription",modelPackageGroupName:"ModelPackageGroupName",modelPackageGroupPolicy:"ModelPackageGroupPolicy",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnModelPackageGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnModelPackageGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModelPackageGroup),error}cdk().requireProperty(props,"modelPackageGroupName",this),this._modelPackageGroupDescription=props.modelPackageGroupDescription,this._modelPackageGroupName=props.modelPackageGroupName,this._modelPackageGroupPolicy=props.modelPackageGroupPolicy,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::ModelPackageGroup",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get modelPackageGroupRef(){return{modelPackageGroupArn:this.ref}}get modelPackageGroupDescription(){return this._modelPackageGroupDescription}set modelPackageGroupDescription(value){cdk().traceProperty(this.node,"ModelPackageGroupDescription"),this._modelPackageGroupDescription=value}get modelPackageGroupName(){return this._modelPackageGroupName}set modelPackageGroupName(value){cdk().traceProperty(this.node,"ModelPackageGroupName"),this._modelPackageGroupName=value}get modelPackageGroupPolicy(){return this._modelPackageGroupPolicy}set modelPackageGroupPolicy(value){cdk().traceProperty(this.node,"ModelPackageGroupPolicy"),this._modelPackageGroupPolicy=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrModelPackageGroupArn(){return cdk().Token.asString(this.getAtt("ModelPackageGroupArn",cdk().ResolutionTypeHint.STRING))}get attrModelPackageGroupStatus(){return cdk().Token.asString(this.getAtt("ModelPackageGroupStatus",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{modelPackageGroupDescription:this._modelPackageGroupDescription,modelPackageGroupName:this._modelPackageGroupName,modelPackageGroupPolicy:this._modelPackageGroupPolicy,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",CfnModelPackageGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelPackageGroupPropsToCloudFormation(props)}}exports.CfnModelPackageGroup=CfnModelPackageGroup;function CfnModelPackageGroupPropsValidator(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("modelPackageGroupDescription",cdk().validateString)(properties.modelPackageGroupDescription)),errors.collect(cdk().propertyValidator("modelPackageGroupName",cdk().requiredValidator)(properties.modelPackageGroupName)),errors.collect(cdk().propertyValidator("modelPackageGroupName",cdk().validateString)(properties.modelPackageGroupName)),errors.collect(cdk().propertyValidator("modelPackageGroupPolicy",cdk().validateObject)(properties.modelPackageGroupPolicy)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnModelPackageGroupProps"')}function convertCfnModelPackageGroupPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPackageGroupPropsValidator(properties).assertSuccess(),{ModelPackageGroupDescription:cdk().stringToCloudFormation(properties.modelPackageGroupDescription),ModelPackageGroupName:cdk().stringToCloudFormation(properties.modelPackageGroupName),ModelPackageGroupPolicy:cdk().objectToCloudFormation(properties.modelPackageGroupPolicy),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnModelPackageGroupPropsFromCloudFormation(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("modelPackageGroupDescription","ModelPackageGroupDescription",properties.ModelPackageGroupDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageGroupDescription):void 0),ret.addPropertyResult("modelPackageGroupName","ModelPackageGroupName",properties.ModelPackageGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelPackageGroupName):void 0),ret.addPropertyResult("modelPackageGroupPolicy","ModelPackageGroupPolicy",properties.ModelPackageGroupPolicy!=null?cfn_parse().FromCloudFormation.getAny(properties.ModelPackageGroupPolicy):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 CfnModelQualityJobDefinition extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnModelQualityJobDefinition",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ModelQualityJobDefinition";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelQualityJobDefinitionPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModelQualityJobDefinition(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 isCfnModelQualityJobDefinition(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModelQualityJobDefinition.CFN_RESOURCE_TYPE_NAME}_endpointName;_jobDefinitionName;_jobResources;_modelQualityAppSpecification;_modelQualityBaselineConfig;_modelQualityJobInput;_modelQualityJobOutputConfig;_networkConfig;_roleArn;_stoppingCondition;tags;_tagsRaw;cfnPropertyNames={endpointName:"EndpointName",jobDefinitionName:"JobDefinitionName",jobResources:"JobResources",modelQualityAppSpecification:"ModelQualityAppSpecification",modelQualityBaselineConfig:"ModelQualityBaselineConfig",modelQualityJobInput:"ModelQualityJobInput",modelQualityJobOutputConfig:"ModelQualityJobOutputConfig",networkConfig:"NetworkConfig",roleArn:"RoleArn",stoppingCondition:"StoppingCondition",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnModelQualityJobDefinition.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnModelQualityJobDefinitionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModelQualityJobDefinition),error}cdk().requireProperty(props,"jobResources",this),cdk().requireProperty(props,"modelQualityAppSpecification",this),cdk().requireProperty(props,"modelQualityJobInput",this),cdk().requireProperty(props,"modelQualityJobOutputConfig",this),cdk().requireProperty(props,"roleArn",this),this._endpointName=props.endpointName,this._jobDefinitionName=props.jobDefinitionName,this._jobResources=props.jobResources,this._modelQualityAppSpecification=props.modelQualityAppSpecification,this._modelQualityBaselineConfig=props.modelQualityBaselineConfig,this._modelQualityJobInput=props.modelQualityJobInput,this._modelQualityJobOutputConfig=props.modelQualityJobOutputConfig,this._networkConfig=props.networkConfig,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this._stoppingCondition=props.stoppingCondition,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::ModelQualityJobDefinition",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get modelQualityJobDefinitionRef(){return{jobDefinitionArn:this.ref}}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get jobDefinitionName(){return this._jobDefinitionName}set jobDefinitionName(value){cdk().traceProperty(this.node,"JobDefinitionName"),this._jobDefinitionName=value}get jobResources(){return this._jobResources}set jobResources(value){cdk().traceProperty(this.node,"JobResources"),this._jobResources=value}get modelQualityAppSpecification(){return this._modelQualityAppSpecification}set modelQualityAppSpecification(value){cdk().traceProperty(this.node,"ModelQualityAppSpecification"),this._modelQualityAppSpecification=value}get modelQualityBaselineConfig(){return this._modelQualityBaselineConfig}set modelQualityBaselineConfig(value){cdk().traceProperty(this.node,"ModelQualityBaselineConfig"),this._modelQualityBaselineConfig=value}get modelQualityJobInput(){return this._modelQualityJobInput}set modelQualityJobInput(value){cdk().traceProperty(this.node,"ModelQualityJobInput"),this._modelQualityJobInput=value}get modelQualityJobOutputConfig(){return this._modelQualityJobOutputConfig}set modelQualityJobOutputConfig(value){cdk().traceProperty(this.node,"ModelQualityJobOutputConfig"),this._modelQualityJobOutputConfig=value}get networkConfig(){return this._networkConfig}set networkConfig(value){cdk().traceProperty(this.node,"NetworkConfig"),this._networkConfig=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get stoppingCondition(){return this._stoppingCondition}set stoppingCondition(value){cdk().traceProperty(this.node,"StoppingCondition"),this._stoppingCondition=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrJobDefinitionArn(){return cdk().Token.asString(this.getAtt("JobDefinitionArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{endpointName:this._endpointName,jobDefinitionName:this._jobDefinitionName,jobResources:this._jobResources,modelQualityAppSpecification:this._modelQualityAppSpecification,modelQualityBaselineConfig:this._modelQualityBaselineConfig,modelQualityJobInput:this._modelQualityJobInput,modelQualityJobOutputConfig:this._modelQualityJobOutputConfig,networkConfig:this._networkConfig,roleArn:this._roleArn,stoppingCondition:this._stoppingCondition,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",CfnModelQualityJobDefinition.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelQualityJobDefinitionPropsToCloudFormation(props)}}exports.CfnModelQualityJobDefinition=CfnModelQualityJobDefinition;function CfnModelQualityJobDefinitionModelQualityAppSpecificationPropertyValidator(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("containerArguments",cdk().listValidator(cdk().validateString))(properties.containerArguments)),errors.collect(cdk().propertyValidator("containerEntrypoint",cdk().listValidator(cdk().validateString))(properties.containerEntrypoint)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("imageUri",cdk().requiredValidator)(properties.imageUri)),errors.collect(cdk().propertyValidator("imageUri",cdk().validateString)(properties.imageUri)),errors.collect(cdk().propertyValidator("postAnalyticsProcessorSourceUri",cdk().validateString)(properties.postAnalyticsProcessorSourceUri)),errors.collect(cdk().propertyValidator("problemType",cdk().requiredValidator)(properties.problemType)),errors.collect(cdk().propertyValidator("problemType",cdk().validateString)(properties.problemType)),errors.collect(cdk().propertyValidator("recordPreprocessorSourceUri",cdk().validateString)(properties.recordPreprocessorSourceUri)),errors.wrap('supplied properties not correct for "ModelQualityAppSpecificationProperty"')}function convertCfnModelQualityJobDefinitionModelQualityAppSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionModelQualityAppSpecificationPropertyValidator(properties).assertSuccess(),{ContainerArguments:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerArguments),ContainerEntrypoint:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerEntrypoint),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),ImageUri:cdk().stringToCloudFormation(properties.imageUri),PostAnalyticsProcessorSourceUri:cdk().stringToCloudFormation(properties.postAnalyticsProcessorSourceUri),ProblemType:cdk().stringToCloudFormation(properties.problemType),RecordPreprocessorSourceUri:cdk().stringToCloudFormation(properties.recordPreprocessorSourceUri)}):properties}function CfnModelQualityJobDefinitionModelQualityAppSpecificationPropertyFromCloudFormation(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("containerArguments","ContainerArguments",properties.ContainerArguments!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerArguments):void 0),ret.addPropertyResult("containerEntrypoint","ContainerEntrypoint",properties.ContainerEntrypoint!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerEntrypoint):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("imageUri","ImageUri",properties.ImageUri!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUri):void 0),ret.addPropertyResult("postAnalyticsProcessorSourceUri","PostAnalyticsProcessorSourceUri",properties.PostAnalyticsProcessorSourceUri!=null?cfn_parse().FromCloudFormation.getString(properties.PostAnalyticsProcessorSourceUri):void 0),ret.addPropertyResult("problemType","ProblemType",properties.ProblemType!=null?cfn_parse().FromCloudFormation.getString(properties.ProblemType):void 0),ret.addPropertyResult("recordPreprocessorSourceUri","RecordPreprocessorSourceUri",properties.RecordPreprocessorSourceUri!=null?cfn_parse().FromCloudFormation.getString(properties.RecordPreprocessorSourceUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionStoppingConditionPropertyValidator(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("maxRuntimeInSeconds",cdk().requiredValidator)(properties.maxRuntimeInSeconds)),errors.collect(cdk().propertyValidator("maxRuntimeInSeconds",cdk().validateNumber)(properties.maxRuntimeInSeconds)),errors.wrap('supplied properties not correct for "StoppingConditionProperty"')}function convertCfnModelQualityJobDefinitionStoppingConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionStoppingConditionPropertyValidator(properties).assertSuccess(),{MaxRuntimeInSeconds:cdk().numberToCloudFormation(properties.maxRuntimeInSeconds)}):properties}function CfnModelQualityJobDefinitionStoppingConditionPropertyFromCloudFormation(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("maxRuntimeInSeconds","MaxRuntimeInSeconds",properties.MaxRuntimeInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRuntimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionConstraintsResourcePropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "ConstraintsResourceProperty"')}function convertCfnModelQualityJobDefinitionConstraintsResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionConstraintsResourcePropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelQualityJobDefinitionConstraintsResourcePropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionModelQualityBaselineConfigPropertyValidator(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("baseliningJobName",cdk().validateString)(properties.baseliningJobName)),errors.collect(cdk().propertyValidator("constraintsResource",CfnModelQualityJobDefinitionConstraintsResourcePropertyValidator)(properties.constraintsResource)),errors.wrap('supplied properties not correct for "ModelQualityBaselineConfigProperty"')}function convertCfnModelQualityJobDefinitionModelQualityBaselineConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionModelQualityBaselineConfigPropertyValidator(properties).assertSuccess(),{BaseliningJobName:cdk().stringToCloudFormation(properties.baseliningJobName),ConstraintsResource:convertCfnModelQualityJobDefinitionConstraintsResourcePropertyToCloudFormation(properties.constraintsResource)}):properties}function CfnModelQualityJobDefinitionModelQualityBaselineConfigPropertyFromCloudFormation(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("baseliningJobName","BaseliningJobName",properties.BaseliningJobName!=null?cfn_parse().FromCloudFormation.getString(properties.BaseliningJobName):void 0),ret.addPropertyResult("constraintsResource","ConstraintsResource",properties.ConstraintsResource!=null?CfnModelQualityJobDefinitionConstraintsResourcePropertyFromCloudFormation(properties.ConstraintsResource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionMonitoringGroundTruthS3InputPropertyValidator(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("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "MonitoringGroundTruthS3InputProperty"')}function convertCfnModelQualityJobDefinitionMonitoringGroundTruthS3InputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionMonitoringGroundTruthS3InputPropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelQualityJobDefinitionMonitoringGroundTruthS3InputPropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionCsvPropertyValidator(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("header",cdk().validateBoolean)(properties.header)),errors.wrap('supplied properties not correct for "CsvProperty"')}function convertCfnModelQualityJobDefinitionCsvPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionCsvPropertyValidator(properties).assertSuccess(),{Header:cdk().booleanToCloudFormation(properties.header)}):properties}function CfnModelQualityJobDefinitionCsvPropertyFromCloudFormation(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("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Header):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionJsonPropertyValidator(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("line",cdk().validateBoolean)(properties.line)),errors.wrap('supplied properties not correct for "JsonProperty"')}function convertCfnModelQualityJobDefinitionJsonPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionJsonPropertyValidator(properties).assertSuccess(),{Line:cdk().booleanToCloudFormation(properties.line)}):properties}function CfnModelQualityJobDefinitionJsonPropertyFromCloudFormation(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("line","Line",properties.Line!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Line):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionDatasetFormatPropertyValidator(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("csv",CfnModelQualityJobDefinitionCsvPropertyValidator)(properties.csv)),errors.collect(cdk().propertyValidator("json",CfnModelQualityJobDefinitionJsonPropertyValidator)(properties.json)),errors.collect(cdk().propertyValidator("parquet",cdk().validateBoolean)(properties.parquet)),errors.wrap('supplied properties not correct for "DatasetFormatProperty"')}function convertCfnModelQualityJobDefinitionDatasetFormatPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionDatasetFormatPropertyValidator(properties).assertSuccess(),{Csv:convertCfnModelQualityJobDefinitionCsvPropertyToCloudFormation(properties.csv),Json:convertCfnModelQualityJobDefinitionJsonPropertyToCloudFormation(properties.json),Parquet:cdk().booleanToCloudFormation(properties.parquet)}):properties}function CfnModelQualityJobDefinitionDatasetFormatPropertyFromCloudFormation(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("csv","Csv",properties.Csv!=null?CfnModelQualityJobDefinitionCsvPropertyFromCloudFormation(properties.Csv):void 0),ret.addPropertyResult("json","Json",properties.Json!=null?CfnModelQualityJobDefinitionJsonPropertyFromCloudFormation(properties.Json):void 0),ret.addPropertyResult("parquet","Parquet",properties.Parquet!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Parquet):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionBatchTransformInputPropertyValidator(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("dataCapturedDestinationS3Uri",cdk().requiredValidator)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("dataCapturedDestinationS3Uri",cdk().validateString)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("datasetFormat",cdk().requiredValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("datasetFormat",CfnModelQualityJobDefinitionDatasetFormatPropertyValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("endTimeOffset",cdk().validateString)(properties.endTimeOffset)),errors.collect(cdk().propertyValidator("inferenceAttribute",cdk().validateString)(properties.inferenceAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("probabilityAttribute",cdk().validateString)(properties.probabilityAttribute)),errors.collect(cdk().propertyValidator("probabilityThresholdAttribute",cdk().validateNumber)(properties.probabilityThresholdAttribute)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.collect(cdk().propertyValidator("startTimeOffset",cdk().validateString)(properties.startTimeOffset)),errors.wrap('supplied properties not correct for "BatchTransformInputProperty"')}function convertCfnModelQualityJobDefinitionBatchTransformInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionBatchTransformInputPropertyValidator(properties).assertSuccess(),{DataCapturedDestinationS3Uri:cdk().stringToCloudFormation(properties.dataCapturedDestinationS3Uri),DatasetFormat:convertCfnModelQualityJobDefinitionDatasetFormatPropertyToCloudFormation(properties.datasetFormat),EndTimeOffset:cdk().stringToCloudFormation(properties.endTimeOffset),InferenceAttribute:cdk().stringToCloudFormation(properties.inferenceAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),ProbabilityAttribute:cdk().stringToCloudFormation(properties.probabilityAttribute),ProbabilityThresholdAttribute:cdk().numberToCloudFormation(properties.probabilityThresholdAttribute),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode),StartTimeOffset:cdk().stringToCloudFormation(properties.startTimeOffset)}):properties}function CfnModelQualityJobDefinitionBatchTransformInputPropertyFromCloudFormation(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("dataCapturedDestinationS3Uri","DataCapturedDestinationS3Uri",properties.DataCapturedDestinationS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.DataCapturedDestinationS3Uri):void 0),ret.addPropertyResult("datasetFormat","DatasetFormat",properties.DatasetFormat!=null?CfnModelQualityJobDefinitionDatasetFormatPropertyFromCloudFormation(properties.DatasetFormat):void 0),ret.addPropertyResult("endTimeOffset","EndTimeOffset",properties.EndTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.EndTimeOffset):void 0),ret.addPropertyResult("inferenceAttribute","InferenceAttribute",properties.InferenceAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("probabilityAttribute","ProbabilityAttribute",properties.ProbabilityAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ProbabilityAttribute):void 0),ret.addPropertyResult("probabilityThresholdAttribute","ProbabilityThresholdAttribute",properties.ProbabilityThresholdAttribute!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProbabilityThresholdAttribute):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addPropertyResult("startTimeOffset","StartTimeOffset",properties.StartTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.StartTimeOffset):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionEndpointInputPropertyValidator(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("endTimeOffset",cdk().validateString)(properties.endTimeOffset)),errors.collect(cdk().propertyValidator("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("inferenceAttribute",cdk().validateString)(properties.inferenceAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("probabilityAttribute",cdk().validateString)(properties.probabilityAttribute)),errors.collect(cdk().propertyValidator("probabilityThresholdAttribute",cdk().validateNumber)(properties.probabilityThresholdAttribute)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.collect(cdk().propertyValidator("startTimeOffset",cdk().validateString)(properties.startTimeOffset)),errors.wrap('supplied properties not correct for "EndpointInputProperty"')}function convertCfnModelQualityJobDefinitionEndpointInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionEndpointInputPropertyValidator(properties).assertSuccess(),{EndTimeOffset:cdk().stringToCloudFormation(properties.endTimeOffset),EndpointName:cdk().stringToCloudFormation(properties.endpointName),InferenceAttribute:cdk().stringToCloudFormation(properties.inferenceAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),ProbabilityAttribute:cdk().stringToCloudFormation(properties.probabilityAttribute),ProbabilityThresholdAttribute:cdk().numberToCloudFormation(properties.probabilityThresholdAttribute),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode),StartTimeOffset:cdk().stringToCloudFormation(properties.startTimeOffset)}):properties}function CfnModelQualityJobDefinitionEndpointInputPropertyFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("endTimeOffset","EndTimeOffset",properties.EndTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.EndTimeOffset):void 0),ret.addPropertyResult("inferenceAttribute","InferenceAttribute",properties.InferenceAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("probabilityAttribute","ProbabilityAttribute",properties.ProbabilityAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ProbabilityAttribute):void 0),ret.addPropertyResult("probabilityThresholdAttribute","ProbabilityThresholdAttribute",properties.ProbabilityThresholdAttribute!=null?cfn_parse().FromCloudFormation.getNumber(properties.ProbabilityThresholdAttribute):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addPropertyResult("startTimeOffset","StartTimeOffset",properties.StartTimeOffset!=null?cfn_parse().FromCloudFormation.getString(properties.StartTimeOffset):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionModelQualityJobInputPropertyValidator(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("batchTransformInput",CfnModelQualityJobDefinitionBatchTransformInputPropertyValidator)(properties.batchTransformInput)),errors.collect(cdk().propertyValidator("endpointInput",CfnModelQualityJobDefinitionEndpointInputPropertyValidator)(properties.endpointInput)),errors.collect(cdk().propertyValidator("groundTruthS3Input",cdk().requiredValidator)(properties.groundTruthS3Input)),errors.collect(cdk().propertyValidator("groundTruthS3Input",CfnModelQualityJobDefinitionMonitoringGroundTruthS3InputPropertyValidator)(properties.groundTruthS3Input)),errors.wrap('supplied properties not correct for "ModelQualityJobInputProperty"')}function convertCfnModelQualityJobDefinitionModelQualityJobInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionModelQualityJobInputPropertyValidator(properties).assertSuccess(),{BatchTransformInput:convertCfnModelQualityJobDefinitionBatchTransformInputPropertyToCloudFormation(properties.batchTransformInput),EndpointInput:convertCfnModelQualityJobDefinitionEndpointInputPropertyToCloudFormation(properties.endpointInput),GroundTruthS3Input:convertCfnModelQualityJobDefinitionMonitoringGroundTruthS3InputPropertyToCloudFormation(properties.groundTruthS3Input)}):properties}function CfnModelQualityJobDefinitionModelQualityJobInputPropertyFromCloudFormation(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("batchTransformInput","BatchTransformInput",properties.BatchTransformInput!=null?CfnModelQualityJobDefinitionBatchTransformInputPropertyFromCloudFormation(properties.BatchTransformInput):void 0),ret.addPropertyResult("endpointInput","EndpointInput",properties.EndpointInput!=null?CfnModelQualityJobDefinitionEndpointInputPropertyFromCloudFormation(properties.EndpointInput):void 0),ret.addPropertyResult("groundTruthS3Input","GroundTruthS3Input",properties.GroundTruthS3Input!=null?CfnModelQualityJobDefinitionMonitoringGroundTruthS3InputPropertyFromCloudFormation(properties.GroundTruthS3Input):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionClusterConfigPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().requiredValidator)(properties.volumeSizeInGb)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ClusterConfigProperty"')}function convertCfnModelQualityJobDefinitionClusterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionClusterConfigPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnModelQualityJobDefinitionClusterConfigPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionMonitoringResourcesPropertyValidator(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("clusterConfig",cdk().requiredValidator)(properties.clusterConfig)),errors.collect(cdk().propertyValidator("clusterConfig",CfnModelQualityJobDefinitionClusterConfigPropertyValidator)(properties.clusterConfig)),errors.wrap('supplied properties not correct for "MonitoringResourcesProperty"')}function convertCfnModelQualityJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionMonitoringResourcesPropertyValidator(properties).assertSuccess(),{ClusterConfig:convertCfnModelQualityJobDefinitionClusterConfigPropertyToCloudFormation(properties.clusterConfig)}):properties}function CfnModelQualityJobDefinitionMonitoringResourcesPropertyFromCloudFormation(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("clusterConfig","ClusterConfig",properties.ClusterConfig!=null?CfnModelQualityJobDefinitionClusterConfigPropertyFromCloudFormation(properties.ClusterConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnModelQualityJobDefinitionVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnModelQualityJobDefinitionVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionNetworkConfigPropertyValidator(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("enableInterContainerTrafficEncryption",cdk().validateBoolean)(properties.enableInterContainerTrafficEncryption)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("vpcConfig",CfnModelQualityJobDefinitionVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "NetworkConfigProperty"')}function convertCfnModelQualityJobDefinitionNetworkConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionNetworkConfigPropertyValidator(properties).assertSuccess(),{EnableInterContainerTrafficEncryption:cdk().booleanToCloudFormation(properties.enableInterContainerTrafficEncryption),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),VpcConfig:convertCfnModelQualityJobDefinitionVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnModelQualityJobDefinitionNetworkConfigPropertyFromCloudFormation(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("enableInterContainerTrafficEncryption","EnableInterContainerTrafficEncryption",properties.EnableInterContainerTrafficEncryption!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableInterContainerTrafficEncryption):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnModelQualityJobDefinitionVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionS3OutputPropertyValidator(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("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3UploadMode",cdk().validateString)(properties.s3UploadMode)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3OutputProperty"')}function convertCfnModelQualityJobDefinitionS3OutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionS3OutputPropertyValidator(properties).assertSuccess(),{LocalPath:cdk().stringToCloudFormation(properties.localPath),S3UploadMode:cdk().stringToCloudFormation(properties.s3UploadMode),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnModelQualityJobDefinitionS3OutputPropertyFromCloudFormation(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("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3UploadMode","S3UploadMode",properties.S3UploadMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3UploadMode):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionMonitoringOutputPropertyValidator(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("s3Output",cdk().requiredValidator)(properties.s3Output)),errors.collect(cdk().propertyValidator("s3Output",CfnModelQualityJobDefinitionS3OutputPropertyValidator)(properties.s3Output)),errors.wrap('supplied properties not correct for "MonitoringOutputProperty"')}function convertCfnModelQualityJobDefinitionMonitoringOutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionMonitoringOutputPropertyValidator(properties).assertSuccess(),{S3Output:convertCfnModelQualityJobDefinitionS3OutputPropertyToCloudFormation(properties.s3Output)}):properties}function CfnModelQualityJobDefinitionMonitoringOutputPropertyFromCloudFormation(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("s3Output","S3Output",properties.S3Output!=null?CfnModelQualityJobDefinitionS3OutputPropertyFromCloudFormation(properties.S3Output):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionMonitoringOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("monitoringOutputs",cdk().requiredValidator)(properties.monitoringOutputs)),errors.collect(cdk().propertyValidator("monitoringOutputs",cdk().listValidator(CfnModelQualityJobDefinitionMonitoringOutputPropertyValidator))(properties.monitoringOutputs)),errors.wrap('supplied properties not correct for "MonitoringOutputConfigProperty"')}function convertCfnModelQualityJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionMonitoringOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),MonitoringOutputs:cdk().listMapper(convertCfnModelQualityJobDefinitionMonitoringOutputPropertyToCloudFormation)(properties.monitoringOutputs)}):properties}function CfnModelQualityJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(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.addPropertyResult("monitoringOutputs","MonitoringOutputs",properties.MonitoringOutputs!=null?cfn_parse().FromCloudFormation.getArray(CfnModelQualityJobDefinitionMonitoringOutputPropertyFromCloudFormation)(properties.MonitoringOutputs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnModelQualityJobDefinitionPropsValidator(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("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("jobDefinitionName",cdk().validateString)(properties.jobDefinitionName)),errors.collect(cdk().propertyValidator("jobResources",cdk().requiredValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("jobResources",CfnModelQualityJobDefinitionMonitoringResourcesPropertyValidator)(properties.jobResources)),errors.collect(cdk().propertyValidator("modelQualityAppSpecification",cdk().requiredValidator)(properties.modelQualityAppSpecification)),errors.collect(cdk().propertyValidator("modelQualityAppSpecification",CfnModelQualityJobDefinitionModelQualityAppSpecificationPropertyValidator)(properties.modelQualityAppSpecification)),errors.collect(cdk().propertyValidator("modelQualityBaselineConfig",CfnModelQualityJobDefinitionModelQualityBaselineConfigPropertyValidator)(properties.modelQualityBaselineConfig)),errors.collect(cdk().propertyValidator("modelQualityJobInput",cdk().requiredValidator)(properties.modelQualityJobInput)),errors.collect(cdk().propertyValidator("modelQualityJobInput",CfnModelQualityJobDefinitionModelQualityJobInputPropertyValidator)(properties.modelQualityJobInput)),errors.collect(cdk().propertyValidator("modelQualityJobOutputConfig",cdk().requiredValidator)(properties.modelQualityJobOutputConfig)),errors.collect(cdk().propertyValidator("modelQualityJobOutputConfig",CfnModelQualityJobDefinitionMonitoringOutputConfigPropertyValidator)(properties.modelQualityJobOutputConfig)),errors.collect(cdk().propertyValidator("networkConfig",CfnModelQualityJobDefinitionNetworkConfigPropertyValidator)(properties.networkConfig)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("stoppingCondition",CfnModelQualityJobDefinitionStoppingConditionPropertyValidator)(properties.stoppingCondition)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnModelQualityJobDefinitionProps"')}function convertCfnModelQualityJobDefinitionPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelQualityJobDefinitionPropsValidator(properties).assertSuccess(),{EndpointName:cdk().stringToCloudFormation(properties.endpointName),JobDefinitionName:cdk().stringToCloudFormation(properties.jobDefinitionName),JobResources:convertCfnModelQualityJobDefinitionMonitoringResourcesPropertyToCloudFormation(properties.jobResources),ModelQualityAppSpecification:convertCfnModelQualityJobDefinitionModelQualityAppSpecificationPropertyToCloudFormation(properties.modelQualityAppSpecification),ModelQualityBaselineConfig:convertCfnModelQualityJobDefinitionModelQualityBaselineConfigPropertyToCloudFormation(properties.modelQualityBaselineConfig),ModelQualityJobInput:convertCfnModelQualityJobDefinitionModelQualityJobInputPropertyToCloudFormation(properties.modelQualityJobInput),ModelQualityJobOutputConfig:convertCfnModelQualityJobDefinitionMonitoringOutputConfigPropertyToCloudFormation(properties.modelQualityJobOutputConfig),NetworkConfig:convertCfnModelQualityJobDefinitionNetworkConfigPropertyToCloudFormation(properties.networkConfig),RoleArn:cdk().stringToCloudFormation(properties.roleArn),StoppingCondition:convertCfnModelQualityJobDefinitionStoppingConditionPropertyToCloudFormation(properties.stoppingCondition),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnModelQualityJobDefinitionPropsFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("jobDefinitionName","JobDefinitionName",properties.JobDefinitionName!=null?cfn_parse().FromCloudFormation.getString(properties.JobDefinitionName):void 0),ret.addPropertyResult("jobResources","JobResources",properties.JobResources!=null?CfnModelQualityJobDefinitionMonitoringResourcesPropertyFromCloudFormation(properties.JobResources):void 0),ret.addPropertyResult("modelQualityAppSpecification","ModelQualityAppSpecification",properties.ModelQualityAppSpecification!=null?CfnModelQualityJobDefinitionModelQualityAppSpecificationPropertyFromCloudFormation(properties.ModelQualityAppSpecification):void 0),ret.addPropertyResult("modelQualityBaselineConfig","ModelQualityBaselineConfig",properties.ModelQualityBaselineConfig!=null?CfnModelQualityJobDefinitionModelQualityBaselineConfigPropertyFromCloudFormation(properties.ModelQualityBaselineConfig):void 0),ret.addPropertyResult("modelQualityJobInput","ModelQualityJobInput",properties.ModelQualityJobInput!=null?CfnModelQualityJobDefinitionModelQualityJobInputPropertyFromCloudFormation(properties.ModelQualityJobInput):void 0),ret.addPropertyResult("modelQualityJobOutputConfig","ModelQualityJobOutputConfig",properties.ModelQualityJobOutputConfig!=null?CfnModelQualityJobDefinitionMonitoringOutputConfigPropertyFromCloudFormation(properties.ModelQualityJobOutputConfig):void 0),ret.addPropertyResult("networkConfig","NetworkConfig",properties.NetworkConfig!=null?CfnModelQualityJobDefinitionNetworkConfigPropertyFromCloudFormation(properties.NetworkConfig):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("stoppingCondition","StoppingCondition",properties.StoppingCondition!=null?CfnModelQualityJobDefinitionStoppingConditionPropertyFromCloudFormation(properties.StoppingCondition):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 CfnMonitoringSchedule extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnMonitoringSchedule",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::MonitoringSchedule";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMonitoringSchedulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMonitoringSchedule(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 isCfnMonitoringSchedule(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMonitoringSchedule.CFN_RESOURCE_TYPE_NAME}static arnForMonitoringSchedule(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IMonitoringScheduleRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMonitoringSchedule),error}return resource.monitoringScheduleRef.monitoringScheduleArn}_endpointName;_failureReason;_lastMonitoringExecutionSummary;_monitoringScheduleConfig;_monitoringScheduleName;_monitoringScheduleStatus;tags;_tagsRaw;cfnPropertyNames={endpointName:"EndpointName",failureReason:"FailureReason",lastMonitoringExecutionSummary:"LastMonitoringExecutionSummary",monitoringScheduleConfig:"MonitoringScheduleConfig",monitoringScheduleName:"MonitoringScheduleName",monitoringScheduleStatus:"MonitoringScheduleStatus",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnMonitoringSchedule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnMonitoringScheduleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMonitoringSchedule),error}cdk().requireProperty(props,"monitoringScheduleConfig",this),cdk().requireProperty(props,"monitoringScheduleName",this),this._endpointName=props.endpointName,this._failureReason=props.failureReason,this._lastMonitoringExecutionSummary=props.lastMonitoringExecutionSummary,this._monitoringScheduleConfig=props.monitoringScheduleConfig,this._monitoringScheduleName=props.monitoringScheduleName,this._monitoringScheduleStatus=props.monitoringScheduleStatus,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::MonitoringSchedule",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get monitoringScheduleRef(){return{monitoringScheduleArn:this.ref}}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get failureReason(){return this._failureReason}set failureReason(value){cdk().traceProperty(this.node,"FailureReason"),this._failureReason=value}get lastMonitoringExecutionSummary(){return this._lastMonitoringExecutionSummary}set lastMonitoringExecutionSummary(value){cdk().traceProperty(this.node,"LastMonitoringExecutionSummary"),this._lastMonitoringExecutionSummary=value}get monitoringScheduleConfig(){return this._monitoringScheduleConfig}set monitoringScheduleConfig(value){cdk().traceProperty(this.node,"MonitoringScheduleConfig"),this._monitoringScheduleConfig=value}get monitoringScheduleName(){return this._monitoringScheduleName}set monitoringScheduleName(value){cdk().traceProperty(this.node,"MonitoringScheduleName"),this._monitoringScheduleName=value}get monitoringScheduleStatus(){return this._monitoringScheduleStatus}set monitoringScheduleStatus(value){cdk().traceProperty(this.node,"MonitoringScheduleStatus"),this._monitoringScheduleStatus=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedTime(){return cdk().Token.asString(this.getAtt("LastModifiedTime",cdk().ResolutionTypeHint.STRING))}get attrMonitoringScheduleArn(){return cdk().Token.asString(this.getAtt("MonitoringScheduleArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{endpointName:this._endpointName,failureReason:this._failureReason,lastMonitoringExecutionSummary:this._lastMonitoringExecutionSummary,monitoringScheduleConfig:this._monitoringScheduleConfig,monitoringScheduleName:this._monitoringScheduleName,monitoringScheduleStatus:this._monitoringScheduleStatus,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",CfnMonitoringSchedule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMonitoringSchedulePropsToCloudFormation(props)}}exports.CfnMonitoringSchedule=CfnMonitoringSchedule;function CfnMonitoringScheduleScheduleConfigPropertyValidator(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("dataAnalysisEndTime",cdk().validateString)(properties.dataAnalysisEndTime)),errors.collect(cdk().propertyValidator("dataAnalysisStartTime",cdk().validateString)(properties.dataAnalysisStartTime)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().requiredValidator)(properties.scheduleExpression)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().validateString)(properties.scheduleExpression)),errors.wrap('supplied properties not correct for "ScheduleConfigProperty"')}function convertCfnMonitoringScheduleScheduleConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleScheduleConfigPropertyValidator(properties).assertSuccess(),{DataAnalysisEndTime:cdk().stringToCloudFormation(properties.dataAnalysisEndTime),DataAnalysisStartTime:cdk().stringToCloudFormation(properties.dataAnalysisStartTime),ScheduleExpression:cdk().stringToCloudFormation(properties.scheduleExpression)}):properties}function CfnMonitoringScheduleScheduleConfigPropertyFromCloudFormation(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("dataAnalysisEndTime","DataAnalysisEndTime",properties.DataAnalysisEndTime!=null?cfn_parse().FromCloudFormation.getString(properties.DataAnalysisEndTime):void 0),ret.addPropertyResult("dataAnalysisStartTime","DataAnalysisStartTime",properties.DataAnalysisStartTime!=null?cfn_parse().FromCloudFormation.getString(properties.DataAnalysisStartTime):void 0),ret.addPropertyResult("scheduleExpression","ScheduleExpression",properties.ScheduleExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ScheduleExpression):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleCsvPropertyValidator(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("header",cdk().validateBoolean)(properties.header)),errors.wrap('supplied properties not correct for "CsvProperty"')}function convertCfnMonitoringScheduleCsvPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleCsvPropertyValidator(properties).assertSuccess(),{Header:cdk().booleanToCloudFormation(properties.header)}):properties}function CfnMonitoringScheduleCsvPropertyFromCloudFormation(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("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Header):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleJsonPropertyValidator(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("line",cdk().validateBoolean)(properties.line)),errors.wrap('supplied properties not correct for "JsonProperty"')}function convertCfnMonitoringScheduleJsonPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleJsonPropertyValidator(properties).assertSuccess(),{Line:cdk().booleanToCloudFormation(properties.line)}):properties}function CfnMonitoringScheduleJsonPropertyFromCloudFormation(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("line","Line",properties.Line!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Line):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleDatasetFormatPropertyValidator(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("csv",CfnMonitoringScheduleCsvPropertyValidator)(properties.csv)),errors.collect(cdk().propertyValidator("json",CfnMonitoringScheduleJsonPropertyValidator)(properties.json)),errors.collect(cdk().propertyValidator("parquet",cdk().validateBoolean)(properties.parquet)),errors.wrap('supplied properties not correct for "DatasetFormatProperty"')}function convertCfnMonitoringScheduleDatasetFormatPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleDatasetFormatPropertyValidator(properties).assertSuccess(),{Csv:convertCfnMonitoringScheduleCsvPropertyToCloudFormation(properties.csv),Json:convertCfnMonitoringScheduleJsonPropertyToCloudFormation(properties.json),Parquet:cdk().booleanToCloudFormation(properties.parquet)}):properties}function CfnMonitoringScheduleDatasetFormatPropertyFromCloudFormation(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("csv","Csv",properties.Csv!=null?CfnMonitoringScheduleCsvPropertyFromCloudFormation(properties.Csv):void 0),ret.addPropertyResult("json","Json",properties.Json!=null?CfnMonitoringScheduleJsonPropertyFromCloudFormation(properties.Json):void 0),ret.addPropertyResult("parquet","Parquet",properties.Parquet!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Parquet):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleBatchTransformInputPropertyValidator(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("dataCapturedDestinationS3Uri",cdk().requiredValidator)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("dataCapturedDestinationS3Uri",cdk().validateString)(properties.dataCapturedDestinationS3Uri)),errors.collect(cdk().propertyValidator("datasetFormat",cdk().requiredValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("datasetFormat",CfnMonitoringScheduleDatasetFormatPropertyValidator)(properties.datasetFormat)),errors.collect(cdk().propertyValidator("excludeFeaturesAttribute",cdk().validateString)(properties.excludeFeaturesAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.wrap('supplied properties not correct for "BatchTransformInputProperty"')}function convertCfnMonitoringScheduleBatchTransformInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleBatchTransformInputPropertyValidator(properties).assertSuccess(),{DataCapturedDestinationS3Uri:cdk().stringToCloudFormation(properties.dataCapturedDestinationS3Uri),DatasetFormat:convertCfnMonitoringScheduleDatasetFormatPropertyToCloudFormation(properties.datasetFormat),ExcludeFeaturesAttribute:cdk().stringToCloudFormation(properties.excludeFeaturesAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode)}):properties}function CfnMonitoringScheduleBatchTransformInputPropertyFromCloudFormation(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("dataCapturedDestinationS3Uri","DataCapturedDestinationS3Uri",properties.DataCapturedDestinationS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.DataCapturedDestinationS3Uri):void 0),ret.addPropertyResult("datasetFormat","DatasetFormat",properties.DatasetFormat!=null?CfnMonitoringScheduleDatasetFormatPropertyFromCloudFormation(properties.DatasetFormat):void 0),ret.addPropertyResult("excludeFeaturesAttribute","ExcludeFeaturesAttribute",properties.ExcludeFeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ExcludeFeaturesAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleEndpointInputPropertyValidator(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("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("excludeFeaturesAttribute",cdk().validateString)(properties.excludeFeaturesAttribute)),errors.collect(cdk().propertyValidator("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.wrap('supplied properties not correct for "EndpointInputProperty"')}function convertCfnMonitoringScheduleEndpointInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleEndpointInputPropertyValidator(properties).assertSuccess(),{EndpointName:cdk().stringToCloudFormation(properties.endpointName),ExcludeFeaturesAttribute:cdk().stringToCloudFormation(properties.excludeFeaturesAttribute),LocalPath:cdk().stringToCloudFormation(properties.localPath),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode)}):properties}function CfnMonitoringScheduleEndpointInputPropertyFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("excludeFeaturesAttribute","ExcludeFeaturesAttribute",properties.ExcludeFeaturesAttribute!=null?cfn_parse().FromCloudFormation.getString(properties.ExcludeFeaturesAttribute):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringInputPropertyValidator(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("batchTransformInput",CfnMonitoringScheduleBatchTransformInputPropertyValidator)(properties.batchTransformInput)),errors.collect(cdk().propertyValidator("endpointInput",CfnMonitoringScheduleEndpointInputPropertyValidator)(properties.endpointInput)),errors.wrap('supplied properties not correct for "MonitoringInputProperty"')}function convertCfnMonitoringScheduleMonitoringInputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringInputPropertyValidator(properties).assertSuccess(),{BatchTransformInput:convertCfnMonitoringScheduleBatchTransformInputPropertyToCloudFormation(properties.batchTransformInput),EndpointInput:convertCfnMonitoringScheduleEndpointInputPropertyToCloudFormation(properties.endpointInput)}):properties}function CfnMonitoringScheduleMonitoringInputPropertyFromCloudFormation(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("batchTransformInput","BatchTransformInput",properties.BatchTransformInput!=null?CfnMonitoringScheduleBatchTransformInputPropertyFromCloudFormation(properties.BatchTransformInput):void 0),ret.addPropertyResult("endpointInput","EndpointInput",properties.EndpointInput!=null?CfnMonitoringScheduleEndpointInputPropertyFromCloudFormation(properties.EndpointInput):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleClusterConfigPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().requiredValidator)(properties.volumeSizeInGb)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ClusterConfigProperty"')}function convertCfnMonitoringScheduleClusterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleClusterConfigPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnMonitoringScheduleClusterConfigPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringResourcesPropertyValidator(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("clusterConfig",cdk().requiredValidator)(properties.clusterConfig)),errors.collect(cdk().propertyValidator("clusterConfig",CfnMonitoringScheduleClusterConfigPropertyValidator)(properties.clusterConfig)),errors.wrap('supplied properties not correct for "MonitoringResourcesProperty"')}function convertCfnMonitoringScheduleMonitoringResourcesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringResourcesPropertyValidator(properties).assertSuccess(),{ClusterConfig:convertCfnMonitoringScheduleClusterConfigPropertyToCloudFormation(properties.clusterConfig)}):properties}function CfnMonitoringScheduleMonitoringResourcesPropertyFromCloudFormation(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("clusterConfig","ClusterConfig",properties.ClusterConfig!=null?CfnMonitoringScheduleClusterConfigPropertyFromCloudFormation(properties.ClusterConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleStatisticsResourcePropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "StatisticsResourceProperty"')}function convertCfnMonitoringScheduleStatisticsResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleStatisticsResourcePropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnMonitoringScheduleStatisticsResourcePropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleConstraintsResourcePropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "ConstraintsResourceProperty"')}function convertCfnMonitoringScheduleConstraintsResourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleConstraintsResourcePropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnMonitoringScheduleConstraintsResourcePropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleBaselineConfigPropertyValidator(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("constraintsResource",CfnMonitoringScheduleConstraintsResourcePropertyValidator)(properties.constraintsResource)),errors.collect(cdk().propertyValidator("statisticsResource",CfnMonitoringScheduleStatisticsResourcePropertyValidator)(properties.statisticsResource)),errors.wrap('supplied properties not correct for "BaselineConfigProperty"')}function convertCfnMonitoringScheduleBaselineConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleBaselineConfigPropertyValidator(properties).assertSuccess(),{ConstraintsResource:convertCfnMonitoringScheduleConstraintsResourcePropertyToCloudFormation(properties.constraintsResource),StatisticsResource:convertCfnMonitoringScheduleStatisticsResourcePropertyToCloudFormation(properties.statisticsResource)}):properties}function CfnMonitoringScheduleBaselineConfigPropertyFromCloudFormation(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("constraintsResource","ConstraintsResource",properties.ConstraintsResource!=null?CfnMonitoringScheduleConstraintsResourcePropertyFromCloudFormation(properties.ConstraintsResource):void 0),ret.addPropertyResult("statisticsResource","StatisticsResource",properties.StatisticsResource!=null?CfnMonitoringScheduleStatisticsResourcePropertyFromCloudFormation(properties.StatisticsResource):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleStoppingConditionPropertyValidator(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("maxRuntimeInSeconds",cdk().requiredValidator)(properties.maxRuntimeInSeconds)),errors.collect(cdk().propertyValidator("maxRuntimeInSeconds",cdk().validateNumber)(properties.maxRuntimeInSeconds)),errors.wrap('supplied properties not correct for "StoppingConditionProperty"')}function convertCfnMonitoringScheduleStoppingConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleStoppingConditionPropertyValidator(properties).assertSuccess(),{MaxRuntimeInSeconds:cdk().numberToCloudFormation(properties.maxRuntimeInSeconds)}):properties}function CfnMonitoringScheduleStoppingConditionPropertyFromCloudFormation(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("maxRuntimeInSeconds","MaxRuntimeInSeconds",properties.MaxRuntimeInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRuntimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringAppSpecificationPropertyValidator(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("containerArguments",cdk().listValidator(cdk().validateString))(properties.containerArguments)),errors.collect(cdk().propertyValidator("containerEntrypoint",cdk().listValidator(cdk().validateString))(properties.containerEntrypoint)),errors.collect(cdk().propertyValidator("imageUri",cdk().requiredValidator)(properties.imageUri)),errors.collect(cdk().propertyValidator("imageUri",cdk().validateString)(properties.imageUri)),errors.collect(cdk().propertyValidator("postAnalyticsProcessorSourceUri",cdk().validateString)(properties.postAnalyticsProcessorSourceUri)),errors.collect(cdk().propertyValidator("recordPreprocessorSourceUri",cdk().validateString)(properties.recordPreprocessorSourceUri)),errors.wrap('supplied properties not correct for "MonitoringAppSpecificationProperty"')}function convertCfnMonitoringScheduleMonitoringAppSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringAppSpecificationPropertyValidator(properties).assertSuccess(),{ContainerArguments:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerArguments),ContainerEntrypoint:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerEntrypoint),ImageUri:cdk().stringToCloudFormation(properties.imageUri),PostAnalyticsProcessorSourceUri:cdk().stringToCloudFormation(properties.postAnalyticsProcessorSourceUri),RecordPreprocessorSourceUri:cdk().stringToCloudFormation(properties.recordPreprocessorSourceUri)}):properties}function CfnMonitoringScheduleMonitoringAppSpecificationPropertyFromCloudFormation(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("containerArguments","ContainerArguments",properties.ContainerArguments!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerArguments):void 0),ret.addPropertyResult("containerEntrypoint","ContainerEntrypoint",properties.ContainerEntrypoint!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerEntrypoint):void 0),ret.addPropertyResult("imageUri","ImageUri",properties.ImageUri!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUri):void 0),ret.addPropertyResult("postAnalyticsProcessorSourceUri","PostAnalyticsProcessorSourceUri",properties.PostAnalyticsProcessorSourceUri!=null?cfn_parse().FromCloudFormation.getString(properties.PostAnalyticsProcessorSourceUri):void 0),ret.addPropertyResult("recordPreprocessorSourceUri","RecordPreprocessorSourceUri",properties.RecordPreprocessorSourceUri!=null?cfn_parse().FromCloudFormation.getString(properties.RecordPreprocessorSourceUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnMonitoringScheduleVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnMonitoringScheduleVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleNetworkConfigPropertyValidator(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("enableInterContainerTrafficEncryption",cdk().validateBoolean)(properties.enableInterContainerTrafficEncryption)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("vpcConfig",CfnMonitoringScheduleVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "NetworkConfigProperty"')}function convertCfnMonitoringScheduleNetworkConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleNetworkConfigPropertyValidator(properties).assertSuccess(),{EnableInterContainerTrafficEncryption:cdk().booleanToCloudFormation(properties.enableInterContainerTrafficEncryption),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),VpcConfig:convertCfnMonitoringScheduleVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnMonitoringScheduleNetworkConfigPropertyFromCloudFormation(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("enableInterContainerTrafficEncryption","EnableInterContainerTrafficEncryption",properties.EnableInterContainerTrafficEncryption!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableInterContainerTrafficEncryption):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnMonitoringScheduleVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleS3OutputPropertyValidator(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("localPath",cdk().requiredValidator)(properties.localPath)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3UploadMode",cdk().validateString)(properties.s3UploadMode)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3OutputProperty"')}function convertCfnMonitoringScheduleS3OutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleS3OutputPropertyValidator(properties).assertSuccess(),{LocalPath:cdk().stringToCloudFormation(properties.localPath),S3UploadMode:cdk().stringToCloudFormation(properties.s3UploadMode),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnMonitoringScheduleS3OutputPropertyFromCloudFormation(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("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3UploadMode","S3UploadMode",properties.S3UploadMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3UploadMode):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringOutputPropertyValidator(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("s3Output",cdk().requiredValidator)(properties.s3Output)),errors.collect(cdk().propertyValidator("s3Output",CfnMonitoringScheduleS3OutputPropertyValidator)(properties.s3Output)),errors.wrap('supplied properties not correct for "MonitoringOutputProperty"')}function convertCfnMonitoringScheduleMonitoringOutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringOutputPropertyValidator(properties).assertSuccess(),{S3Output:convertCfnMonitoringScheduleS3OutputPropertyToCloudFormation(properties.s3Output)}):properties}function CfnMonitoringScheduleMonitoringOutputPropertyFromCloudFormation(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("s3Output","S3Output",properties.S3Output!=null?CfnMonitoringScheduleS3OutputPropertyFromCloudFormation(properties.S3Output):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("monitoringOutputs",cdk().requiredValidator)(properties.monitoringOutputs)),errors.collect(cdk().propertyValidator("monitoringOutputs",cdk().listValidator(CfnMonitoringScheduleMonitoringOutputPropertyValidator))(properties.monitoringOutputs)),errors.wrap('supplied properties not correct for "MonitoringOutputConfigProperty"')}function convertCfnMonitoringScheduleMonitoringOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),MonitoringOutputs:cdk().listMapper(convertCfnMonitoringScheduleMonitoringOutputPropertyToCloudFormation)(properties.monitoringOutputs)}):properties}function CfnMonitoringScheduleMonitoringOutputConfigPropertyFromCloudFormation(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.addPropertyResult("monitoringOutputs","MonitoringOutputs",properties.MonitoringOutputs!=null?cfn_parse().FromCloudFormation.getArray(CfnMonitoringScheduleMonitoringOutputPropertyFromCloudFormation)(properties.MonitoringOutputs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringJobDefinitionPropertyValidator(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("baselineConfig",CfnMonitoringScheduleBaselineConfigPropertyValidator)(properties.baselineConfig)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("monitoringAppSpecification",cdk().requiredValidator)(properties.monitoringAppSpecification)),errors.collect(cdk().propertyValidator("monitoringAppSpecification",CfnMonitoringScheduleMonitoringAppSpecificationPropertyValidator)(properties.monitoringAppSpecification)),errors.collect(cdk().propertyValidator("monitoringInputs",cdk().requiredValidator)(properties.monitoringInputs)),errors.collect(cdk().propertyValidator("monitoringInputs",cdk().listValidator(CfnMonitoringScheduleMonitoringInputPropertyValidator))(properties.monitoringInputs)),errors.collect(cdk().propertyValidator("monitoringOutputConfig",cdk().requiredValidator)(properties.monitoringOutputConfig)),errors.collect(cdk().propertyValidator("monitoringOutputConfig",CfnMonitoringScheduleMonitoringOutputConfigPropertyValidator)(properties.monitoringOutputConfig)),errors.collect(cdk().propertyValidator("monitoringResources",cdk().requiredValidator)(properties.monitoringResources)),errors.collect(cdk().propertyValidator("monitoringResources",CfnMonitoringScheduleMonitoringResourcesPropertyValidator)(properties.monitoringResources)),errors.collect(cdk().propertyValidator("networkConfig",CfnMonitoringScheduleNetworkConfigPropertyValidator)(properties.networkConfig)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("stoppingCondition",CfnMonitoringScheduleStoppingConditionPropertyValidator)(properties.stoppingCondition)),errors.wrap('supplied properties not correct for "MonitoringJobDefinitionProperty"')}function convertCfnMonitoringScheduleMonitoringJobDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringJobDefinitionPropertyValidator(properties).assertSuccess(),{BaselineConfig:convertCfnMonitoringScheduleBaselineConfigPropertyToCloudFormation(properties.baselineConfig),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),MonitoringAppSpecification:convertCfnMonitoringScheduleMonitoringAppSpecificationPropertyToCloudFormation(properties.monitoringAppSpecification),MonitoringInputs:cdk().listMapper(convertCfnMonitoringScheduleMonitoringInputPropertyToCloudFormation)(properties.monitoringInputs),MonitoringOutputConfig:convertCfnMonitoringScheduleMonitoringOutputConfigPropertyToCloudFormation(properties.monitoringOutputConfig),MonitoringResources:convertCfnMonitoringScheduleMonitoringResourcesPropertyToCloudFormation(properties.monitoringResources),NetworkConfig:convertCfnMonitoringScheduleNetworkConfigPropertyToCloudFormation(properties.networkConfig),RoleArn:cdk().stringToCloudFormation(properties.roleArn),StoppingCondition:convertCfnMonitoringScheduleStoppingConditionPropertyToCloudFormation(properties.stoppingCondition)}):properties}function CfnMonitoringScheduleMonitoringJobDefinitionPropertyFromCloudFormation(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("baselineConfig","BaselineConfig",properties.BaselineConfig!=null?CfnMonitoringScheduleBaselineConfigPropertyFromCloudFormation(properties.BaselineConfig):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("monitoringAppSpecification","MonitoringAppSpecification",properties.MonitoringAppSpecification!=null?CfnMonitoringScheduleMonitoringAppSpecificationPropertyFromCloudFormation(properties.MonitoringAppSpecification):void 0),ret.addPropertyResult("monitoringInputs","MonitoringInputs",properties.MonitoringInputs!=null?cfn_parse().FromCloudFormation.getArray(CfnMonitoringScheduleMonitoringInputPropertyFromCloudFormation)(properties.MonitoringInputs):void 0),ret.addPropertyResult("monitoringOutputConfig","MonitoringOutputConfig",properties.MonitoringOutputConfig!=null?CfnMonitoringScheduleMonitoringOutputConfigPropertyFromCloudFormation(properties.MonitoringOutputConfig):void 0),ret.addPropertyResult("monitoringResources","MonitoringResources",properties.MonitoringResources!=null?CfnMonitoringScheduleMonitoringResourcesPropertyFromCloudFormation(properties.MonitoringResources):void 0),ret.addPropertyResult("networkConfig","NetworkConfig",properties.NetworkConfig!=null?CfnMonitoringScheduleNetworkConfigPropertyFromCloudFormation(properties.NetworkConfig):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("stoppingCondition","StoppingCondition",properties.StoppingCondition!=null?CfnMonitoringScheduleStoppingConditionPropertyFromCloudFormation(properties.StoppingCondition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringScheduleConfigPropertyValidator(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("monitoringJobDefinition",CfnMonitoringScheduleMonitoringJobDefinitionPropertyValidator)(properties.monitoringJobDefinition)),errors.collect(cdk().propertyValidator("monitoringJobDefinitionName",cdk().validateString)(properties.monitoringJobDefinitionName)),errors.collect(cdk().propertyValidator("monitoringType",cdk().validateString)(properties.monitoringType)),errors.collect(cdk().propertyValidator("scheduleConfig",CfnMonitoringScheduleScheduleConfigPropertyValidator)(properties.scheduleConfig)),errors.wrap('supplied properties not correct for "MonitoringScheduleConfigProperty"')}function convertCfnMonitoringScheduleMonitoringScheduleConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringScheduleConfigPropertyValidator(properties).assertSuccess(),{MonitoringJobDefinition:convertCfnMonitoringScheduleMonitoringJobDefinitionPropertyToCloudFormation(properties.monitoringJobDefinition),MonitoringJobDefinitionName:cdk().stringToCloudFormation(properties.monitoringJobDefinitionName),MonitoringType:cdk().stringToCloudFormation(properties.monitoringType),ScheduleConfig:convertCfnMonitoringScheduleScheduleConfigPropertyToCloudFormation(properties.scheduleConfig)}):properties}function CfnMonitoringScheduleMonitoringScheduleConfigPropertyFromCloudFormation(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("monitoringJobDefinition","MonitoringJobDefinition",properties.MonitoringJobDefinition!=null?CfnMonitoringScheduleMonitoringJobDefinitionPropertyFromCloudFormation(properties.MonitoringJobDefinition):void 0),ret.addPropertyResult("monitoringJobDefinitionName","MonitoringJobDefinitionName",properties.MonitoringJobDefinitionName!=null?cfn_parse().FromCloudFormation.getString(properties.MonitoringJobDefinitionName):void 0),ret.addPropertyResult("monitoringType","MonitoringType",properties.MonitoringType!=null?cfn_parse().FromCloudFormation.getString(properties.MonitoringType):void 0),ret.addPropertyResult("scheduleConfig","ScheduleConfig",properties.ScheduleConfig!=null?CfnMonitoringScheduleScheduleConfigPropertyFromCloudFormation(properties.ScheduleConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringScheduleMonitoringExecutionSummaryPropertyValidator(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("creationTime",cdk().requiredValidator)(properties.creationTime)),errors.collect(cdk().propertyValidator("creationTime",cdk().validateString)(properties.creationTime)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("failureReason",cdk().validateString)(properties.failureReason)),errors.collect(cdk().propertyValidator("lastModifiedTime",cdk().requiredValidator)(properties.lastModifiedTime)),errors.collect(cdk().propertyValidator("lastModifiedTime",cdk().validateString)(properties.lastModifiedTime)),errors.collect(cdk().propertyValidator("monitoringExecutionStatus",cdk().requiredValidator)(properties.monitoringExecutionStatus)),errors.collect(cdk().propertyValidator("monitoringExecutionStatus",cdk().validateString)(properties.monitoringExecutionStatus)),errors.collect(cdk().propertyValidator("monitoringScheduleName",cdk().requiredValidator)(properties.monitoringScheduleName)),errors.collect(cdk().propertyValidator("monitoringScheduleName",cdk().validateString)(properties.monitoringScheduleName)),errors.collect(cdk().propertyValidator("processingJobArn",cdk().validateString)(properties.processingJobArn)),errors.collect(cdk().propertyValidator("scheduledTime",cdk().requiredValidator)(properties.scheduledTime)),errors.collect(cdk().propertyValidator("scheduledTime",cdk().validateString)(properties.scheduledTime)),errors.wrap('supplied properties not correct for "MonitoringExecutionSummaryProperty"')}function convertCfnMonitoringScheduleMonitoringExecutionSummaryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringScheduleMonitoringExecutionSummaryPropertyValidator(properties).assertSuccess(),{CreationTime:cdk().stringToCloudFormation(properties.creationTime),EndpointName:cdk().stringToCloudFormation(properties.endpointName),FailureReason:cdk().stringToCloudFormation(properties.failureReason),LastModifiedTime:cdk().stringToCloudFormation(properties.lastModifiedTime),MonitoringExecutionStatus:cdk().stringToCloudFormation(properties.monitoringExecutionStatus),MonitoringScheduleName:cdk().stringToCloudFormation(properties.monitoringScheduleName),ProcessingJobArn:cdk().stringToCloudFormation(properties.processingJobArn),ScheduledTime:cdk().stringToCloudFormation(properties.scheduledTime)}):properties}function CfnMonitoringScheduleMonitoringExecutionSummaryPropertyFromCloudFormation(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("creationTime","CreationTime",properties.CreationTime!=null?cfn_parse().FromCloudFormation.getString(properties.CreationTime):void 0),ret.addPropertyResult("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("failureReason","FailureReason",properties.FailureReason!=null?cfn_parse().FromCloudFormation.getString(properties.FailureReason):void 0),ret.addPropertyResult("lastModifiedTime","LastModifiedTime",properties.LastModifiedTime!=null?cfn_parse().FromCloudFormation.getString(properties.LastModifiedTime):void 0),ret.addPropertyResult("monitoringExecutionStatus","MonitoringExecutionStatus",properties.MonitoringExecutionStatus!=null?cfn_parse().FromCloudFormation.getString(properties.MonitoringExecutionStatus):void 0),ret.addPropertyResult("monitoringScheduleName","MonitoringScheduleName",properties.MonitoringScheduleName!=null?cfn_parse().FromCloudFormation.getString(properties.MonitoringScheduleName):void 0),ret.addPropertyResult("processingJobArn","ProcessingJobArn",properties.ProcessingJobArn!=null?cfn_parse().FromCloudFormation.getString(properties.ProcessingJobArn):void 0),ret.addPropertyResult("scheduledTime","ScheduledTime",properties.ScheduledTime!=null?cfn_parse().FromCloudFormation.getString(properties.ScheduledTime):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMonitoringSchedulePropsValidator(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("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("failureReason",cdk().validateString)(properties.failureReason)),errors.collect(cdk().propertyValidator("lastMonitoringExecutionSummary",CfnMonitoringScheduleMonitoringExecutionSummaryPropertyValidator)(properties.lastMonitoringExecutionSummary)),errors.collect(cdk().propertyValidator("monitoringScheduleConfig",cdk().requiredValidator)(properties.monitoringScheduleConfig)),errors.collect(cdk().propertyValidator("monitoringScheduleConfig",CfnMonitoringScheduleMonitoringScheduleConfigPropertyValidator)(properties.monitoringScheduleConfig)),errors.collect(cdk().propertyValidator("monitoringScheduleName",cdk().requiredValidator)(properties.monitoringScheduleName)),errors.collect(cdk().propertyValidator("monitoringScheduleName",cdk().validateString)(properties.monitoringScheduleName)),errors.collect(cdk().propertyValidator("monitoringScheduleStatus",cdk().validateString)(properties.monitoringScheduleStatus)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMonitoringScheduleProps"')}function convertCfnMonitoringSchedulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMonitoringSchedulePropsValidator(properties).assertSuccess(),{EndpointName:cdk().stringToCloudFormation(properties.endpointName),FailureReason:cdk().stringToCloudFormation(properties.failureReason),LastMonitoringExecutionSummary:convertCfnMonitoringScheduleMonitoringExecutionSummaryPropertyToCloudFormation(properties.lastMonitoringExecutionSummary),MonitoringScheduleConfig:convertCfnMonitoringScheduleMonitoringScheduleConfigPropertyToCloudFormation(properties.monitoringScheduleConfig),MonitoringScheduleName:cdk().stringToCloudFormation(properties.monitoringScheduleName),MonitoringScheduleStatus:cdk().stringToCloudFormation(properties.monitoringScheduleStatus),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMonitoringSchedulePropsFromCloudFormation(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("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("failureReason","FailureReason",properties.FailureReason!=null?cfn_parse().FromCloudFormation.getString(properties.FailureReason):void 0),ret.addPropertyResult("lastMonitoringExecutionSummary","LastMonitoringExecutionSummary",properties.LastMonitoringExecutionSummary!=null?CfnMonitoringScheduleMonitoringExecutionSummaryPropertyFromCloudFormation(properties.LastMonitoringExecutionSummary):void 0),ret.addPropertyResult("monitoringScheduleConfig","MonitoringScheduleConfig",properties.MonitoringScheduleConfig!=null?CfnMonitoringScheduleMonitoringScheduleConfigPropertyFromCloudFormation(properties.MonitoringScheduleConfig):void 0),ret.addPropertyResult("monitoringScheduleName","MonitoringScheduleName",properties.MonitoringScheduleName!=null?cfn_parse().FromCloudFormation.getString(properties.MonitoringScheduleName):void 0),ret.addPropertyResult("monitoringScheduleStatus","MonitoringScheduleStatus",properties.MonitoringScheduleStatus!=null?cfn_parse().FromCloudFormation.getString(properties.MonitoringScheduleStatus):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 CfnNotebookInstance extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnNotebookInstance",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::NotebookInstance";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnNotebookInstancePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnNotebookInstance(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 isCfnNotebookInstance(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnNotebookInstance.CFN_RESOURCE_TYPE_NAME}static arnForNotebookInstance(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_INotebookInstanceRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForNotebookInstance),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:notebook-instance/${NotebookInstanceName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,NotebookInstanceName:resource.notebookInstanceRef.notebookInstanceName})}_acceleratorTypes;_additionalCodeRepositories;_defaultCodeRepository;_directInternetAccess;_instanceMetadataServiceConfiguration;_instanceType;_kmsKeyId;_lifecycleConfigName;_notebookInstanceName;_platformIdentifier;_roleArn;_rootAccess;_securityGroupIds;_subnetId;tags;_tagsRaw;_volumeSizeInGb;cfnPropertyNames={acceleratorTypes:"AcceleratorTypes",additionalCodeRepositories:"AdditionalCodeRepositories",defaultCodeRepository:"DefaultCodeRepository",directInternetAccess:"DirectInternetAccess",instanceMetadataServiceConfiguration:"InstanceMetadataServiceConfiguration",instanceType:"InstanceType",kmsKeyId:"KmsKeyId",lifecycleConfigName:"LifecycleConfigName",notebookInstanceName:"NotebookInstanceName",platformIdentifier:"PlatformIdentifier",roleArn:"RoleArn",rootAccess:"RootAccess",securityGroupIds:"SecurityGroupIds",subnetId:"SubnetId",tags:"Tags",volumeSizeInGb:"VolumeSizeInGB"};constructor(scope,id,props){super(scope,id,{type:CfnNotebookInstance.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnNotebookInstanceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnNotebookInstance),error}cdk().requireProperty(props,"instanceType",this),cdk().requireProperty(props,"roleArn",this),this._acceleratorTypes=props.acceleratorTypes,this._additionalCodeRepositories=props.additionalCodeRepositories,this._defaultCodeRepository=props.defaultCodeRepository,this._directInternetAccess=props.directInternetAccess,this._instanceMetadataServiceConfiguration=props.instanceMetadataServiceConfiguration,this._instanceType=props.instanceType,this._kmsKeyId=props.kmsKeyId,this._lifecycleConfigName=props.lifecycleConfigName,this._notebookInstanceName=props.notebookInstanceName,this._platformIdentifier=props.platformIdentifier,this._roleArn=props.roleArn,this._rootAccess=props.rootAccess,this._securityGroupIds=props.securityGroupIds,this._subnetId=props.subnetId,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::NotebookInstance",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._volumeSizeInGb=props.volumeSizeInGb}get notebookInstanceRef(){return{notebookInstanceId:this.ref,notebookInstanceName:this.attrNotebookInstanceName}}get acceleratorTypes(){return this._acceleratorTypes}set acceleratorTypes(value){cdk().traceProperty(this.node,"AcceleratorTypes"),this._acceleratorTypes=value}get additionalCodeRepositories(){return this._additionalCodeRepositories}set additionalCodeRepositories(value){cdk().traceProperty(this.node,"AdditionalCodeRepositories"),this._additionalCodeRepositories=value}get defaultCodeRepository(){return this._defaultCodeRepository}set defaultCodeRepository(value){cdk().traceProperty(this.node,"DefaultCodeRepository"),this._defaultCodeRepository=value}get directInternetAccess(){return this._directInternetAccess}set directInternetAccess(value){cdk().traceProperty(this.node,"DirectInternetAccess"),this._directInternetAccess=value}get instanceMetadataServiceConfiguration(){return this._instanceMetadataServiceConfiguration}set instanceMetadataServiceConfiguration(value){cdk().traceProperty(this.node,"InstanceMetadataServiceConfiguration"),this._instanceMetadataServiceConfiguration=value}get instanceType(){return this._instanceType}set instanceType(value){cdk().traceProperty(this.node,"InstanceType"),this._instanceType=value}get kmsKeyId(){return this._kmsKeyId}set kmsKeyId(value){cdk().traceProperty(this.node,"KmsKeyId"),this._kmsKeyId=value}get lifecycleConfigName(){return this._lifecycleConfigName}set lifecycleConfigName(value){cdk().traceProperty(this.node,"LifecycleConfigName"),this._lifecycleConfigName=value}get notebookInstanceName(){return this._notebookInstanceName}set notebookInstanceName(value){cdk().traceProperty(this.node,"NotebookInstanceName"),this._notebookInstanceName=value}get platformIdentifier(){return this._platformIdentifier}set platformIdentifier(value){cdk().traceProperty(this.node,"PlatformIdentifier"),this._platformIdentifier=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get rootAccess(){return this._rootAccess}set rootAccess(value){cdk().traceProperty(this.node,"RootAccess"),this._rootAccess=value}get securityGroupIds(){return this._securityGroupIds}set securityGroupIds(value){cdk().traceProperty(this.node,"SecurityGroupIds"),this._securityGroupIds=value}get subnetId(){return this._subnetId}set subnetId(value){cdk().traceProperty(this.node,"SubnetId"),this._subnetId=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get volumeSizeInGb(){return this._volumeSizeInGb}set volumeSizeInGb(value){cdk().traceProperty(this.node,"VolumeSizeInGB"),this._volumeSizeInGb=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrNotebookInstanceName(){return cdk().Token.asString(this.getAtt("NotebookInstanceName",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{acceleratorTypes:this._acceleratorTypes,additionalCodeRepositories:this._additionalCodeRepositories,defaultCodeRepository:this._defaultCodeRepository,directInternetAccess:this._directInternetAccess,instanceMetadataServiceConfiguration:this._instanceMetadataServiceConfiguration,instanceType:this._instanceType,kmsKeyId:this._kmsKeyId,lifecycleConfigName:this._lifecycleConfigName,notebookInstanceName:this._notebookInstanceName,platformIdentifier:this._platformIdentifier,roleArn:this._roleArn,rootAccess:this._rootAccess,securityGroupIds:this._securityGroupIds,subnetId:this._subnetId,tags:this.tags.renderTags(),volumeSizeInGb:this._volumeSizeInGb}}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",CfnNotebookInstance.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnNotebookInstancePropsToCloudFormation(props)}}exports.CfnNotebookInstance=CfnNotebookInstance;function CfnNotebookInstanceInstanceMetadataServiceConfigurationPropertyValidator(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("minimumInstanceMetadataServiceVersion",cdk().requiredValidator)(properties.minimumInstanceMetadataServiceVersion)),errors.collect(cdk().propertyValidator("minimumInstanceMetadataServiceVersion",cdk().validateString)(properties.minimumInstanceMetadataServiceVersion)),errors.wrap('supplied properties not correct for "InstanceMetadataServiceConfigurationProperty"')}function convertCfnNotebookInstanceInstanceMetadataServiceConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnNotebookInstanceInstanceMetadataServiceConfigurationPropertyValidator(properties).assertSuccess(),{MinimumInstanceMetadataServiceVersion:cdk().stringToCloudFormation(properties.minimumInstanceMetadataServiceVersion)}):properties}function CfnNotebookInstanceInstanceMetadataServiceConfigurationPropertyFromCloudFormation(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("minimumInstanceMetadataServiceVersion","MinimumInstanceMetadataServiceVersion",properties.MinimumInstanceMetadataServiceVersion!=null?cfn_parse().FromCloudFormation.getString(properties.MinimumInstanceMetadataServiceVersion):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnNotebookInstancePropsValidator(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("acceleratorTypes",cdk().listValidator(cdk().validateString))(properties.acceleratorTypes)),errors.collect(cdk().propertyValidator("additionalCodeRepositories",cdk().listValidator(cdk().validateString))(properties.additionalCodeRepositories)),errors.collect(cdk().propertyValidator("defaultCodeRepository",cdk().validateString)(properties.defaultCodeRepository)),errors.collect(cdk().propertyValidator("directInternetAccess",cdk().validateString)(properties.directInternetAccess)),errors.collect(cdk().propertyValidator("instanceMetadataServiceConfiguration",CfnNotebookInstanceInstanceMetadataServiceConfigurationPropertyValidator)(properties.instanceMetadataServiceConfiguration)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("lifecycleConfigName",cdk().validateString)(properties.lifecycleConfigName)),errors.collect(cdk().propertyValidator("notebookInstanceName",cdk().validateString)(properties.notebookInstanceName)),errors.collect(cdk().propertyValidator("platformIdentifier",cdk().validateString)(properties.platformIdentifier)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("rootAccess",cdk().validateString)(properties.rootAccess)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnetId",cdk().validateString)(properties.subnetId)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "CfnNotebookInstanceProps"')}function convertCfnNotebookInstancePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnNotebookInstancePropsValidator(properties).assertSuccess(),{AcceleratorTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.acceleratorTypes),AdditionalCodeRepositories:cdk().listMapper(cdk().stringToCloudFormation)(properties.additionalCodeRepositories),DefaultCodeRepository:cdk().stringToCloudFormation(properties.defaultCodeRepository),DirectInternetAccess:cdk().stringToCloudFormation(properties.directInternetAccess),InstanceMetadataServiceConfiguration:convertCfnNotebookInstanceInstanceMetadataServiceConfigurationPropertyToCloudFormation(properties.instanceMetadataServiceConfiguration),InstanceType:cdk().stringToCloudFormation(properties.instanceType),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),LifecycleConfigName:cdk().stringToCloudFormation(properties.lifecycleConfigName),NotebookInstanceName:cdk().stringToCloudFormation(properties.notebookInstanceName),PlatformIdentifier:cdk().stringToCloudFormation(properties.platformIdentifier),RoleArn:cdk().stringToCloudFormation(properties.roleArn),RootAccess:cdk().stringToCloudFormation(properties.rootAccess),SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),SubnetId:cdk().stringToCloudFormation(properties.subnetId),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnNotebookInstancePropsFromCloudFormation(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("acceleratorTypes","AcceleratorTypes",properties.AcceleratorTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AcceleratorTypes):void 0),ret.addPropertyResult("additionalCodeRepositories","AdditionalCodeRepositories",properties.AdditionalCodeRepositories!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AdditionalCodeRepositories):void 0),ret.addPropertyResult("defaultCodeRepository","DefaultCodeRepository",properties.DefaultCodeRepository!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultCodeRepository):void 0),ret.addPropertyResult("directInternetAccess","DirectInternetAccess",properties.DirectInternetAccess!=null?cfn_parse().FromCloudFormation.getString(properties.DirectInternetAccess):void 0),ret.addPropertyResult("instanceMetadataServiceConfiguration","InstanceMetadataServiceConfiguration",properties.InstanceMetadataServiceConfiguration!=null?CfnNotebookInstanceInstanceMetadataServiceConfigurationPropertyFromCloudFormation(properties.InstanceMetadataServiceConfiguration):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("lifecycleConfigName","LifecycleConfigName",properties.LifecycleConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.LifecycleConfigName):void 0),ret.addPropertyResult("notebookInstanceName","NotebookInstanceName",properties.NotebookInstanceName!=null?cfn_parse().FromCloudFormation.getString(properties.NotebookInstanceName):void 0),ret.addPropertyResult("platformIdentifier","PlatformIdentifier",properties.PlatformIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.PlatformIdentifier):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("rootAccess","RootAccess",properties.RootAccess!=null?cfn_parse().FromCloudFormation.getString(properties.RootAccess):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnetId","SubnetId",properties.SubnetId!=null?cfn_parse().FromCloudFormation.getString(properties.SubnetId):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnNotebookInstanceLifecycleConfig extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnNotebookInstanceLifecycleConfig",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::NotebookInstanceLifecycleConfig";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnNotebookInstanceLifecycleConfigPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnNotebookInstanceLifecycleConfig(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 isCfnNotebookInstanceLifecycleConfig(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnNotebookInstanceLifecycleConfig.CFN_RESOURCE_TYPE_NAME}static arnForNotebookInstanceLifecycleConfig(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_INotebookInstanceLifecycleConfigRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForNotebookInstanceLifecycleConfig),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:notebook-instance-lifecycle-config/${NotebookInstanceLifecycleConfigName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,NotebookInstanceLifecycleConfigName:resource.notebookInstanceLifecycleConfigRef.notebookInstanceLifecycleConfigName})}_notebookInstanceLifecycleConfigName;_onCreate;_onStart;cfnPropertyNames={notebookInstanceLifecycleConfigName:"NotebookInstanceLifecycleConfigName",onCreate:"OnCreate",onStart:"OnStart"};constructor(scope,id,props={}){super(scope,id,{type:CfnNotebookInstanceLifecycleConfig.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnNotebookInstanceLifecycleConfigProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnNotebookInstanceLifecycleConfig),error}this._notebookInstanceLifecycleConfigName=props.notebookInstanceLifecycleConfigName,this._onCreate=props.onCreate,this._onStart=props.onStart}get notebookInstanceLifecycleConfigRef(){return{notebookInstanceLifecycleConfigId:this.ref,notebookInstanceLifecycleConfigName:this.attrNotebookInstanceLifecycleConfigName}}get notebookInstanceLifecycleConfigName(){return this._notebookInstanceLifecycleConfigName}set notebookInstanceLifecycleConfigName(value){cdk().traceProperty(this.node,"NotebookInstanceLifecycleConfigName"),this._notebookInstanceLifecycleConfigName=value}get onCreate(){return this._onCreate}set onCreate(value){cdk().traceProperty(this.node,"OnCreate"),this._onCreate=value}get onStart(){return this._onStart}set onStart(value){cdk().traceProperty(this.node,"OnStart"),this._onStart=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrNotebookInstanceLifecycleConfigName(){return cdk().Token.asString(this.getAtt("NotebookInstanceLifecycleConfigName",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{notebookInstanceLifecycleConfigName:this._notebookInstanceLifecycleConfigName,onCreate:this._onCreate,onStart:this._onStart}}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",CfnNotebookInstanceLifecycleConfig.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnNotebookInstanceLifecycleConfigPropsToCloudFormation(props)}}exports.CfnNotebookInstanceLifecycleConfig=CfnNotebookInstanceLifecycleConfig;function CfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyValidator(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 "NotebookInstanceLifecycleHookProperty"')}function convertCfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyValidator(properties).assertSuccess(),{Content:cdk().stringToCloudFormation(properties.content)}):properties}function CfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyFromCloudFormation(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 CfnNotebookInstanceLifecycleConfigPropsValidator(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("notebookInstanceLifecycleConfigName",cdk().validateString)(properties.notebookInstanceLifecycleConfigName)),errors.collect(cdk().propertyValidator("onCreate",cdk().listValidator(CfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyValidator))(properties.onCreate)),errors.collect(cdk().propertyValidator("onStart",cdk().listValidator(CfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyValidator))(properties.onStart)),errors.wrap('supplied properties not correct for "CfnNotebookInstanceLifecycleConfigProps"')}function convertCfnNotebookInstanceLifecycleConfigPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnNotebookInstanceLifecycleConfigPropsValidator(properties).assertSuccess(),{NotebookInstanceLifecycleConfigName:cdk().stringToCloudFormation(properties.notebookInstanceLifecycleConfigName),OnCreate:cdk().listMapper(convertCfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyToCloudFormation)(properties.onCreate),OnStart:cdk().listMapper(convertCfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyToCloudFormation)(properties.onStart)}):properties}function CfnNotebookInstanceLifecycleConfigPropsFromCloudFormation(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("notebookInstanceLifecycleConfigName","NotebookInstanceLifecycleConfigName",properties.NotebookInstanceLifecycleConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.NotebookInstanceLifecycleConfigName):void 0),ret.addPropertyResult("onCreate","OnCreate",properties.OnCreate!=null?cfn_parse().FromCloudFormation.getArray(CfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyFromCloudFormation)(properties.OnCreate):void 0),ret.addPropertyResult("onStart","OnStart",properties.OnStart!=null?cfn_parse().FromCloudFormation.getArray(CfnNotebookInstanceLifecycleConfigNotebookInstanceLifecycleHookPropertyFromCloudFormation)(properties.OnStart):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnPipeline extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnPipeline",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Pipeline";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPipelinePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnPipeline(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 isCfnPipeline(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnPipeline.CFN_RESOURCE_TYPE_NAME}static fromPipelineName(scope,id,pipelineName){class Import extends cdk().Resource{pipelineRef;constructor(scope2,id2,pipelineName2){super(scope2,id2),this.pipelineRef={pipelineName:pipelineName2}}}return new Import(scope,id,pipelineName)}static arnForPipeline(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IPipelineRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForPipeline),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:pipeline/${PipelineName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,PipelineName:resource.pipelineRef.pipelineName})}_parallelismConfiguration;_pipelineDefinition;_pipelineDescription;_pipelineDisplayName;_pipelineName;_roleArn;tags;_tagsRaw;cfnPropertyNames={parallelismConfiguration:"ParallelismConfiguration",pipelineDefinition:"PipelineDefinition",pipelineDescription:"PipelineDescription",pipelineDisplayName:"PipelineDisplayName",pipelineName:"PipelineName",roleArn:"RoleArn",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnPipeline.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnPipelineProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnPipeline),error}cdk().requireProperty(props,"pipelineDefinition",this),cdk().requireProperty(props,"pipelineName",this),cdk().requireProperty(props,"roleArn",this),this._parallelismConfiguration=props.parallelismConfiguration,this._pipelineDefinition=props.pipelineDefinition,this._pipelineDescription=props.pipelineDescription,this._pipelineDisplayName=props.pipelineDisplayName,this._pipelineName=props.pipelineName,this._roleArn=cdk().getRefProperty(props.roleArn?.roleRef,"roleArn")??cdk().ensureStringOrUndefined(props.roleArn,"roleArn","iam.IRoleRef | string"),this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Pipeline",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get pipelineRef(){return{pipelineName:this.ref}}get parallelismConfiguration(){return this._parallelismConfiguration}set parallelismConfiguration(value){cdk().traceProperty(this.node,"ParallelismConfiguration"),this._parallelismConfiguration=value}get pipelineDefinition(){return this._pipelineDefinition}set pipelineDefinition(value){cdk().traceProperty(this.node,"PipelineDefinition"),this._pipelineDefinition=value}get pipelineDescription(){return this._pipelineDescription}set pipelineDescription(value){cdk().traceProperty(this.node,"PipelineDescription"),this._pipelineDescription=value}get pipelineDisplayName(){return this._pipelineDisplayName}set pipelineDisplayName(value){cdk().traceProperty(this.node,"PipelineDisplayName"),this._pipelineDisplayName=value}get pipelineName(){return this._pipelineName}set pipelineName(value){cdk().traceProperty(this.node,"PipelineName"),this._pipelineName=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get cfnProperties(){return{parallelismConfiguration:this._parallelismConfiguration,pipelineDefinition:this._pipelineDefinition,pipelineDescription:this._pipelineDescription,pipelineDisplayName:this._pipelineDisplayName,pipelineName:this._pipelineName,roleArn:this._roleArn,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",CfnPipeline.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnPipelinePropsToCloudFormation(props)}}exports.CfnPipeline=CfnPipeline;function CfnPipelineParallelismConfigurationPropertyValidator(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("maxParallelExecutionSteps",cdk().requiredValidator)(properties.maxParallelExecutionSteps)),errors.collect(cdk().propertyValidator("maxParallelExecutionSteps",cdk().validateNumber)(properties.maxParallelExecutionSteps)),errors.wrap('supplied properties not correct for "ParallelismConfigurationProperty"')}function convertCfnPipelineParallelismConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPipelineParallelismConfigurationPropertyValidator(properties).assertSuccess(),{MaxParallelExecutionSteps:cdk().numberToCloudFormation(properties.maxParallelExecutionSteps)}):properties}function CfnPipelineParallelismConfigurationPropertyFromCloudFormation(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("maxParallelExecutionSteps","MaxParallelExecutionSteps",properties.MaxParallelExecutionSteps!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxParallelExecutionSteps):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPipelineS3LocationPropertyValidator(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("bucket",cdk().requiredValidator)(properties.bucket)),errors.collect(cdk().propertyValidator("bucket",cdk().validateString)(properties.bucket)),errors.collect(cdk().propertyValidator("eTag",cdk().validateString)(properties.eTag)),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("version",cdk().validateString)(properties.version)),errors.wrap('supplied properties not correct for "S3LocationProperty"')}function convertCfnPipelineS3LocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPipelineS3LocationPropertyValidator(properties).assertSuccess(),{Bucket:cdk().stringToCloudFormation(properties.bucket),ETag:cdk().stringToCloudFormation(properties.eTag),Key:cdk().stringToCloudFormation(properties.key),Version:cdk().stringToCloudFormation(properties.version)}):properties}function CfnPipelineS3LocationPropertyFromCloudFormation(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("bucket","Bucket",properties.Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.Bucket):void 0),ret.addPropertyResult("eTag","ETag",properties.ETag!=null?cfn_parse().FromCloudFormation.getString(properties.ETag):void 0),ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse().FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPipelinePipelineDefinitionPropertyValidator(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("pipelineDefinitionBody",cdk().requiredValidator)(properties.pipelineDefinitionBody)),errors.collect(cdk().propertyValidator("pipelineDefinitionBody",cdk().validateString)(properties.pipelineDefinitionBody)),errors.collect(cdk().propertyValidator("pipelineDefinitionS3Location",CfnPipelineS3LocationPropertyValidator)(properties.pipelineDefinitionS3Location)),errors.wrap('supplied properties not correct for "PipelineDefinitionProperty"')}function convertCfnPipelinePipelineDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPipelinePipelineDefinitionPropertyValidator(properties).assertSuccess(),{PipelineDefinitionBody:cdk().stringToCloudFormation(properties.pipelineDefinitionBody),PipelineDefinitionS3Location:convertCfnPipelineS3LocationPropertyToCloudFormation(properties.pipelineDefinitionS3Location)}):properties}function CfnPipelinePipelineDefinitionPropertyFromCloudFormation(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("pipelineDefinitionBody","PipelineDefinitionBody",properties.PipelineDefinitionBody!=null?cfn_parse().FromCloudFormation.getString(properties.PipelineDefinitionBody):void 0),ret.addPropertyResult("pipelineDefinitionS3Location","PipelineDefinitionS3Location",properties.PipelineDefinitionS3Location!=null?CfnPipelineS3LocationPropertyFromCloudFormation(properties.PipelineDefinitionS3Location):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPipelinePropsValidator(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("parallelismConfiguration",cdk().validateObject)(properties.parallelismConfiguration)),errors.collect(cdk().propertyValidator("pipelineDefinition",cdk().requiredValidator)(properties.pipelineDefinition)),errors.collect(cdk().propertyValidator("pipelineDefinition",cdk().validateObject)(properties.pipelineDefinition)),errors.collect(cdk().propertyValidator("pipelineDescription",cdk().validateString)(properties.pipelineDescription)),errors.collect(cdk().propertyValidator("pipelineDisplayName",cdk().validateString)(properties.pipelineDisplayName)),errors.collect(cdk().propertyValidator("pipelineName",cdk().requiredValidator)(properties.pipelineName)),errors.collect(cdk().propertyValidator("pipelineName",cdk().validateString)(properties.pipelineName)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnPipelineProps"')}function convertCfnPipelinePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPipelinePropsValidator(properties).assertSuccess(),{ParallelismConfiguration:cdk().objectToCloudFormation(properties.parallelismConfiguration),PipelineDefinition:cdk().objectToCloudFormation(properties.pipelineDefinition),PipelineDescription:cdk().stringToCloudFormation(properties.pipelineDescription),PipelineDisplayName:cdk().stringToCloudFormation(properties.pipelineDisplayName),PipelineName:cdk().stringToCloudFormation(properties.pipelineName),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnPipelinePropsFromCloudFormation(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("parallelismConfiguration","ParallelismConfiguration",properties.ParallelismConfiguration!=null?cfn_parse().FromCloudFormation.getAny(properties.ParallelismConfiguration):void 0),ret.addPropertyResult("pipelineDefinition","PipelineDefinition",properties.PipelineDefinition!=null?cfn_parse().FromCloudFormation.getAny(properties.PipelineDefinition):void 0),ret.addPropertyResult("pipelineDescription","PipelineDescription",properties.PipelineDescription!=null?cfn_parse().FromCloudFormation.getString(properties.PipelineDescription):void 0),ret.addPropertyResult("pipelineDisplayName","PipelineDisplayName",properties.PipelineDisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.PipelineDisplayName):void 0),ret.addPropertyResult("pipelineName","PipelineName",properties.PipelineName!=null?cfn_parse().FromCloudFormation.getString(properties.PipelineName):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):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 CfnProject extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnProject",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Project";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnProjectPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnProject(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 isCfnProject(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnProject.CFN_RESOURCE_TYPE_NAME}static arnForProject(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IProjectRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForProject),error}return resource.projectRef.projectArn}_projectDescription;_projectName;_serviceCatalogProvisionedProductDetails;_serviceCatalogProvisioningDetails;tags;_tagsRaw;_templateProviderDetails;cfnPropertyNames={projectDescription:"ProjectDescription",projectName:"ProjectName",serviceCatalogProvisionedProductDetails:"ServiceCatalogProvisionedProductDetails",serviceCatalogProvisioningDetails:"ServiceCatalogProvisioningDetails",tags:"Tags",templateProviderDetails:"TemplateProviderDetails"};constructor(scope,id,props){super(scope,id,{type:CfnProject.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnProjectProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnProject),error}cdk().requireProperty(props,"projectName",this),this._projectDescription=props.projectDescription,this._projectName=props.projectName,this._serviceCatalogProvisionedProductDetails=props.serviceCatalogProvisionedProductDetails,this._serviceCatalogProvisioningDetails=props.serviceCatalogProvisioningDetails,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Project",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._templateProviderDetails=props.templateProviderDetails}get projectRef(){return{projectArn:this.ref}}get projectDescription(){return this._projectDescription}set projectDescription(value){cdk().traceProperty(this.node,"ProjectDescription"),this._projectDescription=value}get projectName(){return this._projectName}set projectName(value){cdk().traceProperty(this.node,"ProjectName"),this._projectName=value}get serviceCatalogProvisionedProductDetails(){return this._serviceCatalogProvisionedProductDetails}set serviceCatalogProvisionedProductDetails(value){cdk().traceProperty(this.node,"ServiceCatalogProvisionedProductDetails"),this._serviceCatalogProvisionedProductDetails=value}get serviceCatalogProvisioningDetails(){return this._serviceCatalogProvisioningDetails}set serviceCatalogProvisioningDetails(value){cdk().traceProperty(this.node,"ServiceCatalogProvisioningDetails"),this._serviceCatalogProvisioningDetails=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get templateProviderDetails(){return this._templateProviderDetails}set templateProviderDetails(value){cdk().traceProperty(this.node,"TemplateProviderDetails"),this._templateProviderDetails=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrProjectArn(){return cdk().Token.asString(this.getAtt("ProjectArn",cdk().ResolutionTypeHint.STRING))}get attrProjectId(){return cdk().Token.asString(this.getAtt("ProjectId",cdk().ResolutionTypeHint.STRING))}get attrProjectStatus(){return cdk().Token.asString(this.getAtt("ProjectStatus",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{projectDescription:this._projectDescription,projectName:this._projectName,serviceCatalogProvisionedProductDetails:this._serviceCatalogProvisionedProductDetails,serviceCatalogProvisioningDetails:this._serviceCatalogProvisioningDetails,tags:this.tags.renderTags(),templateProviderDetails:this._templateProviderDetails}}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",CfnProject.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnProjectPropsToCloudFormation(props)}}exports.CfnProject=CfnProject;function CfnProjectServiceCatalogProvisionedProductDetailsPropertyValidator(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("provisionedProductId",cdk().validateString)(properties.provisionedProductId)),errors.collect(cdk().propertyValidator("provisionedProductStatusMessage",cdk().validateString)(properties.provisionedProductStatusMessage)),errors.wrap('supplied properties not correct for "ServiceCatalogProvisionedProductDetailsProperty"')}function convertCfnProjectServiceCatalogProvisionedProductDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectServiceCatalogProvisionedProductDetailsPropertyValidator(properties).assertSuccess(),{ProvisionedProductId:cdk().stringToCloudFormation(properties.provisionedProductId),ProvisionedProductStatusMessage:cdk().stringToCloudFormation(properties.provisionedProductStatusMessage)}):properties}function CfnProjectServiceCatalogProvisionedProductDetailsPropertyFromCloudFormation(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("provisionedProductId","ProvisionedProductId",properties.ProvisionedProductId!=null?cfn_parse().FromCloudFormation.getString(properties.ProvisionedProductId):void 0),ret.addPropertyResult("provisionedProductStatusMessage","ProvisionedProductStatusMessage",properties.ProvisionedProductStatusMessage!=null?cfn_parse().FromCloudFormation.getString(properties.ProvisionedProductStatusMessage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProjectProvisioningParameterPropertyValidator(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().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "ProvisioningParameterProperty"')}function convertCfnProjectProvisioningParameterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectProvisioningParameterPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnProjectProvisioningParameterPropertyFromCloudFormation(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 CfnProjectServiceCatalogProvisioningDetailsPropertyValidator(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("pathId",cdk().validateString)(properties.pathId)),errors.collect(cdk().propertyValidator("productId",cdk().requiredValidator)(properties.productId)),errors.collect(cdk().propertyValidator("productId",cdk().validateString)(properties.productId)),errors.collect(cdk().propertyValidator("provisioningArtifactId",cdk().validateString)(properties.provisioningArtifactId)),errors.collect(cdk().propertyValidator("provisioningParameters",cdk().listValidator(CfnProjectProvisioningParameterPropertyValidator))(properties.provisioningParameters)),errors.wrap('supplied properties not correct for "ServiceCatalogProvisioningDetailsProperty"')}function convertCfnProjectServiceCatalogProvisioningDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectServiceCatalogProvisioningDetailsPropertyValidator(properties).assertSuccess(),{PathId:cdk().stringToCloudFormation(properties.pathId),ProductId:cdk().stringToCloudFormation(properties.productId),ProvisioningArtifactId:cdk().stringToCloudFormation(properties.provisioningArtifactId),ProvisioningParameters:cdk().listMapper(convertCfnProjectProvisioningParameterPropertyToCloudFormation)(properties.provisioningParameters)}):properties}function CfnProjectServiceCatalogProvisioningDetailsPropertyFromCloudFormation(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("pathId","PathId",properties.PathId!=null?cfn_parse().FromCloudFormation.getString(properties.PathId):void 0),ret.addPropertyResult("productId","ProductId",properties.ProductId!=null?cfn_parse().FromCloudFormation.getString(properties.ProductId):void 0),ret.addPropertyResult("provisioningArtifactId","ProvisioningArtifactId",properties.ProvisioningArtifactId!=null?cfn_parse().FromCloudFormation.getString(properties.ProvisioningArtifactId):void 0),ret.addPropertyResult("provisioningParameters","ProvisioningParameters",properties.ProvisioningParameters!=null?cfn_parse().FromCloudFormation.getArray(CfnProjectProvisioningParameterPropertyFromCloudFormation)(properties.ProvisioningParameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProjectCfnStackParameterPropertyValidator(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().requiredValidator)(properties.value)),errors.collect(cdk().propertyValidator("value",cdk().validateString)(properties.value)),errors.wrap('supplied properties not correct for "CfnStackParameterProperty"')}function convertCfnProjectCfnStackParameterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectCfnStackParameterPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnProjectCfnStackParameterPropertyFromCloudFormation(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 CfnProjectCfnTemplateProviderDetailPropertyValidator(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("parameters",cdk().listValidator(CfnProjectCfnStackParameterPropertyValidator))(properties.parameters)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("templateName",cdk().requiredValidator)(properties.templateName)),errors.collect(cdk().propertyValidator("templateName",cdk().validateString)(properties.templateName)),errors.collect(cdk().propertyValidator("templateUrl",cdk().requiredValidator)(properties.templateUrl)),errors.collect(cdk().propertyValidator("templateUrl",cdk().validateString)(properties.templateUrl)),errors.wrap('supplied properties not correct for "CfnTemplateProviderDetailProperty"')}function convertCfnProjectCfnTemplateProviderDetailPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectCfnTemplateProviderDetailPropertyValidator(properties).assertSuccess(),{Parameters:cdk().listMapper(convertCfnProjectCfnStackParameterPropertyToCloudFormation)(properties.parameters),RoleARN:cdk().stringToCloudFormation(properties.roleArn),TemplateName:cdk().stringToCloudFormation(properties.templateName),TemplateURL:cdk().stringToCloudFormation(properties.templateUrl)}):properties}function CfnProjectCfnTemplateProviderDetailPropertyFromCloudFormation(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("parameters","Parameters",properties.Parameters!=null?cfn_parse().FromCloudFormation.getArray(CfnProjectCfnStackParameterPropertyFromCloudFormation)(properties.Parameters):void 0),ret.addPropertyResult("roleArn","RoleARN",properties.RoleARN!=null?cfn_parse().FromCloudFormation.getString(properties.RoleARN):void 0),ret.addPropertyResult("templateName","TemplateName",properties.TemplateName!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateName):void 0),ret.addPropertyResult("templateUrl","TemplateURL",properties.TemplateURL!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateURL):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProjectTemplateProviderDetailPropertyValidator(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("cfnTemplateProviderDetail",cdk().requiredValidator)(properties.cfnTemplateProviderDetail)),errors.collect(cdk().propertyValidator("cfnTemplateProviderDetail",CfnProjectCfnTemplateProviderDetailPropertyValidator)(properties.cfnTemplateProviderDetail)),errors.wrap('supplied properties not correct for "TemplateProviderDetailProperty"')}function convertCfnProjectTemplateProviderDetailPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectTemplateProviderDetailPropertyValidator(properties).assertSuccess(),{CfnTemplateProviderDetail:convertCfnProjectCfnTemplateProviderDetailPropertyToCloudFormation(properties.cfnTemplateProviderDetail)}):properties}function CfnProjectTemplateProviderDetailPropertyFromCloudFormation(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("cfnTemplateProviderDetail","CfnTemplateProviderDetail",properties.CfnTemplateProviderDetail!=null?CfnProjectCfnTemplateProviderDetailPropertyFromCloudFormation(properties.CfnTemplateProviderDetail):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProjectPropsValidator(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("projectDescription",cdk().validateString)(properties.projectDescription)),errors.collect(cdk().propertyValidator("projectName",cdk().requiredValidator)(properties.projectName)),errors.collect(cdk().propertyValidator("projectName",cdk().validateString)(properties.projectName)),errors.collect(cdk().propertyValidator("serviceCatalogProvisionedProductDetails",CfnProjectServiceCatalogProvisionedProductDetailsPropertyValidator)(properties.serviceCatalogProvisionedProductDetails)),errors.collect(cdk().propertyValidator("serviceCatalogProvisioningDetails",cdk().validateObject)(properties.serviceCatalogProvisioningDetails)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("templateProviderDetails",cdk().listValidator(CfnProjectTemplateProviderDetailPropertyValidator))(properties.templateProviderDetails)),errors.wrap('supplied properties not correct for "CfnProjectProps"')}function convertCfnProjectPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProjectPropsValidator(properties).assertSuccess(),{ProjectDescription:cdk().stringToCloudFormation(properties.projectDescription),ProjectName:cdk().stringToCloudFormation(properties.projectName),ServiceCatalogProvisionedProductDetails:convertCfnProjectServiceCatalogProvisionedProductDetailsPropertyToCloudFormation(properties.serviceCatalogProvisionedProductDetails),ServiceCatalogProvisioningDetails:cdk().objectToCloudFormation(properties.serviceCatalogProvisioningDetails),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TemplateProviderDetails:cdk().listMapper(convertCfnProjectTemplateProviderDetailPropertyToCloudFormation)(properties.templateProviderDetails)}):properties}function CfnProjectPropsFromCloudFormation(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("projectDescription","ProjectDescription",properties.ProjectDescription!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectDescription):void 0),ret.addPropertyResult("projectName","ProjectName",properties.ProjectName!=null?cfn_parse().FromCloudFormation.getString(properties.ProjectName):void 0),ret.addPropertyResult("serviceCatalogProvisionedProductDetails","ServiceCatalogProvisionedProductDetails",properties.ServiceCatalogProvisionedProductDetails!=null?CfnProjectServiceCatalogProvisionedProductDetailsPropertyFromCloudFormation(properties.ServiceCatalogProvisionedProductDetails):void 0),ret.addPropertyResult("serviceCatalogProvisioningDetails","ServiceCatalogProvisioningDetails",properties.ServiceCatalogProvisioningDetails!=null?cfn_parse().FromCloudFormation.getAny(properties.ServiceCatalogProvisioningDetails):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("templateProviderDetails","TemplateProviderDetails",properties.TemplateProviderDetails!=null?cfn_parse().FromCloudFormation.getArray(CfnProjectTemplateProviderDetailPropertyFromCloudFormation)(properties.TemplateProviderDetails):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnSpace extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnSpace",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Space";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnSpacePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnSpace(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 isCfnSpace(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnSpace.CFN_RESOURCE_TYPE_NAME}static arnForSpace(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_ISpaceRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForSpace),error}return resource.spaceRef.spaceArn}_domainId;_ownershipSettings;_spaceDisplayName;_spaceName;_spaceSettings;_spaceSharingSettings;tags;_tagsRaw;cfnPropertyNames={domainId:"DomainId",ownershipSettings:"OwnershipSettings",spaceDisplayName:"SpaceDisplayName",spaceName:"SpaceName",spaceSettings:"SpaceSettings",spaceSharingSettings:"SpaceSharingSettings",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnSpace.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnSpaceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnSpace),error}cdk().requireProperty(props,"domainId",this),cdk().requireProperty(props,"spaceName",this),this._domainId=props.domainId,this._ownershipSettings=props.ownershipSettings,this._spaceDisplayName=props.spaceDisplayName,this._spaceName=props.spaceName,this._spaceSettings=props.spaceSettings,this._spaceSharingSettings=props.spaceSharingSettings,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Space",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get spaceRef(){return{domainId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),spaceName:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),spaceArn:this.attrSpaceArn}}get domainId(){return this._domainId}set domainId(value){cdk().traceProperty(this.node,"DomainId"),this._domainId=value}get ownershipSettings(){return this._ownershipSettings}set ownershipSettings(value){cdk().traceProperty(this.node,"OwnershipSettings"),this._ownershipSettings=value}get spaceDisplayName(){return this._spaceDisplayName}set spaceDisplayName(value){cdk().traceProperty(this.node,"SpaceDisplayName"),this._spaceDisplayName=value}get spaceName(){return this._spaceName}set spaceName(value){cdk().traceProperty(this.node,"SpaceName"),this._spaceName=value}get spaceSettings(){return this._spaceSettings}set spaceSettings(value){cdk().traceProperty(this.node,"SpaceSettings"),this._spaceSettings=value}get spaceSharingSettings(){return this._spaceSharingSettings}set spaceSharingSettings(value){cdk().traceProperty(this.node,"SpaceSharingSettings"),this._spaceSharingSettings=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrSpaceArn(){return cdk().Token.asString(this.getAtt("SpaceArn",cdk().ResolutionTypeHint.STRING))}get attrUrl(){return cdk().Token.asString(this.getAtt("Url",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{domainId:this._domainId,ownershipSettings:this._ownershipSettings,spaceDisplayName:this._spaceDisplayName,spaceName:this._spaceName,spaceSettings:this._spaceSettings,spaceSharingSettings:this._spaceSharingSettings,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",CfnSpace.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnSpacePropsToCloudFormation(props)}}exports.CfnSpace=CfnSpace;function CfnSpaceCustomImagePropertyValidator(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("appImageConfigName",cdk().requiredValidator)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("appImageConfigName",cdk().validateString)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("imageName",cdk().requiredValidator)(properties.imageName)),errors.collect(cdk().propertyValidator("imageName",cdk().validateString)(properties.imageName)),errors.collect(cdk().propertyValidator("imageVersionNumber",cdk().validateNumber)(properties.imageVersionNumber)),errors.wrap('supplied properties not correct for "CustomImageProperty"')}function convertCfnSpaceCustomImagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceCustomImagePropertyValidator(properties).assertSuccess(),{AppImageConfigName:cdk().stringToCloudFormation(properties.appImageConfigName),ImageName:cdk().stringToCloudFormation(properties.imageName),ImageVersionNumber:cdk().numberToCloudFormation(properties.imageVersionNumber)}):properties}function CfnSpaceCustomImagePropertyFromCloudFormation(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("appImageConfigName","AppImageConfigName",properties.AppImageConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.AppImageConfigName):void 0),ret.addPropertyResult("imageName","ImageName",properties.ImageName!=null?cfn_parse().FromCloudFormation.getString(properties.ImageName):void 0),ret.addPropertyResult("imageVersionNumber","ImageVersionNumber",properties.ImageVersionNumber!=null?cfn_parse().FromCloudFormation.getNumber(properties.ImageVersionNumber):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceResourceSpecPropertyValidator(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("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("lifecycleConfigArn",cdk().validateString)(properties.lifecycleConfigArn)),errors.collect(cdk().propertyValidator("sageMakerImageArn",cdk().validateString)(properties.sageMakerImageArn)),errors.collect(cdk().propertyValidator("sageMakerImageVersionArn",cdk().validateString)(properties.sageMakerImageVersionArn)),errors.wrap('supplied properties not correct for "ResourceSpecProperty"')}function convertCfnSpaceResourceSpecPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceResourceSpecPropertyValidator(properties).assertSuccess(),{InstanceType:cdk().stringToCloudFormation(properties.instanceType),LifecycleConfigArn:cdk().stringToCloudFormation(properties.lifecycleConfigArn),SageMakerImageArn:cdk().stringToCloudFormation(properties.sageMakerImageArn),SageMakerImageVersionArn:cdk().stringToCloudFormation(properties.sageMakerImageVersionArn)}):properties}function CfnSpaceResourceSpecPropertyFromCloudFormation(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("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("lifecycleConfigArn","LifecycleConfigArn",properties.LifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.LifecycleConfigArn):void 0),ret.addPropertyResult("sageMakerImageArn","SageMakerImageArn",properties.SageMakerImageArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageArn):void 0),ret.addPropertyResult("sageMakerImageVersionArn","SageMakerImageVersionArn",properties.SageMakerImageVersionArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageVersionArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceKernelGatewayAppSettingsPropertyValidator(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("customImages",cdk().listValidator(CfnSpaceCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnSpaceResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "KernelGatewayAppSettingsProperty"')}function convertCfnSpaceKernelGatewayAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceKernelGatewayAppSettingsPropertyValidator(properties).assertSuccess(),{CustomImages:cdk().listMapper(convertCfnSpaceCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnSpaceResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnSpaceKernelGatewayAppSettingsPropertyFromCloudFormation(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("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnSpaceCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnSpaceResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceJupyterServerAppSettingsPropertyValidator(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("defaultResourceSpec",CfnSpaceResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "JupyterServerAppSettingsProperty"')}function convertCfnSpaceJupyterServerAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceJupyterServerAppSettingsPropertyValidator(properties).assertSuccess(),{DefaultResourceSpec:convertCfnSpaceResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnSpaceJupyterServerAppSettingsPropertyFromCloudFormation(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("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnSpaceResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceSpaceIdleSettingsPropertyValidator(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("idleTimeoutInMinutes",cdk().validateNumber)(properties.idleTimeoutInMinutes)),errors.wrap('supplied properties not correct for "SpaceIdleSettingsProperty"')}function convertCfnSpaceSpaceIdleSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceSpaceIdleSettingsPropertyValidator(properties).assertSuccess(),{IdleTimeoutInMinutes:cdk().numberToCloudFormation(properties.idleTimeoutInMinutes)}):properties}function CfnSpaceSpaceIdleSettingsPropertyFromCloudFormation(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("idleTimeoutInMinutes","IdleTimeoutInMinutes",properties.IdleTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.IdleTimeoutInMinutes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceSpaceAppLifecycleManagementPropertyValidator(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("idleSettings",CfnSpaceSpaceIdleSettingsPropertyValidator)(properties.idleSettings)),errors.wrap('supplied properties not correct for "SpaceAppLifecycleManagementProperty"')}function convertCfnSpaceSpaceAppLifecycleManagementPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceSpaceAppLifecycleManagementPropertyValidator(properties).assertSuccess(),{IdleSettings:convertCfnSpaceSpaceIdleSettingsPropertyToCloudFormation(properties.idleSettings)}):properties}function CfnSpaceSpaceAppLifecycleManagementPropertyFromCloudFormation(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("idleSettings","IdleSettings",properties.IdleSettings!=null?CfnSpaceSpaceIdleSettingsPropertyFromCloudFormation(properties.IdleSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceCodeRepositoryPropertyValidator(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("repositoryUrl",cdk().requiredValidator)(properties.repositoryUrl)),errors.collect(cdk().propertyValidator("repositoryUrl",cdk().validateString)(properties.repositoryUrl)),errors.wrap('supplied properties not correct for "CodeRepositoryProperty"')}function convertCfnSpaceCodeRepositoryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceCodeRepositoryPropertyValidator(properties).assertSuccess(),{RepositoryUrl:cdk().stringToCloudFormation(properties.repositoryUrl)}):properties}function CfnSpaceCodeRepositoryPropertyFromCloudFormation(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("repositoryUrl","RepositoryUrl",properties.RepositoryUrl!=null?cfn_parse().FromCloudFormation.getString(properties.RepositoryUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceSpaceJupyterLabAppSettingsPropertyValidator(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("appLifecycleManagement",CfnSpaceSpaceAppLifecycleManagementPropertyValidator)(properties.appLifecycleManagement)),errors.collect(cdk().propertyValidator("codeRepositories",cdk().listValidator(CfnSpaceCodeRepositoryPropertyValidator))(properties.codeRepositories)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnSpaceResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.wrap('supplied properties not correct for "SpaceJupyterLabAppSettingsProperty"')}function convertCfnSpaceSpaceJupyterLabAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceSpaceJupyterLabAppSettingsPropertyValidator(properties).assertSuccess(),{AppLifecycleManagement:convertCfnSpaceSpaceAppLifecycleManagementPropertyToCloudFormation(properties.appLifecycleManagement),CodeRepositories:cdk().listMapper(convertCfnSpaceCodeRepositoryPropertyToCloudFormation)(properties.codeRepositories),DefaultResourceSpec:convertCfnSpaceResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec)}):properties}function CfnSpaceSpaceJupyterLabAppSettingsPropertyFromCloudFormation(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("appLifecycleManagement","AppLifecycleManagement",properties.AppLifecycleManagement!=null?CfnSpaceSpaceAppLifecycleManagementPropertyFromCloudFormation(properties.AppLifecycleManagement):void 0),ret.addPropertyResult("codeRepositories","CodeRepositories",properties.CodeRepositories!=null?cfn_parse().FromCloudFormation.getArray(CfnSpaceCodeRepositoryPropertyFromCloudFormation)(properties.CodeRepositories):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnSpaceResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceSpaceCodeEditorAppSettingsPropertyValidator(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("appLifecycleManagement",CfnSpaceSpaceAppLifecycleManagementPropertyValidator)(properties.appLifecycleManagement)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnSpaceResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.wrap('supplied properties not correct for "SpaceCodeEditorAppSettingsProperty"')}function convertCfnSpaceSpaceCodeEditorAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceSpaceCodeEditorAppSettingsPropertyValidator(properties).assertSuccess(),{AppLifecycleManagement:convertCfnSpaceSpaceAppLifecycleManagementPropertyToCloudFormation(properties.appLifecycleManagement),DefaultResourceSpec:convertCfnSpaceResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec)}):properties}function CfnSpaceSpaceCodeEditorAppSettingsPropertyFromCloudFormation(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("appLifecycleManagement","AppLifecycleManagement",properties.AppLifecycleManagement!=null?CfnSpaceSpaceAppLifecycleManagementPropertyFromCloudFormation(properties.AppLifecycleManagement):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnSpaceResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceEbsStorageSettingsPropertyValidator(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("ebsVolumeSizeInGb",cdk().requiredValidator)(properties.ebsVolumeSizeInGb)),errors.collect(cdk().propertyValidator("ebsVolumeSizeInGb",cdk().validateNumber)(properties.ebsVolumeSizeInGb)),errors.wrap('supplied properties not correct for "EbsStorageSettingsProperty"')}function convertCfnSpaceEbsStorageSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceEbsStorageSettingsPropertyValidator(properties).assertSuccess(),{EbsVolumeSizeInGb:cdk().numberToCloudFormation(properties.ebsVolumeSizeInGb)}):properties}function CfnSpaceEbsStorageSettingsPropertyFromCloudFormation(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("ebsVolumeSizeInGb","EbsVolumeSizeInGb",properties.EbsVolumeSizeInGb!=null?cfn_parse().FromCloudFormation.getNumber(properties.EbsVolumeSizeInGb):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceSpaceStorageSettingsPropertyValidator(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("ebsStorageSettings",CfnSpaceEbsStorageSettingsPropertyValidator)(properties.ebsStorageSettings)),errors.wrap('supplied properties not correct for "SpaceStorageSettingsProperty"')}function convertCfnSpaceSpaceStorageSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceSpaceStorageSettingsPropertyValidator(properties).assertSuccess(),{EbsStorageSettings:convertCfnSpaceEbsStorageSettingsPropertyToCloudFormation(properties.ebsStorageSettings)}):properties}function CfnSpaceSpaceStorageSettingsPropertyFromCloudFormation(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("ebsStorageSettings","EbsStorageSettings",properties.EbsStorageSettings!=null?CfnSpaceEbsStorageSettingsPropertyFromCloudFormation(properties.EbsStorageSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceEFSFileSystemPropertyValidator(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("fileSystemId",cdk().requiredValidator)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemId",cdk().validateString)(properties.fileSystemId)),errors.wrap('supplied properties not correct for "EFSFileSystemProperty"')}function convertCfnSpaceEFSFileSystemPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceEFSFileSystemPropertyValidator(properties).assertSuccess(),{FileSystemId:cdk().stringToCloudFormation(properties.fileSystemId)}):properties}function CfnSpaceEFSFileSystemPropertyFromCloudFormation(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("fileSystemId","FileSystemId",properties.FileSystemId!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceFSxLustreFileSystemPropertyValidator(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("fileSystemId",cdk().requiredValidator)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemId",cdk().validateString)(properties.fileSystemId)),errors.wrap('supplied properties not correct for "FSxLustreFileSystemProperty"')}function convertCfnSpaceFSxLustreFileSystemPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceFSxLustreFileSystemPropertyValidator(properties).assertSuccess(),{FileSystemId:cdk().stringToCloudFormation(properties.fileSystemId)}):properties}function CfnSpaceFSxLustreFileSystemPropertyFromCloudFormation(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("fileSystemId","FileSystemId",properties.FileSystemId!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceS3FileSystemPropertyValidator(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("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3FileSystemProperty"')}function convertCfnSpaceS3FileSystemPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceS3FileSystemPropertyValidator(properties).assertSuccess(),{S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnSpaceS3FileSystemPropertyFromCloudFormation(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("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceCustomFileSystemPropertyValidator(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("efsFileSystem",CfnSpaceEFSFileSystemPropertyValidator)(properties.efsFileSystem)),errors.collect(cdk().propertyValidator("fSxLustreFileSystem",CfnSpaceFSxLustreFileSystemPropertyValidator)(properties.fSxLustreFileSystem)),errors.collect(cdk().propertyValidator("s3FileSystem",CfnSpaceS3FileSystemPropertyValidator)(properties.s3FileSystem)),errors.wrap('supplied properties not correct for "CustomFileSystemProperty"')}function convertCfnSpaceCustomFileSystemPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceCustomFileSystemPropertyValidator(properties).assertSuccess(),{EFSFileSystem:convertCfnSpaceEFSFileSystemPropertyToCloudFormation(properties.efsFileSystem),FSxLustreFileSystem:convertCfnSpaceFSxLustreFileSystemPropertyToCloudFormation(properties.fSxLustreFileSystem),S3FileSystem:convertCfnSpaceS3FileSystemPropertyToCloudFormation(properties.s3FileSystem)}):properties}function CfnSpaceCustomFileSystemPropertyFromCloudFormation(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("efsFileSystem","EFSFileSystem",properties.EFSFileSystem!=null?CfnSpaceEFSFileSystemPropertyFromCloudFormation(properties.EFSFileSystem):void 0),ret.addPropertyResult("fSxLustreFileSystem","FSxLustreFileSystem",properties.FSxLustreFileSystem!=null?CfnSpaceFSxLustreFileSystemPropertyFromCloudFormation(properties.FSxLustreFileSystem):void 0),ret.addPropertyResult("s3FileSystem","S3FileSystem",properties.S3FileSystem!=null?CfnSpaceS3FileSystemPropertyFromCloudFormation(properties.S3FileSystem):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceSpaceSettingsPropertyValidator(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("appType",cdk().validateString)(properties.appType)),errors.collect(cdk().propertyValidator("codeEditorAppSettings",CfnSpaceSpaceCodeEditorAppSettingsPropertyValidator)(properties.codeEditorAppSettings)),errors.collect(cdk().propertyValidator("customFileSystems",cdk().listValidator(CfnSpaceCustomFileSystemPropertyValidator))(properties.customFileSystems)),errors.collect(cdk().propertyValidator("jupyterLabAppSettings",CfnSpaceSpaceJupyterLabAppSettingsPropertyValidator)(properties.jupyterLabAppSettings)),errors.collect(cdk().propertyValidator("jupyterServerAppSettings",CfnSpaceJupyterServerAppSettingsPropertyValidator)(properties.jupyterServerAppSettings)),errors.collect(cdk().propertyValidator("kernelGatewayAppSettings",CfnSpaceKernelGatewayAppSettingsPropertyValidator)(properties.kernelGatewayAppSettings)),errors.collect(cdk().propertyValidator("remoteAccess",cdk().validateString)(properties.remoteAccess)),errors.collect(cdk().propertyValidator("spaceManagedResources",cdk().validateString)(properties.spaceManagedResources)),errors.collect(cdk().propertyValidator("spaceStorageSettings",CfnSpaceSpaceStorageSettingsPropertyValidator)(properties.spaceStorageSettings)),errors.wrap('supplied properties not correct for "SpaceSettingsProperty"')}function convertCfnSpaceSpaceSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceSpaceSettingsPropertyValidator(properties).assertSuccess(),{AppType:cdk().stringToCloudFormation(properties.appType),CodeEditorAppSettings:convertCfnSpaceSpaceCodeEditorAppSettingsPropertyToCloudFormation(properties.codeEditorAppSettings),CustomFileSystems:cdk().listMapper(convertCfnSpaceCustomFileSystemPropertyToCloudFormation)(properties.customFileSystems),JupyterLabAppSettings:convertCfnSpaceSpaceJupyterLabAppSettingsPropertyToCloudFormation(properties.jupyterLabAppSettings),JupyterServerAppSettings:convertCfnSpaceJupyterServerAppSettingsPropertyToCloudFormation(properties.jupyterServerAppSettings),KernelGatewayAppSettings:convertCfnSpaceKernelGatewayAppSettingsPropertyToCloudFormation(properties.kernelGatewayAppSettings),RemoteAccess:cdk().stringToCloudFormation(properties.remoteAccess),SpaceManagedResources:cdk().stringToCloudFormation(properties.spaceManagedResources),SpaceStorageSettings:convertCfnSpaceSpaceStorageSettingsPropertyToCloudFormation(properties.spaceStorageSettings)}):properties}function CfnSpaceSpaceSettingsPropertyFromCloudFormation(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("appType","AppType",properties.AppType!=null?cfn_parse().FromCloudFormation.getString(properties.AppType):void 0),ret.addPropertyResult("codeEditorAppSettings","CodeEditorAppSettings",properties.CodeEditorAppSettings!=null?CfnSpaceSpaceCodeEditorAppSettingsPropertyFromCloudFormation(properties.CodeEditorAppSettings):void 0),ret.addPropertyResult("customFileSystems","CustomFileSystems",properties.CustomFileSystems!=null?cfn_parse().FromCloudFormation.getArray(CfnSpaceCustomFileSystemPropertyFromCloudFormation)(properties.CustomFileSystems):void 0),ret.addPropertyResult("jupyterLabAppSettings","JupyterLabAppSettings",properties.JupyterLabAppSettings!=null?CfnSpaceSpaceJupyterLabAppSettingsPropertyFromCloudFormation(properties.JupyterLabAppSettings):void 0),ret.addPropertyResult("jupyterServerAppSettings","JupyterServerAppSettings",properties.JupyterServerAppSettings!=null?CfnSpaceJupyterServerAppSettingsPropertyFromCloudFormation(properties.JupyterServerAppSettings):void 0),ret.addPropertyResult("kernelGatewayAppSettings","KernelGatewayAppSettings",properties.KernelGatewayAppSettings!=null?CfnSpaceKernelGatewayAppSettingsPropertyFromCloudFormation(properties.KernelGatewayAppSettings):void 0),ret.addPropertyResult("remoteAccess","RemoteAccess",properties.RemoteAccess!=null?cfn_parse().FromCloudFormation.getString(properties.RemoteAccess):void 0),ret.addPropertyResult("spaceManagedResources","SpaceManagedResources",properties.SpaceManagedResources!=null?cfn_parse().FromCloudFormation.getString(properties.SpaceManagedResources):void 0),ret.addPropertyResult("spaceStorageSettings","SpaceStorageSettings",properties.SpaceStorageSettings!=null?CfnSpaceSpaceStorageSettingsPropertyFromCloudFormation(properties.SpaceStorageSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceOwnershipSettingsPropertyValidator(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("ownerUserProfileName",cdk().requiredValidator)(properties.ownerUserProfileName)),errors.collect(cdk().propertyValidator("ownerUserProfileName",cdk().validateString)(properties.ownerUserProfileName)),errors.wrap('supplied properties not correct for "OwnershipSettingsProperty"')}function convertCfnSpaceOwnershipSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceOwnershipSettingsPropertyValidator(properties).assertSuccess(),{OwnerUserProfileName:cdk().stringToCloudFormation(properties.ownerUserProfileName)}):properties}function CfnSpaceOwnershipSettingsPropertyFromCloudFormation(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("ownerUserProfileName","OwnerUserProfileName",properties.OwnerUserProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.OwnerUserProfileName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpaceSpaceSharingSettingsPropertyValidator(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("sharingType",cdk().requiredValidator)(properties.sharingType)),errors.collect(cdk().propertyValidator("sharingType",cdk().validateString)(properties.sharingType)),errors.wrap('supplied properties not correct for "SpaceSharingSettingsProperty"')}function convertCfnSpaceSpaceSharingSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpaceSpaceSharingSettingsPropertyValidator(properties).assertSuccess(),{SharingType:cdk().stringToCloudFormation(properties.sharingType)}):properties}function CfnSpaceSpaceSharingSettingsPropertyFromCloudFormation(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("sharingType","SharingType",properties.SharingType!=null?cfn_parse().FromCloudFormation.getString(properties.SharingType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnSpacePropsValidator(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("domainId",cdk().requiredValidator)(properties.domainId)),errors.collect(cdk().propertyValidator("domainId",cdk().validateString)(properties.domainId)),errors.collect(cdk().propertyValidator("ownershipSettings",CfnSpaceOwnershipSettingsPropertyValidator)(properties.ownershipSettings)),errors.collect(cdk().propertyValidator("spaceDisplayName",cdk().validateString)(properties.spaceDisplayName)),errors.collect(cdk().propertyValidator("spaceName",cdk().requiredValidator)(properties.spaceName)),errors.collect(cdk().propertyValidator("spaceName",cdk().validateString)(properties.spaceName)),errors.collect(cdk().propertyValidator("spaceSettings",CfnSpaceSpaceSettingsPropertyValidator)(properties.spaceSettings)),errors.collect(cdk().propertyValidator("spaceSharingSettings",CfnSpaceSpaceSharingSettingsPropertyValidator)(properties.spaceSharingSettings)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnSpaceProps"')}function convertCfnSpacePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnSpacePropsValidator(properties).assertSuccess(),{DomainId:cdk().stringToCloudFormation(properties.domainId),OwnershipSettings:convertCfnSpaceOwnershipSettingsPropertyToCloudFormation(properties.ownershipSettings),SpaceDisplayName:cdk().stringToCloudFormation(properties.spaceDisplayName),SpaceName:cdk().stringToCloudFormation(properties.spaceName),SpaceSettings:convertCfnSpaceSpaceSettingsPropertyToCloudFormation(properties.spaceSettings),SpaceSharingSettings:convertCfnSpaceSpaceSharingSettingsPropertyToCloudFormation(properties.spaceSharingSettings),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnSpacePropsFromCloudFormation(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("domainId","DomainId",properties.DomainId!=null?cfn_parse().FromCloudFormation.getString(properties.DomainId):void 0),ret.addPropertyResult("ownershipSettings","OwnershipSettings",properties.OwnershipSettings!=null?CfnSpaceOwnershipSettingsPropertyFromCloudFormation(properties.OwnershipSettings):void 0),ret.addPropertyResult("spaceDisplayName","SpaceDisplayName",properties.SpaceDisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.SpaceDisplayName):void 0),ret.addPropertyResult("spaceName","SpaceName",properties.SpaceName!=null?cfn_parse().FromCloudFormation.getString(properties.SpaceName):void 0),ret.addPropertyResult("spaceSettings","SpaceSettings",properties.SpaceSettings!=null?CfnSpaceSpaceSettingsPropertyFromCloudFormation(properties.SpaceSettings):void 0),ret.addPropertyResult("spaceSharingSettings","SpaceSharingSettings",properties.SpaceSharingSettings!=null?CfnSpaceSpaceSharingSettingsPropertyFromCloudFormation(properties.SpaceSharingSettings):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 CfnUserProfile extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnUserProfile",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::UserProfile";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnUserProfilePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnUserProfile(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 isCfnUserProfile(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnUserProfile.CFN_RESOURCE_TYPE_NAME}static arnForUserProfile(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IUserProfileRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForUserProfile),error}return resource.userProfileRef.userProfileArn}_domainId;_singleSignOnUserIdentifier;_singleSignOnUserValue;tags;_tagsRaw;_userProfileName;_userSettings;cfnPropertyNames={domainId:"DomainId",singleSignOnUserIdentifier:"SingleSignOnUserIdentifier",singleSignOnUserValue:"SingleSignOnUserValue",tags:"Tags",userProfileName:"UserProfileName",userSettings:"UserSettings"};constructor(scope,id,props){super(scope,id,{type:CfnUserProfile.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnUserProfileProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnUserProfile),error}cdk().requireProperty(props,"domainId",this),cdk().requireProperty(props,"userProfileName",this),this._domainId=cdk().getRefProperty(props.domainId?.domainRef,"domainId")??cdk().ensureStringOrUndefined(props.domainId,"domainId","sagemaker.IDomainRef | string"),this._singleSignOnUserIdentifier=props.singleSignOnUserIdentifier,this._singleSignOnUserValue=props.singleSignOnUserValue,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::UserProfile",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._userProfileName=props.userProfileName,this._userSettings=props.userSettings}get userProfileRef(){return{userProfileName:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),domainId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref)),userProfileArn:this.attrUserProfileArn}}get domainId(){return this._domainId}set domainId(value){cdk().traceProperty(this.node,"DomainId"),this._domainId=value}get singleSignOnUserIdentifier(){return this._singleSignOnUserIdentifier}set singleSignOnUserIdentifier(value){cdk().traceProperty(this.node,"SingleSignOnUserIdentifier"),this._singleSignOnUserIdentifier=value}get singleSignOnUserValue(){return this._singleSignOnUserValue}set singleSignOnUserValue(value){cdk().traceProperty(this.node,"SingleSignOnUserValue"),this._singleSignOnUserValue=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get userProfileName(){return this._userProfileName}set userProfileName(value){cdk().traceProperty(this.node,"UserProfileName"),this._userProfileName=value}get userSettings(){return this._userSettings}set userSettings(value){cdk().traceProperty(this.node,"UserSettings"),this._userSettings=value}get attrUserProfileArn(){return cdk().Token.asString(this.getAtt("UserProfileArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{domainId:this._domainId,singleSignOnUserIdentifier:this._singleSignOnUserIdentifier,singleSignOnUserValue:this._singleSignOnUserValue,tags:this.tags.renderTags(),userProfileName:this._userProfileName,userSettings:this._userSettings}}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",CfnUserProfile.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnUserProfilePropsToCloudFormation(props)}}exports.CfnUserProfile=CfnUserProfile;function CfnUserProfileCustomImagePropertyValidator(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("appImageConfigName",cdk().requiredValidator)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("appImageConfigName",cdk().validateString)(properties.appImageConfigName)),errors.collect(cdk().propertyValidator("imageName",cdk().requiredValidator)(properties.imageName)),errors.collect(cdk().propertyValidator("imageName",cdk().validateString)(properties.imageName)),errors.collect(cdk().propertyValidator("imageVersionNumber",cdk().validateNumber)(properties.imageVersionNumber)),errors.wrap('supplied properties not correct for "CustomImageProperty"')}function convertCfnUserProfileCustomImagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileCustomImagePropertyValidator(properties).assertSuccess(),{AppImageConfigName:cdk().stringToCloudFormation(properties.appImageConfigName),ImageName:cdk().stringToCloudFormation(properties.imageName),ImageVersionNumber:cdk().numberToCloudFormation(properties.imageVersionNumber)}):properties}function CfnUserProfileCustomImagePropertyFromCloudFormation(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("appImageConfigName","AppImageConfigName",properties.AppImageConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.AppImageConfigName):void 0),ret.addPropertyResult("imageName","ImageName",properties.ImageName!=null?cfn_parse().FromCloudFormation.getString(properties.ImageName):void 0),ret.addPropertyResult("imageVersionNumber","ImageVersionNumber",properties.ImageVersionNumber!=null?cfn_parse().FromCloudFormation.getNumber(properties.ImageVersionNumber):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileResourceSpecPropertyValidator(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("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("lifecycleConfigArn",cdk().validateString)(properties.lifecycleConfigArn)),errors.collect(cdk().propertyValidator("sageMakerImageArn",cdk().validateString)(properties.sageMakerImageArn)),errors.collect(cdk().propertyValidator("sageMakerImageVersionArn",cdk().validateString)(properties.sageMakerImageVersionArn)),errors.wrap('supplied properties not correct for "ResourceSpecProperty"')}function convertCfnUserProfileResourceSpecPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileResourceSpecPropertyValidator(properties).assertSuccess(),{InstanceType:cdk().stringToCloudFormation(properties.instanceType),LifecycleConfigArn:cdk().stringToCloudFormation(properties.lifecycleConfigArn),SageMakerImageArn:cdk().stringToCloudFormation(properties.sageMakerImageArn),SageMakerImageVersionArn:cdk().stringToCloudFormation(properties.sageMakerImageVersionArn)}):properties}function CfnUserProfileResourceSpecPropertyFromCloudFormation(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("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("lifecycleConfigArn","LifecycleConfigArn",properties.LifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.LifecycleConfigArn):void 0),ret.addPropertyResult("sageMakerImageArn","SageMakerImageArn",properties.SageMakerImageArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageArn):void 0),ret.addPropertyResult("sageMakerImageVersionArn","SageMakerImageVersionArn",properties.SageMakerImageVersionArn!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageVersionArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileKernelGatewayAppSettingsPropertyValidator(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("customImages",cdk().listValidator(CfnUserProfileCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnUserProfileResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "KernelGatewayAppSettingsProperty"')}function convertCfnUserProfileKernelGatewayAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileKernelGatewayAppSettingsPropertyValidator(properties).assertSuccess(),{CustomImages:cdk().listMapper(convertCfnUserProfileCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnUserProfileResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnUserProfileKernelGatewayAppSettingsPropertyFromCloudFormation(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("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnUserProfileCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnUserProfileResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileRStudioServerProAppSettingsPropertyValidator(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("accessStatus",cdk().validateString)(properties.accessStatus)),errors.collect(cdk().propertyValidator("userGroup",cdk().validateString)(properties.userGroup)),errors.wrap('supplied properties not correct for "RStudioServerProAppSettingsProperty"')}function convertCfnUserProfileRStudioServerProAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileRStudioServerProAppSettingsPropertyValidator(properties).assertSuccess(),{AccessStatus:cdk().stringToCloudFormation(properties.accessStatus),UserGroup:cdk().stringToCloudFormation(properties.userGroup)}):properties}function CfnUserProfileRStudioServerProAppSettingsPropertyFromCloudFormation(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("accessStatus","AccessStatus",properties.AccessStatus!=null?cfn_parse().FromCloudFormation.getString(properties.AccessStatus):void 0),ret.addPropertyResult("userGroup","UserGroup",properties.UserGroup!=null?cfn_parse().FromCloudFormation.getString(properties.UserGroup):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileJupyterServerAppSettingsPropertyValidator(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("defaultResourceSpec",CfnUserProfileResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "JupyterServerAppSettingsProperty"')}function convertCfnUserProfileJupyterServerAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileJupyterServerAppSettingsPropertyValidator(properties).assertSuccess(),{DefaultResourceSpec:convertCfnUserProfileResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnUserProfileJupyterServerAppSettingsPropertyFromCloudFormation(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("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnUserProfileResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileSharingSettingsPropertyValidator(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("notebookOutputOption",cdk().validateString)(properties.notebookOutputOption)),errors.collect(cdk().propertyValidator("s3KmsKeyId",cdk().validateString)(properties.s3KmsKeyId)),errors.collect(cdk().propertyValidator("s3OutputPath",cdk().validateString)(properties.s3OutputPath)),errors.wrap('supplied properties not correct for "SharingSettingsProperty"')}function convertCfnUserProfileSharingSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileSharingSettingsPropertyValidator(properties).assertSuccess(),{NotebookOutputOption:cdk().stringToCloudFormation(properties.notebookOutputOption),S3KmsKeyId:cdk().stringToCloudFormation(properties.s3KmsKeyId),S3OutputPath:cdk().stringToCloudFormation(properties.s3OutputPath)}):properties}function CfnUserProfileSharingSettingsPropertyFromCloudFormation(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("notebookOutputOption","NotebookOutputOption",properties.NotebookOutputOption!=null?cfn_parse().FromCloudFormation.getString(properties.NotebookOutputOption):void 0),ret.addPropertyResult("s3KmsKeyId","S3KmsKeyId",properties.S3KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.S3KmsKeyId):void 0),ret.addPropertyResult("s3OutputPath","S3OutputPath",properties.S3OutputPath!=null?cfn_parse().FromCloudFormation.getString(properties.S3OutputPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileCodeRepositoryPropertyValidator(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("repositoryUrl",cdk().requiredValidator)(properties.repositoryUrl)),errors.collect(cdk().propertyValidator("repositoryUrl",cdk().validateString)(properties.repositoryUrl)),errors.wrap('supplied properties not correct for "CodeRepositoryProperty"')}function convertCfnUserProfileCodeRepositoryPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileCodeRepositoryPropertyValidator(properties).assertSuccess(),{RepositoryUrl:cdk().stringToCloudFormation(properties.repositoryUrl)}):properties}function CfnUserProfileCodeRepositoryPropertyFromCloudFormation(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("repositoryUrl","RepositoryUrl",properties.RepositoryUrl!=null?cfn_parse().FromCloudFormation.getString(properties.RepositoryUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileIdleSettingsPropertyValidator(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("idleTimeoutInMinutes",cdk().validateNumber)(properties.idleTimeoutInMinutes)),errors.collect(cdk().propertyValidator("lifecycleManagement",cdk().validateString)(properties.lifecycleManagement)),errors.collect(cdk().propertyValidator("maxIdleTimeoutInMinutes",cdk().validateNumber)(properties.maxIdleTimeoutInMinutes)),errors.collect(cdk().propertyValidator("minIdleTimeoutInMinutes",cdk().validateNumber)(properties.minIdleTimeoutInMinutes)),errors.wrap('supplied properties not correct for "IdleSettingsProperty"')}function convertCfnUserProfileIdleSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileIdleSettingsPropertyValidator(properties).assertSuccess(),{IdleTimeoutInMinutes:cdk().numberToCloudFormation(properties.idleTimeoutInMinutes),LifecycleManagement:cdk().stringToCloudFormation(properties.lifecycleManagement),MaxIdleTimeoutInMinutes:cdk().numberToCloudFormation(properties.maxIdleTimeoutInMinutes),MinIdleTimeoutInMinutes:cdk().numberToCloudFormation(properties.minIdleTimeoutInMinutes)}):properties}function CfnUserProfileIdleSettingsPropertyFromCloudFormation(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("idleTimeoutInMinutes","IdleTimeoutInMinutes",properties.IdleTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.IdleTimeoutInMinutes):void 0),ret.addPropertyResult("lifecycleManagement","LifecycleManagement",properties.LifecycleManagement!=null?cfn_parse().FromCloudFormation.getString(properties.LifecycleManagement):void 0),ret.addPropertyResult("maxIdleTimeoutInMinutes","MaxIdleTimeoutInMinutes",properties.MaxIdleTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxIdleTimeoutInMinutes):void 0),ret.addPropertyResult("minIdleTimeoutInMinutes","MinIdleTimeoutInMinutes",properties.MinIdleTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinIdleTimeoutInMinutes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileAppLifecycleManagementPropertyValidator(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("idleSettings",CfnUserProfileIdleSettingsPropertyValidator)(properties.idleSettings)),errors.wrap('supplied properties not correct for "AppLifecycleManagementProperty"')}function convertCfnUserProfileAppLifecycleManagementPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileAppLifecycleManagementPropertyValidator(properties).assertSuccess(),{IdleSettings:convertCfnUserProfileIdleSettingsPropertyToCloudFormation(properties.idleSettings)}):properties}function CfnUserProfileAppLifecycleManagementPropertyFromCloudFormation(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("idleSettings","IdleSettings",properties.IdleSettings!=null?CfnUserProfileIdleSettingsPropertyFromCloudFormation(properties.IdleSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileJupyterLabAppSettingsPropertyValidator(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("appLifecycleManagement",CfnUserProfileAppLifecycleManagementPropertyValidator)(properties.appLifecycleManagement)),errors.collect(cdk().propertyValidator("builtInLifecycleConfigArn",cdk().validateString)(properties.builtInLifecycleConfigArn)),errors.collect(cdk().propertyValidator("codeRepositories",cdk().listValidator(CfnUserProfileCodeRepositoryPropertyValidator))(properties.codeRepositories)),errors.collect(cdk().propertyValidator("customImages",cdk().listValidator(CfnUserProfileCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnUserProfileResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "JupyterLabAppSettingsProperty"')}function convertCfnUserProfileJupyterLabAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileJupyterLabAppSettingsPropertyValidator(properties).assertSuccess(),{AppLifecycleManagement:convertCfnUserProfileAppLifecycleManagementPropertyToCloudFormation(properties.appLifecycleManagement),BuiltInLifecycleConfigArn:cdk().stringToCloudFormation(properties.builtInLifecycleConfigArn),CodeRepositories:cdk().listMapper(convertCfnUserProfileCodeRepositoryPropertyToCloudFormation)(properties.codeRepositories),CustomImages:cdk().listMapper(convertCfnUserProfileCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnUserProfileResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnUserProfileJupyterLabAppSettingsPropertyFromCloudFormation(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("appLifecycleManagement","AppLifecycleManagement",properties.AppLifecycleManagement!=null?CfnUserProfileAppLifecycleManagementPropertyFromCloudFormation(properties.AppLifecycleManagement):void 0),ret.addPropertyResult("builtInLifecycleConfigArn","BuiltInLifecycleConfigArn",properties.BuiltInLifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.BuiltInLifecycleConfigArn):void 0),ret.addPropertyResult("codeRepositories","CodeRepositories",properties.CodeRepositories!=null?cfn_parse().FromCloudFormation.getArray(CfnUserProfileCodeRepositoryPropertyFromCloudFormation)(properties.CodeRepositories):void 0),ret.addPropertyResult("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnUserProfileCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnUserProfileResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileDefaultEbsStorageSettingsPropertyValidator(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("defaultEbsVolumeSizeInGb",cdk().requiredValidator)(properties.defaultEbsVolumeSizeInGb)),errors.collect(cdk().propertyValidator("defaultEbsVolumeSizeInGb",cdk().validateNumber)(properties.defaultEbsVolumeSizeInGb)),errors.collect(cdk().propertyValidator("maximumEbsVolumeSizeInGb",cdk().requiredValidator)(properties.maximumEbsVolumeSizeInGb)),errors.collect(cdk().propertyValidator("maximumEbsVolumeSizeInGb",cdk().validateNumber)(properties.maximumEbsVolumeSizeInGb)),errors.wrap('supplied properties not correct for "DefaultEbsStorageSettingsProperty"')}function convertCfnUserProfileDefaultEbsStorageSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileDefaultEbsStorageSettingsPropertyValidator(properties).assertSuccess(),{DefaultEbsVolumeSizeInGb:cdk().numberToCloudFormation(properties.defaultEbsVolumeSizeInGb),MaximumEbsVolumeSizeInGb:cdk().numberToCloudFormation(properties.maximumEbsVolumeSizeInGb)}):properties}function CfnUserProfileDefaultEbsStorageSettingsPropertyFromCloudFormation(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("defaultEbsVolumeSizeInGb","DefaultEbsVolumeSizeInGb",properties.DefaultEbsVolumeSizeInGb!=null?cfn_parse().FromCloudFormation.getNumber(properties.DefaultEbsVolumeSizeInGb):void 0),ret.addPropertyResult("maximumEbsVolumeSizeInGb","MaximumEbsVolumeSizeInGb",properties.MaximumEbsVolumeSizeInGb!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaximumEbsVolumeSizeInGb):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileDefaultSpaceStorageSettingsPropertyValidator(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("defaultEbsStorageSettings",CfnUserProfileDefaultEbsStorageSettingsPropertyValidator)(properties.defaultEbsStorageSettings)),errors.wrap('supplied properties not correct for "DefaultSpaceStorageSettingsProperty"')}function convertCfnUserProfileDefaultSpaceStorageSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileDefaultSpaceStorageSettingsPropertyValidator(properties).assertSuccess(),{DefaultEbsStorageSettings:convertCfnUserProfileDefaultEbsStorageSettingsPropertyToCloudFormation(properties.defaultEbsStorageSettings)}):properties}function CfnUserProfileDefaultSpaceStorageSettingsPropertyFromCloudFormation(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("defaultEbsStorageSettings","DefaultEbsStorageSettings",properties.DefaultEbsStorageSettings!=null?CfnUserProfileDefaultEbsStorageSettingsPropertyFromCloudFormation(properties.DefaultEbsStorageSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileCodeEditorAppSettingsPropertyValidator(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("appLifecycleManagement",CfnUserProfileAppLifecycleManagementPropertyValidator)(properties.appLifecycleManagement)),errors.collect(cdk().propertyValidator("builtInLifecycleConfigArn",cdk().validateString)(properties.builtInLifecycleConfigArn)),errors.collect(cdk().propertyValidator("customImages",cdk().listValidator(CfnUserProfileCustomImagePropertyValidator))(properties.customImages)),errors.collect(cdk().propertyValidator("defaultResourceSpec",CfnUserProfileResourceSpecPropertyValidator)(properties.defaultResourceSpec)),errors.collect(cdk().propertyValidator("lifecycleConfigArns",cdk().listValidator(cdk().validateString))(properties.lifecycleConfigArns)),errors.wrap('supplied properties not correct for "CodeEditorAppSettingsProperty"')}function convertCfnUserProfileCodeEditorAppSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileCodeEditorAppSettingsPropertyValidator(properties).assertSuccess(),{AppLifecycleManagement:convertCfnUserProfileAppLifecycleManagementPropertyToCloudFormation(properties.appLifecycleManagement),BuiltInLifecycleConfigArn:cdk().stringToCloudFormation(properties.builtInLifecycleConfigArn),CustomImages:cdk().listMapper(convertCfnUserProfileCustomImagePropertyToCloudFormation)(properties.customImages),DefaultResourceSpec:convertCfnUserProfileResourceSpecPropertyToCloudFormation(properties.defaultResourceSpec),LifecycleConfigArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.lifecycleConfigArns)}):properties}function CfnUserProfileCodeEditorAppSettingsPropertyFromCloudFormation(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("appLifecycleManagement","AppLifecycleManagement",properties.AppLifecycleManagement!=null?CfnUserProfileAppLifecycleManagementPropertyFromCloudFormation(properties.AppLifecycleManagement):void 0),ret.addPropertyResult("builtInLifecycleConfigArn","BuiltInLifecycleConfigArn",properties.BuiltInLifecycleConfigArn!=null?cfn_parse().FromCloudFormation.getString(properties.BuiltInLifecycleConfigArn):void 0),ret.addPropertyResult("customImages","CustomImages",properties.CustomImages!=null?cfn_parse().FromCloudFormation.getArray(CfnUserProfileCustomImagePropertyFromCloudFormation)(properties.CustomImages):void 0),ret.addPropertyResult("defaultResourceSpec","DefaultResourceSpec",properties.DefaultResourceSpec!=null?CfnUserProfileResourceSpecPropertyFromCloudFormation(properties.DefaultResourceSpec):void 0),ret.addPropertyResult("lifecycleConfigArns","LifecycleConfigArns",properties.LifecycleConfigArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.LifecycleConfigArns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileHiddenSageMakerImagePropertyValidator(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("sageMakerImageName",cdk().validateString)(properties.sageMakerImageName)),errors.collect(cdk().propertyValidator("versionAliases",cdk().listValidator(cdk().validateString))(properties.versionAliases)),errors.wrap('supplied properties not correct for "HiddenSageMakerImageProperty"')}function convertCfnUserProfileHiddenSageMakerImagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileHiddenSageMakerImagePropertyValidator(properties).assertSuccess(),{SageMakerImageName:cdk().stringToCloudFormation(properties.sageMakerImageName),VersionAliases:cdk().listMapper(cdk().stringToCloudFormation)(properties.versionAliases)}):properties}function CfnUserProfileHiddenSageMakerImagePropertyFromCloudFormation(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("sageMakerImageName","SageMakerImageName",properties.SageMakerImageName!=null?cfn_parse().FromCloudFormation.getString(properties.SageMakerImageName):void 0),ret.addPropertyResult("versionAliases","VersionAliases",properties.VersionAliases!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.VersionAliases):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileStudioWebPortalSettingsPropertyValidator(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("hiddenAppTypes",cdk().listValidator(cdk().validateString))(properties.hiddenAppTypes)),errors.collect(cdk().propertyValidator("hiddenInstanceTypes",cdk().listValidator(cdk().validateString))(properties.hiddenInstanceTypes)),errors.collect(cdk().propertyValidator("hiddenMlTools",cdk().listValidator(cdk().validateString))(properties.hiddenMlTools)),errors.collect(cdk().propertyValidator("hiddenSageMakerImageVersionAliases",cdk().listValidator(CfnUserProfileHiddenSageMakerImagePropertyValidator))(properties.hiddenSageMakerImageVersionAliases)),errors.wrap('supplied properties not correct for "StudioWebPortalSettingsProperty"')}function convertCfnUserProfileStudioWebPortalSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileStudioWebPortalSettingsPropertyValidator(properties).assertSuccess(),{HiddenAppTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.hiddenAppTypes),HiddenInstanceTypes:cdk().listMapper(cdk().stringToCloudFormation)(properties.hiddenInstanceTypes),HiddenMlTools:cdk().listMapper(cdk().stringToCloudFormation)(properties.hiddenMlTools),HiddenSageMakerImageVersionAliases:cdk().listMapper(convertCfnUserProfileHiddenSageMakerImagePropertyToCloudFormation)(properties.hiddenSageMakerImageVersionAliases)}):properties}function CfnUserProfileStudioWebPortalSettingsPropertyFromCloudFormation(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("hiddenAppTypes","HiddenAppTypes",properties.HiddenAppTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.HiddenAppTypes):void 0),ret.addPropertyResult("hiddenInstanceTypes","HiddenInstanceTypes",properties.HiddenInstanceTypes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.HiddenInstanceTypes):void 0),ret.addPropertyResult("hiddenMlTools","HiddenMlTools",properties.HiddenMlTools!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.HiddenMlTools):void 0),ret.addPropertyResult("hiddenSageMakerImageVersionAliases","HiddenSageMakerImageVersionAliases",properties.HiddenSageMakerImageVersionAliases!=null?cfn_parse().FromCloudFormation.getArray(CfnUserProfileHiddenSageMakerImagePropertyFromCloudFormation)(properties.HiddenSageMakerImageVersionAliases):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileCustomPosixUserConfigPropertyValidator(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("gid",cdk().requiredValidator)(properties.gid)),errors.collect(cdk().propertyValidator("gid",cdk().validateNumber)(properties.gid)),errors.collect(cdk().propertyValidator("uid",cdk().requiredValidator)(properties.uid)),errors.collect(cdk().propertyValidator("uid",cdk().validateNumber)(properties.uid)),errors.wrap('supplied properties not correct for "CustomPosixUserConfigProperty"')}function convertCfnUserProfileCustomPosixUserConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileCustomPosixUserConfigPropertyValidator(properties).assertSuccess(),{Gid:cdk().numberToCloudFormation(properties.gid),Uid:cdk().numberToCloudFormation(properties.uid)}):properties}function CfnUserProfileCustomPosixUserConfigPropertyFromCloudFormation(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("gid","Gid",properties.Gid!=null?cfn_parse().FromCloudFormation.getNumber(properties.Gid):void 0),ret.addPropertyResult("uid","Uid",properties.Uid!=null?cfn_parse().FromCloudFormation.getNumber(properties.Uid):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileEFSFileSystemConfigPropertyValidator(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("fileSystemId",cdk().requiredValidator)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemId",cdk().validateString)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemPath",cdk().validateString)(properties.fileSystemPath)),errors.wrap('supplied properties not correct for "EFSFileSystemConfigProperty"')}function convertCfnUserProfileEFSFileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileEFSFileSystemConfigPropertyValidator(properties).assertSuccess(),{FileSystemId:cdk().stringToCloudFormation(properties.fileSystemId),FileSystemPath:cdk().stringToCloudFormation(properties.fileSystemPath)}):properties}function CfnUserProfileEFSFileSystemConfigPropertyFromCloudFormation(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("fileSystemId","FileSystemId",properties.FileSystemId!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemId):void 0),ret.addPropertyResult("fileSystemPath","FileSystemPath",properties.FileSystemPath!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileFSxLustreFileSystemConfigPropertyValidator(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("fileSystemId",cdk().requiredValidator)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemId",cdk().validateString)(properties.fileSystemId)),errors.collect(cdk().propertyValidator("fileSystemPath",cdk().validateString)(properties.fileSystemPath)),errors.wrap('supplied properties not correct for "FSxLustreFileSystemConfigProperty"')}function convertCfnUserProfileFSxLustreFileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileFSxLustreFileSystemConfigPropertyValidator(properties).assertSuccess(),{FileSystemId:cdk().stringToCloudFormation(properties.fileSystemId),FileSystemPath:cdk().stringToCloudFormation(properties.fileSystemPath)}):properties}function CfnUserProfileFSxLustreFileSystemConfigPropertyFromCloudFormation(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("fileSystemId","FileSystemId",properties.FileSystemId!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemId):void 0),ret.addPropertyResult("fileSystemPath","FileSystemPath",properties.FileSystemPath!=null?cfn_parse().FromCloudFormation.getString(properties.FileSystemPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileS3FileSystemConfigPropertyValidator(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("mountPath",cdk().validateString)(properties.mountPath)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3FileSystemConfigProperty"')}function convertCfnUserProfileS3FileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileS3FileSystemConfigPropertyValidator(properties).assertSuccess(),{MountPath:cdk().stringToCloudFormation(properties.mountPath),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnUserProfileS3FileSystemConfigPropertyFromCloudFormation(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("mountPath","MountPath",properties.MountPath!=null?cfn_parse().FromCloudFormation.getString(properties.MountPath):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileCustomFileSystemConfigPropertyValidator(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("efsFileSystemConfig",CfnUserProfileEFSFileSystemConfigPropertyValidator)(properties.efsFileSystemConfig)),errors.collect(cdk().propertyValidator("fSxLustreFileSystemConfig",CfnUserProfileFSxLustreFileSystemConfigPropertyValidator)(properties.fSxLustreFileSystemConfig)),errors.collect(cdk().propertyValidator("s3FileSystemConfig",CfnUserProfileS3FileSystemConfigPropertyValidator)(properties.s3FileSystemConfig)),errors.wrap('supplied properties not correct for "CustomFileSystemConfigProperty"')}function convertCfnUserProfileCustomFileSystemConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileCustomFileSystemConfigPropertyValidator(properties).assertSuccess(),{EFSFileSystemConfig:convertCfnUserProfileEFSFileSystemConfigPropertyToCloudFormation(properties.efsFileSystemConfig),FSxLustreFileSystemConfig:convertCfnUserProfileFSxLustreFileSystemConfigPropertyToCloudFormation(properties.fSxLustreFileSystemConfig),S3FileSystemConfig:convertCfnUserProfileS3FileSystemConfigPropertyToCloudFormation(properties.s3FileSystemConfig)}):properties}function CfnUserProfileCustomFileSystemConfigPropertyFromCloudFormation(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("efsFileSystemConfig","EFSFileSystemConfig",properties.EFSFileSystemConfig!=null?CfnUserProfileEFSFileSystemConfigPropertyFromCloudFormation(properties.EFSFileSystemConfig):void 0),ret.addPropertyResult("fSxLustreFileSystemConfig","FSxLustreFileSystemConfig",properties.FSxLustreFileSystemConfig!=null?CfnUserProfileFSxLustreFileSystemConfigPropertyFromCloudFormation(properties.FSxLustreFileSystemConfig):void 0),ret.addPropertyResult("s3FileSystemConfig","S3FileSystemConfig",properties.S3FileSystemConfig!=null?CfnUserProfileS3FileSystemConfigPropertyFromCloudFormation(properties.S3FileSystemConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfileUserSettingsPropertyValidator(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("autoMountHomeEfs",cdk().validateString)(properties.autoMountHomeEfs)),errors.collect(cdk().propertyValidator("codeEditorAppSettings",CfnUserProfileCodeEditorAppSettingsPropertyValidator)(properties.codeEditorAppSettings)),errors.collect(cdk().propertyValidator("customFileSystemConfigs",cdk().listValidator(CfnUserProfileCustomFileSystemConfigPropertyValidator))(properties.customFileSystemConfigs)),errors.collect(cdk().propertyValidator("customPosixUserConfig",CfnUserProfileCustomPosixUserConfigPropertyValidator)(properties.customPosixUserConfig)),errors.collect(cdk().propertyValidator("defaultLandingUri",cdk().validateString)(properties.defaultLandingUri)),errors.collect(cdk().propertyValidator("executionRole",cdk().validateString)(properties.executionRole)),errors.collect(cdk().propertyValidator("jupyterLabAppSettings",CfnUserProfileJupyterLabAppSettingsPropertyValidator)(properties.jupyterLabAppSettings)),errors.collect(cdk().propertyValidator("jupyterServerAppSettings",CfnUserProfileJupyterServerAppSettingsPropertyValidator)(properties.jupyterServerAppSettings)),errors.collect(cdk().propertyValidator("kernelGatewayAppSettings",CfnUserProfileKernelGatewayAppSettingsPropertyValidator)(properties.kernelGatewayAppSettings)),errors.collect(cdk().propertyValidator("rStudioServerProAppSettings",CfnUserProfileRStudioServerProAppSettingsPropertyValidator)(properties.rStudioServerProAppSettings)),errors.collect(cdk().propertyValidator("securityGroups",cdk().listValidator(cdk().validateString))(properties.securityGroups)),errors.collect(cdk().propertyValidator("sharingSettings",CfnUserProfileSharingSettingsPropertyValidator)(properties.sharingSettings)),errors.collect(cdk().propertyValidator("spaceStorageSettings",CfnUserProfileDefaultSpaceStorageSettingsPropertyValidator)(properties.spaceStorageSettings)),errors.collect(cdk().propertyValidator("studioWebPortal",cdk().validateString)(properties.studioWebPortal)),errors.collect(cdk().propertyValidator("studioWebPortalSettings",CfnUserProfileStudioWebPortalSettingsPropertyValidator)(properties.studioWebPortalSettings)),errors.wrap('supplied properties not correct for "UserSettingsProperty"')}function convertCfnUserProfileUserSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfileUserSettingsPropertyValidator(properties).assertSuccess(),{AutoMountHomeEFS:cdk().stringToCloudFormation(properties.autoMountHomeEfs),CodeEditorAppSettings:convertCfnUserProfileCodeEditorAppSettingsPropertyToCloudFormation(properties.codeEditorAppSettings),CustomFileSystemConfigs:cdk().listMapper(convertCfnUserProfileCustomFileSystemConfigPropertyToCloudFormation)(properties.customFileSystemConfigs),CustomPosixUserConfig:convertCfnUserProfileCustomPosixUserConfigPropertyToCloudFormation(properties.customPosixUserConfig),DefaultLandingUri:cdk().stringToCloudFormation(properties.defaultLandingUri),ExecutionRole:cdk().stringToCloudFormation(properties.executionRole),JupyterLabAppSettings:convertCfnUserProfileJupyterLabAppSettingsPropertyToCloudFormation(properties.jupyterLabAppSettings),JupyterServerAppSettings:convertCfnUserProfileJupyterServerAppSettingsPropertyToCloudFormation(properties.jupyterServerAppSettings),KernelGatewayAppSettings:convertCfnUserProfileKernelGatewayAppSettingsPropertyToCloudFormation(properties.kernelGatewayAppSettings),RStudioServerProAppSettings:convertCfnUserProfileRStudioServerProAppSettingsPropertyToCloudFormation(properties.rStudioServerProAppSettings),SecurityGroups:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroups),SharingSettings:convertCfnUserProfileSharingSettingsPropertyToCloudFormation(properties.sharingSettings),SpaceStorageSettings:convertCfnUserProfileDefaultSpaceStorageSettingsPropertyToCloudFormation(properties.spaceStorageSettings),StudioWebPortal:cdk().stringToCloudFormation(properties.studioWebPortal),StudioWebPortalSettings:convertCfnUserProfileStudioWebPortalSettingsPropertyToCloudFormation(properties.studioWebPortalSettings)}):properties}function CfnUserProfileUserSettingsPropertyFromCloudFormation(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("autoMountHomeEfs","AutoMountHomeEFS",properties.AutoMountHomeEFS!=null?cfn_parse().FromCloudFormation.getString(properties.AutoMountHomeEFS):void 0),ret.addPropertyResult("codeEditorAppSettings","CodeEditorAppSettings",properties.CodeEditorAppSettings!=null?CfnUserProfileCodeEditorAppSettingsPropertyFromCloudFormation(properties.CodeEditorAppSettings):void 0),ret.addPropertyResult("customFileSystemConfigs","CustomFileSystemConfigs",properties.CustomFileSystemConfigs!=null?cfn_parse().FromCloudFormation.getArray(CfnUserProfileCustomFileSystemConfigPropertyFromCloudFormation)(properties.CustomFileSystemConfigs):void 0),ret.addPropertyResult("customPosixUserConfig","CustomPosixUserConfig",properties.CustomPosixUserConfig!=null?CfnUserProfileCustomPosixUserConfigPropertyFromCloudFormation(properties.CustomPosixUserConfig):void 0),ret.addPropertyResult("defaultLandingUri","DefaultLandingUri",properties.DefaultLandingUri!=null?cfn_parse().FromCloudFormation.getString(properties.DefaultLandingUri):void 0),ret.addPropertyResult("executionRole","ExecutionRole",properties.ExecutionRole!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRole):void 0),ret.addPropertyResult("jupyterLabAppSettings","JupyterLabAppSettings",properties.JupyterLabAppSettings!=null?CfnUserProfileJupyterLabAppSettingsPropertyFromCloudFormation(properties.JupyterLabAppSettings):void 0),ret.addPropertyResult("jupyterServerAppSettings","JupyterServerAppSettings",properties.JupyterServerAppSettings!=null?CfnUserProfileJupyterServerAppSettingsPropertyFromCloudFormation(properties.JupyterServerAppSettings):void 0),ret.addPropertyResult("kernelGatewayAppSettings","KernelGatewayAppSettings",properties.KernelGatewayAppSettings!=null?CfnUserProfileKernelGatewayAppSettingsPropertyFromCloudFormation(properties.KernelGatewayAppSettings):void 0),ret.addPropertyResult("rStudioServerProAppSettings","RStudioServerProAppSettings",properties.RStudioServerProAppSettings!=null?CfnUserProfileRStudioServerProAppSettingsPropertyFromCloudFormation(properties.RStudioServerProAppSettings):void 0),ret.addPropertyResult("securityGroups","SecurityGroups",properties.SecurityGroups!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroups):void 0),ret.addPropertyResult("sharingSettings","SharingSettings",properties.SharingSettings!=null?CfnUserProfileSharingSettingsPropertyFromCloudFormation(properties.SharingSettings):void 0),ret.addPropertyResult("spaceStorageSettings","SpaceStorageSettings",properties.SpaceStorageSettings!=null?CfnUserProfileDefaultSpaceStorageSettingsPropertyFromCloudFormation(properties.SpaceStorageSettings):void 0),ret.addPropertyResult("studioWebPortal","StudioWebPortal",properties.StudioWebPortal!=null?cfn_parse().FromCloudFormation.getString(properties.StudioWebPortal):void 0),ret.addPropertyResult("studioWebPortalSettings","StudioWebPortalSettings",properties.StudioWebPortalSettings!=null?CfnUserProfileStudioWebPortalSettingsPropertyFromCloudFormation(properties.StudioWebPortalSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnUserProfilePropsValidator(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("domainId",cdk().requiredValidator)(properties.domainId)),errors.collect(cdk().propertyValidator("domainId",cdk().validateString)(properties.domainId)),errors.collect(cdk().propertyValidator("singleSignOnUserIdentifier",cdk().validateString)(properties.singleSignOnUserIdentifier)),errors.collect(cdk().propertyValidator("singleSignOnUserValue",cdk().validateString)(properties.singleSignOnUserValue)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("userProfileName",cdk().requiredValidator)(properties.userProfileName)),errors.collect(cdk().propertyValidator("userProfileName",cdk().validateString)(properties.userProfileName)),errors.collect(cdk().propertyValidator("userSettings",CfnUserProfileUserSettingsPropertyValidator)(properties.userSettings)),errors.wrap('supplied properties not correct for "CfnUserProfileProps"')}function convertCfnUserProfilePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnUserProfilePropsValidator(properties).assertSuccess(),{DomainId:cdk().stringToCloudFormation(properties.domainId),SingleSignOnUserIdentifier:cdk().stringToCloudFormation(properties.singleSignOnUserIdentifier),SingleSignOnUserValue:cdk().stringToCloudFormation(properties.singleSignOnUserValue),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),UserProfileName:cdk().stringToCloudFormation(properties.userProfileName),UserSettings:convertCfnUserProfileUserSettingsPropertyToCloudFormation(properties.userSettings)}):properties}function CfnUserProfilePropsFromCloudFormation(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("domainId","DomainId",properties.DomainId!=null?cfn_parse().FromCloudFormation.getString(properties.DomainId):void 0),ret.addPropertyResult("singleSignOnUserIdentifier","SingleSignOnUserIdentifier",properties.SingleSignOnUserIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.SingleSignOnUserIdentifier):void 0),ret.addPropertyResult("singleSignOnUserValue","SingleSignOnUserValue",properties.SingleSignOnUserValue!=null?cfn_parse().FromCloudFormation.getString(properties.SingleSignOnUserValue):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("userProfileName","UserProfileName",properties.UserProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.UserProfileName):void 0),ret.addPropertyResult("userSettings","UserSettings",properties.UserSettings!=null?CfnUserProfileUserSettingsPropertyFromCloudFormation(properties.UserSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnWorkteam extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnWorkteam",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Workteam";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWorkteamPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnWorkteam(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 isCfnWorkteam(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnWorkteam.CFN_RESOURCE_TYPE_NAME}static arnForWorkteam(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IWorkteamRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForWorkteam),error}return new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:workteam/${WorkteamName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,WorkteamName:resource.workteamRef.workteamName})}_description;_memberDefinitions;_notificationConfiguration;tags;_tagsRaw;_workforceName;_workteamName;cfnPropertyNames={description:"Description",memberDefinitions:"MemberDefinitions",notificationConfiguration:"NotificationConfiguration",tags:"Tags",workforceName:"WorkforceName",workteamName:"WorkteamName"};constructor(scope,id,props={}){super(scope,id,{type:CfnWorkteam.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnWorkteamProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWorkteam),error}this._description=props.description,this._memberDefinitions=props.memberDefinitions,this._notificationConfiguration=props.notificationConfiguration,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Workteam",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._workforceName=props.workforceName,this._workteamName=props.workteamName}get workteamRef(){return{workteamId:this.ref,workteamName:this.attrWorkteamName}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get memberDefinitions(){return this._memberDefinitions}set memberDefinitions(value){cdk().traceProperty(this.node,"MemberDefinitions"),this._memberDefinitions=value}get notificationConfiguration(){return this._notificationConfiguration}set notificationConfiguration(value){cdk().traceProperty(this.node,"NotificationConfiguration"),this._notificationConfiguration=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get workforceName(){return this._workforceName}set workforceName(value){cdk().traceProperty(this.node,"WorkforceName"),this._workforceName=value}get workteamName(){return this._workteamName}set workteamName(value){cdk().traceProperty(this.node,"WorkteamName"),this._workteamName=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get attrWorkteamName(){return cdk().Token.asString(this.getAtt("WorkteamName",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{description:this._description,memberDefinitions:this._memberDefinitions,notificationConfiguration:this._notificationConfiguration,tags:this.tags.renderTags(),workforceName:this._workforceName,workteamName:this._workteamName}}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",CfnWorkteam.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnWorkteamPropsToCloudFormation(props)}}exports.CfnWorkteam=CfnWorkteam;function CfnWorkteamNotificationConfigurationPropertyValidator(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("notificationTopicArn",cdk().requiredValidator)(properties.notificationTopicArn)),errors.collect(cdk().propertyValidator("notificationTopicArn",cdk().validateString)(properties.notificationTopicArn)),errors.wrap('supplied properties not correct for "NotificationConfigurationProperty"')}function convertCfnWorkteamNotificationConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkteamNotificationConfigurationPropertyValidator(properties).assertSuccess(),{NotificationTopicArn:cdk().stringToCloudFormation(properties.notificationTopicArn)}):properties}function CfnWorkteamNotificationConfigurationPropertyFromCloudFormation(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("notificationTopicArn","NotificationTopicArn",properties.NotificationTopicArn!=null?cfn_parse().FromCloudFormation.getString(properties.NotificationTopicArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkteamOidcMemberDefinitionPropertyValidator(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("oidcGroups",cdk().requiredValidator)(properties.oidcGroups)),errors.collect(cdk().propertyValidator("oidcGroups",cdk().listValidator(cdk().validateString))(properties.oidcGroups)),errors.wrap('supplied properties not correct for "OidcMemberDefinitionProperty"')}function convertCfnWorkteamOidcMemberDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkteamOidcMemberDefinitionPropertyValidator(properties).assertSuccess(),{OidcGroups:cdk().listMapper(cdk().stringToCloudFormation)(properties.oidcGroups)}):properties}function CfnWorkteamOidcMemberDefinitionPropertyFromCloudFormation(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("oidcGroups","OidcGroups",properties.OidcGroups!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.OidcGroups):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkteamCognitoMemberDefinitionPropertyValidator(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("cognitoClientId",cdk().requiredValidator)(properties.cognitoClientId)),errors.collect(cdk().propertyValidator("cognitoClientId",cdk().validateString)(properties.cognitoClientId)),errors.collect(cdk().propertyValidator("cognitoUserGroup",cdk().requiredValidator)(properties.cognitoUserGroup)),errors.collect(cdk().propertyValidator("cognitoUserGroup",cdk().validateString)(properties.cognitoUserGroup)),errors.collect(cdk().propertyValidator("cognitoUserPool",cdk().requiredValidator)(properties.cognitoUserPool)),errors.collect(cdk().propertyValidator("cognitoUserPool",cdk().validateString)(properties.cognitoUserPool)),errors.wrap('supplied properties not correct for "CognitoMemberDefinitionProperty"')}function convertCfnWorkteamCognitoMemberDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkteamCognitoMemberDefinitionPropertyValidator(properties).assertSuccess(),{CognitoClientId:cdk().stringToCloudFormation(properties.cognitoClientId),CognitoUserGroup:cdk().stringToCloudFormation(properties.cognitoUserGroup),CognitoUserPool:cdk().stringToCloudFormation(properties.cognitoUserPool)}):properties}function CfnWorkteamCognitoMemberDefinitionPropertyFromCloudFormation(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("cognitoClientId","CognitoClientId",properties.CognitoClientId!=null?cfn_parse().FromCloudFormation.getString(properties.CognitoClientId):void 0),ret.addPropertyResult("cognitoUserGroup","CognitoUserGroup",properties.CognitoUserGroup!=null?cfn_parse().FromCloudFormation.getString(properties.CognitoUserGroup):void 0),ret.addPropertyResult("cognitoUserPool","CognitoUserPool",properties.CognitoUserPool!=null?cfn_parse().FromCloudFormation.getString(properties.CognitoUserPool):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkteamMemberDefinitionPropertyValidator(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("cognitoMemberDefinition",CfnWorkteamCognitoMemberDefinitionPropertyValidator)(properties.cognitoMemberDefinition)),errors.collect(cdk().propertyValidator("oidcMemberDefinition",CfnWorkteamOidcMemberDefinitionPropertyValidator)(properties.oidcMemberDefinition)),errors.wrap('supplied properties not correct for "MemberDefinitionProperty"')}function convertCfnWorkteamMemberDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkteamMemberDefinitionPropertyValidator(properties).assertSuccess(),{CognitoMemberDefinition:convertCfnWorkteamCognitoMemberDefinitionPropertyToCloudFormation(properties.cognitoMemberDefinition),OidcMemberDefinition:convertCfnWorkteamOidcMemberDefinitionPropertyToCloudFormation(properties.oidcMemberDefinition)}):properties}function CfnWorkteamMemberDefinitionPropertyFromCloudFormation(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("cognitoMemberDefinition","CognitoMemberDefinition",properties.CognitoMemberDefinition!=null?CfnWorkteamCognitoMemberDefinitionPropertyFromCloudFormation(properties.CognitoMemberDefinition):void 0),ret.addPropertyResult("oidcMemberDefinition","OidcMemberDefinition",properties.OidcMemberDefinition!=null?CfnWorkteamOidcMemberDefinitionPropertyFromCloudFormation(properties.OidcMemberDefinition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkteamPropsValidator(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("memberDefinitions",cdk().listValidator(CfnWorkteamMemberDefinitionPropertyValidator))(properties.memberDefinitions)),errors.collect(cdk().propertyValidator("notificationConfiguration",CfnWorkteamNotificationConfigurationPropertyValidator)(properties.notificationConfiguration)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("workforceName",cdk().validateString)(properties.workforceName)),errors.collect(cdk().propertyValidator("workteamName",cdk().validateString)(properties.workteamName)),errors.wrap('supplied properties not correct for "CfnWorkteamProps"')}function convertCfnWorkteamPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkteamPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),MemberDefinitions:cdk().listMapper(convertCfnWorkteamMemberDefinitionPropertyToCloudFormation)(properties.memberDefinitions),NotificationConfiguration:convertCfnWorkteamNotificationConfigurationPropertyToCloudFormation(properties.notificationConfiguration),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),WorkforceName:cdk().stringToCloudFormation(properties.workforceName),WorkteamName:cdk().stringToCloudFormation(properties.workteamName)}):properties}function CfnWorkteamPropsFromCloudFormation(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("memberDefinitions","MemberDefinitions",properties.MemberDefinitions!=null?cfn_parse().FromCloudFormation.getArray(CfnWorkteamMemberDefinitionPropertyFromCloudFormation)(properties.MemberDefinitions):void 0),ret.addPropertyResult("notificationConfiguration","NotificationConfiguration",properties.NotificationConfiguration!=null?CfnWorkteamNotificationConfigurationPropertyFromCloudFormation(properties.NotificationConfiguration):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("workforceName","WorkforceName",properties.WorkforceName!=null?cfn_parse().FromCloudFormation.getString(properties.WorkforceName):void 0),ret.addPropertyResult("workteamName","WorkteamName",properties.WorkteamName!=null?cfn_parse().FromCloudFormation.getString(properties.WorkteamName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCluster extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnCluster",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::Cluster";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnCluster(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 isCfnCluster(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnCluster.CFN_RESOURCE_TYPE_NAME}static arnForCluster(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IClusterRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForCluster),error}return resource.clusterRef.clusterArn}_autoScaling;cdkTagManager;_clusterName;_clusterRole;_instanceGroups;_nodeProvisioningMode;_nodeRecovery;_orchestrator;_restrictedInstanceGroups;_tags;_tieredStorageConfig;_vpcConfig;cfnPropertyNames={autoScaling:"AutoScaling",tags:"Tags",clusterName:"ClusterName",clusterRole:"ClusterRole",instanceGroups:"InstanceGroups",nodeProvisioningMode:"NodeProvisioningMode",nodeRecovery:"NodeRecovery",orchestrator:"Orchestrator",restrictedInstanceGroups:"RestrictedInstanceGroups",tieredStorageConfig:"TieredStorageConfig",vpcConfig:"VpcConfig"};constructor(scope,id,props={}){super(scope,id,{type:CfnCluster.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCluster),error}this._autoScaling=props.autoScaling,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::Cluster",void 0,{tagPropertyName:"tags"}),this._clusterName=props.clusterName,this._clusterRole=props.clusterRole,this._instanceGroups=props.instanceGroups,this._nodeProvisioningMode=props.nodeProvisioningMode,this._nodeRecovery=props.nodeRecovery,this._orchestrator=props.orchestrator,this._restrictedInstanceGroups=props.restrictedInstanceGroups,this._tags=props.tags,this._tieredStorageConfig=props.tieredStorageConfig,this._vpcConfig=props.vpcConfig}get clusterRef(){return{clusterArn:this.ref}}get autoScaling(){return this._autoScaling}set autoScaling(value){cdk().traceProperty(this.node,"AutoScaling"),this._autoScaling=value}get clusterName(){return this._clusterName}set clusterName(value){cdk().traceProperty(this.node,"ClusterName"),this._clusterName=value}get clusterRole(){return this._clusterRole}set clusterRole(value){cdk().traceProperty(this.node,"ClusterRole"),this._clusterRole=value}get instanceGroups(){return this._instanceGroups}set instanceGroups(value){cdk().traceProperty(this.node,"InstanceGroups"),this._instanceGroups=value}get nodeProvisioningMode(){return this._nodeProvisioningMode}set nodeProvisioningMode(value){cdk().traceProperty(this.node,"NodeProvisioningMode"),this._nodeProvisioningMode=value}get nodeRecovery(){return this._nodeRecovery}set nodeRecovery(value){cdk().traceProperty(this.node,"NodeRecovery"),this._nodeRecovery=value}get orchestrator(){return this._orchestrator}set orchestrator(value){cdk().traceProperty(this.node,"Orchestrator"),this._orchestrator=value}get restrictedInstanceGroups(){return this._restrictedInstanceGroups}set restrictedInstanceGroups(value){cdk().traceProperty(this.node,"RestrictedInstanceGroups"),this._restrictedInstanceGroups=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get tieredStorageConfig(){return this._tieredStorageConfig}set tieredStorageConfig(value){cdk().traceProperty(this.node,"TieredStorageConfig"),this._tieredStorageConfig=value}get vpcConfig(){return this._vpcConfig}set vpcConfig(value){cdk().traceProperty(this.node,"VpcConfig"),this._vpcConfig=value}get attrClusterArn(){return cdk().Token.asString(this.getAtt("ClusterArn",cdk().ResolutionTypeHint.STRING))}get attrClusterStatus(){return cdk().Token.asString(this.getAtt("ClusterStatus",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrFailureMessage(){return cdk().Token.asString(this.getAtt("FailureMessage",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{autoScaling:this._autoScaling,tags:this.cdkTagManager.renderTags(this._tags),clusterName:this._clusterName,clusterRole:this._clusterRole,instanceGroups:this._instanceGroups,nodeProvisioningMode:this._nodeProvisioningMode,nodeRecovery:this._nodeRecovery,orchestrator:this._orchestrator,restrictedInstanceGroups:this._restrictedInstanceGroups,tieredStorageConfig:this._tieredStorageConfig,vpcConfig:this._vpcConfig}}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",CfnCluster.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnClusterPropsToCloudFormation(props)}}exports.CfnCluster=CfnCluster;function CfnClusterVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnClusterVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnClusterVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterSlurmConfigPropertyValidator(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("nodeType",cdk().requiredValidator)(properties.nodeType)),errors.collect(cdk().propertyValidator("nodeType",cdk().validateString)(properties.nodeType)),errors.collect(cdk().propertyValidator("partitionNames",cdk().listValidator(cdk().validateString))(properties.partitionNames)),errors.wrap('supplied properties not correct for "ClusterSlurmConfigProperty"')}function convertCfnClusterClusterSlurmConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterSlurmConfigPropertyValidator(properties).assertSuccess(),{NodeType:cdk().stringToCloudFormation(properties.nodeType),PartitionNames:cdk().listMapper(cdk().stringToCloudFormation)(properties.partitionNames)}):properties}function CfnClusterClusterSlurmConfigPropertyFromCloudFormation(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("nodeType","NodeType",properties.NodeType!=null?cfn_parse().FromCloudFormation.getString(properties.NodeType):void 0),ret.addPropertyResult("partitionNames","PartitionNames",properties.PartitionNames!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.PartitionNames):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterCapacityRequirementsPropertyValidator(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("onDemand",cdk().validateObject)(properties.onDemand)),errors.collect(cdk().propertyValidator("spot",cdk().validateObject)(properties.spot)),errors.wrap('supplied properties not correct for "ClusterCapacityRequirementsProperty"')}function convertCfnClusterClusterCapacityRequirementsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterCapacityRequirementsPropertyValidator(properties).assertSuccess(),{OnDemand:cdk().objectToCloudFormation(properties.onDemand),Spot:cdk().objectToCloudFormation(properties.spot)}):properties}function CfnClusterClusterCapacityRequirementsPropertyFromCloudFormation(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("onDemand","OnDemand",properties.OnDemand!=null?cfn_parse().FromCloudFormation.getAny(properties.OnDemand):void 0),ret.addPropertyResult("spot","Spot",properties.Spot!=null?cfn_parse().FromCloudFormation.getAny(properties.Spot):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterEbsVolumeConfigPropertyValidator(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("rootVolume",cdk().validateBoolean)(properties.rootVolume)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ClusterEbsVolumeConfigProperty"')}function convertCfnClusterClusterEbsVolumeConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterEbsVolumeConfigPropertyValidator(properties).assertSuccess(),{RootVolume:cdk().booleanToCloudFormation(properties.rootVolume),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnClusterClusterEbsVolumeConfigPropertyFromCloudFormation(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("rootVolume","RootVolume",properties.RootVolume!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RootVolume):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterFsxLustreConfigPropertyValidator(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("dnsName",cdk().requiredValidator)(properties.dnsName)),errors.collect(cdk().propertyValidator("dnsName",cdk().validateString)(properties.dnsName)),errors.collect(cdk().propertyValidator("mountName",cdk().requiredValidator)(properties.mountName)),errors.collect(cdk().propertyValidator("mountName",cdk().validateString)(properties.mountName)),errors.collect(cdk().propertyValidator("mountPath",cdk().validateString)(properties.mountPath)),errors.wrap('supplied properties not correct for "ClusterFsxLustreConfigProperty"')}function convertCfnClusterClusterFsxLustreConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterFsxLustreConfigPropertyValidator(properties).assertSuccess(),{DnsName:cdk().stringToCloudFormation(properties.dnsName),MountName:cdk().stringToCloudFormation(properties.mountName),MountPath:cdk().stringToCloudFormation(properties.mountPath)}):properties}function CfnClusterClusterFsxLustreConfigPropertyFromCloudFormation(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("dnsName","DnsName",properties.DnsName!=null?cfn_parse().FromCloudFormation.getString(properties.DnsName):void 0),ret.addPropertyResult("mountName","MountName",properties.MountName!=null?cfn_parse().FromCloudFormation.getString(properties.MountName):void 0),ret.addPropertyResult("mountPath","MountPath",properties.MountPath!=null?cfn_parse().FromCloudFormation.getString(properties.MountPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterFsxOpenZfsConfigPropertyValidator(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("dnsName",cdk().requiredValidator)(properties.dnsName)),errors.collect(cdk().propertyValidator("dnsName",cdk().validateString)(properties.dnsName)),errors.collect(cdk().propertyValidator("mountPath",cdk().validateString)(properties.mountPath)),errors.wrap('supplied properties not correct for "ClusterFsxOpenZfsConfigProperty"')}function convertCfnClusterClusterFsxOpenZfsConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterFsxOpenZfsConfigPropertyValidator(properties).assertSuccess(),{DnsName:cdk().stringToCloudFormation(properties.dnsName),MountPath:cdk().stringToCloudFormation(properties.mountPath)}):properties}function CfnClusterClusterFsxOpenZfsConfigPropertyFromCloudFormation(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("dnsName","DnsName",properties.DnsName!=null?cfn_parse().FromCloudFormation.getString(properties.DnsName):void 0),ret.addPropertyResult("mountPath","MountPath",properties.MountPath!=null?cfn_parse().FromCloudFormation.getString(properties.MountPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterInstanceStorageConfigPropertyValidator(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("ebsVolumeConfig",CfnClusterClusterEbsVolumeConfigPropertyValidator)(properties.ebsVolumeConfig)),errors.collect(cdk().propertyValidator("fsxLustreConfig",CfnClusterClusterFsxLustreConfigPropertyValidator)(properties.fsxLustreConfig)),errors.collect(cdk().propertyValidator("fsxOpenZfsConfig",CfnClusterClusterFsxOpenZfsConfigPropertyValidator)(properties.fsxOpenZfsConfig)),errors.wrap('supplied properties not correct for "ClusterInstanceStorageConfigProperty"')}function convertCfnClusterClusterInstanceStorageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterInstanceStorageConfigPropertyValidator(properties).assertSuccess(),{EbsVolumeConfig:convertCfnClusterClusterEbsVolumeConfigPropertyToCloudFormation(properties.ebsVolumeConfig),FsxLustreConfig:convertCfnClusterClusterFsxLustreConfigPropertyToCloudFormation(properties.fsxLustreConfig),FsxOpenZfsConfig:convertCfnClusterClusterFsxOpenZfsConfigPropertyToCloudFormation(properties.fsxOpenZfsConfig)}):properties}function CfnClusterClusterInstanceStorageConfigPropertyFromCloudFormation(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("ebsVolumeConfig","EbsVolumeConfig",properties.EbsVolumeConfig!=null?CfnClusterClusterEbsVolumeConfigPropertyFromCloudFormation(properties.EbsVolumeConfig):void 0),ret.addPropertyResult("fsxLustreConfig","FsxLustreConfig",properties.FsxLustreConfig!=null?CfnClusterClusterFsxLustreConfigPropertyFromCloudFormation(properties.FsxLustreConfig):void 0),ret.addPropertyResult("fsxOpenZfsConfig","FsxOpenZfsConfig",properties.FsxOpenZfsConfig!=null?CfnClusterClusterFsxOpenZfsConfigPropertyFromCloudFormation(properties.FsxOpenZfsConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterKubernetesTaintPropertyValidator(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("effect",cdk().requiredValidator)(properties.effect)),errors.collect(cdk().propertyValidator("effect",cdk().validateString)(properties.effect)),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 "ClusterKubernetesTaintProperty"')}function convertCfnClusterClusterKubernetesTaintPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterKubernetesTaintPropertyValidator(properties).assertSuccess(),{Effect:cdk().stringToCloudFormation(properties.effect),Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnClusterClusterKubernetesTaintPropertyFromCloudFormation(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("effect","Effect",properties.Effect!=null?cfn_parse().FromCloudFormation.getString(properties.Effect):void 0),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 CfnClusterClusterKubernetesConfigPropertyValidator(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("labels",cdk().hashValidator(cdk().validateString))(properties.labels)),errors.collect(cdk().propertyValidator("taints",cdk().listValidator(CfnClusterClusterKubernetesTaintPropertyValidator))(properties.taints)),errors.wrap('supplied properties not correct for "ClusterKubernetesConfigProperty"')}function convertCfnClusterClusterKubernetesConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterKubernetesConfigPropertyValidator(properties).assertSuccess(),{Labels:cdk().hashMapper(cdk().stringToCloudFormation)(properties.labels),Taints:cdk().listMapper(convertCfnClusterClusterKubernetesTaintPropertyToCloudFormation)(properties.taints)}):properties}function CfnClusterClusterKubernetesConfigPropertyFromCloudFormation(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("labels","Labels",properties.Labels!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Labels):void 0),ret.addPropertyResult("taints","Taints",properties.Taints!=null?cfn_parse().FromCloudFormation.getArray(CfnClusterClusterKubernetesTaintPropertyFromCloudFormation)(properties.Taints):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterLifeCycleConfigPropertyValidator(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("onCreate",cdk().validateString)(properties.onCreate)),errors.collect(cdk().propertyValidator("onInitComplete",cdk().validateString)(properties.onInitComplete)),errors.collect(cdk().propertyValidator("sourceS3Uri",cdk().validateString)(properties.sourceS3Uri)),errors.wrap('supplied properties not correct for "ClusterLifeCycleConfigProperty"')}function convertCfnClusterClusterLifeCycleConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterLifeCycleConfigPropertyValidator(properties).assertSuccess(),{OnCreate:cdk().stringToCloudFormation(properties.onCreate),OnInitComplete:cdk().stringToCloudFormation(properties.onInitComplete),SourceS3Uri:cdk().stringToCloudFormation(properties.sourceS3Uri)}):properties}function CfnClusterClusterLifeCycleConfigPropertyFromCloudFormation(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("onCreate","OnCreate",properties.OnCreate!=null?cfn_parse().FromCloudFormation.getString(properties.OnCreate):void 0),ret.addPropertyResult("onInitComplete","OnInitComplete",properties.OnInitComplete!=null?cfn_parse().FromCloudFormation.getString(properties.OnInitComplete):void 0),ret.addPropertyResult("sourceS3Uri","SourceS3Uri",properties.SourceS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.SourceS3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterAlarmDetailsPropertyValidator(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("alarmName",cdk().requiredValidator)(properties.alarmName)),errors.collect(cdk().propertyValidator("alarmName",cdk().validateString)(properties.alarmName)),errors.wrap('supplied properties not correct for "AlarmDetailsProperty"')}function convertCfnClusterAlarmDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterAlarmDetailsPropertyValidator(properties).assertSuccess(),{AlarmName:cdk().stringToCloudFormation(properties.alarmName)}):properties}function CfnClusterAlarmDetailsPropertyFromCloudFormation(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("alarmName","AlarmName",properties.AlarmName!=null?cfn_parse().FromCloudFormation.getString(properties.AlarmName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterCapacitySizeConfigPropertyValidator(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().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "CapacitySizeConfigProperty"')}function convertCfnClusterCapacitySizeConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterCapacitySizeConfigPropertyValidator(properties).assertSuccess(),{Type:cdk().stringToCloudFormation(properties.type),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnClusterCapacitySizeConfigPropertyFromCloudFormation(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.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterRollingUpdatePolicyPropertyValidator(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("maximumBatchSize",cdk().requiredValidator)(properties.maximumBatchSize)),errors.collect(cdk().propertyValidator("maximumBatchSize",CfnClusterCapacitySizeConfigPropertyValidator)(properties.maximumBatchSize)),errors.collect(cdk().propertyValidator("rollbackMaximumBatchSize",CfnClusterCapacitySizeConfigPropertyValidator)(properties.rollbackMaximumBatchSize)),errors.wrap('supplied properties not correct for "RollingUpdatePolicyProperty"')}function convertCfnClusterRollingUpdatePolicyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterRollingUpdatePolicyPropertyValidator(properties).assertSuccess(),{MaximumBatchSize:convertCfnClusterCapacitySizeConfigPropertyToCloudFormation(properties.maximumBatchSize),RollbackMaximumBatchSize:convertCfnClusterCapacitySizeConfigPropertyToCloudFormation(properties.rollbackMaximumBatchSize)}):properties}function CfnClusterRollingUpdatePolicyPropertyFromCloudFormation(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("maximumBatchSize","MaximumBatchSize",properties.MaximumBatchSize!=null?CfnClusterCapacitySizeConfigPropertyFromCloudFormation(properties.MaximumBatchSize):void 0),ret.addPropertyResult("rollbackMaximumBatchSize","RollbackMaximumBatchSize",properties.RollbackMaximumBatchSize!=null?CfnClusterCapacitySizeConfigPropertyFromCloudFormation(properties.RollbackMaximumBatchSize):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterDeploymentConfigPropertyValidator(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("autoRollbackConfiguration",cdk().listValidator(CfnClusterAlarmDetailsPropertyValidator))(properties.autoRollbackConfiguration)),errors.collect(cdk().propertyValidator("rollingUpdatePolicy",CfnClusterRollingUpdatePolicyPropertyValidator)(properties.rollingUpdatePolicy)),errors.collect(cdk().propertyValidator("waitIntervalInSeconds",cdk().validateNumber)(properties.waitIntervalInSeconds)),errors.wrap('supplied properties not correct for "DeploymentConfigProperty"')}function convertCfnClusterDeploymentConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterDeploymentConfigPropertyValidator(properties).assertSuccess(),{AutoRollbackConfiguration:cdk().listMapper(convertCfnClusterAlarmDetailsPropertyToCloudFormation)(properties.autoRollbackConfiguration),RollingUpdatePolicy:convertCfnClusterRollingUpdatePolicyPropertyToCloudFormation(properties.rollingUpdatePolicy),WaitIntervalInSeconds:cdk().numberToCloudFormation(properties.waitIntervalInSeconds)}):properties}function CfnClusterDeploymentConfigPropertyFromCloudFormation(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("autoRollbackConfiguration","AutoRollbackConfiguration",properties.AutoRollbackConfiguration!=null?cfn_parse().FromCloudFormation.getArray(CfnClusterAlarmDetailsPropertyFromCloudFormation)(properties.AutoRollbackConfiguration):void 0),ret.addPropertyResult("rollingUpdatePolicy","RollingUpdatePolicy",properties.RollingUpdatePolicy!=null?CfnClusterRollingUpdatePolicyPropertyFromCloudFormation(properties.RollingUpdatePolicy):void 0),ret.addPropertyResult("waitIntervalInSeconds","WaitIntervalInSeconds",properties.WaitIntervalInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.WaitIntervalInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterScheduledUpdateConfigPropertyValidator(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("deploymentConfig",CfnClusterDeploymentConfigPropertyValidator)(properties.deploymentConfig)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().requiredValidator)(properties.scheduleExpression)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().validateString)(properties.scheduleExpression)),errors.wrap('supplied properties not correct for "ScheduledUpdateConfigProperty"')}function convertCfnClusterScheduledUpdateConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterScheduledUpdateConfigPropertyValidator(properties).assertSuccess(),{DeploymentConfig:convertCfnClusterDeploymentConfigPropertyToCloudFormation(properties.deploymentConfig),ScheduleExpression:cdk().stringToCloudFormation(properties.scheduleExpression)}):properties}function CfnClusterScheduledUpdateConfigPropertyFromCloudFormation(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("deploymentConfig","DeploymentConfig",properties.DeploymentConfig!=null?CfnClusterDeploymentConfigPropertyFromCloudFormation(properties.DeploymentConfig):void 0),ret.addPropertyResult("scheduleExpression","ScheduleExpression",properties.ScheduleExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ScheduleExpression):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterInstanceGroupPropertyValidator(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("capacityRequirements",CfnClusterClusterCapacityRequirementsPropertyValidator)(properties.capacityRequirements)),errors.collect(cdk().propertyValidator("currentCount",cdk().validateNumber)(properties.currentCount)),errors.collect(cdk().propertyValidator("executionRole",cdk().requiredValidator)(properties.executionRole)),errors.collect(cdk().propertyValidator("executionRole",cdk().validateString)(properties.executionRole)),errors.collect(cdk().propertyValidator("imageId",cdk().validateString)(properties.imageId)),errors.collect(cdk().propertyValidator("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceGroupName",cdk().requiredValidator)(properties.instanceGroupName)),errors.collect(cdk().propertyValidator("instanceGroupName",cdk().validateString)(properties.instanceGroupName)),errors.collect(cdk().propertyValidator("instanceStorageConfigs",cdk().listValidator(CfnClusterClusterInstanceStorageConfigPropertyValidator))(properties.instanceStorageConfigs)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("kubernetesConfig",CfnClusterClusterKubernetesConfigPropertyValidator)(properties.kubernetesConfig)),errors.collect(cdk().propertyValidator("lifeCycleConfig",CfnClusterClusterLifeCycleConfigPropertyValidator)(properties.lifeCycleConfig)),errors.collect(cdk().propertyValidator("minInstanceCount",cdk().validateNumber)(properties.minInstanceCount)),errors.collect(cdk().propertyValidator("onStartDeepHealthChecks",cdk().listValidator(cdk().validateString))(properties.onStartDeepHealthChecks)),errors.collect(cdk().propertyValidator("overrideVpcConfig",CfnClusterVpcConfigPropertyValidator)(properties.overrideVpcConfig)),errors.collect(cdk().propertyValidator("scheduledUpdateConfig",CfnClusterScheduledUpdateConfigPropertyValidator)(properties.scheduledUpdateConfig)),errors.collect(cdk().propertyValidator("slurmConfig",CfnClusterClusterSlurmConfigPropertyValidator)(properties.slurmConfig)),errors.collect(cdk().propertyValidator("threadsPerCore",cdk().validateNumber)(properties.threadsPerCore)),errors.collect(cdk().propertyValidator("trainingPlanArn",cdk().validateString)(properties.trainingPlanArn)),errors.wrap('supplied properties not correct for "ClusterInstanceGroupProperty"')}function convertCfnClusterClusterInstanceGroupPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterInstanceGroupPropertyValidator(properties).assertSuccess(),{CapacityRequirements:convertCfnClusterClusterCapacityRequirementsPropertyToCloudFormation(properties.capacityRequirements),CurrentCount:cdk().numberToCloudFormation(properties.currentCount),ExecutionRole:cdk().stringToCloudFormation(properties.executionRole),ImageId:cdk().stringToCloudFormation(properties.imageId),InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceGroupName:cdk().stringToCloudFormation(properties.instanceGroupName),InstanceStorageConfigs:cdk().listMapper(convertCfnClusterClusterInstanceStorageConfigPropertyToCloudFormation)(properties.instanceStorageConfigs),InstanceType:cdk().stringToCloudFormation(properties.instanceType),KubernetesConfig:convertCfnClusterClusterKubernetesConfigPropertyToCloudFormation(properties.kubernetesConfig),LifeCycleConfig:convertCfnClusterClusterLifeCycleConfigPropertyToCloudFormation(properties.lifeCycleConfig),MinInstanceCount:cdk().numberToCloudFormation(properties.minInstanceCount),OnStartDeepHealthChecks:cdk().listMapper(cdk().stringToCloudFormation)(properties.onStartDeepHealthChecks),OverrideVpcConfig:convertCfnClusterVpcConfigPropertyToCloudFormation(properties.overrideVpcConfig),ScheduledUpdateConfig:convertCfnClusterScheduledUpdateConfigPropertyToCloudFormation(properties.scheduledUpdateConfig),SlurmConfig:convertCfnClusterClusterSlurmConfigPropertyToCloudFormation(properties.slurmConfig),ThreadsPerCore:cdk().numberToCloudFormation(properties.threadsPerCore),TrainingPlanArn:cdk().stringToCloudFormation(properties.trainingPlanArn)}):properties}function CfnClusterClusterInstanceGroupPropertyFromCloudFormation(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("capacityRequirements","CapacityRequirements",properties.CapacityRequirements!=null?CfnClusterClusterCapacityRequirementsPropertyFromCloudFormation(properties.CapacityRequirements):void 0),ret.addPropertyResult("currentCount","CurrentCount",properties.CurrentCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.CurrentCount):void 0),ret.addPropertyResult("executionRole","ExecutionRole",properties.ExecutionRole!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRole):void 0),ret.addPropertyResult("imageId","ImageId",properties.ImageId!=null?cfn_parse().FromCloudFormation.getString(properties.ImageId):void 0),ret.addPropertyResult("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceGroupName","InstanceGroupName",properties.InstanceGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceGroupName):void 0),ret.addPropertyResult("instanceStorageConfigs","InstanceStorageConfigs",properties.InstanceStorageConfigs!=null?cfn_parse().FromCloudFormation.getArray(CfnClusterClusterInstanceStorageConfigPropertyFromCloudFormation)(properties.InstanceStorageConfigs):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("kubernetesConfig","KubernetesConfig",properties.KubernetesConfig!=null?CfnClusterClusterKubernetesConfigPropertyFromCloudFormation(properties.KubernetesConfig):void 0),ret.addPropertyResult("lifeCycleConfig","LifeCycleConfig",properties.LifeCycleConfig!=null?CfnClusterClusterLifeCycleConfigPropertyFromCloudFormation(properties.LifeCycleConfig):void 0),ret.addPropertyResult("minInstanceCount","MinInstanceCount",properties.MinInstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinInstanceCount):void 0),ret.addPropertyResult("onStartDeepHealthChecks","OnStartDeepHealthChecks",properties.OnStartDeepHealthChecks!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.OnStartDeepHealthChecks):void 0),ret.addPropertyResult("overrideVpcConfig","OverrideVpcConfig",properties.OverrideVpcConfig!=null?CfnClusterVpcConfigPropertyFromCloudFormation(properties.OverrideVpcConfig):void 0),ret.addPropertyResult("scheduledUpdateConfig","ScheduledUpdateConfig",properties.ScheduledUpdateConfig!=null?CfnClusterScheduledUpdateConfigPropertyFromCloudFormation(properties.ScheduledUpdateConfig):void 0),ret.addPropertyResult("slurmConfig","SlurmConfig",properties.SlurmConfig!=null?CfnClusterClusterSlurmConfigPropertyFromCloudFormation(properties.SlurmConfig):void 0),ret.addPropertyResult("threadsPerCore","ThreadsPerCore",properties.ThreadsPerCore!=null?cfn_parse().FromCloudFormation.getNumber(properties.ThreadsPerCore):void 0),ret.addPropertyResult("trainingPlanArn","TrainingPlanArn",properties.TrainingPlanArn!=null?cfn_parse().FromCloudFormation.getString(properties.TrainingPlanArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterFSxLustreConfigPropertyValidator(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("perUnitStorageThroughput",cdk().requiredValidator)(properties.perUnitStorageThroughput)),errors.collect(cdk().propertyValidator("perUnitStorageThroughput",cdk().validateNumber)(properties.perUnitStorageThroughput)),errors.collect(cdk().propertyValidator("sizeInGiB",cdk().requiredValidator)(properties.sizeInGiB)),errors.collect(cdk().propertyValidator("sizeInGiB",cdk().validateNumber)(properties.sizeInGiB)),errors.wrap('supplied properties not correct for "FSxLustreConfigProperty"')}function convertCfnClusterFSxLustreConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterFSxLustreConfigPropertyValidator(properties).assertSuccess(),{PerUnitStorageThroughput:cdk().numberToCloudFormation(properties.perUnitStorageThroughput),SizeInGiB:cdk().numberToCloudFormation(properties.sizeInGiB)}):properties}function CfnClusterFSxLustreConfigPropertyFromCloudFormation(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("perUnitStorageThroughput","PerUnitStorageThroughput",properties.PerUnitStorageThroughput!=null?cfn_parse().FromCloudFormation.getNumber(properties.PerUnitStorageThroughput):void 0),ret.addPropertyResult("sizeInGiB","SizeInGiB",properties.SizeInGiB!=null?cfn_parse().FromCloudFormation.getNumber(properties.SizeInGiB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterEnvironmentConfigPropertyValidator(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("fSxLustreConfig",CfnClusterFSxLustreConfigPropertyValidator)(properties.fSxLustreConfig)),errors.wrap('supplied properties not correct for "EnvironmentConfigProperty"')}function convertCfnClusterEnvironmentConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterEnvironmentConfigPropertyValidator(properties).assertSuccess(),{FSxLustreConfig:convertCfnClusterFSxLustreConfigPropertyToCloudFormation(properties.fSxLustreConfig)}):properties}function CfnClusterEnvironmentConfigPropertyFromCloudFormation(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("fSxLustreConfig","FSxLustreConfig",properties.FSxLustreConfig!=null?CfnClusterFSxLustreConfigPropertyFromCloudFormation(properties.FSxLustreConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterRestrictedInstanceGroupPropertyValidator(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("currentCount",cdk().validateNumber)(properties.currentCount)),errors.collect(cdk().propertyValidator("environmentConfig",cdk().requiredValidator)(properties.environmentConfig)),errors.collect(cdk().propertyValidator("environmentConfig",CfnClusterEnvironmentConfigPropertyValidator)(properties.environmentConfig)),errors.collect(cdk().propertyValidator("executionRole",cdk().requiredValidator)(properties.executionRole)),errors.collect(cdk().propertyValidator("executionRole",cdk().validateString)(properties.executionRole)),errors.collect(cdk().propertyValidator("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceGroupName",cdk().requiredValidator)(properties.instanceGroupName)),errors.collect(cdk().propertyValidator("instanceGroupName",cdk().validateString)(properties.instanceGroupName)),errors.collect(cdk().propertyValidator("instanceStorageConfigs",cdk().listValidator(CfnClusterClusterInstanceStorageConfigPropertyValidator))(properties.instanceStorageConfigs)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("onStartDeepHealthChecks",cdk().listValidator(cdk().validateString))(properties.onStartDeepHealthChecks)),errors.collect(cdk().propertyValidator("overrideVpcConfig",CfnClusterVpcConfigPropertyValidator)(properties.overrideVpcConfig)),errors.collect(cdk().propertyValidator("threadsPerCore",cdk().validateNumber)(properties.threadsPerCore)),errors.collect(cdk().propertyValidator("trainingPlanArn",cdk().validateString)(properties.trainingPlanArn)),errors.wrap('supplied properties not correct for "ClusterRestrictedInstanceGroupProperty"')}function convertCfnClusterClusterRestrictedInstanceGroupPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterRestrictedInstanceGroupPropertyValidator(properties).assertSuccess(),{CurrentCount:cdk().numberToCloudFormation(properties.currentCount),EnvironmentConfig:convertCfnClusterEnvironmentConfigPropertyToCloudFormation(properties.environmentConfig),ExecutionRole:cdk().stringToCloudFormation(properties.executionRole),InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceGroupName:cdk().stringToCloudFormation(properties.instanceGroupName),InstanceStorageConfigs:cdk().listMapper(convertCfnClusterClusterInstanceStorageConfigPropertyToCloudFormation)(properties.instanceStorageConfigs),InstanceType:cdk().stringToCloudFormation(properties.instanceType),OnStartDeepHealthChecks:cdk().listMapper(cdk().stringToCloudFormation)(properties.onStartDeepHealthChecks),OverrideVpcConfig:convertCfnClusterVpcConfigPropertyToCloudFormation(properties.overrideVpcConfig),ThreadsPerCore:cdk().numberToCloudFormation(properties.threadsPerCore),TrainingPlanArn:cdk().stringToCloudFormation(properties.trainingPlanArn)}):properties}function CfnClusterClusterRestrictedInstanceGroupPropertyFromCloudFormation(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("currentCount","CurrentCount",properties.CurrentCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.CurrentCount):void 0),ret.addPropertyResult("environmentConfig","EnvironmentConfig",properties.EnvironmentConfig!=null?CfnClusterEnvironmentConfigPropertyFromCloudFormation(properties.EnvironmentConfig):void 0),ret.addPropertyResult("executionRole","ExecutionRole",properties.ExecutionRole!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRole):void 0),ret.addPropertyResult("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceGroupName","InstanceGroupName",properties.InstanceGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceGroupName):void 0),ret.addPropertyResult("instanceStorageConfigs","InstanceStorageConfigs",properties.InstanceStorageConfigs!=null?cfn_parse().FromCloudFormation.getArray(CfnClusterClusterInstanceStorageConfigPropertyFromCloudFormation)(properties.InstanceStorageConfigs):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("onStartDeepHealthChecks","OnStartDeepHealthChecks",properties.OnStartDeepHealthChecks!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.OnStartDeepHealthChecks):void 0),ret.addPropertyResult("overrideVpcConfig","OverrideVpcConfig",properties.OverrideVpcConfig!=null?CfnClusterVpcConfigPropertyFromCloudFormation(properties.OverrideVpcConfig):void 0),ret.addPropertyResult("threadsPerCore","ThreadsPerCore",properties.ThreadsPerCore!=null?cfn_parse().FromCloudFormation.getNumber(properties.ThreadsPerCore):void 0),ret.addPropertyResult("trainingPlanArn","TrainingPlanArn",properties.TrainingPlanArn!=null?cfn_parse().FromCloudFormation.getString(properties.TrainingPlanArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterOrchestratorEksConfigPropertyValidator(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("clusterArn",cdk().requiredValidator)(properties.clusterArn)),errors.collect(cdk().propertyValidator("clusterArn",cdk().validateString)(properties.clusterArn)),errors.wrap('supplied properties not correct for "ClusterOrchestratorEksConfigProperty"')}function convertCfnClusterClusterOrchestratorEksConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterOrchestratorEksConfigPropertyValidator(properties).assertSuccess(),{ClusterArn:cdk().stringToCloudFormation(properties.clusterArn)}):properties}function CfnClusterClusterOrchestratorEksConfigPropertyFromCloudFormation(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("clusterArn","ClusterArn",properties.ClusterArn!=null?cfn_parse().FromCloudFormation.getString(properties.ClusterArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterOrchestratorSlurmConfigPropertyValidator(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("slurmConfigStrategy",cdk().validateString)(properties.slurmConfigStrategy)),errors.wrap('supplied properties not correct for "ClusterOrchestratorSlurmConfigProperty"')}function convertCfnClusterClusterOrchestratorSlurmConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterOrchestratorSlurmConfigPropertyValidator(properties).assertSuccess(),{SlurmConfigStrategy:cdk().stringToCloudFormation(properties.slurmConfigStrategy)}):properties}function CfnClusterClusterOrchestratorSlurmConfigPropertyFromCloudFormation(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("slurmConfigStrategy","SlurmConfigStrategy",properties.SlurmConfigStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.SlurmConfigStrategy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterOrchestratorPropertyValidator(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("eks",CfnClusterClusterOrchestratorEksConfigPropertyValidator)(properties.eks)),errors.collect(cdk().propertyValidator("slurm",CfnClusterClusterOrchestratorSlurmConfigPropertyValidator)(properties.slurm)),errors.wrap('supplied properties not correct for "OrchestratorProperty"')}function convertCfnClusterOrchestratorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterOrchestratorPropertyValidator(properties).assertSuccess(),{Eks:convertCfnClusterClusterOrchestratorEksConfigPropertyToCloudFormation(properties.eks),Slurm:convertCfnClusterClusterOrchestratorSlurmConfigPropertyToCloudFormation(properties.slurm)}):properties}function CfnClusterOrchestratorPropertyFromCloudFormation(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("eks","Eks",properties.Eks!=null?CfnClusterClusterOrchestratorEksConfigPropertyFromCloudFormation(properties.Eks):void 0),ret.addPropertyResult("slurm","Slurm",properties.Slurm!=null?CfnClusterClusterOrchestratorSlurmConfigPropertyFromCloudFormation(properties.Slurm):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterClusterAutoScalingConfigPropertyValidator(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("autoScalerType",cdk().validateString)(properties.autoScalerType)),errors.collect(cdk().propertyValidator("mode",cdk().requiredValidator)(properties.mode)),errors.collect(cdk().propertyValidator("mode",cdk().validateString)(properties.mode)),errors.wrap('supplied properties not correct for "ClusterAutoScalingConfigProperty"')}function convertCfnClusterClusterAutoScalingConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterClusterAutoScalingConfigPropertyValidator(properties).assertSuccess(),{AutoScalerType:cdk().stringToCloudFormation(properties.autoScalerType),Mode:cdk().stringToCloudFormation(properties.mode)}):properties}function CfnClusterClusterAutoScalingConfigPropertyFromCloudFormation(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("autoScalerType","AutoScalerType",properties.AutoScalerType!=null?cfn_parse().FromCloudFormation.getString(properties.AutoScalerType):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterTieredStorageConfigPropertyValidator(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("instanceMemoryAllocationPercentage",cdk().validateNumber)(properties.instanceMemoryAllocationPercentage)),errors.collect(cdk().propertyValidator("mode",cdk().requiredValidator)(properties.mode)),errors.collect(cdk().propertyValidator("mode",cdk().validateString)(properties.mode)),errors.wrap('supplied properties not correct for "TieredStorageConfigProperty"')}function convertCfnClusterTieredStorageConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterTieredStorageConfigPropertyValidator(properties).assertSuccess(),{InstanceMemoryAllocationPercentage:cdk().numberToCloudFormation(properties.instanceMemoryAllocationPercentage),Mode:cdk().stringToCloudFormation(properties.mode)}):properties}function CfnClusterTieredStorageConfigPropertyFromCloudFormation(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("instanceMemoryAllocationPercentage","InstanceMemoryAllocationPercentage",properties.InstanceMemoryAllocationPercentage!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceMemoryAllocationPercentage):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse().FromCloudFormation.getString(properties.Mode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterPropsValidator(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("autoScaling",CfnClusterClusterAutoScalingConfigPropertyValidator)(properties.autoScaling)),errors.collect(cdk().propertyValidator("clusterName",cdk().validateString)(properties.clusterName)),errors.collect(cdk().propertyValidator("clusterRole",cdk().validateString)(properties.clusterRole)),errors.collect(cdk().propertyValidator("instanceGroups",cdk().listValidator(CfnClusterClusterInstanceGroupPropertyValidator))(properties.instanceGroups)),errors.collect(cdk().propertyValidator("nodeProvisioningMode",cdk().validateString)(properties.nodeProvisioningMode)),errors.collect(cdk().propertyValidator("nodeRecovery",cdk().validateString)(properties.nodeRecovery)),errors.collect(cdk().propertyValidator("orchestrator",CfnClusterOrchestratorPropertyValidator)(properties.orchestrator)),errors.collect(cdk().propertyValidator("restrictedInstanceGroups",cdk().listValidator(CfnClusterClusterRestrictedInstanceGroupPropertyValidator))(properties.restrictedInstanceGroups)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("tieredStorageConfig",CfnClusterTieredStorageConfigPropertyValidator)(properties.tieredStorageConfig)),errors.collect(cdk().propertyValidator("vpcConfig",CfnClusterVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "CfnClusterProps"')}function convertCfnClusterPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnClusterPropsValidator(properties).assertSuccess(),{AutoScaling:convertCfnClusterClusterAutoScalingConfigPropertyToCloudFormation(properties.autoScaling),ClusterName:cdk().stringToCloudFormation(properties.clusterName),ClusterRole:cdk().stringToCloudFormation(properties.clusterRole),InstanceGroups:cdk().listMapper(convertCfnClusterClusterInstanceGroupPropertyToCloudFormation)(properties.instanceGroups),NodeProvisioningMode:cdk().stringToCloudFormation(properties.nodeProvisioningMode),NodeRecovery:cdk().stringToCloudFormation(properties.nodeRecovery),Orchestrator:convertCfnClusterOrchestratorPropertyToCloudFormation(properties.orchestrator),RestrictedInstanceGroups:cdk().listMapper(convertCfnClusterClusterRestrictedInstanceGroupPropertyToCloudFormation)(properties.restrictedInstanceGroups),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TieredStorageConfig:convertCfnClusterTieredStorageConfigPropertyToCloudFormation(properties.tieredStorageConfig),VpcConfig:convertCfnClusterVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnClusterPropsFromCloudFormation(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("autoScaling","AutoScaling",properties.AutoScaling!=null?CfnClusterClusterAutoScalingConfigPropertyFromCloudFormation(properties.AutoScaling):void 0),ret.addPropertyResult("clusterName","ClusterName",properties.ClusterName!=null?cfn_parse().FromCloudFormation.getString(properties.ClusterName):void 0),ret.addPropertyResult("clusterRole","ClusterRole",properties.ClusterRole!=null?cfn_parse().FromCloudFormation.getString(properties.ClusterRole):void 0),ret.addPropertyResult("instanceGroups","InstanceGroups",properties.InstanceGroups!=null?cfn_parse().FromCloudFormation.getArray(CfnClusterClusterInstanceGroupPropertyFromCloudFormation)(properties.InstanceGroups):void 0),ret.addPropertyResult("nodeProvisioningMode","NodeProvisioningMode",properties.NodeProvisioningMode!=null?cfn_parse().FromCloudFormation.getString(properties.NodeProvisioningMode):void 0),ret.addPropertyResult("nodeRecovery","NodeRecovery",properties.NodeRecovery!=null?cfn_parse().FromCloudFormation.getString(properties.NodeRecovery):void 0),ret.addPropertyResult("orchestrator","Orchestrator",properties.Orchestrator!=null?CfnClusterOrchestratorPropertyFromCloudFormation(properties.Orchestrator):void 0),ret.addPropertyResult("restrictedInstanceGroups","RestrictedInstanceGroups",properties.RestrictedInstanceGroups!=null?cfn_parse().FromCloudFormation.getArray(CfnClusterClusterRestrictedInstanceGroupPropertyFromCloudFormation)(properties.RestrictedInstanceGroups):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("tieredStorageConfig","TieredStorageConfig",properties.TieredStorageConfig!=null?CfnClusterTieredStorageConfigPropertyFromCloudFormation(properties.TieredStorageConfig):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnClusterVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnInferenceComponent extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnInferenceComponent",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::InferenceComponent";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnInferenceComponentPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnInferenceComponent(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 isCfnInferenceComponent(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnInferenceComponent.CFN_RESOURCE_TYPE_NAME}static arnForInferenceComponent(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IInferenceComponentRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForInferenceComponent),error}return resource.inferenceComponentRef.inferenceComponentArn}cdkTagManager;_deploymentConfig;_endpointArn;_endpointName;_inferenceComponentName;_runtimeConfig;_specification;_tags;_variantName;cfnPropertyNames={tags:"Tags",deploymentConfig:"DeploymentConfig",endpointArn:"EndpointArn",endpointName:"EndpointName",inferenceComponentName:"InferenceComponentName",runtimeConfig:"RuntimeConfig",specification:"Specification",variantName:"VariantName"};constructor(scope,id,props){super(scope,id,{type:CfnInferenceComponent.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnInferenceComponentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnInferenceComponent),error}cdk().requireProperty(props,"endpointName",this),cdk().requireProperty(props,"specification",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::InferenceComponent",void 0,{tagPropertyName:"tags"}),this._deploymentConfig=props.deploymentConfig,this._endpointArn=props.endpointArn,this._endpointName=props.endpointName,this._inferenceComponentName=props.inferenceComponentName,this._runtimeConfig=props.runtimeConfig,this._specification=props.specification,this._tags=props.tags,this._variantName=props.variantName}get inferenceComponentRef(){return{inferenceComponentArn:this.ref}}get deploymentConfig(){return this._deploymentConfig}set deploymentConfig(value){cdk().traceProperty(this.node,"DeploymentConfig"),this._deploymentConfig=value}get endpointArn(){return this._endpointArn}set endpointArn(value){cdk().traceProperty(this.node,"EndpointArn"),this._endpointArn=value}get endpointName(){return this._endpointName}set endpointName(value){cdk().traceProperty(this.node,"EndpointName"),this._endpointName=value}get inferenceComponentName(){return this._inferenceComponentName}set inferenceComponentName(value){cdk().traceProperty(this.node,"InferenceComponentName"),this._inferenceComponentName=value}get runtimeConfig(){return this._runtimeConfig}set runtimeConfig(value){cdk().traceProperty(this.node,"RuntimeConfig"),this._runtimeConfig=value}get specification(){return this._specification}set specification(value){cdk().traceProperty(this.node,"Specification"),this._specification=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get variantName(){return this._variantName}set variantName(value){cdk().traceProperty(this.node,"VariantName"),this._variantName=value}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrFailureReason(){return cdk().Token.asString(this.getAtt("FailureReason",cdk().ResolutionTypeHint.STRING))}get attrInferenceComponentArn(){return cdk().Token.asString(this.getAtt("InferenceComponentArn",cdk().ResolutionTypeHint.STRING))}get attrInferenceComponentStatus(){return cdk().Token.asString(this.getAtt("InferenceComponentStatus",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedTime(){return cdk().Token.asString(this.getAtt("LastModifiedTime",cdk().ResolutionTypeHint.STRING))}get attrRuntimeConfigCurrentCopyCount(){return cdk().Token.asNumber(this.getAtt("RuntimeConfig.CurrentCopyCount",cdk().ResolutionTypeHint.NUMBER))}get attrRuntimeConfigDesiredCopyCount(){return cdk().Token.asNumber(this.getAtt("RuntimeConfig.DesiredCopyCount",cdk().ResolutionTypeHint.NUMBER))}get attrSpecificationContainerDeployedImage(){return this.getAtt("Specification.Container.DeployedImage")}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),deploymentConfig:this._deploymentConfig,endpointArn:this._endpointArn,endpointName:this._endpointName,inferenceComponentName:this._inferenceComponentName,runtimeConfig:this._runtimeConfig,specification:this._specification,variantName:this._variantName}}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",CfnInferenceComponent.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnInferenceComponentPropsToCloudFormation(props)}}exports.CfnInferenceComponent=CfnInferenceComponent;function CfnInferenceComponentDeployedImagePropertyValidator(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("resolutionTime",cdk().validateString)(properties.resolutionTime)),errors.collect(cdk().propertyValidator("resolvedImage",cdk().validateString)(properties.resolvedImage)),errors.collect(cdk().propertyValidator("specifiedImage",cdk().validateString)(properties.specifiedImage)),errors.wrap('supplied properties not correct for "DeployedImageProperty"')}function convertCfnInferenceComponentDeployedImagePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentDeployedImagePropertyValidator(properties).assertSuccess(),{ResolutionTime:cdk().stringToCloudFormation(properties.resolutionTime),ResolvedImage:cdk().stringToCloudFormation(properties.resolvedImage),SpecifiedImage:cdk().stringToCloudFormation(properties.specifiedImage)}):properties}function CfnInferenceComponentDeployedImagePropertyFromCloudFormation(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("resolutionTime","ResolutionTime",properties.ResolutionTime!=null?cfn_parse().FromCloudFormation.getString(properties.ResolutionTime):void 0),ret.addPropertyResult("resolvedImage","ResolvedImage",properties.ResolvedImage!=null?cfn_parse().FromCloudFormation.getString(properties.ResolvedImage):void 0),ret.addPropertyResult("specifiedImage","SpecifiedImage",properties.SpecifiedImage!=null?cfn_parse().FromCloudFormation.getString(properties.SpecifiedImage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentContainerSpecificationPropertyValidator(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("artifactUrl",cdk().validateString)(properties.artifactUrl)),errors.collect(cdk().propertyValidator("deployedImage",CfnInferenceComponentDeployedImagePropertyValidator)(properties.deployedImage)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("image",cdk().validateString)(properties.image)),errors.wrap('supplied properties not correct for "InferenceComponentContainerSpecificationProperty"')}function convertCfnInferenceComponentInferenceComponentContainerSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentContainerSpecificationPropertyValidator(properties).assertSuccess(),{ArtifactUrl:cdk().stringToCloudFormation(properties.artifactUrl),DeployedImage:convertCfnInferenceComponentDeployedImagePropertyToCloudFormation(properties.deployedImage),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),Image:cdk().stringToCloudFormation(properties.image)}):properties}function CfnInferenceComponentInferenceComponentContainerSpecificationPropertyFromCloudFormation(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("artifactUrl","ArtifactUrl",properties.ArtifactUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ArtifactUrl):void 0),ret.addPropertyResult("deployedImage","DeployedImage",properties.DeployedImage!=null?CfnInferenceComponentDeployedImagePropertyFromCloudFormation(properties.DeployedImage):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("image","Image",properties.Image!=null?cfn_parse().FromCloudFormation.getString(properties.Image):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentStartupParametersPropertyValidator(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("containerStartupHealthCheckTimeoutInSeconds",cdk().validateNumber)(properties.containerStartupHealthCheckTimeoutInSeconds)),errors.collect(cdk().propertyValidator("modelDataDownloadTimeoutInSeconds",cdk().validateNumber)(properties.modelDataDownloadTimeoutInSeconds)),errors.wrap('supplied properties not correct for "InferenceComponentStartupParametersProperty"')}function convertCfnInferenceComponentInferenceComponentStartupParametersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentStartupParametersPropertyValidator(properties).assertSuccess(),{ContainerStartupHealthCheckTimeoutInSeconds:cdk().numberToCloudFormation(properties.containerStartupHealthCheckTimeoutInSeconds),ModelDataDownloadTimeoutInSeconds:cdk().numberToCloudFormation(properties.modelDataDownloadTimeoutInSeconds)}):properties}function CfnInferenceComponentInferenceComponentStartupParametersPropertyFromCloudFormation(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("containerStartupHealthCheckTimeoutInSeconds","ContainerStartupHealthCheckTimeoutInSeconds",properties.ContainerStartupHealthCheckTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.ContainerStartupHealthCheckTimeoutInSeconds):void 0),ret.addPropertyResult("modelDataDownloadTimeoutInSeconds","ModelDataDownloadTimeoutInSeconds",properties.ModelDataDownloadTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.ModelDataDownloadTimeoutInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentComputeResourceRequirementsPropertyValidator(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("maxMemoryRequiredInMb",cdk().validateNumber)(properties.maxMemoryRequiredInMb)),errors.collect(cdk().propertyValidator("minMemoryRequiredInMb",cdk().validateNumber)(properties.minMemoryRequiredInMb)),errors.collect(cdk().propertyValidator("numberOfAcceleratorDevicesRequired",cdk().validateNumber)(properties.numberOfAcceleratorDevicesRequired)),errors.collect(cdk().propertyValidator("numberOfCpuCoresRequired",cdk().validateNumber)(properties.numberOfCpuCoresRequired)),errors.wrap('supplied properties not correct for "InferenceComponentComputeResourceRequirementsProperty"')}function convertCfnInferenceComponentInferenceComponentComputeResourceRequirementsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentComputeResourceRequirementsPropertyValidator(properties).assertSuccess(),{MaxMemoryRequiredInMb:cdk().numberToCloudFormation(properties.maxMemoryRequiredInMb),MinMemoryRequiredInMb:cdk().numberToCloudFormation(properties.minMemoryRequiredInMb),NumberOfAcceleratorDevicesRequired:cdk().numberToCloudFormation(properties.numberOfAcceleratorDevicesRequired),NumberOfCpuCoresRequired:cdk().numberToCloudFormation(properties.numberOfCpuCoresRequired)}):properties}function CfnInferenceComponentInferenceComponentComputeResourceRequirementsPropertyFromCloudFormation(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("maxMemoryRequiredInMb","MaxMemoryRequiredInMb",properties.MaxMemoryRequiredInMb!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxMemoryRequiredInMb):void 0),ret.addPropertyResult("minMemoryRequiredInMb","MinMemoryRequiredInMb",properties.MinMemoryRequiredInMb!=null?cfn_parse().FromCloudFormation.getNumber(properties.MinMemoryRequiredInMb):void 0),ret.addPropertyResult("numberOfAcceleratorDevicesRequired","NumberOfAcceleratorDevicesRequired",properties.NumberOfAcceleratorDevicesRequired!=null?cfn_parse().FromCloudFormation.getNumber(properties.NumberOfAcceleratorDevicesRequired):void 0),ret.addPropertyResult("numberOfCpuCoresRequired","NumberOfCpuCoresRequired",properties.NumberOfCpuCoresRequired!=null?cfn_parse().FromCloudFormation.getNumber(properties.NumberOfCpuCoresRequired):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentSpecificationPropertyValidator(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("baseInferenceComponentName",cdk().validateString)(properties.baseInferenceComponentName)),errors.collect(cdk().propertyValidator("computeResourceRequirements",CfnInferenceComponentInferenceComponentComputeResourceRequirementsPropertyValidator)(properties.computeResourceRequirements)),errors.collect(cdk().propertyValidator("container",CfnInferenceComponentInferenceComponentContainerSpecificationPropertyValidator)(properties.container)),errors.collect(cdk().propertyValidator("modelName",cdk().validateString)(properties.modelName)),errors.collect(cdk().propertyValidator("startupParameters",CfnInferenceComponentInferenceComponentStartupParametersPropertyValidator)(properties.startupParameters)),errors.wrap('supplied properties not correct for "InferenceComponentSpecificationProperty"')}function convertCfnInferenceComponentInferenceComponentSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentSpecificationPropertyValidator(properties).assertSuccess(),{BaseInferenceComponentName:cdk().stringToCloudFormation(properties.baseInferenceComponentName),ComputeResourceRequirements:convertCfnInferenceComponentInferenceComponentComputeResourceRequirementsPropertyToCloudFormation(properties.computeResourceRequirements),Container:convertCfnInferenceComponentInferenceComponentContainerSpecificationPropertyToCloudFormation(properties.container),ModelName:cdk().stringToCloudFormation(properties.modelName),StartupParameters:convertCfnInferenceComponentInferenceComponentStartupParametersPropertyToCloudFormation(properties.startupParameters)}):properties}function CfnInferenceComponentInferenceComponentSpecificationPropertyFromCloudFormation(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("baseInferenceComponentName","BaseInferenceComponentName",properties.BaseInferenceComponentName!=null?cfn_parse().FromCloudFormation.getString(properties.BaseInferenceComponentName):void 0),ret.addPropertyResult("computeResourceRequirements","ComputeResourceRequirements",properties.ComputeResourceRequirements!=null?CfnInferenceComponentInferenceComponentComputeResourceRequirementsPropertyFromCloudFormation(properties.ComputeResourceRequirements):void 0),ret.addPropertyResult("container","Container",properties.Container!=null?CfnInferenceComponentInferenceComponentContainerSpecificationPropertyFromCloudFormation(properties.Container):void 0),ret.addPropertyResult("modelName","ModelName",properties.ModelName!=null?cfn_parse().FromCloudFormation.getString(properties.ModelName):void 0),ret.addPropertyResult("startupParameters","StartupParameters",properties.StartupParameters!=null?CfnInferenceComponentInferenceComponentStartupParametersPropertyFromCloudFormation(properties.StartupParameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentRuntimeConfigPropertyValidator(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("copyCount",cdk().validateNumber)(properties.copyCount)),errors.collect(cdk().propertyValidator("currentCopyCount",cdk().validateNumber)(properties.currentCopyCount)),errors.collect(cdk().propertyValidator("desiredCopyCount",cdk().validateNumber)(properties.desiredCopyCount)),errors.wrap('supplied properties not correct for "InferenceComponentRuntimeConfigProperty"')}function convertCfnInferenceComponentInferenceComponentRuntimeConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentRuntimeConfigPropertyValidator(properties).assertSuccess(),{CopyCount:cdk().numberToCloudFormation(properties.copyCount),CurrentCopyCount:cdk().numberToCloudFormation(properties.currentCopyCount),DesiredCopyCount:cdk().numberToCloudFormation(properties.desiredCopyCount)}):properties}function CfnInferenceComponentInferenceComponentRuntimeConfigPropertyFromCloudFormation(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("copyCount","CopyCount",properties.CopyCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.CopyCount):void 0),ret.addPropertyResult("currentCopyCount","CurrentCopyCount",properties.CurrentCopyCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.CurrentCopyCount):void 0),ret.addPropertyResult("desiredCopyCount","DesiredCopyCount",properties.DesiredCopyCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.DesiredCopyCount):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentCapacitySizePropertyValidator(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().validateNumber)(properties.value)),errors.wrap('supplied properties not correct for "InferenceComponentCapacitySizeProperty"')}function convertCfnInferenceComponentInferenceComponentCapacitySizePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentCapacitySizePropertyValidator(properties).assertSuccess(),{Type:cdk().stringToCloudFormation(properties.type),Value:cdk().numberToCloudFormation(properties.value)}):properties}function CfnInferenceComponentInferenceComponentCapacitySizePropertyFromCloudFormation(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.getNumber(properties.Value):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentRollingUpdatePolicyPropertyValidator(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("maximumBatchSize",CfnInferenceComponentInferenceComponentCapacitySizePropertyValidator)(properties.maximumBatchSize)),errors.collect(cdk().propertyValidator("maximumExecutionTimeoutInSeconds",cdk().validateNumber)(properties.maximumExecutionTimeoutInSeconds)),errors.collect(cdk().propertyValidator("rollbackMaximumBatchSize",CfnInferenceComponentInferenceComponentCapacitySizePropertyValidator)(properties.rollbackMaximumBatchSize)),errors.collect(cdk().propertyValidator("waitIntervalInSeconds",cdk().validateNumber)(properties.waitIntervalInSeconds)),errors.wrap('supplied properties not correct for "InferenceComponentRollingUpdatePolicyProperty"')}function convertCfnInferenceComponentInferenceComponentRollingUpdatePolicyPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentRollingUpdatePolicyPropertyValidator(properties).assertSuccess(),{MaximumBatchSize:convertCfnInferenceComponentInferenceComponentCapacitySizePropertyToCloudFormation(properties.maximumBatchSize),MaximumExecutionTimeoutInSeconds:cdk().numberToCloudFormation(properties.maximumExecutionTimeoutInSeconds),RollbackMaximumBatchSize:convertCfnInferenceComponentInferenceComponentCapacitySizePropertyToCloudFormation(properties.rollbackMaximumBatchSize),WaitIntervalInSeconds:cdk().numberToCloudFormation(properties.waitIntervalInSeconds)}):properties}function CfnInferenceComponentInferenceComponentRollingUpdatePolicyPropertyFromCloudFormation(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("maximumBatchSize","MaximumBatchSize",properties.MaximumBatchSize!=null?CfnInferenceComponentInferenceComponentCapacitySizePropertyFromCloudFormation(properties.MaximumBatchSize):void 0),ret.addPropertyResult("maximumExecutionTimeoutInSeconds","MaximumExecutionTimeoutInSeconds",properties.MaximumExecutionTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaximumExecutionTimeoutInSeconds):void 0),ret.addPropertyResult("rollbackMaximumBatchSize","RollbackMaximumBatchSize",properties.RollbackMaximumBatchSize!=null?CfnInferenceComponentInferenceComponentCapacitySizePropertyFromCloudFormation(properties.RollbackMaximumBatchSize):void 0),ret.addPropertyResult("waitIntervalInSeconds","WaitIntervalInSeconds",properties.WaitIntervalInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.WaitIntervalInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentAlarmPropertyValidator(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("alarmName",cdk().requiredValidator)(properties.alarmName)),errors.collect(cdk().propertyValidator("alarmName",cdk().validateString)(properties.alarmName)),errors.wrap('supplied properties not correct for "AlarmProperty"')}function convertCfnInferenceComponentAlarmPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentAlarmPropertyValidator(properties).assertSuccess(),{AlarmName:cdk().stringToCloudFormation(properties.alarmName)}):properties}function CfnInferenceComponentAlarmPropertyFromCloudFormation(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("alarmName","AlarmName",properties.AlarmName!=null?cfn_parse().FromCloudFormation.getString(properties.AlarmName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentAutoRollbackConfigurationPropertyValidator(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("alarms",cdk().requiredValidator)(properties.alarms)),errors.collect(cdk().propertyValidator("alarms",cdk().listValidator(CfnInferenceComponentAlarmPropertyValidator))(properties.alarms)),errors.wrap('supplied properties not correct for "AutoRollbackConfigurationProperty"')}function convertCfnInferenceComponentAutoRollbackConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentAutoRollbackConfigurationPropertyValidator(properties).assertSuccess(),{Alarms:cdk().listMapper(convertCfnInferenceComponentAlarmPropertyToCloudFormation)(properties.alarms)}):properties}function CfnInferenceComponentAutoRollbackConfigurationPropertyFromCloudFormation(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("alarms","Alarms",properties.Alarms!=null?cfn_parse().FromCloudFormation.getArray(CfnInferenceComponentAlarmPropertyFromCloudFormation)(properties.Alarms):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentInferenceComponentDeploymentConfigPropertyValidator(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("autoRollbackConfiguration",CfnInferenceComponentAutoRollbackConfigurationPropertyValidator)(properties.autoRollbackConfiguration)),errors.collect(cdk().propertyValidator("rollingUpdatePolicy",CfnInferenceComponentInferenceComponentRollingUpdatePolicyPropertyValidator)(properties.rollingUpdatePolicy)),errors.wrap('supplied properties not correct for "InferenceComponentDeploymentConfigProperty"')}function convertCfnInferenceComponentInferenceComponentDeploymentConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentInferenceComponentDeploymentConfigPropertyValidator(properties).assertSuccess(),{AutoRollbackConfiguration:convertCfnInferenceComponentAutoRollbackConfigurationPropertyToCloudFormation(properties.autoRollbackConfiguration),RollingUpdatePolicy:convertCfnInferenceComponentInferenceComponentRollingUpdatePolicyPropertyToCloudFormation(properties.rollingUpdatePolicy)}):properties}function CfnInferenceComponentInferenceComponentDeploymentConfigPropertyFromCloudFormation(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("autoRollbackConfiguration","AutoRollbackConfiguration",properties.AutoRollbackConfiguration!=null?CfnInferenceComponentAutoRollbackConfigurationPropertyFromCloudFormation(properties.AutoRollbackConfiguration):void 0),ret.addPropertyResult("rollingUpdatePolicy","RollingUpdatePolicy",properties.RollingUpdatePolicy!=null?CfnInferenceComponentInferenceComponentRollingUpdatePolicyPropertyFromCloudFormation(properties.RollingUpdatePolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnInferenceComponentPropsValidator(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("deploymentConfig",CfnInferenceComponentInferenceComponentDeploymentConfigPropertyValidator)(properties.deploymentConfig)),errors.collect(cdk().propertyValidator("endpointArn",cdk().validateString)(properties.endpointArn)),errors.collect(cdk().propertyValidator("endpointName",cdk().requiredValidator)(properties.endpointName)),errors.collect(cdk().propertyValidator("endpointName",cdk().validateString)(properties.endpointName)),errors.collect(cdk().propertyValidator("inferenceComponentName",cdk().validateString)(properties.inferenceComponentName)),errors.collect(cdk().propertyValidator("runtimeConfig",CfnInferenceComponentInferenceComponentRuntimeConfigPropertyValidator)(properties.runtimeConfig)),errors.collect(cdk().propertyValidator("specification",cdk().requiredValidator)(properties.specification)),errors.collect(cdk().propertyValidator("specification",CfnInferenceComponentInferenceComponentSpecificationPropertyValidator)(properties.specification)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("variantName",cdk().validateString)(properties.variantName)),errors.wrap('supplied properties not correct for "CfnInferenceComponentProps"')}function convertCfnInferenceComponentPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnInferenceComponentPropsValidator(properties).assertSuccess(),{DeploymentConfig:convertCfnInferenceComponentInferenceComponentDeploymentConfigPropertyToCloudFormation(properties.deploymentConfig),EndpointArn:cdk().stringToCloudFormation(properties.endpointArn),EndpointName:cdk().stringToCloudFormation(properties.endpointName),InferenceComponentName:cdk().stringToCloudFormation(properties.inferenceComponentName),RuntimeConfig:convertCfnInferenceComponentInferenceComponentRuntimeConfigPropertyToCloudFormation(properties.runtimeConfig),Specification:convertCfnInferenceComponentInferenceComponentSpecificationPropertyToCloudFormation(properties.specification),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VariantName:cdk().stringToCloudFormation(properties.variantName)}):properties}function CfnInferenceComponentPropsFromCloudFormation(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("deploymentConfig","DeploymentConfig",properties.DeploymentConfig!=null?CfnInferenceComponentInferenceComponentDeploymentConfigPropertyFromCloudFormation(properties.DeploymentConfig):void 0),ret.addPropertyResult("endpointArn","EndpointArn",properties.EndpointArn!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointArn):void 0),ret.addPropertyResult("endpointName","EndpointName",properties.EndpointName!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointName):void 0),ret.addPropertyResult("inferenceComponentName","InferenceComponentName",properties.InferenceComponentName!=null?cfn_parse().FromCloudFormation.getString(properties.InferenceComponentName):void 0),ret.addPropertyResult("runtimeConfig","RuntimeConfig",properties.RuntimeConfig!=null?CfnInferenceComponentInferenceComponentRuntimeConfigPropertyFromCloudFormation(properties.RuntimeConfig):void 0),ret.addPropertyResult("specification","Specification",properties.Specification!=null?CfnInferenceComponentInferenceComponentSpecificationPropertyFromCloudFormation(properties.Specification):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("variantName","VariantName",properties.VariantName!=null?cfn_parse().FromCloudFormation.getString(properties.VariantName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMlflowTrackingServer extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnMlflowTrackingServer",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::MlflowTrackingServer";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMlflowTrackingServerPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnMlflowTrackingServer(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 isCfnMlflowTrackingServer(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMlflowTrackingServer.CFN_RESOURCE_TYPE_NAME}_artifactStoreUri;_automaticModelRegistration;cdkTagManager;_mlflowVersion;_roleArn;_tags;_trackingServerName;_trackingServerSize;_weeklyMaintenanceWindowStart;cfnPropertyNames={artifactStoreUri:"ArtifactStoreUri",automaticModelRegistration:"AutomaticModelRegistration",tags:"Tags",mlflowVersion:"MlflowVersion",roleArn:"RoleArn",trackingServerName:"TrackingServerName",trackingServerSize:"TrackingServerSize",weeklyMaintenanceWindowStart:"WeeklyMaintenanceWindowStart"};constructor(scope,id,props){super(scope,id,{type:CfnMlflowTrackingServer.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnMlflowTrackingServerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMlflowTrackingServer),error}cdk().requireProperty(props,"artifactStoreUri",this),cdk().requireProperty(props,"roleArn",this),cdk().requireProperty(props,"trackingServerName",this),this._artifactStoreUri=props.artifactStoreUri,this._automaticModelRegistration=props.automaticModelRegistration,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::MlflowTrackingServer",void 0,{tagPropertyName:"tags"}),this._mlflowVersion=props.mlflowVersion,this._roleArn=props.roleArn,this._tags=props.tags,this._trackingServerName=props.trackingServerName,this._trackingServerSize=props.trackingServerSize,this._weeklyMaintenanceWindowStart=props.weeklyMaintenanceWindowStart}get mlflowTrackingServerRef(){return{trackingServerName:this.ref}}get artifactStoreUri(){return this._artifactStoreUri}set artifactStoreUri(value){cdk().traceProperty(this.node,"ArtifactStoreUri"),this._artifactStoreUri=value}get automaticModelRegistration(){return this._automaticModelRegistration}set automaticModelRegistration(value){cdk().traceProperty(this.node,"AutomaticModelRegistration"),this._automaticModelRegistration=value}get mlflowVersion(){return this._mlflowVersion}set mlflowVersion(value){cdk().traceProperty(this.node,"MlflowVersion"),this._mlflowVersion=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get trackingServerName(){return this._trackingServerName}set trackingServerName(value){cdk().traceProperty(this.node,"TrackingServerName"),this._trackingServerName=value}get trackingServerSize(){return this._trackingServerSize}set trackingServerSize(value){cdk().traceProperty(this.node,"TrackingServerSize"),this._trackingServerSize=value}get weeklyMaintenanceWindowStart(){return this._weeklyMaintenanceWindowStart}set weeklyMaintenanceWindowStart(value){cdk().traceProperty(this.node,"WeeklyMaintenanceWindowStart"),this._weeklyMaintenanceWindowStart=value}get attrTrackingServerArn(){return cdk().Token.asString(this.getAtt("TrackingServerArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{artifactStoreUri:this._artifactStoreUri,automaticModelRegistration:this._automaticModelRegistration,tags:this.cdkTagManager.renderTags(this._tags),mlflowVersion:this._mlflowVersion,roleArn:this._roleArn,trackingServerName:this._trackingServerName,trackingServerSize:this._trackingServerSize,weeklyMaintenanceWindowStart:this._weeklyMaintenanceWindowStart}}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",CfnMlflowTrackingServer.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMlflowTrackingServerPropsToCloudFormation(props)}}exports.CfnMlflowTrackingServer=CfnMlflowTrackingServer;function CfnMlflowTrackingServerPropsValidator(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("artifactStoreUri",cdk().requiredValidator)(properties.artifactStoreUri)),errors.collect(cdk().propertyValidator("artifactStoreUri",cdk().validateString)(properties.artifactStoreUri)),errors.collect(cdk().propertyValidator("automaticModelRegistration",cdk().validateBoolean)(properties.automaticModelRegistration)),errors.collect(cdk().propertyValidator("mlflowVersion",cdk().validateString)(properties.mlflowVersion)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("trackingServerName",cdk().requiredValidator)(properties.trackingServerName)),errors.collect(cdk().propertyValidator("trackingServerName",cdk().validateString)(properties.trackingServerName)),errors.collect(cdk().propertyValidator("trackingServerSize",cdk().validateString)(properties.trackingServerSize)),errors.collect(cdk().propertyValidator("weeklyMaintenanceWindowStart",cdk().validateString)(properties.weeklyMaintenanceWindowStart)),errors.wrap('supplied properties not correct for "CfnMlflowTrackingServerProps"')}function convertCfnMlflowTrackingServerPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMlflowTrackingServerPropsValidator(properties).assertSuccess(),{ArtifactStoreUri:cdk().stringToCloudFormation(properties.artifactStoreUri),AutomaticModelRegistration:cdk().booleanToCloudFormation(properties.automaticModelRegistration),MlflowVersion:cdk().stringToCloudFormation(properties.mlflowVersion),RoleArn:cdk().stringToCloudFormation(properties.roleArn),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TrackingServerName:cdk().stringToCloudFormation(properties.trackingServerName),TrackingServerSize:cdk().stringToCloudFormation(properties.trackingServerSize),WeeklyMaintenanceWindowStart:cdk().stringToCloudFormation(properties.weeklyMaintenanceWindowStart)}):properties}function CfnMlflowTrackingServerPropsFromCloudFormation(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("artifactStoreUri","ArtifactStoreUri",properties.ArtifactStoreUri!=null?cfn_parse().FromCloudFormation.getString(properties.ArtifactStoreUri):void 0),ret.addPropertyResult("automaticModelRegistration","AutomaticModelRegistration",properties.AutomaticModelRegistration!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AutomaticModelRegistration):void 0),ret.addPropertyResult("mlflowVersion","MlflowVersion",properties.MlflowVersion!=null?cfn_parse().FromCloudFormation.getString(properties.MlflowVersion):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("trackingServerName","TrackingServerName",properties.TrackingServerName!=null?cfn_parse().FromCloudFormation.getString(properties.TrackingServerName):void 0),ret.addPropertyResult("trackingServerSize","TrackingServerSize",properties.TrackingServerSize!=null?cfn_parse().FromCloudFormation.getString(properties.TrackingServerSize):void 0),ret.addPropertyResult("weeklyMaintenanceWindowStart","WeeklyMaintenanceWindowStart",properties.WeeklyMaintenanceWindowStart!=null?cfn_parse().FromCloudFormation.getString(properties.WeeklyMaintenanceWindowStart):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnPartnerApp extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnPartnerApp",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::PartnerApp";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnPartnerAppPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnPartnerApp(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 isCfnPartnerApp(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnPartnerApp.CFN_RESOURCE_TYPE_NAME}static arnForPartnerApp(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IPartnerAppRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForPartnerApp),error}return resource.partnerAppRef.partnerAppArn}_applicationConfig;_appVersion;_authType;cdkTagManager;_clientToken;_enableAutoMinorVersionUpgrade;_enableIamSessionBasedIdentity;_executionRoleArn;_kmsKeyId;_maintenanceConfig;_name;_tags;_tier;_type;cfnPropertyNames={applicationConfig:"ApplicationConfig",appVersion:"AppVersion",authType:"AuthType",tags:"Tags",clientToken:"ClientToken",enableAutoMinorVersionUpgrade:"EnableAutoMinorVersionUpgrade",enableIamSessionBasedIdentity:"EnableIamSessionBasedIdentity",executionRoleArn:"ExecutionRoleArn",kmsKeyId:"KmsKeyId",maintenanceConfig:"MaintenanceConfig",name:"Name",tier:"Tier",type:"Type"};constructor(scope,id,props){super(scope,id,{type:CfnPartnerApp.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnPartnerAppProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnPartnerApp),error}cdk().requireProperty(props,"authType",this),cdk().requireProperty(props,"executionRoleArn",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"tier",this),cdk().requireProperty(props,"type",this),this._applicationConfig=props.applicationConfig,this._appVersion=props.appVersion,this._authType=props.authType,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::PartnerApp",void 0,{tagPropertyName:"tags"}),this._clientToken=props.clientToken,this._enableAutoMinorVersionUpgrade=props.enableAutoMinorVersionUpgrade,this._enableIamSessionBasedIdentity=props.enableIamSessionBasedIdentity,this._executionRoleArn=props.executionRoleArn,this._kmsKeyId=props.kmsKeyId,this._maintenanceConfig=props.maintenanceConfig,this._name=props.name,this._tags=props.tags,this._tier=props.tier,this._type=props.type}get partnerAppRef(){return{partnerAppArn:this.ref}}get applicationConfig(){return this._applicationConfig}set applicationConfig(value){cdk().traceProperty(this.node,"ApplicationConfig"),this._applicationConfig=value}get appVersion(){return this._appVersion}set appVersion(value){cdk().traceProperty(this.node,"AppVersion"),this._appVersion=value}get authType(){return this._authType}set authType(value){cdk().traceProperty(this.node,"AuthType"),this._authType=value}get clientToken(){try{jsiiDeprecationWarnings().print("aws-cdk-lib.aws_sagemaker.CfnPartnerApp#clientToken","this property has been deprecated")}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,jsiiDeprecationWarnings().getPropertyDescriptor(this,"clientToken").get),error}return this._clientToken}set clientToken(value){try{jsiiDeprecationWarnings().print("aws-cdk-lib.aws_sagemaker.CfnPartnerApp#clientToken","this property has been deprecated")}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,jsiiDeprecationWarnings().getPropertyDescriptor(this,"clientToken").set),error}cdk().traceProperty(this.node,"ClientToken"),this._clientToken=value}get enableAutoMinorVersionUpgrade(){return this._enableAutoMinorVersionUpgrade}set enableAutoMinorVersionUpgrade(value){cdk().traceProperty(this.node,"EnableAutoMinorVersionUpgrade"),this._enableAutoMinorVersionUpgrade=value}get enableIamSessionBasedIdentity(){return this._enableIamSessionBasedIdentity}set enableIamSessionBasedIdentity(value){cdk().traceProperty(this.node,"EnableIamSessionBasedIdentity"),this._enableIamSessionBasedIdentity=value}get executionRoleArn(){return this._executionRoleArn}set executionRoleArn(value){cdk().traceProperty(this.node,"ExecutionRoleArn"),this._executionRoleArn=value}get kmsKeyId(){return this._kmsKeyId}set kmsKeyId(value){cdk().traceProperty(this.node,"KmsKeyId"),this._kmsKeyId=value}get maintenanceConfig(){return this._maintenanceConfig}set maintenanceConfig(value){cdk().traceProperty(this.node,"MaintenanceConfig"),this._maintenanceConfig=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 tier(){return this._tier}set tier(value){cdk().traceProperty(this.node,"Tier"),this._tier=value}get type(){return this._type}set type(value){cdk().traceProperty(this.node,"Type"),this._type=value}get attrArn(){return cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING))}get attrBaseUrl(){return cdk().Token.asString(this.getAtt("BaseUrl",cdk().ResolutionTypeHint.STRING))}get attrCurrentVersionEolDate(){return cdk().Token.asString(this.getAtt("CurrentVersionEolDate",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{applicationConfig:this._applicationConfig,appVersion:this._appVersion,authType:this._authType,tags:this.cdkTagManager.renderTags(this._tags),clientToken:this._clientToken,enableAutoMinorVersionUpgrade:this._enableAutoMinorVersionUpgrade,enableIamSessionBasedIdentity:this._enableIamSessionBasedIdentity,executionRoleArn:this._executionRoleArn,kmsKeyId:this._kmsKeyId,maintenanceConfig:this._maintenanceConfig,name:this._name,tier:this._tier,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",CfnPartnerApp.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnPartnerAppPropsToCloudFormation(props)}}exports.CfnPartnerApp=CfnPartnerApp;function CfnPartnerAppPartnerAppConfigPropertyValidator(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("adminUsers",cdk().listValidator(cdk().validateString))(properties.adminUsers)),errors.collect(cdk().propertyValidator("arguments",cdk().hashValidator(cdk().validateString))(properties.arguments)),errors.wrap('supplied properties not correct for "PartnerAppConfigProperty"')}function convertCfnPartnerAppPartnerAppConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPartnerAppPartnerAppConfigPropertyValidator(properties).assertSuccess(),{AdminUsers:cdk().listMapper(cdk().stringToCloudFormation)(properties.adminUsers),Arguments:cdk().hashMapper(cdk().stringToCloudFormation)(properties.arguments)}):properties}function CfnPartnerAppPartnerAppConfigPropertyFromCloudFormation(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("adminUsers","AdminUsers",properties.AdminUsers!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AdminUsers):void 0),ret.addPropertyResult("arguments","Arguments",properties.Arguments!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Arguments):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPartnerAppPartnerAppMaintenanceConfigPropertyValidator(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("maintenanceWindowStart",cdk().requiredValidator)(properties.maintenanceWindowStart)),errors.collect(cdk().propertyValidator("maintenanceWindowStart",cdk().validateString)(properties.maintenanceWindowStart)),errors.wrap('supplied properties not correct for "PartnerAppMaintenanceConfigProperty"')}function convertCfnPartnerAppPartnerAppMaintenanceConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPartnerAppPartnerAppMaintenanceConfigPropertyValidator(properties).assertSuccess(),{MaintenanceWindowStart:cdk().stringToCloudFormation(properties.maintenanceWindowStart)}):properties}function CfnPartnerAppPartnerAppMaintenanceConfigPropertyFromCloudFormation(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("maintenanceWindowStart","MaintenanceWindowStart",properties.MaintenanceWindowStart!=null?cfn_parse().FromCloudFormation.getString(properties.MaintenanceWindowStart):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnPartnerAppPropsValidator(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("appVersion",cdk().validateString)(properties.appVersion)),errors.collect(cdk().propertyValidator("applicationConfig",CfnPartnerAppPartnerAppConfigPropertyValidator)(properties.applicationConfig)),errors.collect(cdk().propertyValidator("authType",cdk().requiredValidator)(properties.authType)),errors.collect(cdk().propertyValidator("authType",cdk().validateString)(properties.authType)),errors.collect(cdk().propertyValidator("clientToken",cdk().validateString)(properties.clientToken)),errors.collect(cdk().propertyValidator("enableAutoMinorVersionUpgrade",cdk().validateBoolean)(properties.enableAutoMinorVersionUpgrade)),errors.collect(cdk().propertyValidator("enableIamSessionBasedIdentity",cdk().validateBoolean)(properties.enableIamSessionBasedIdentity)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().requiredValidator)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("executionRoleArn",cdk().validateString)(properties.executionRoleArn)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("maintenanceConfig",CfnPartnerAppPartnerAppMaintenanceConfigPropertyValidator)(properties.maintenanceConfig)),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.collect(cdk().propertyValidator("tier",cdk().requiredValidator)(properties.tier)),errors.collect(cdk().propertyValidator("tier",cdk().validateString)(properties.tier)),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 "CfnPartnerAppProps"')}function convertCfnPartnerAppPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnPartnerAppPropsValidator(properties).assertSuccess(),{AppVersion:cdk().stringToCloudFormation(properties.appVersion),ApplicationConfig:convertCfnPartnerAppPartnerAppConfigPropertyToCloudFormation(properties.applicationConfig),AuthType:cdk().stringToCloudFormation(properties.authType),ClientToken:cdk().stringToCloudFormation(properties.clientToken),EnableAutoMinorVersionUpgrade:cdk().booleanToCloudFormation(properties.enableAutoMinorVersionUpgrade),EnableIamSessionBasedIdentity:cdk().booleanToCloudFormation(properties.enableIamSessionBasedIdentity),ExecutionRoleArn:cdk().stringToCloudFormation(properties.executionRoleArn),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),MaintenanceConfig:convertCfnPartnerAppPartnerAppMaintenanceConfigPropertyToCloudFormation(properties.maintenanceConfig),Name:cdk().stringToCloudFormation(properties.name),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Tier:cdk().stringToCloudFormation(properties.tier),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnPartnerAppPropsFromCloudFormation(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("applicationConfig","ApplicationConfig",properties.ApplicationConfig!=null?CfnPartnerAppPartnerAppConfigPropertyFromCloudFormation(properties.ApplicationConfig):void 0),ret.addPropertyResult("appVersion","AppVersion",properties.AppVersion!=null?cfn_parse().FromCloudFormation.getString(properties.AppVersion):void 0),ret.addPropertyResult("authType","AuthType",properties.AuthType!=null?cfn_parse().FromCloudFormation.getString(properties.AuthType):void 0),ret.addPropertyResult("clientToken","ClientToken",properties.ClientToken!=null?cfn_parse().FromCloudFormation.getString(properties.ClientToken):void 0),ret.addPropertyResult("enableAutoMinorVersionUpgrade","EnableAutoMinorVersionUpgrade",properties.EnableAutoMinorVersionUpgrade!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableAutoMinorVersionUpgrade):void 0),ret.addPropertyResult("enableIamSessionBasedIdentity","EnableIamSessionBasedIdentity",properties.EnableIamSessionBasedIdentity!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableIamSessionBasedIdentity):void 0),ret.addPropertyResult("executionRoleArn","ExecutionRoleArn",properties.ExecutionRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutionRoleArn):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("maintenanceConfig","MaintenanceConfig",properties.MaintenanceConfig!=null?CfnPartnerAppPartnerAppMaintenanceConfigPropertyFromCloudFormation(properties.MaintenanceConfig):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.addPropertyResult("tier","Tier",properties.Tier!=null?cfn_parse().FromCloudFormation.getString(properties.Tier):void 0),ret.addPropertyResult("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnProcessingJob extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnProcessingJob",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::ProcessingJob";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnProcessingJobPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnProcessingJob(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 isCfnProcessingJob(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnProcessingJob.CFN_RESOURCE_TYPE_NAME}static arnForProcessingJob(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IProcessingJobRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForProcessingJob),error}return resource.processingJobRef.processingJobArn}_appSpecification;cdkTagManager;_environment;_experimentConfig;_networkConfig;_processingInputs;_processingJobName;_processingOutputConfig;_processingResources;_roleArn;_stoppingCondition;_tags;cfnPropertyNames={appSpecification:"AppSpecification",tags:"Tags",environment:"Environment",experimentConfig:"ExperimentConfig",networkConfig:"NetworkConfig",processingInputs:"ProcessingInputs",processingJobName:"ProcessingJobName",processingOutputConfig:"ProcessingOutputConfig",processingResources:"ProcessingResources",roleArn:"RoleArn",stoppingCondition:"StoppingCondition"};constructor(scope,id,props){super(scope,id,{type:CfnProcessingJob.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnProcessingJobProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnProcessingJob),error}cdk().requireProperty(props,"appSpecification",this),cdk().requireProperty(props,"processingResources",this),cdk().requireProperty(props,"roleArn",this),this._appSpecification=props.appSpecification,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::ProcessingJob",void 0,{tagPropertyName:"tags"}),this._environment=props.environment,this._experimentConfig=props.experimentConfig,this._networkConfig=props.networkConfig,this._processingInputs=props.processingInputs,this._processingJobName=props.processingJobName,this._processingOutputConfig=props.processingOutputConfig,this._processingResources=props.processingResources,this._roleArn=props.roleArn,this._stoppingCondition=props.stoppingCondition,this._tags=props.tags}get processingJobRef(){return{processingJobArn:this.ref}}get appSpecification(){return this._appSpecification}set appSpecification(value){cdk().traceProperty(this.node,"AppSpecification"),this._appSpecification=value}get environment(){return this._environment}set environment(value){cdk().traceProperty(this.node,"Environment"),this._environment=value}get experimentConfig(){return this._experimentConfig}set experimentConfig(value){cdk().traceProperty(this.node,"ExperimentConfig"),this._experimentConfig=value}get networkConfig(){return this._networkConfig}set networkConfig(value){cdk().traceProperty(this.node,"NetworkConfig"),this._networkConfig=value}get processingInputs(){return this._processingInputs}set processingInputs(value){cdk().traceProperty(this.node,"ProcessingInputs"),this._processingInputs=value}get processingJobName(){return this._processingJobName}set processingJobName(value){cdk().traceProperty(this.node,"ProcessingJobName"),this._processingJobName=value}get processingOutputConfig(){return this._processingOutputConfig}set processingOutputConfig(value){cdk().traceProperty(this.node,"ProcessingOutputConfig"),this._processingOutputConfig=value}get processingResources(){return this._processingResources}set processingResources(value){cdk().traceProperty(this.node,"ProcessingResources"),this._processingResources=value}get roleArn(){return this._roleArn}set roleArn(value){cdk().traceProperty(this.node,"RoleArn"),this._roleArn=value}get stoppingCondition(){return this._stoppingCondition}set stoppingCondition(value){cdk().traceProperty(this.node,"StoppingCondition"),this._stoppingCondition=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrAutoMlJobArn(){return cdk().Token.asString(this.getAtt("AutoMLJobArn",cdk().ResolutionTypeHint.STRING))}get attrCreationTime(){return cdk().Token.asString(this.getAtt("CreationTime",cdk().ResolutionTypeHint.STRING))}get attrExitMessage(){return cdk().Token.asString(this.getAtt("ExitMessage",cdk().ResolutionTypeHint.STRING))}get attrFailureReason(){return cdk().Token.asString(this.getAtt("FailureReason",cdk().ResolutionTypeHint.STRING))}get attrLastModifiedTime(){return cdk().Token.asString(this.getAtt("LastModifiedTime",cdk().ResolutionTypeHint.STRING))}get attrMonitoringScheduleArn(){return cdk().Token.asString(this.getAtt("MonitoringScheduleArn",cdk().ResolutionTypeHint.STRING))}get attrProcessingEndTime(){return cdk().Token.asString(this.getAtt("ProcessingEndTime",cdk().ResolutionTypeHint.STRING))}get attrProcessingJobArn(){return cdk().Token.asString(this.getAtt("ProcessingJobArn",cdk().ResolutionTypeHint.STRING))}get attrProcessingJobStatus(){return cdk().Token.asString(this.getAtt("ProcessingJobStatus",cdk().ResolutionTypeHint.STRING))}get attrProcessingStartTime(){return cdk().Token.asString(this.getAtt("ProcessingStartTime",cdk().ResolutionTypeHint.STRING))}get attrTrainingJobArn(){return cdk().Token.asString(this.getAtt("TrainingJobArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{appSpecification:this._appSpecification,tags:this.cdkTagManager.renderTags(this._tags),environment:this._environment,experimentConfig:this._experimentConfig,networkConfig:this._networkConfig,processingInputs:this._processingInputs,processingJobName:this._processingJobName,processingOutputConfig:this._processingOutputConfig,processingResources:this._processingResources,roleArn:this._roleArn,stoppingCondition:this._stoppingCondition}}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",CfnProcessingJob.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnProcessingJobPropsToCloudFormation(props)}}exports.CfnProcessingJob=CfnProcessingJob;function CfnProcessingJobAppSpecificationPropertyValidator(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("containerArguments",cdk().listValidator(cdk().validateString))(properties.containerArguments)),errors.collect(cdk().propertyValidator("containerEntrypoint",cdk().listValidator(cdk().validateString))(properties.containerEntrypoint)),errors.collect(cdk().propertyValidator("imageUri",cdk().requiredValidator)(properties.imageUri)),errors.collect(cdk().propertyValidator("imageUri",cdk().validateString)(properties.imageUri)),errors.wrap('supplied properties not correct for "AppSpecificationProperty"')}function convertCfnProcessingJobAppSpecificationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobAppSpecificationPropertyValidator(properties).assertSuccess(),{ContainerArguments:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerArguments),ContainerEntrypoint:cdk().listMapper(cdk().stringToCloudFormation)(properties.containerEntrypoint),ImageUri:cdk().stringToCloudFormation(properties.imageUri)}):properties}function CfnProcessingJobAppSpecificationPropertyFromCloudFormation(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("containerArguments","ContainerArguments",properties.ContainerArguments!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerArguments):void 0),ret.addPropertyResult("containerEntrypoint","ContainerEntrypoint",properties.ContainerEntrypoint!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ContainerEntrypoint):void 0),ret.addPropertyResult("imageUri","ImageUri",properties.ImageUri!=null?cfn_parse().FromCloudFormation.getString(properties.ImageUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobExperimentConfigPropertyValidator(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("experimentName",cdk().validateString)(properties.experimentName)),errors.collect(cdk().propertyValidator("runName",cdk().validateString)(properties.runName)),errors.collect(cdk().propertyValidator("trialComponentDisplayName",cdk().validateString)(properties.trialComponentDisplayName)),errors.collect(cdk().propertyValidator("trialName",cdk().validateString)(properties.trialName)),errors.wrap('supplied properties not correct for "ExperimentConfigProperty"')}function convertCfnProcessingJobExperimentConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobExperimentConfigPropertyValidator(properties).assertSuccess(),{ExperimentName:cdk().stringToCloudFormation(properties.experimentName),RunName:cdk().stringToCloudFormation(properties.runName),TrialComponentDisplayName:cdk().stringToCloudFormation(properties.trialComponentDisplayName),TrialName:cdk().stringToCloudFormation(properties.trialName)}):properties}function CfnProcessingJobExperimentConfigPropertyFromCloudFormation(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("experimentName","ExperimentName",properties.ExperimentName!=null?cfn_parse().FromCloudFormation.getString(properties.ExperimentName):void 0),ret.addPropertyResult("runName","RunName",properties.RunName!=null?cfn_parse().FromCloudFormation.getString(properties.RunName):void 0),ret.addPropertyResult("trialComponentDisplayName","TrialComponentDisplayName",properties.TrialComponentDisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.TrialComponentDisplayName):void 0),ret.addPropertyResult("trialName","TrialName",properties.TrialName!=null?cfn_parse().FromCloudFormation.getString(properties.TrialName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().requiredValidator)(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnets",cdk().requiredValidator)(properties.subnets)),errors.collect(cdk().propertyValidator("subnets",cdk().listValidator(cdk().validateString))(properties.subnets)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnProcessingJobVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),Subnets:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnets)}):properties}function CfnProcessingJobVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnets","Subnets",properties.Subnets!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Subnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobNetworkConfigPropertyValidator(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("enableInterContainerTrafficEncryption",cdk().validateBoolean)(properties.enableInterContainerTrafficEncryption)),errors.collect(cdk().propertyValidator("enableNetworkIsolation",cdk().validateBoolean)(properties.enableNetworkIsolation)),errors.collect(cdk().propertyValidator("vpcConfig",CfnProcessingJobVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "NetworkConfigProperty"')}function convertCfnProcessingJobNetworkConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobNetworkConfigPropertyValidator(properties).assertSuccess(),{EnableInterContainerTrafficEncryption:cdk().booleanToCloudFormation(properties.enableInterContainerTrafficEncryption),EnableNetworkIsolation:cdk().booleanToCloudFormation(properties.enableNetworkIsolation),VpcConfig:convertCfnProcessingJobVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnProcessingJobNetworkConfigPropertyFromCloudFormation(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("enableInterContainerTrafficEncryption","EnableInterContainerTrafficEncryption",properties.EnableInterContainerTrafficEncryption!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableInterContainerTrafficEncryption):void 0),ret.addPropertyResult("enableNetworkIsolation","EnableNetworkIsolation",properties.EnableNetworkIsolation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableNetworkIsolation):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnProcessingJobVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobS3InputPropertyValidator(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("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3CompressionType",cdk().validateString)(properties.s3CompressionType)),errors.collect(cdk().propertyValidator("s3DataDistributionType",cdk().validateString)(properties.s3DataDistributionType)),errors.collect(cdk().propertyValidator("s3DataType",cdk().requiredValidator)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3DataType",cdk().validateString)(properties.s3DataType)),errors.collect(cdk().propertyValidator("s3InputMode",cdk().validateString)(properties.s3InputMode)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3InputProperty"')}function convertCfnProcessingJobS3InputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobS3InputPropertyValidator(properties).assertSuccess(),{LocalPath:cdk().stringToCloudFormation(properties.localPath),S3CompressionType:cdk().stringToCloudFormation(properties.s3CompressionType),S3DataDistributionType:cdk().stringToCloudFormation(properties.s3DataDistributionType),S3DataType:cdk().stringToCloudFormation(properties.s3DataType),S3InputMode:cdk().stringToCloudFormation(properties.s3InputMode),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnProcessingJobS3InputPropertyFromCloudFormation(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("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3CompressionType","S3CompressionType",properties.S3CompressionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3CompressionType):void 0),ret.addPropertyResult("s3DataDistributionType","S3DataDistributionType",properties.S3DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataDistributionType):void 0),ret.addPropertyResult("s3DataType","S3DataType",properties.S3DataType!=null?cfn_parse().FromCloudFormation.getString(properties.S3DataType):void 0),ret.addPropertyResult("s3InputMode","S3InputMode",properties.S3InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputMode):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobAthenaDatasetDefinitionPropertyValidator(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("catalog",cdk().requiredValidator)(properties.catalog)),errors.collect(cdk().propertyValidator("catalog",cdk().validateString)(properties.catalog)),errors.collect(cdk().propertyValidator("database",cdk().requiredValidator)(properties.database)),errors.collect(cdk().propertyValidator("database",cdk().validateString)(properties.database)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("outputCompression",cdk().validateString)(properties.outputCompression)),errors.collect(cdk().propertyValidator("outputFormat",cdk().requiredValidator)(properties.outputFormat)),errors.collect(cdk().propertyValidator("outputFormat",cdk().validateString)(properties.outputFormat)),errors.collect(cdk().propertyValidator("outputS3Uri",cdk().requiredValidator)(properties.outputS3Uri)),errors.collect(cdk().propertyValidator("outputS3Uri",cdk().validateString)(properties.outputS3Uri)),errors.collect(cdk().propertyValidator("queryString",cdk().requiredValidator)(properties.queryString)),errors.collect(cdk().propertyValidator("queryString",cdk().validateString)(properties.queryString)),errors.collect(cdk().propertyValidator("workGroup",cdk().validateString)(properties.workGroup)),errors.wrap('supplied properties not correct for "AthenaDatasetDefinitionProperty"')}function convertCfnProcessingJobAthenaDatasetDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobAthenaDatasetDefinitionPropertyValidator(properties).assertSuccess(),{Catalog:cdk().stringToCloudFormation(properties.catalog),Database:cdk().stringToCloudFormation(properties.database),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),OutputCompression:cdk().stringToCloudFormation(properties.outputCompression),OutputFormat:cdk().stringToCloudFormation(properties.outputFormat),OutputS3Uri:cdk().stringToCloudFormation(properties.outputS3Uri),QueryString:cdk().stringToCloudFormation(properties.queryString),WorkGroup:cdk().stringToCloudFormation(properties.workGroup)}):properties}function CfnProcessingJobAthenaDatasetDefinitionPropertyFromCloudFormation(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("catalog","Catalog",properties.Catalog!=null?cfn_parse().FromCloudFormation.getString(properties.Catalog):void 0),ret.addPropertyResult("database","Database",properties.Database!=null?cfn_parse().FromCloudFormation.getString(properties.Database):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("outputCompression","OutputCompression",properties.OutputCompression!=null?cfn_parse().FromCloudFormation.getString(properties.OutputCompression):void 0),ret.addPropertyResult("outputFormat","OutputFormat",properties.OutputFormat!=null?cfn_parse().FromCloudFormation.getString(properties.OutputFormat):void 0),ret.addPropertyResult("outputS3Uri","OutputS3Uri",properties.OutputS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.OutputS3Uri):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse().FromCloudFormation.getString(properties.QueryString):void 0),ret.addPropertyResult("workGroup","WorkGroup",properties.WorkGroup!=null?cfn_parse().FromCloudFormation.getString(properties.WorkGroup):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobRedshiftDatasetDefinitionPropertyValidator(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("clusterId",cdk().requiredValidator)(properties.clusterId)),errors.collect(cdk().propertyValidator("clusterId",cdk().validateString)(properties.clusterId)),errors.collect(cdk().propertyValidator("clusterRoleArn",cdk().requiredValidator)(properties.clusterRoleArn)),errors.collect(cdk().propertyValidator("clusterRoleArn",cdk().validateString)(properties.clusterRoleArn)),errors.collect(cdk().propertyValidator("database",cdk().requiredValidator)(properties.database)),errors.collect(cdk().propertyValidator("database",cdk().validateString)(properties.database)),errors.collect(cdk().propertyValidator("dbUser",cdk().requiredValidator)(properties.dbUser)),errors.collect(cdk().propertyValidator("dbUser",cdk().validateString)(properties.dbUser)),errors.collect(cdk().propertyValidator("kmsKeyId",cdk().validateString)(properties.kmsKeyId)),errors.collect(cdk().propertyValidator("outputCompression",cdk().validateString)(properties.outputCompression)),errors.collect(cdk().propertyValidator("outputFormat",cdk().requiredValidator)(properties.outputFormat)),errors.collect(cdk().propertyValidator("outputFormat",cdk().validateString)(properties.outputFormat)),errors.collect(cdk().propertyValidator("outputS3Uri",cdk().requiredValidator)(properties.outputS3Uri)),errors.collect(cdk().propertyValidator("outputS3Uri",cdk().validateString)(properties.outputS3Uri)),errors.collect(cdk().propertyValidator("queryString",cdk().requiredValidator)(properties.queryString)),errors.collect(cdk().propertyValidator("queryString",cdk().validateString)(properties.queryString)),errors.wrap('supplied properties not correct for "RedshiftDatasetDefinitionProperty"')}function convertCfnProcessingJobRedshiftDatasetDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobRedshiftDatasetDefinitionPropertyValidator(properties).assertSuccess(),{ClusterId:cdk().stringToCloudFormation(properties.clusterId),ClusterRoleArn:cdk().stringToCloudFormation(properties.clusterRoleArn),Database:cdk().stringToCloudFormation(properties.database),DbUser:cdk().stringToCloudFormation(properties.dbUser),KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),OutputCompression:cdk().stringToCloudFormation(properties.outputCompression),OutputFormat:cdk().stringToCloudFormation(properties.outputFormat),OutputS3Uri:cdk().stringToCloudFormation(properties.outputS3Uri),QueryString:cdk().stringToCloudFormation(properties.queryString)}):properties}function CfnProcessingJobRedshiftDatasetDefinitionPropertyFromCloudFormation(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("clusterId","ClusterId",properties.ClusterId!=null?cfn_parse().FromCloudFormation.getString(properties.ClusterId):void 0),ret.addPropertyResult("clusterRoleArn","ClusterRoleArn",properties.ClusterRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.ClusterRoleArn):void 0),ret.addPropertyResult("database","Database",properties.Database!=null?cfn_parse().FromCloudFormation.getString(properties.Database):void 0),ret.addPropertyResult("dbUser","DbUser",properties.DbUser!=null?cfn_parse().FromCloudFormation.getString(properties.DbUser):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("outputCompression","OutputCompression",properties.OutputCompression!=null?cfn_parse().FromCloudFormation.getString(properties.OutputCompression):void 0),ret.addPropertyResult("outputFormat","OutputFormat",properties.OutputFormat!=null?cfn_parse().FromCloudFormation.getString(properties.OutputFormat):void 0),ret.addPropertyResult("outputS3Uri","OutputS3Uri",properties.OutputS3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.OutputS3Uri):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse().FromCloudFormation.getString(properties.QueryString):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobDatasetDefinitionPropertyValidator(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("athenaDatasetDefinition",CfnProcessingJobAthenaDatasetDefinitionPropertyValidator)(properties.athenaDatasetDefinition)),errors.collect(cdk().propertyValidator("dataDistributionType",cdk().validateString)(properties.dataDistributionType)),errors.collect(cdk().propertyValidator("inputMode",cdk().validateString)(properties.inputMode)),errors.collect(cdk().propertyValidator("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("redshiftDatasetDefinition",CfnProcessingJobRedshiftDatasetDefinitionPropertyValidator)(properties.redshiftDatasetDefinition)),errors.wrap('supplied properties not correct for "DatasetDefinitionProperty"')}function convertCfnProcessingJobDatasetDefinitionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobDatasetDefinitionPropertyValidator(properties).assertSuccess(),{AthenaDatasetDefinition:convertCfnProcessingJobAthenaDatasetDefinitionPropertyToCloudFormation(properties.athenaDatasetDefinition),DataDistributionType:cdk().stringToCloudFormation(properties.dataDistributionType),InputMode:cdk().stringToCloudFormation(properties.inputMode),LocalPath:cdk().stringToCloudFormation(properties.localPath),RedshiftDatasetDefinition:convertCfnProcessingJobRedshiftDatasetDefinitionPropertyToCloudFormation(properties.redshiftDatasetDefinition)}):properties}function CfnProcessingJobDatasetDefinitionPropertyFromCloudFormation(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("athenaDatasetDefinition","AthenaDatasetDefinition",properties.AthenaDatasetDefinition!=null?CfnProcessingJobAthenaDatasetDefinitionPropertyFromCloudFormation(properties.AthenaDatasetDefinition):void 0),ret.addPropertyResult("dataDistributionType","DataDistributionType",properties.DataDistributionType!=null?cfn_parse().FromCloudFormation.getString(properties.DataDistributionType):void 0),ret.addPropertyResult("inputMode","InputMode",properties.InputMode!=null?cfn_parse().FromCloudFormation.getString(properties.InputMode):void 0),ret.addPropertyResult("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("redshiftDatasetDefinition","RedshiftDatasetDefinition",properties.RedshiftDatasetDefinition!=null?CfnProcessingJobRedshiftDatasetDefinitionPropertyFromCloudFormation(properties.RedshiftDatasetDefinition):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobProcessingInputsObjectPropertyValidator(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("appManaged",cdk().validateBoolean)(properties.appManaged)),errors.collect(cdk().propertyValidator("datasetDefinition",CfnProcessingJobDatasetDefinitionPropertyValidator)(properties.datasetDefinition)),errors.collect(cdk().propertyValidator("inputName",cdk().requiredValidator)(properties.inputName)),errors.collect(cdk().propertyValidator("inputName",cdk().validateString)(properties.inputName)),errors.collect(cdk().propertyValidator("s3Input",CfnProcessingJobS3InputPropertyValidator)(properties.s3Input)),errors.wrap('supplied properties not correct for "ProcessingInputsObjectProperty"')}function convertCfnProcessingJobProcessingInputsObjectPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobProcessingInputsObjectPropertyValidator(properties).assertSuccess(),{AppManaged:cdk().booleanToCloudFormation(properties.appManaged),DatasetDefinition:convertCfnProcessingJobDatasetDefinitionPropertyToCloudFormation(properties.datasetDefinition),InputName:cdk().stringToCloudFormation(properties.inputName),S3Input:convertCfnProcessingJobS3InputPropertyToCloudFormation(properties.s3Input)}):properties}function CfnProcessingJobProcessingInputsObjectPropertyFromCloudFormation(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("appManaged","AppManaged",properties.AppManaged!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AppManaged):void 0),ret.addPropertyResult("datasetDefinition","DatasetDefinition",properties.DatasetDefinition!=null?CfnProcessingJobDatasetDefinitionPropertyFromCloudFormation(properties.DatasetDefinition):void 0),ret.addPropertyResult("inputName","InputName",properties.InputName!=null?cfn_parse().FromCloudFormation.getString(properties.InputName):void 0),ret.addPropertyResult("s3Input","S3Input",properties.S3Input!=null?CfnProcessingJobS3InputPropertyFromCloudFormation(properties.S3Input):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobS3OutputPropertyValidator(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("localPath",cdk().validateString)(properties.localPath)),errors.collect(cdk().propertyValidator("s3UploadMode",cdk().requiredValidator)(properties.s3UploadMode)),errors.collect(cdk().propertyValidator("s3UploadMode",cdk().validateString)(properties.s3UploadMode)),errors.collect(cdk().propertyValidator("s3Uri",cdk().requiredValidator)(properties.s3Uri)),errors.collect(cdk().propertyValidator("s3Uri",cdk().validateString)(properties.s3Uri)),errors.wrap('supplied properties not correct for "S3OutputProperty"')}function convertCfnProcessingJobS3OutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobS3OutputPropertyValidator(properties).assertSuccess(),{LocalPath:cdk().stringToCloudFormation(properties.localPath),S3UploadMode:cdk().stringToCloudFormation(properties.s3UploadMode),S3Uri:cdk().stringToCloudFormation(properties.s3Uri)}):properties}function CfnProcessingJobS3OutputPropertyFromCloudFormation(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("localPath","LocalPath",properties.LocalPath!=null?cfn_parse().FromCloudFormation.getString(properties.LocalPath):void 0),ret.addPropertyResult("s3UploadMode","S3UploadMode",properties.S3UploadMode!=null?cfn_parse().FromCloudFormation.getString(properties.S3UploadMode):void 0),ret.addPropertyResult("s3Uri","S3Uri",properties.S3Uri!=null?cfn_parse().FromCloudFormation.getString(properties.S3Uri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobFeatureStoreOutputPropertyValidator(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("featureGroupName",cdk().requiredValidator)(properties.featureGroupName)),errors.collect(cdk().propertyValidator("featureGroupName",cdk().validateString)(properties.featureGroupName)),errors.wrap('supplied properties not correct for "FeatureStoreOutputProperty"')}function convertCfnProcessingJobFeatureStoreOutputPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobFeatureStoreOutputPropertyValidator(properties).assertSuccess(),{FeatureGroupName:cdk().stringToCloudFormation(properties.featureGroupName)}):properties}function CfnProcessingJobFeatureStoreOutputPropertyFromCloudFormation(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("featureGroupName","FeatureGroupName",properties.FeatureGroupName!=null?cfn_parse().FromCloudFormation.getString(properties.FeatureGroupName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobProcessingOutputsObjectPropertyValidator(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("appManaged",cdk().validateBoolean)(properties.appManaged)),errors.collect(cdk().propertyValidator("featureStoreOutput",CfnProcessingJobFeatureStoreOutputPropertyValidator)(properties.featureStoreOutput)),errors.collect(cdk().propertyValidator("outputName",cdk().requiredValidator)(properties.outputName)),errors.collect(cdk().propertyValidator("outputName",cdk().validateString)(properties.outputName)),errors.collect(cdk().propertyValidator("s3Output",CfnProcessingJobS3OutputPropertyValidator)(properties.s3Output)),errors.wrap('supplied properties not correct for "ProcessingOutputsObjectProperty"')}function convertCfnProcessingJobProcessingOutputsObjectPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobProcessingOutputsObjectPropertyValidator(properties).assertSuccess(),{AppManaged:cdk().booleanToCloudFormation(properties.appManaged),FeatureStoreOutput:convertCfnProcessingJobFeatureStoreOutputPropertyToCloudFormation(properties.featureStoreOutput),OutputName:cdk().stringToCloudFormation(properties.outputName),S3Output:convertCfnProcessingJobS3OutputPropertyToCloudFormation(properties.s3Output)}):properties}function CfnProcessingJobProcessingOutputsObjectPropertyFromCloudFormation(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("appManaged","AppManaged",properties.AppManaged!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AppManaged):void 0),ret.addPropertyResult("featureStoreOutput","FeatureStoreOutput",properties.FeatureStoreOutput!=null?CfnProcessingJobFeatureStoreOutputPropertyFromCloudFormation(properties.FeatureStoreOutput):void 0),ret.addPropertyResult("outputName","OutputName",properties.OutputName!=null?cfn_parse().FromCloudFormation.getString(properties.OutputName):void 0),ret.addPropertyResult("s3Output","S3Output",properties.S3Output!=null?CfnProcessingJobS3OutputPropertyFromCloudFormation(properties.S3Output):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobProcessingOutputConfigPropertyValidator(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.collect(cdk().propertyValidator("outputs",cdk().requiredValidator)(properties.outputs)),errors.collect(cdk().propertyValidator("outputs",cdk().listValidator(CfnProcessingJobProcessingOutputsObjectPropertyValidator))(properties.outputs)),errors.wrap('supplied properties not correct for "ProcessingOutputConfigProperty"')}function convertCfnProcessingJobProcessingOutputConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobProcessingOutputConfigPropertyValidator(properties).assertSuccess(),{KmsKeyId:cdk().stringToCloudFormation(properties.kmsKeyId),Outputs:cdk().listMapper(convertCfnProcessingJobProcessingOutputsObjectPropertyToCloudFormation)(properties.outputs)}):properties}function CfnProcessingJobProcessingOutputConfigPropertyFromCloudFormation(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.addPropertyResult("outputs","Outputs",properties.Outputs!=null?cfn_parse().FromCloudFormation.getArray(CfnProcessingJobProcessingOutputsObjectPropertyFromCloudFormation)(properties.Outputs):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobClusterConfigPropertyValidator(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("instanceCount",cdk().requiredValidator)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceCount",cdk().validateNumber)(properties.instanceCount)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("volumeKmsKeyId",cdk().validateString)(properties.volumeKmsKeyId)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().requiredValidator)(properties.volumeSizeInGb)),errors.collect(cdk().propertyValidator("volumeSizeInGb",cdk().validateNumber)(properties.volumeSizeInGb)),errors.wrap('supplied properties not correct for "ClusterConfigProperty"')}function convertCfnProcessingJobClusterConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobClusterConfigPropertyValidator(properties).assertSuccess(),{InstanceCount:cdk().numberToCloudFormation(properties.instanceCount),InstanceType:cdk().stringToCloudFormation(properties.instanceType),VolumeKmsKeyId:cdk().stringToCloudFormation(properties.volumeKmsKeyId),VolumeSizeInGB:cdk().numberToCloudFormation(properties.volumeSizeInGb)}):properties}function CfnProcessingJobClusterConfigPropertyFromCloudFormation(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("instanceCount","InstanceCount",properties.InstanceCount!=null?cfn_parse().FromCloudFormation.getNumber(properties.InstanceCount):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("volumeKmsKeyId","VolumeKmsKeyId",properties.VolumeKmsKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeKmsKeyId):void 0),ret.addPropertyResult("volumeSizeInGb","VolumeSizeInGB",properties.VolumeSizeInGB!=null?cfn_parse().FromCloudFormation.getNumber(properties.VolumeSizeInGB):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobProcessingResourcesPropertyValidator(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("clusterConfig",cdk().requiredValidator)(properties.clusterConfig)),errors.collect(cdk().propertyValidator("clusterConfig",CfnProcessingJobClusterConfigPropertyValidator)(properties.clusterConfig)),errors.wrap('supplied properties not correct for "ProcessingResourcesProperty"')}function convertCfnProcessingJobProcessingResourcesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobProcessingResourcesPropertyValidator(properties).assertSuccess(),{ClusterConfig:convertCfnProcessingJobClusterConfigPropertyToCloudFormation(properties.clusterConfig)}):properties}function CfnProcessingJobProcessingResourcesPropertyFromCloudFormation(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("clusterConfig","ClusterConfig",properties.ClusterConfig!=null?CfnProcessingJobClusterConfigPropertyFromCloudFormation(properties.ClusterConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobStoppingConditionPropertyValidator(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("maxRuntimeInSeconds",cdk().requiredValidator)(properties.maxRuntimeInSeconds)),errors.collect(cdk().propertyValidator("maxRuntimeInSeconds",cdk().validateNumber)(properties.maxRuntimeInSeconds)),errors.wrap('supplied properties not correct for "StoppingConditionProperty"')}function convertCfnProcessingJobStoppingConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobStoppingConditionPropertyValidator(properties).assertSuccess(),{MaxRuntimeInSeconds:cdk().numberToCloudFormation(properties.maxRuntimeInSeconds)}):properties}function CfnProcessingJobStoppingConditionPropertyFromCloudFormation(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("maxRuntimeInSeconds","MaxRuntimeInSeconds",properties.MaxRuntimeInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxRuntimeInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnProcessingJobPropsValidator(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("appSpecification",cdk().requiredValidator)(properties.appSpecification)),errors.collect(cdk().propertyValidator("appSpecification",CfnProcessingJobAppSpecificationPropertyValidator)(properties.appSpecification)),errors.collect(cdk().propertyValidator("environment",cdk().hashValidator(cdk().validateString))(properties.environment)),errors.collect(cdk().propertyValidator("experimentConfig",CfnProcessingJobExperimentConfigPropertyValidator)(properties.experimentConfig)),errors.collect(cdk().propertyValidator("networkConfig",CfnProcessingJobNetworkConfigPropertyValidator)(properties.networkConfig)),errors.collect(cdk().propertyValidator("processingInputs",cdk().listValidator(CfnProcessingJobProcessingInputsObjectPropertyValidator))(properties.processingInputs)),errors.collect(cdk().propertyValidator("processingJobName",cdk().validateString)(properties.processingJobName)),errors.collect(cdk().propertyValidator("processingOutputConfig",CfnProcessingJobProcessingOutputConfigPropertyValidator)(properties.processingOutputConfig)),errors.collect(cdk().propertyValidator("processingResources",cdk().requiredValidator)(properties.processingResources)),errors.collect(cdk().propertyValidator("processingResources",CfnProcessingJobProcessingResourcesPropertyValidator)(properties.processingResources)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("stoppingCondition",CfnProcessingJobStoppingConditionPropertyValidator)(properties.stoppingCondition)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnProcessingJobProps"')}function convertCfnProcessingJobPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnProcessingJobPropsValidator(properties).assertSuccess(),{AppSpecification:convertCfnProcessingJobAppSpecificationPropertyToCloudFormation(properties.appSpecification),Environment:cdk().hashMapper(cdk().stringToCloudFormation)(properties.environment),ExperimentConfig:convertCfnProcessingJobExperimentConfigPropertyToCloudFormation(properties.experimentConfig),NetworkConfig:convertCfnProcessingJobNetworkConfigPropertyToCloudFormation(properties.networkConfig),ProcessingInputs:cdk().listMapper(convertCfnProcessingJobProcessingInputsObjectPropertyToCloudFormation)(properties.processingInputs),ProcessingJobName:cdk().stringToCloudFormation(properties.processingJobName),ProcessingOutputConfig:convertCfnProcessingJobProcessingOutputConfigPropertyToCloudFormation(properties.processingOutputConfig),ProcessingResources:convertCfnProcessingJobProcessingResourcesPropertyToCloudFormation(properties.processingResources),RoleArn:cdk().stringToCloudFormation(properties.roleArn),StoppingCondition:convertCfnProcessingJobStoppingConditionPropertyToCloudFormation(properties.stoppingCondition),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnProcessingJobPropsFromCloudFormation(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("appSpecification","AppSpecification",properties.AppSpecification!=null?CfnProcessingJobAppSpecificationPropertyFromCloudFormation(properties.AppSpecification):void 0),ret.addPropertyResult("environment","Environment",properties.Environment!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Environment):void 0),ret.addPropertyResult("experimentConfig","ExperimentConfig",properties.ExperimentConfig!=null?CfnProcessingJobExperimentConfigPropertyFromCloudFormation(properties.ExperimentConfig):void 0),ret.addPropertyResult("networkConfig","NetworkConfig",properties.NetworkConfig!=null?CfnProcessingJobNetworkConfigPropertyFromCloudFormation(properties.NetworkConfig):void 0),ret.addPropertyResult("processingInputs","ProcessingInputs",properties.ProcessingInputs!=null?cfn_parse().FromCloudFormation.getArray(CfnProcessingJobProcessingInputsObjectPropertyFromCloudFormation)(properties.ProcessingInputs):void 0),ret.addPropertyResult("processingJobName","ProcessingJobName",properties.ProcessingJobName!=null?cfn_parse().FromCloudFormation.getString(properties.ProcessingJobName):void 0),ret.addPropertyResult("processingOutputConfig","ProcessingOutputConfig",properties.ProcessingOutputConfig!=null?CfnProcessingJobProcessingOutputConfigPropertyFromCloudFormation(properties.ProcessingOutputConfig):void 0),ret.addPropertyResult("processingResources","ProcessingResources",properties.ProcessingResources!=null?CfnProcessingJobProcessingResourcesPropertyFromCloudFormation(properties.ProcessingResources):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("stoppingCondition","StoppingCondition",properties.StoppingCondition!=null?CfnProcessingJobStoppingConditionPropertyFromCloudFormation(properties.StoppingCondition):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 CfnStudioLifecycleConfig extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_sagemaker.CfnStudioLifecycleConfig",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SageMaker::StudioLifecycleConfig";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnStudioLifecycleConfigPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnStudioLifecycleConfig(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 isCfnStudioLifecycleConfig(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnStudioLifecycleConfig.CFN_RESOURCE_TYPE_NAME}static fromStudioLifecycleConfigArn(scope,id,arn){class Import extends cdk().Resource{studioLifecycleConfigRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:studio-lifecycle-config/${StudioLifecycleConfigName}").parse(arn2);this.studioLifecycleConfigRef={studioLifecycleConfigName:variables.StudioLifecycleConfigName,studioLifecycleConfigArn:arn2}}}return new Import(scope,id,arn)}static fromStudioLifecycleConfigName(scope,id,studioLifecycleConfigName){class Import extends cdk().Resource{studioLifecycleConfigRef;constructor(scope2,id2,studioLifecycleConfigName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:sagemaker:${Region}:${Account}:studio-lifecycle-config/${StudioLifecycleConfigName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,StudioLifecycleConfigName:studioLifecycleConfigName2});super(scope2,id2,{environmentFromArn:arn}),this.studioLifecycleConfigRef={studioLifecycleConfigName:studioLifecycleConfigName2,studioLifecycleConfigArn:arn}}}return new Import(scope,id,studioLifecycleConfigName)}static arnForStudioLifecycleConfig(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_sagemaker_IStudioLifecycleConfigRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForStudioLifecycleConfig),error}return resource.studioLifecycleConfigRef.studioLifecycleConfigArn}cdkTagManager;_studioLifecycleConfigAppType;_studioLifecycleConfigContent;_studioLifecycleConfigName;_tags;cfnPropertyNames={tags:"Tags",studioLifecycleConfigAppType:"StudioLifecycleConfigAppType",studioLifecycleConfigContent:"StudioLifecycleConfigContent",studioLifecycleConfigName:"StudioLifecycleConfigName"};constructor(scope,id,props){super(scope,id,{type:CfnStudioLifecycleConfig.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_sagemaker_CfnStudioLifecycleConfigProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnStudioLifecycleConfig),error}cdk().requireProperty(props,"studioLifecycleConfigAppType",this),cdk().requireProperty(props,"studioLifecycleConfigContent",this),cdk().requireProperty(props,"studioLifecycleConfigName",this),this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SageMaker::StudioLifecycleConfig",void 0,{tagPropertyName:"tags"}),this._studioLifecycleConfigAppType=props.studioLifecycleConfigAppType,this._studioLifecycleConfigContent=props.studioLifecycleConfigContent,this._studioLifecycleConfigName=props.studioLifecycleConfigName,this._tags=props.tags}get studioLifecycleConfigRef(){return{studioLifecycleConfigName:this.ref,studioLifecycleConfigArn:this.attrStudioLifecycleConfigArn}}get studioLifecycleConfigAppType(){return this._studioLifecycleConfigAppType}set studioLifecycleConfigAppType(value){cdk().traceProperty(this.node,"StudioLifecycleConfigAppType"),this._studioLifecycleConfigAppType=value}get studioLifecycleConfigContent(){return this._studioLifecycleConfigContent}set studioLifecycleConfigContent(value){cdk().traceProperty(this.node,"StudioLifecycleConfigContent"),this._studioLifecycleConfigContent=value}get studioLifecycleConfigName(){return this._studioLifecycleConfigName}set studioLifecycleConfigName(value){cdk().traceProperty(this.node,"StudioLifecycleConfigName"),this._studioLifecycleConfigName=value}get tags(){return this._tags}set tags(value){cdk().traceProperty(this.node,"Tags"),this._tags=value}get attrStudioLifecycleConfigArn(){return cdk().Token.asString(this.getAtt("StudioLifecycleConfigArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{tags:this.cdkTagManager.renderTags(this._tags),studioLifecycleConfigAppType:this._studioLifecycleConfigAppType,studioLifecycleConfigContent:this._studioLifecycleConfigContent,studioLifecycleConfigName:this._studioLifecycleConfigName}}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",CfnStudioLifecycleConfig.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnStudioLifecycleConfigPropsToCloudFormation(props)}}exports.CfnStudioLifecycleConfig=CfnStudioLifecycleConfig;function CfnStudioLifecycleConfigPropsValidator(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("studioLifecycleConfigAppType",cdk().requiredValidator)(properties.studioLifecycleConfigAppType)),errors.collect(cdk().propertyValidator("studioLifecycleConfigAppType",cdk().validateString)(properties.studioLifecycleConfigAppType)),errors.collect(cdk().propertyValidator("studioLifecycleConfigContent",cdk().requiredValidator)(properties.studioLifecycleConfigContent)),errors.collect(cdk().propertyValidator("studioLifecycleConfigContent",cdk().validateString)(properties.studioLifecycleConfigContent)),errors.collect(cdk().propertyValidator("studioLifecycleConfigName",cdk().requiredValidator)(properties.studioLifecycleConfigName)),errors.collect(cdk().propertyValidator("studioLifecycleConfigName",cdk().validateString)(properties.studioLifecycleConfigName)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnStudioLifecycleConfigProps"')}function convertCfnStudioLifecycleConfigPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnStudioLifecycleConfigPropsValidator(properties).assertSuccess(),{StudioLifecycleConfigAppType:cdk().stringToCloudFormation(properties.studioLifecycleConfigAppType),StudioLifecycleConfigContent:cdk().stringToCloudFormation(properties.studioLifecycleConfigContent),StudioLifecycleConfigName:cdk().stringToCloudFormation(properties.studioLifecycleConfigName),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnStudioLifecycleConfigPropsFromCloudFormation(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("studioLifecycleConfigAppType","StudioLifecycleConfigAppType",properties.StudioLifecycleConfigAppType!=null?cfn_parse().FromCloudFormation.getString(properties.StudioLifecycleConfigAppType):void 0),ret.addPropertyResult("studioLifecycleConfigContent","StudioLifecycleConfigContent",properties.StudioLifecycleConfigContent!=null?cfn_parse().FromCloudFormation.getString(properties.StudioLifecycleConfigContent):void 0),ret.addPropertyResult("studioLifecycleConfigName","StudioLifecycleConfigName",properties.StudioLifecycleConfigName!=null?cfn_parse().FromCloudFormation.getString(properties.StudioLifecycleConfigName):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}