"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnFlow=exports.CfnConnectorProfile=exports.CfnConnector=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core/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 CfnConnector extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_appflow.CfnConnector",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::AppFlow::Connector";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectorPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnConnector(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnConnector(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConnector.CFN_RESOURCE_TYPE_NAME}static fromConnectorArn(scope,id,arn){class Import extends cdk().Resource{connectorRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:appflow:${Region}:${Account}:connector/${ConnectorLabel}").parse(arn2);this.connectorRef={connectorLabel:variables.ConnectorLabel,connectorArn:arn2}}}return new Import(scope,id,arn)}static fromConnectorLabel(scope,id,connectorLabel){class Import extends cdk().Resource{connectorRef;constructor(scope2,id2,connectorLabel2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:appflow:${Region}:${Account}:connector/${ConnectorLabel}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,ConnectorLabel:connectorLabel2});super(scope2,id2,{environmentFromArn:arn}),this.connectorRef={connectorLabel:connectorLabel2,connectorArn:arn}}}return new Import(scope,id,connectorLabel)}static arnForConnector(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_appflow_IConnectorRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForConnector),error}return resource.connectorRef.connectorArn}_connectorLabel;_connectorProvisioningConfig;_connectorProvisioningType;_description;cfnPropertyNames={connectorLabel:"ConnectorLabel",connectorProvisioningConfig:"ConnectorProvisioningConfig",connectorProvisioningType:"ConnectorProvisioningType",description:"Description"};constructor(scope,id,props){super(scope,id,{type:CfnConnector.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appflow_CfnConnectorProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConnector),error}cdk().requireProperty(props,"connectorProvisioningConfig",this),cdk().requireProperty(props,"connectorProvisioningType",this),this._connectorLabel=props.connectorLabel,this._connectorProvisioningConfig=props.connectorProvisioningConfig,this._connectorProvisioningType=props.connectorProvisioningType,this._description=props.description}get connectorRef(){return{connectorLabel:this.ref,connectorArn:this.attrConnectorArn}}get connectorLabel(){return this._connectorLabel}set connectorLabel(value){cdk().traceProperty(this.node,"ConnectorLabel"),this._connectorLabel=value}get connectorProvisioningConfig(){return this._connectorProvisioningConfig}set connectorProvisioningConfig(value){cdk().traceProperty(this.node,"ConnectorProvisioningConfig"),this._connectorProvisioningConfig=value}get connectorProvisioningType(){return this._connectorProvisioningType}set connectorProvisioningType(value){cdk().traceProperty(this.node,"ConnectorProvisioningType"),this._connectorProvisioningType=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get attrConnectorArn(){return cdk().Token.asString(this.getAtt("ConnectorArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{connectorLabel:this._connectorLabel,connectorProvisioningConfig:this._connectorProvisioningConfig,connectorProvisioningType:this._connectorProvisioningType,description:this._description}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnConnector.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConnectorPropsToCloudFormation(props)}}exports.CfnConnector=CfnConnector;function CfnConnectorLambdaConnectorProvisioningConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("lambdaArn",cdk().requiredValidator)(properties.lambdaArn)),errors.collect(cdk().propertyValidator("lambdaArn",cdk().validateString)(properties.lambdaArn)),errors.wrap('supplied properties not correct for "LambdaConnectorProvisioningConfigProperty"')}function convertCfnConnectorLambdaConnectorProvisioningConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorLambdaConnectorProvisioningConfigPropertyValidator(properties).assertSuccess(),{LambdaArn:cdk().stringToCloudFormation(properties.lambdaArn)}):properties}function CfnConnectorLambdaConnectorProvisioningConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("lambdaArn","LambdaArn",properties.LambdaArn!=null?cfn_parse().FromCloudFormation.getString(properties.LambdaArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorConnectorProvisioningConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("lambda",CfnConnectorLambdaConnectorProvisioningConfigPropertyValidator)(properties.lambda)),errors.wrap('supplied properties not correct for "ConnectorProvisioningConfigProperty"')}function convertCfnConnectorConnectorProvisioningConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorConnectorProvisioningConfigPropertyValidator(properties).assertSuccess(),{Lambda:convertCfnConnectorLambdaConnectorProvisioningConfigPropertyToCloudFormation(properties.lambda)}):properties}function CfnConnectorConnectorProvisioningConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("lambda","Lambda",properties.Lambda!=null?CfnConnectorLambdaConnectorProvisioningConfigPropertyFromCloudFormation(properties.Lambda):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("connectorLabel",cdk().validateString)(properties.connectorLabel)),errors.collect(cdk().propertyValidator("connectorProvisioningConfig",cdk().requiredValidator)(properties.connectorProvisioningConfig)),errors.collect(cdk().propertyValidator("connectorProvisioningConfig",CfnConnectorConnectorProvisioningConfigPropertyValidator)(properties.connectorProvisioningConfig)),errors.collect(cdk().propertyValidator("connectorProvisioningType",cdk().requiredValidator)(properties.connectorProvisioningType)),errors.collect(cdk().propertyValidator("connectorProvisioningType",cdk().validateString)(properties.connectorProvisioningType)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.wrap('supplied properties not correct for "CfnConnectorProps"')}function convertCfnConnectorPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorPropsValidator(properties).assertSuccess(),{ConnectorLabel:cdk().stringToCloudFormation(properties.connectorLabel),ConnectorProvisioningConfig:convertCfnConnectorConnectorProvisioningConfigPropertyToCloudFormation(properties.connectorProvisioningConfig),ConnectorProvisioningType:cdk().stringToCloudFormation(properties.connectorProvisioningType),Description:cdk().stringToCloudFormation(properties.description)}):properties}function CfnConnectorPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("connectorLabel","ConnectorLabel",properties.ConnectorLabel!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorLabel):void 0),ret.addPropertyResult("connectorProvisioningConfig","ConnectorProvisioningConfig",properties.ConnectorProvisioningConfig!=null?CfnConnectorConnectorProvisioningConfigPropertyFromCloudFormation(properties.ConnectorProvisioningConfig):void 0),ret.addPropertyResult("connectorProvisioningType","ConnectorProvisioningType",properties.ConnectorProvisioningType!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorProvisioningType):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnConnectorProfile extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_appflow.CfnConnectorProfile",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::AppFlow::ConnectorProfile";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectorProfilePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnConnectorProfile(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 isCfnConnectorProfile(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnConnectorProfile.CFN_RESOURCE_TYPE_NAME}static arnForConnectorProfile(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_appflow_IConnectorProfileRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForConnectorProfile),error}return resource.connectorProfileRef.connectorProfileArn}_connectionMode;_connectorLabel;_connectorProfileConfig;_connectorProfileName;_connectorType;_kmsArn;cfnPropertyNames={connectionMode:"ConnectionMode",connectorLabel:"ConnectorLabel",connectorProfileConfig:"ConnectorProfileConfig",connectorProfileName:"ConnectorProfileName",connectorType:"ConnectorType",kmsArn:"KMSArn"};constructor(scope,id,props){super(scope,id,{type:CfnConnectorProfile.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appflow_CfnConnectorProfileProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConnectorProfile),error}cdk().requireProperty(props,"connectionMode",this),cdk().requireProperty(props,"connectorProfileName",this),cdk().requireProperty(props,"connectorType",this),this._connectionMode=props.connectionMode,this._connectorLabel=props.connectorLabel,this._connectorProfileConfig=props.connectorProfileConfig,this._connectorProfileName=props.connectorProfileName,this._connectorType=props.connectorType,this._kmsArn=props.kmsArn}get connectorProfileRef(){return{connectorProfileName:this.ref,connectorProfileArn:this.attrConnectorProfileArn}}get connectionMode(){return this._connectionMode}set connectionMode(value){cdk().traceProperty(this.node,"ConnectionMode"),this._connectionMode=value}get connectorLabel(){return this._connectorLabel}set connectorLabel(value){cdk().traceProperty(this.node,"ConnectorLabel"),this._connectorLabel=value}get connectorProfileConfig(){return this._connectorProfileConfig}set connectorProfileConfig(value){cdk().traceProperty(this.node,"ConnectorProfileConfig"),this._connectorProfileConfig=value}get connectorProfileName(){return this._connectorProfileName}set connectorProfileName(value){cdk().traceProperty(this.node,"ConnectorProfileName"),this._connectorProfileName=value}get connectorType(){return this._connectorType}set connectorType(value){cdk().traceProperty(this.node,"ConnectorType"),this._connectorType=value}get kmsArn(){return this._kmsArn}set kmsArn(value){cdk().traceProperty(this.node,"KMSArn"),this._kmsArn=value}get attrConnectorProfileArn(){return cdk().Token.asString(this.getAtt("ConnectorProfileArn",cdk().ResolutionTypeHint.STRING))}get attrCredentialsArn(){return cdk().Token.asString(this.getAtt("CredentialsArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{connectionMode:this._connectionMode,connectorLabel:this._connectorLabel,connectorProfileConfig:this._connectorProfileConfig,connectorProfileName:this._connectorProfileName,connectorType:this._connectorType,kmsArn:this._kmsArn}}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",CfnConnectorProfile.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConnectorProfilePropsToCloudFormation(props)}}exports.CfnConnectorProfile=CfnConnectorProfile;function CfnConnectorProfileAmplitudeConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiKey",cdk().requiredValidator)(properties.apiKey)),errors.collect(cdk().propertyValidator("apiKey",cdk().validateString)(properties.apiKey)),errors.collect(cdk().propertyValidator("secretKey",cdk().requiredValidator)(properties.secretKey)),errors.collect(cdk().propertyValidator("secretKey",cdk().validateString)(properties.secretKey)),errors.wrap('supplied properties not correct for "AmplitudeConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileAmplitudeConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileAmplitudeConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{ApiKey:cdk().stringToCloudFormation(properties.apiKey),SecretKey:cdk().stringToCloudFormation(properties.secretKey)}):properties}function CfnConnectorProfileAmplitudeConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiKey","ApiKey",properties.ApiKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiKey):void 0),ret.addPropertyResult("secretKey","SecretKey",properties.SecretKey!=null?cfn_parse().FromCloudFormation.getString(properties.SecretKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileConnectorOAuthRequestPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("authCode",cdk().validateString)(properties.authCode)),errors.collect(cdk().propertyValidator("redirectUri",cdk().validateString)(properties.redirectUri)),errors.wrap('supplied properties not correct for "ConnectorOAuthRequestProperty"')}function convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileConnectorOAuthRequestPropertyValidator(properties).assertSuccess(),{AuthCode:cdk().stringToCloudFormation(properties.authCode),RedirectUri:cdk().stringToCloudFormation(properties.redirectUri)}):properties}function CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("authCode","AuthCode",properties.AuthCode!=null?cfn_parse().FromCloudFormation.getString(properties.AuthCode):void 0),ret.addPropertyResult("redirectUri","RedirectUri",properties.RedirectUri!=null?cfn_parse().FromCloudFormation.getString(properties.RedirectUri):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileGoogleAnalyticsConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientId",cdk().requiredValidator)(properties.clientId)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().requiredValidator)(properties.clientSecret)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("connectorOAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.connectorOAuthRequest)),errors.collect(cdk().propertyValidator("refreshToken",cdk().validateString)(properties.refreshToken)),errors.wrap('supplied properties not correct for "GoogleAnalyticsConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileGoogleAnalyticsConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileGoogleAnalyticsConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),ConnectorOAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.connectorOAuthRequest),RefreshToken:cdk().stringToCloudFormation(properties.refreshToken)}):properties}function CfnConnectorProfileGoogleAnalyticsConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("connectorOAuthRequest","ConnectorOAuthRequest",properties.ConnectorOAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.ConnectorOAuthRequest):void 0),ret.addPropertyResult("refreshToken","RefreshToken",properties.RefreshToken!=null?cfn_parse().FromCloudFormation.getString(properties.RefreshToken):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileOAuth2CredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("oAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.oAuthRequest)),errors.collect(cdk().propertyValidator("refreshToken",cdk().validateString)(properties.refreshToken)),errors.wrap('supplied properties not correct for "OAuth2CredentialsProperty"')}function convertCfnConnectorProfileOAuth2CredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileOAuth2CredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),OAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.oAuthRequest),RefreshToken:cdk().stringToCloudFormation(properties.refreshToken)}):properties}function CfnConnectorProfileOAuth2CredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("oAuthRequest","OAuthRequest",properties.OAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.OAuthRequest):void 0),ret.addPropertyResult("refreshToken","RefreshToken",properties.RefreshToken!=null?cfn_parse().FromCloudFormation.getString(properties.RefreshToken):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileServiceNowConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("oAuth2Credentials",CfnConnectorProfileOAuth2CredentialsPropertyValidator)(properties.oAuth2Credentials)),errors.collect(cdk().propertyValidator("password",cdk().validateString)(properties.password)),errors.collect(cdk().propertyValidator("username",cdk().validateString)(properties.username)),errors.wrap('supplied properties not correct for "ServiceNowConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileServiceNowConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileServiceNowConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{OAuth2Credentials:convertCfnConnectorProfileOAuth2CredentialsPropertyToCloudFormation(properties.oAuth2Credentials),Password:cdk().stringToCloudFormation(properties.password),Username:cdk().stringToCloudFormation(properties.username)}):properties}function CfnConnectorProfileServiceNowConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("oAuth2Credentials","OAuth2Credentials",properties.OAuth2Credentials!=null?CfnConnectorProfileOAuth2CredentialsPropertyFromCloudFormation(properties.OAuth2Credentials):void 0),ret.addPropertyResult("password","Password",properties.Password!=null?cfn_parse().FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("username","Username",properties.Username!=null?cfn_parse().FromCloudFormation.getString(properties.Username):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileBasicAuthCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("password",cdk().requiredValidator)(properties.password)),errors.collect(cdk().propertyValidator("password",cdk().validateString)(properties.password)),errors.collect(cdk().propertyValidator("username",cdk().requiredValidator)(properties.username)),errors.collect(cdk().propertyValidator("username",cdk().validateString)(properties.username)),errors.wrap('supplied properties not correct for "BasicAuthCredentialsProperty"')}function convertCfnConnectorProfileBasicAuthCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileBasicAuthCredentialsPropertyValidator(properties).assertSuccess(),{Password:cdk().stringToCloudFormation(properties.password),Username:cdk().stringToCloudFormation(properties.username)}):properties}function CfnConnectorProfileBasicAuthCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("password","Password",properties.Password!=null?cfn_parse().FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("username","Username",properties.Username!=null?cfn_parse().FromCloudFormation.getString(properties.Username):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileApiKeyCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiKey",cdk().requiredValidator)(properties.apiKey)),errors.collect(cdk().propertyValidator("apiKey",cdk().validateString)(properties.apiKey)),errors.collect(cdk().propertyValidator("apiSecretKey",cdk().validateString)(properties.apiSecretKey)),errors.wrap('supplied properties not correct for "ApiKeyCredentialsProperty"')}function convertCfnConnectorProfileApiKeyCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileApiKeyCredentialsPropertyValidator(properties).assertSuccess(),{ApiKey:cdk().stringToCloudFormation(properties.apiKey),ApiSecretKey:cdk().stringToCloudFormation(properties.apiSecretKey)}):properties}function CfnConnectorProfileApiKeyCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiKey","ApiKey",properties.ApiKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiKey):void 0),ret.addPropertyResult("apiSecretKey","ApiSecretKey",properties.ApiSecretKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiSecretKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileCustomAuthCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("credentialsMap",cdk().hashValidator(cdk().validateString))(properties.credentialsMap)),errors.collect(cdk().propertyValidator("customAuthenticationType",cdk().requiredValidator)(properties.customAuthenticationType)),errors.collect(cdk().propertyValidator("customAuthenticationType",cdk().validateString)(properties.customAuthenticationType)),errors.wrap('supplied properties not correct for "CustomAuthCredentialsProperty"')}function convertCfnConnectorProfileCustomAuthCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileCustomAuthCredentialsPropertyValidator(properties).assertSuccess(),{CredentialsMap:cdk().hashMapper(cdk().stringToCloudFormation)(properties.credentialsMap),CustomAuthenticationType:cdk().stringToCloudFormation(properties.customAuthenticationType)}):properties}function CfnConnectorProfileCustomAuthCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("credentialsMap","CredentialsMap",properties.CredentialsMap!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.CredentialsMap):void 0),ret.addPropertyResult("customAuthenticationType","CustomAuthenticationType",properties.CustomAuthenticationType!=null?cfn_parse().FromCloudFormation.getString(properties.CustomAuthenticationType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileCustomConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiKey",CfnConnectorProfileApiKeyCredentialsPropertyValidator)(properties.apiKey)),errors.collect(cdk().propertyValidator("authenticationType",cdk().requiredValidator)(properties.authenticationType)),errors.collect(cdk().propertyValidator("authenticationType",cdk().validateString)(properties.authenticationType)),errors.collect(cdk().propertyValidator("basic",CfnConnectorProfileBasicAuthCredentialsPropertyValidator)(properties.basic)),errors.collect(cdk().propertyValidator("custom",CfnConnectorProfileCustomAuthCredentialsPropertyValidator)(properties.custom)),errors.collect(cdk().propertyValidator("oauth2",CfnConnectorProfileOAuth2CredentialsPropertyValidator)(properties.oauth2)),errors.wrap('supplied properties not correct for "CustomConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileCustomConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileCustomConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{ApiKey:convertCfnConnectorProfileApiKeyCredentialsPropertyToCloudFormation(properties.apiKey),AuthenticationType:cdk().stringToCloudFormation(properties.authenticationType),Basic:convertCfnConnectorProfileBasicAuthCredentialsPropertyToCloudFormation(properties.basic),Custom:convertCfnConnectorProfileCustomAuthCredentialsPropertyToCloudFormation(properties.custom),Oauth2:convertCfnConnectorProfileOAuth2CredentialsPropertyToCloudFormation(properties.oauth2)}):properties}function CfnConnectorProfileCustomConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiKey","ApiKey",properties.ApiKey!=null?CfnConnectorProfileApiKeyCredentialsPropertyFromCloudFormation(properties.ApiKey):void 0),ret.addPropertyResult("authenticationType","AuthenticationType",properties.AuthenticationType!=null?cfn_parse().FromCloudFormation.getString(properties.AuthenticationType):void 0),ret.addPropertyResult("basic","Basic",properties.Basic!=null?CfnConnectorProfileBasicAuthCredentialsPropertyFromCloudFormation(properties.Basic):void 0),ret.addPropertyResult("custom","Custom",properties.Custom!=null?CfnConnectorProfileCustomAuthCredentialsPropertyFromCloudFormation(properties.Custom):void 0),ret.addPropertyResult("oauth2","Oauth2",properties.Oauth2!=null?CfnConnectorProfileOAuth2CredentialsPropertyFromCloudFormation(properties.Oauth2):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileOAuthCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("connectorOAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.connectorOAuthRequest)),errors.collect(cdk().propertyValidator("refreshToken",cdk().validateString)(properties.refreshToken)),errors.wrap('supplied properties not correct for "OAuthCredentialsProperty"')}function convertCfnConnectorProfileOAuthCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileOAuthCredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),ConnectorOAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.connectorOAuthRequest),RefreshToken:cdk().stringToCloudFormation(properties.refreshToken)}):properties}function CfnConnectorProfileOAuthCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("connectorOAuthRequest","ConnectorOAuthRequest",properties.ConnectorOAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.ConnectorOAuthRequest):void 0),ret.addPropertyResult("refreshToken","RefreshToken",properties.RefreshToken!=null?cfn_parse().FromCloudFormation.getString(properties.RefreshToken):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSAPODataConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("basicAuthCredentials",CfnConnectorProfileBasicAuthCredentialsPropertyValidator)(properties.basicAuthCredentials)),errors.collect(cdk().propertyValidator("oAuthCredentials",CfnConnectorProfileOAuthCredentialsPropertyValidator)(properties.oAuthCredentials)),errors.wrap('supplied properties not correct for "SAPODataConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileSAPODataConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSAPODataConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{BasicAuthCredentials:convertCfnConnectorProfileBasicAuthCredentialsPropertyToCloudFormation(properties.basicAuthCredentials),OAuthCredentials:convertCfnConnectorProfileOAuthCredentialsPropertyToCloudFormation(properties.oAuthCredentials)}):properties}function CfnConnectorProfileSAPODataConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("basicAuthCredentials","BasicAuthCredentials",properties.BasicAuthCredentials!=null?CfnConnectorProfileBasicAuthCredentialsPropertyFromCloudFormation(properties.BasicAuthCredentials):void 0),ret.addPropertyResult("oAuthCredentials","OAuthCredentials",properties.OAuthCredentials!=null?CfnConnectorProfileOAuthCredentialsPropertyFromCloudFormation(properties.OAuthCredentials):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfilePardotConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientCredentialsArn",cdk().validateString)(properties.clientCredentialsArn)),errors.collect(cdk().propertyValidator("connectorOAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.connectorOAuthRequest)),errors.collect(cdk().propertyValidator("refreshToken",cdk().validateString)(properties.refreshToken)),errors.wrap('supplied properties not correct for "PardotConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfilePardotConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfilePardotConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientCredentialsArn:cdk().stringToCloudFormation(properties.clientCredentialsArn),ConnectorOAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.connectorOAuthRequest),RefreshToken:cdk().stringToCloudFormation(properties.refreshToken)}):properties}function CfnConnectorProfilePardotConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientCredentialsArn","ClientCredentialsArn",properties.ClientCredentialsArn!=null?cfn_parse().FromCloudFormation.getString(properties.ClientCredentialsArn):void 0),ret.addPropertyResult("connectorOAuthRequest","ConnectorOAuthRequest",properties.ConnectorOAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.ConnectorOAuthRequest):void 0),ret.addPropertyResult("refreshToken","RefreshToken",properties.RefreshToken!=null?cfn_parse().FromCloudFormation.getString(properties.RefreshToken):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileVeevaConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("password",cdk().requiredValidator)(properties.password)),errors.collect(cdk().propertyValidator("password",cdk().validateString)(properties.password)),errors.collect(cdk().propertyValidator("username",cdk().requiredValidator)(properties.username)),errors.collect(cdk().propertyValidator("username",cdk().validateString)(properties.username)),errors.wrap('supplied properties not correct for "VeevaConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileVeevaConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileVeevaConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{Password:cdk().stringToCloudFormation(properties.password),Username:cdk().stringToCloudFormation(properties.username)}):properties}function CfnConnectorProfileVeevaConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("password","Password",properties.Password!=null?cfn_parse().FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("username","Username",properties.Username!=null?cfn_parse().FromCloudFormation.getString(properties.Username):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileTrendmicroConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiSecretKey",cdk().requiredValidator)(properties.apiSecretKey)),errors.collect(cdk().propertyValidator("apiSecretKey",cdk().validateString)(properties.apiSecretKey)),errors.wrap('supplied properties not correct for "TrendmicroConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileTrendmicroConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileTrendmicroConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{ApiSecretKey:cdk().stringToCloudFormation(properties.apiSecretKey)}):properties}function CfnConnectorProfileTrendmicroConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiSecretKey","ApiSecretKey",properties.ApiSecretKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiSecretKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileDatadogConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiKey",cdk().requiredValidator)(properties.apiKey)),errors.collect(cdk().propertyValidator("apiKey",cdk().validateString)(properties.apiKey)),errors.collect(cdk().propertyValidator("applicationKey",cdk().requiredValidator)(properties.applicationKey)),errors.collect(cdk().propertyValidator("applicationKey",cdk().validateString)(properties.applicationKey)),errors.wrap('supplied properties not correct for "DatadogConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileDatadogConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileDatadogConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{ApiKey:cdk().stringToCloudFormation(properties.apiKey),ApplicationKey:cdk().stringToCloudFormation(properties.applicationKey)}):properties}function CfnConnectorProfileDatadogConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiKey","ApiKey",properties.ApiKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiKey):void 0),ret.addPropertyResult("applicationKey","ApplicationKey",properties.ApplicationKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileMarketoConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientId",cdk().requiredValidator)(properties.clientId)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().requiredValidator)(properties.clientSecret)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("connectorOAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.connectorOAuthRequest)),errors.wrap('supplied properties not correct for "MarketoConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileMarketoConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileMarketoConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),ConnectorOAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.connectorOAuthRequest)}):properties}function CfnConnectorProfileMarketoConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("connectorOAuthRequest","ConnectorOAuthRequest",properties.ConnectorOAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.ConnectorOAuthRequest):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileRedshiftConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("password",cdk().validateString)(properties.password)),errors.collect(cdk().propertyValidator("username",cdk().validateString)(properties.username)),errors.wrap('supplied properties not correct for "RedshiftConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileRedshiftConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileRedshiftConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{Password:cdk().stringToCloudFormation(properties.password),Username:cdk().stringToCloudFormation(properties.username)}):properties}function CfnConnectorProfileRedshiftConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("password","Password",properties.Password!=null?cfn_parse().FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("username","Username",properties.Username!=null?cfn_parse().FromCloudFormation.getString(properties.Username):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSingularConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiKey",cdk().requiredValidator)(properties.apiKey)),errors.collect(cdk().propertyValidator("apiKey",cdk().validateString)(properties.apiKey)),errors.wrap('supplied properties not correct for "SingularConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileSingularConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSingularConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{ApiKey:cdk().stringToCloudFormation(properties.apiKey)}):properties}function CfnConnectorProfileSingularConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiKey","ApiKey",properties.ApiKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSlackConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientId",cdk().requiredValidator)(properties.clientId)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().requiredValidator)(properties.clientSecret)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("connectorOAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.connectorOAuthRequest)),errors.wrap('supplied properties not correct for "SlackConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileSlackConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSlackConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),ConnectorOAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.connectorOAuthRequest)}):properties}function CfnConnectorProfileSlackConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("connectorOAuthRequest","ConnectorOAuthRequest",properties.ConnectorOAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.ConnectorOAuthRequest):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSnowflakeConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("password",cdk().requiredValidator)(properties.password)),errors.collect(cdk().propertyValidator("password",cdk().validateString)(properties.password)),errors.collect(cdk().propertyValidator("username",cdk().requiredValidator)(properties.username)),errors.collect(cdk().propertyValidator("username",cdk().validateString)(properties.username)),errors.wrap('supplied properties not correct for "SnowflakeConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileSnowflakeConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSnowflakeConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{Password:cdk().stringToCloudFormation(properties.password),Username:cdk().stringToCloudFormation(properties.username)}):properties}function CfnConnectorProfileSnowflakeConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("password","Password",properties.Password!=null?cfn_parse().FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("username","Username",properties.Username!=null?cfn_parse().FromCloudFormation.getString(properties.Username):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileDynatraceConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiToken",cdk().requiredValidator)(properties.apiToken)),errors.collect(cdk().propertyValidator("apiToken",cdk().validateString)(properties.apiToken)),errors.wrap('supplied properties not correct for "DynatraceConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileDynatraceConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileDynatraceConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{ApiToken:cdk().stringToCloudFormation(properties.apiToken)}):properties}function CfnConnectorProfileDynatraceConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiToken","ApiToken",properties.ApiToken!=null?cfn_parse().FromCloudFormation.getString(properties.ApiToken):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileZendeskConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientId",cdk().requiredValidator)(properties.clientId)),errors.collect(cdk().propertyValidator("clientId",cdk().validateString)(properties.clientId)),errors.collect(cdk().propertyValidator("clientSecret",cdk().requiredValidator)(properties.clientSecret)),errors.collect(cdk().propertyValidator("clientSecret",cdk().validateString)(properties.clientSecret)),errors.collect(cdk().propertyValidator("connectorOAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.connectorOAuthRequest)),errors.wrap('supplied properties not correct for "ZendeskConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileZendeskConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileZendeskConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientId:cdk().stringToCloudFormation(properties.clientId),ClientSecret:cdk().stringToCloudFormation(properties.clientSecret),ConnectorOAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.connectorOAuthRequest)}):properties}function CfnConnectorProfileZendeskConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientId","ClientId",properties.ClientId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientId):void 0),ret.addPropertyResult("clientSecret","ClientSecret",properties.ClientSecret!=null?cfn_parse().FromCloudFormation.getString(properties.ClientSecret):void 0),ret.addPropertyResult("connectorOAuthRequest","ConnectorOAuthRequest",properties.ConnectorOAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.ConnectorOAuthRequest):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileInforNexusConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessKeyId",cdk().requiredValidator)(properties.accessKeyId)),errors.collect(cdk().propertyValidator("accessKeyId",cdk().validateString)(properties.accessKeyId)),errors.collect(cdk().propertyValidator("datakey",cdk().requiredValidator)(properties.datakey)),errors.collect(cdk().propertyValidator("datakey",cdk().validateString)(properties.datakey)),errors.collect(cdk().propertyValidator("secretAccessKey",cdk().requiredValidator)(properties.secretAccessKey)),errors.collect(cdk().propertyValidator("secretAccessKey",cdk().validateString)(properties.secretAccessKey)),errors.collect(cdk().propertyValidator("userId",cdk().requiredValidator)(properties.userId)),errors.collect(cdk().propertyValidator("userId",cdk().validateString)(properties.userId)),errors.wrap('supplied properties not correct for "InforNexusConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileInforNexusConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileInforNexusConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{AccessKeyId:cdk().stringToCloudFormation(properties.accessKeyId),Datakey:cdk().stringToCloudFormation(properties.datakey),SecretAccessKey:cdk().stringToCloudFormation(properties.secretAccessKey),UserId:cdk().stringToCloudFormation(properties.userId)}):properties}function CfnConnectorProfileInforNexusConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessKeyId","AccessKeyId",properties.AccessKeyId!=null?cfn_parse().FromCloudFormation.getString(properties.AccessKeyId):void 0),ret.addPropertyResult("datakey","Datakey",properties.Datakey!=null?cfn_parse().FromCloudFormation.getString(properties.Datakey):void 0),ret.addPropertyResult("secretAccessKey","SecretAccessKey",properties.SecretAccessKey!=null?cfn_parse().FromCloudFormation.getString(properties.SecretAccessKey):void 0),ret.addPropertyResult("userId","UserId",properties.UserId!=null?cfn_parse().FromCloudFormation.getString(properties.UserId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSalesforceConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessToken",cdk().validateString)(properties.accessToken)),errors.collect(cdk().propertyValidator("clientCredentialsArn",cdk().validateString)(properties.clientCredentialsArn)),errors.collect(cdk().propertyValidator("connectorOAuthRequest",CfnConnectorProfileConnectorOAuthRequestPropertyValidator)(properties.connectorOAuthRequest)),errors.collect(cdk().propertyValidator("jwtToken",cdk().validateString)(properties.jwtToken)),errors.collect(cdk().propertyValidator("oAuth2GrantType",cdk().validateString)(properties.oAuth2GrantType)),errors.collect(cdk().propertyValidator("refreshToken",cdk().validateString)(properties.refreshToken)),errors.wrap('supplied properties not correct for "SalesforceConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileSalesforceConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSalesforceConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{AccessToken:cdk().stringToCloudFormation(properties.accessToken),ClientCredentialsArn:cdk().stringToCloudFormation(properties.clientCredentialsArn),ConnectorOAuthRequest:convertCfnConnectorProfileConnectorOAuthRequestPropertyToCloudFormation(properties.connectorOAuthRequest),JwtToken:cdk().stringToCloudFormation(properties.jwtToken),OAuth2GrantType:cdk().stringToCloudFormation(properties.oAuth2GrantType),RefreshToken:cdk().stringToCloudFormation(properties.refreshToken)}):properties}function CfnConnectorProfileSalesforceConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessToken","AccessToken",properties.AccessToken!=null?cfn_parse().FromCloudFormation.getString(properties.AccessToken):void 0),ret.addPropertyResult("clientCredentialsArn","ClientCredentialsArn",properties.ClientCredentialsArn!=null?cfn_parse().FromCloudFormation.getString(properties.ClientCredentialsArn):void 0),ret.addPropertyResult("connectorOAuthRequest","ConnectorOAuthRequest",properties.ConnectorOAuthRequest!=null?CfnConnectorProfileConnectorOAuthRequestPropertyFromCloudFormation(properties.ConnectorOAuthRequest):void 0),ret.addPropertyResult("jwtToken","JwtToken",properties.JwtToken!=null?cfn_parse().FromCloudFormation.getString(properties.JwtToken):void 0),ret.addPropertyResult("oAuth2GrantType","OAuth2GrantType",properties.OAuth2GrantType!=null?cfn_parse().FromCloudFormation.getString(properties.OAuth2GrantType):void 0),ret.addPropertyResult("refreshToken","RefreshToken",properties.RefreshToken!=null?cfn_parse().FromCloudFormation.getString(properties.RefreshToken):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileConnectorProfileCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("amplitude",CfnConnectorProfileAmplitudeConnectorProfileCredentialsPropertyValidator)(properties.amplitude)),errors.collect(cdk().propertyValidator("customConnector",CfnConnectorProfileCustomConnectorProfileCredentialsPropertyValidator)(properties.customConnector)),errors.collect(cdk().propertyValidator("datadog",CfnConnectorProfileDatadogConnectorProfileCredentialsPropertyValidator)(properties.datadog)),errors.collect(cdk().propertyValidator("dynatrace",CfnConnectorProfileDynatraceConnectorProfileCredentialsPropertyValidator)(properties.dynatrace)),errors.collect(cdk().propertyValidator("googleAnalytics",CfnConnectorProfileGoogleAnalyticsConnectorProfileCredentialsPropertyValidator)(properties.googleAnalytics)),errors.collect(cdk().propertyValidator("inforNexus",CfnConnectorProfileInforNexusConnectorProfileCredentialsPropertyValidator)(properties.inforNexus)),errors.collect(cdk().propertyValidator("marketo",CfnConnectorProfileMarketoConnectorProfileCredentialsPropertyValidator)(properties.marketo)),errors.collect(cdk().propertyValidator("pardot",CfnConnectorProfilePardotConnectorProfileCredentialsPropertyValidator)(properties.pardot)),errors.collect(cdk().propertyValidator("redshift",CfnConnectorProfileRedshiftConnectorProfileCredentialsPropertyValidator)(properties.redshift)),errors.collect(cdk().propertyValidator("sapoData",CfnConnectorProfileSAPODataConnectorProfileCredentialsPropertyValidator)(properties.sapoData)),errors.collect(cdk().propertyValidator("salesforce",CfnConnectorProfileSalesforceConnectorProfileCredentialsPropertyValidator)(properties.salesforce)),errors.collect(cdk().propertyValidator("serviceNow",CfnConnectorProfileServiceNowConnectorProfileCredentialsPropertyValidator)(properties.serviceNow)),errors.collect(cdk().propertyValidator("singular",CfnConnectorProfileSingularConnectorProfileCredentialsPropertyValidator)(properties.singular)),errors.collect(cdk().propertyValidator("slack",CfnConnectorProfileSlackConnectorProfileCredentialsPropertyValidator)(properties.slack)),errors.collect(cdk().propertyValidator("snowflake",CfnConnectorProfileSnowflakeConnectorProfileCredentialsPropertyValidator)(properties.snowflake)),errors.collect(cdk().propertyValidator("trendmicro",CfnConnectorProfileTrendmicroConnectorProfileCredentialsPropertyValidator)(properties.trendmicro)),errors.collect(cdk().propertyValidator("veeva",CfnConnectorProfileVeevaConnectorProfileCredentialsPropertyValidator)(properties.veeva)),errors.collect(cdk().propertyValidator("zendesk",CfnConnectorProfileZendeskConnectorProfileCredentialsPropertyValidator)(properties.zendesk)),errors.wrap('supplied properties not correct for "ConnectorProfileCredentialsProperty"')}function convertCfnConnectorProfileConnectorProfileCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileConnectorProfileCredentialsPropertyValidator(properties).assertSuccess(),{Amplitude:convertCfnConnectorProfileAmplitudeConnectorProfileCredentialsPropertyToCloudFormation(properties.amplitude),CustomConnector:convertCfnConnectorProfileCustomConnectorProfileCredentialsPropertyToCloudFormation(properties.customConnector),Datadog:convertCfnConnectorProfileDatadogConnectorProfileCredentialsPropertyToCloudFormation(properties.datadog),Dynatrace:convertCfnConnectorProfileDynatraceConnectorProfileCredentialsPropertyToCloudFormation(properties.dynatrace),GoogleAnalytics:convertCfnConnectorProfileGoogleAnalyticsConnectorProfileCredentialsPropertyToCloudFormation(properties.googleAnalytics),InforNexus:convertCfnConnectorProfileInforNexusConnectorProfileCredentialsPropertyToCloudFormation(properties.inforNexus),Marketo:convertCfnConnectorProfileMarketoConnectorProfileCredentialsPropertyToCloudFormation(properties.marketo),Pardot:convertCfnConnectorProfilePardotConnectorProfileCredentialsPropertyToCloudFormation(properties.pardot),Redshift:convertCfnConnectorProfileRedshiftConnectorProfileCredentialsPropertyToCloudFormation(properties.redshift),SAPOData:convertCfnConnectorProfileSAPODataConnectorProfileCredentialsPropertyToCloudFormation(properties.sapoData),Salesforce:convertCfnConnectorProfileSalesforceConnectorProfileCredentialsPropertyToCloudFormation(properties.salesforce),ServiceNow:convertCfnConnectorProfileServiceNowConnectorProfileCredentialsPropertyToCloudFormation(properties.serviceNow),Singular:convertCfnConnectorProfileSingularConnectorProfileCredentialsPropertyToCloudFormation(properties.singular),Slack:convertCfnConnectorProfileSlackConnectorProfileCredentialsPropertyToCloudFormation(properties.slack),Snowflake:convertCfnConnectorProfileSnowflakeConnectorProfileCredentialsPropertyToCloudFormation(properties.snowflake),Trendmicro:convertCfnConnectorProfileTrendmicroConnectorProfileCredentialsPropertyToCloudFormation(properties.trendmicro),Veeva:convertCfnConnectorProfileVeevaConnectorProfileCredentialsPropertyToCloudFormation(properties.veeva),Zendesk:convertCfnConnectorProfileZendeskConnectorProfileCredentialsPropertyToCloudFormation(properties.zendesk)}):properties}function CfnConnectorProfileConnectorProfileCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("amplitude","Amplitude",properties.Amplitude!=null?CfnConnectorProfileAmplitudeConnectorProfileCredentialsPropertyFromCloudFormation(properties.Amplitude):void 0),ret.addPropertyResult("customConnector","CustomConnector",properties.CustomConnector!=null?CfnConnectorProfileCustomConnectorProfileCredentialsPropertyFromCloudFormation(properties.CustomConnector):void 0),ret.addPropertyResult("datadog","Datadog",properties.Datadog!=null?CfnConnectorProfileDatadogConnectorProfileCredentialsPropertyFromCloudFormation(properties.Datadog):void 0),ret.addPropertyResult("dynatrace","Dynatrace",properties.Dynatrace!=null?CfnConnectorProfileDynatraceConnectorProfileCredentialsPropertyFromCloudFormation(properties.Dynatrace):void 0),ret.addPropertyResult("googleAnalytics","GoogleAnalytics",properties.GoogleAnalytics!=null?CfnConnectorProfileGoogleAnalyticsConnectorProfileCredentialsPropertyFromCloudFormation(properties.GoogleAnalytics):void 0),ret.addPropertyResult("inforNexus","InforNexus",properties.InforNexus!=null?CfnConnectorProfileInforNexusConnectorProfileCredentialsPropertyFromCloudFormation(properties.InforNexus):void 0),ret.addPropertyResult("marketo","Marketo",properties.Marketo!=null?CfnConnectorProfileMarketoConnectorProfileCredentialsPropertyFromCloudFormation(properties.Marketo):void 0),ret.addPropertyResult("pardot","Pardot",properties.Pardot!=null?CfnConnectorProfilePardotConnectorProfileCredentialsPropertyFromCloudFormation(properties.Pardot):void 0),ret.addPropertyResult("redshift","Redshift",properties.Redshift!=null?CfnConnectorProfileRedshiftConnectorProfileCredentialsPropertyFromCloudFormation(properties.Redshift):void 0),ret.addPropertyResult("salesforce","Salesforce",properties.Salesforce!=null?CfnConnectorProfileSalesforceConnectorProfileCredentialsPropertyFromCloudFormation(properties.Salesforce):void 0),ret.addPropertyResult("sapoData","SAPOData",properties.SAPOData!=null?CfnConnectorProfileSAPODataConnectorProfileCredentialsPropertyFromCloudFormation(properties.SAPOData):void 0),ret.addPropertyResult("serviceNow","ServiceNow",properties.ServiceNow!=null?CfnConnectorProfileServiceNowConnectorProfileCredentialsPropertyFromCloudFormation(properties.ServiceNow):void 0),ret.addPropertyResult("singular","Singular",properties.Singular!=null?CfnConnectorProfileSingularConnectorProfileCredentialsPropertyFromCloudFormation(properties.Singular):void 0),ret.addPropertyResult("slack","Slack",properties.Slack!=null?CfnConnectorProfileSlackConnectorProfileCredentialsPropertyFromCloudFormation(properties.Slack):void 0),ret.addPropertyResult("snowflake","Snowflake",properties.Snowflake!=null?CfnConnectorProfileSnowflakeConnectorProfileCredentialsPropertyFromCloudFormation(properties.Snowflake):void 0),ret.addPropertyResult("trendmicro","Trendmicro",properties.Trendmicro!=null?CfnConnectorProfileTrendmicroConnectorProfileCredentialsPropertyFromCloudFormation(properties.Trendmicro):void 0),ret.addPropertyResult("veeva","Veeva",properties.Veeva!=null?CfnConnectorProfileVeevaConnectorProfileCredentialsPropertyFromCloudFormation(properties.Veeva):void 0),ret.addPropertyResult("zendesk","Zendesk",properties.Zendesk!=null?CfnConnectorProfileZendeskConnectorProfileCredentialsPropertyFromCloudFormation(properties.Zendesk):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileServiceNowConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "ServiceNowConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileServiceNowConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileServiceNowConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileServiceNowConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileOAuth2PropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("oAuth2GrantType",cdk().validateString)(properties.oAuth2GrantType)),errors.collect(cdk().propertyValidator("tokenUrl",cdk().validateString)(properties.tokenUrl)),errors.collect(cdk().propertyValidator("tokenUrlCustomProperties",cdk().hashValidator(cdk().validateString))(properties.tokenUrlCustomProperties)),errors.wrap('supplied properties not correct for "OAuth2PropertiesProperty"')}function convertCfnConnectorProfileOAuth2PropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileOAuth2PropertiesPropertyValidator(properties).assertSuccess(),{OAuth2GrantType:cdk().stringToCloudFormation(properties.oAuth2GrantType),TokenUrl:cdk().stringToCloudFormation(properties.tokenUrl),TokenUrlCustomProperties:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tokenUrlCustomProperties)}):properties}function CfnConnectorProfileOAuth2PropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("oAuth2GrantType","OAuth2GrantType",properties.OAuth2GrantType!=null?cfn_parse().FromCloudFormation.getString(properties.OAuth2GrantType):void 0),ret.addPropertyResult("tokenUrl","TokenUrl",properties.TokenUrl!=null?cfn_parse().FromCloudFormation.getString(properties.TokenUrl):void 0),ret.addPropertyResult("tokenUrlCustomProperties","TokenUrlCustomProperties",properties.TokenUrlCustomProperties!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.TokenUrlCustomProperties):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileCustomConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("oAuth2Properties",CfnConnectorProfileOAuth2PropertiesPropertyValidator)(properties.oAuth2Properties)),errors.collect(cdk().propertyValidator("profileProperties",cdk().hashValidator(cdk().validateString))(properties.profileProperties)),errors.wrap('supplied properties not correct for "CustomConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileCustomConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileCustomConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{OAuth2Properties:convertCfnConnectorProfileOAuth2PropertiesPropertyToCloudFormation(properties.oAuth2Properties),ProfileProperties:cdk().hashMapper(cdk().stringToCloudFormation)(properties.profileProperties)}):properties}function CfnConnectorProfileCustomConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("oAuth2Properties","OAuth2Properties",properties.OAuth2Properties!=null?CfnConnectorProfileOAuth2PropertiesPropertyFromCloudFormation(properties.OAuth2Properties):void 0),ret.addPropertyResult("profileProperties","ProfileProperties",properties.ProfileProperties!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.ProfileProperties):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileOAuthPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("authCodeUrl",cdk().validateString)(properties.authCodeUrl)),errors.collect(cdk().propertyValidator("oAuthScopes",cdk().listValidator(cdk().validateString))(properties.oAuthScopes)),errors.collect(cdk().propertyValidator("tokenUrl",cdk().validateString)(properties.tokenUrl)),errors.wrap('supplied properties not correct for "OAuthPropertiesProperty"')}function convertCfnConnectorProfileOAuthPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileOAuthPropertiesPropertyValidator(properties).assertSuccess(),{AuthCodeUrl:cdk().stringToCloudFormation(properties.authCodeUrl),OAuthScopes:cdk().listMapper(cdk().stringToCloudFormation)(properties.oAuthScopes),TokenUrl:cdk().stringToCloudFormation(properties.tokenUrl)}):properties}function CfnConnectorProfileOAuthPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("authCodeUrl","AuthCodeUrl",properties.AuthCodeUrl!=null?cfn_parse().FromCloudFormation.getString(properties.AuthCodeUrl):void 0),ret.addPropertyResult("oAuthScopes","OAuthScopes",properties.OAuthScopes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.OAuthScopes):void 0),ret.addPropertyResult("tokenUrl","TokenUrl",properties.TokenUrl!=null?cfn_parse().FromCloudFormation.getString(properties.TokenUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSAPODataConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("applicationHostUrl",cdk().validateString)(properties.applicationHostUrl)),errors.collect(cdk().propertyValidator("applicationServicePath",cdk().validateString)(properties.applicationServicePath)),errors.collect(cdk().propertyValidator("clientNumber",cdk().validateString)(properties.clientNumber)),errors.collect(cdk().propertyValidator("disableSso",cdk().validateBoolean)(properties.disableSso)),errors.collect(cdk().propertyValidator("logonLanguage",cdk().validateString)(properties.logonLanguage)),errors.collect(cdk().propertyValidator("oAuthProperties",CfnConnectorProfileOAuthPropertiesPropertyValidator)(properties.oAuthProperties)),errors.collect(cdk().propertyValidator("portNumber",cdk().validateNumber)(properties.portNumber)),errors.collect(cdk().propertyValidator("privateLinkServiceName",cdk().validateString)(properties.privateLinkServiceName)),errors.wrap('supplied properties not correct for "SAPODataConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileSAPODataConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSAPODataConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{ApplicationHostUrl:cdk().stringToCloudFormation(properties.applicationHostUrl),ApplicationServicePath:cdk().stringToCloudFormation(properties.applicationServicePath),ClientNumber:cdk().stringToCloudFormation(properties.clientNumber),DisableSSO:cdk().booleanToCloudFormation(properties.disableSso),LogonLanguage:cdk().stringToCloudFormation(properties.logonLanguage),OAuthProperties:convertCfnConnectorProfileOAuthPropertiesPropertyToCloudFormation(properties.oAuthProperties),PortNumber:cdk().numberToCloudFormation(properties.portNumber),PrivateLinkServiceName:cdk().stringToCloudFormation(properties.privateLinkServiceName)}):properties}function CfnConnectorProfileSAPODataConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("applicationHostUrl","ApplicationHostUrl",properties.ApplicationHostUrl!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationHostUrl):void 0),ret.addPropertyResult("applicationServicePath","ApplicationServicePath",properties.ApplicationServicePath!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationServicePath):void 0),ret.addPropertyResult("clientNumber","ClientNumber",properties.ClientNumber!=null?cfn_parse().FromCloudFormation.getString(properties.ClientNumber):void 0),ret.addPropertyResult("disableSso","DisableSSO",properties.DisableSSO!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DisableSSO):void 0),ret.addPropertyResult("logonLanguage","LogonLanguage",properties.LogonLanguage!=null?cfn_parse().FromCloudFormation.getString(properties.LogonLanguage):void 0),ret.addPropertyResult("oAuthProperties","OAuthProperties",properties.OAuthProperties!=null?CfnConnectorProfileOAuthPropertiesPropertyFromCloudFormation(properties.OAuthProperties):void 0),ret.addPropertyResult("portNumber","PortNumber",properties.PortNumber!=null?cfn_parse().FromCloudFormation.getNumber(properties.PortNumber):void 0),ret.addPropertyResult("privateLinkServiceName","PrivateLinkServiceName",properties.PrivateLinkServiceName!=null?cfn_parse().FromCloudFormation.getString(properties.PrivateLinkServiceName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfilePardotConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("businessUnitId",cdk().requiredValidator)(properties.businessUnitId)),errors.collect(cdk().propertyValidator("businessUnitId",cdk().validateString)(properties.businessUnitId)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("isSandboxEnvironment",cdk().validateBoolean)(properties.isSandboxEnvironment)),errors.wrap('supplied properties not correct for "PardotConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfilePardotConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfilePardotConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{BusinessUnitId:cdk().stringToCloudFormation(properties.businessUnitId),InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl),IsSandboxEnvironment:cdk().booleanToCloudFormation(properties.isSandboxEnvironment)}):properties}function CfnConnectorProfilePardotConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("businessUnitId","BusinessUnitId",properties.BusinessUnitId!=null?cfn_parse().FromCloudFormation.getString(properties.BusinessUnitId):void 0),ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addPropertyResult("isSandboxEnvironment","IsSandboxEnvironment",properties.IsSandboxEnvironment!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IsSandboxEnvironment):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileVeevaConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "VeevaConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileVeevaConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileVeevaConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileVeevaConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileDatadogConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "DatadogConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileDatadogConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileDatadogConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileDatadogConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileMarketoConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "MarketoConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileMarketoConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileMarketoConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileMarketoConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileRedshiftConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketName",cdk().requiredValidator)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("clusterIdentifier",cdk().validateString)(properties.clusterIdentifier)),errors.collect(cdk().propertyValidator("dataApiRoleArn",cdk().validateString)(properties.dataApiRoleArn)),errors.collect(cdk().propertyValidator("databaseName",cdk().validateString)(properties.databaseName)),errors.collect(cdk().propertyValidator("databaseUrl",cdk().validateString)(properties.databaseUrl)),errors.collect(cdk().propertyValidator("isRedshiftServerless",cdk().validateBoolean)(properties.isRedshiftServerless)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("workgroupName",cdk().validateString)(properties.workgroupName)),errors.wrap('supplied properties not correct for "RedshiftConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileRedshiftConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileRedshiftConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{BucketName:cdk().stringToCloudFormation(properties.bucketName),BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),ClusterIdentifier:cdk().stringToCloudFormation(properties.clusterIdentifier),DataApiRoleArn:cdk().stringToCloudFormation(properties.dataApiRoleArn),DatabaseName:cdk().stringToCloudFormation(properties.databaseName),DatabaseUrl:cdk().stringToCloudFormation(properties.databaseUrl),IsRedshiftServerless:cdk().booleanToCloudFormation(properties.isRedshiftServerless),RoleArn:cdk().stringToCloudFormation(properties.roleArn),WorkgroupName:cdk().stringToCloudFormation(properties.workgroupName)}):properties}function CfnConnectorProfileRedshiftConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",properties.ClusterIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.ClusterIdentifier):void 0),ret.addPropertyResult("dataApiRoleArn","DataApiRoleArn",properties.DataApiRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.DataApiRoleArn):void 0),ret.addPropertyResult("databaseName","DatabaseName",properties.DatabaseName!=null?cfn_parse().FromCloudFormation.getString(properties.DatabaseName):void 0),ret.addPropertyResult("databaseUrl","DatabaseUrl",properties.DatabaseUrl!=null?cfn_parse().FromCloudFormation.getString(properties.DatabaseUrl):void 0),ret.addPropertyResult("isRedshiftServerless","IsRedshiftServerless",properties.IsRedshiftServerless!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IsRedshiftServerless):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("workgroupName","WorkgroupName",properties.WorkgroupName!=null?cfn_parse().FromCloudFormation.getString(properties.WorkgroupName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSlackConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "SlackConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileSlackConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSlackConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileSlackConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSnowflakeConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accountName",cdk().validateString)(properties.accountName)),errors.collect(cdk().propertyValidator("bucketName",cdk().requiredValidator)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("privateLinkServiceName",cdk().validateString)(properties.privateLinkServiceName)),errors.collect(cdk().propertyValidator("region",cdk().validateString)(properties.region)),errors.collect(cdk().propertyValidator("stage",cdk().requiredValidator)(properties.stage)),errors.collect(cdk().propertyValidator("stage",cdk().validateString)(properties.stage)),errors.collect(cdk().propertyValidator("warehouse",cdk().requiredValidator)(properties.warehouse)),errors.collect(cdk().propertyValidator("warehouse",cdk().validateString)(properties.warehouse)),errors.wrap('supplied properties not correct for "SnowflakeConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileSnowflakeConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSnowflakeConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{AccountName:cdk().stringToCloudFormation(properties.accountName),BucketName:cdk().stringToCloudFormation(properties.bucketName),BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),PrivateLinkServiceName:cdk().stringToCloudFormation(properties.privateLinkServiceName),Region:cdk().stringToCloudFormation(properties.region),Stage:cdk().stringToCloudFormation(properties.stage),Warehouse:cdk().stringToCloudFormation(properties.warehouse)}):properties}function CfnConnectorProfileSnowflakeConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accountName","AccountName",properties.AccountName!=null?cfn_parse().FromCloudFormation.getString(properties.AccountName):void 0),ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("privateLinkServiceName","PrivateLinkServiceName",properties.PrivateLinkServiceName!=null?cfn_parse().FromCloudFormation.getString(properties.PrivateLinkServiceName):void 0),ret.addPropertyResult("region","Region",properties.Region!=null?cfn_parse().FromCloudFormation.getString(properties.Region):void 0),ret.addPropertyResult("stage","Stage",properties.Stage!=null?cfn_parse().FromCloudFormation.getString(properties.Stage):void 0),ret.addPropertyResult("warehouse","Warehouse",properties.Warehouse!=null?cfn_parse().FromCloudFormation.getString(properties.Warehouse):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileDynatraceConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "DynatraceConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileDynatraceConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileDynatraceConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileDynatraceConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileZendeskConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "ZendeskConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileZendeskConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileZendeskConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileZendeskConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileInforNexusConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().requiredValidator)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.wrap('supplied properties not correct for "InforNexusConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileInforNexusConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileInforNexusConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl)}):properties}function CfnConnectorProfileInforNexusConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileSalesforceConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("instanceUrl",cdk().validateString)(properties.instanceUrl)),errors.collect(cdk().propertyValidator("isSandboxEnvironment",cdk().validateBoolean)(properties.isSandboxEnvironment)),errors.collect(cdk().propertyValidator("usePrivateLinkForMetadataAndAuthorization",cdk().validateBoolean)(properties.usePrivateLinkForMetadataAndAuthorization)),errors.wrap('supplied properties not correct for "SalesforceConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileSalesforceConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileSalesforceConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{InstanceUrl:cdk().stringToCloudFormation(properties.instanceUrl),isSandboxEnvironment:cdk().booleanToCloudFormation(properties.isSandboxEnvironment),usePrivateLinkForMetadataAndAuthorization:cdk().booleanToCloudFormation(properties.usePrivateLinkForMetadataAndAuthorization)}):properties}function CfnConnectorProfileSalesforceConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("instanceUrl","InstanceUrl",properties.InstanceUrl!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceUrl):void 0),ret.addPropertyResult("isSandboxEnvironment","isSandboxEnvironment",properties.isSandboxEnvironment!=null?cfn_parse().FromCloudFormation.getBoolean(properties.isSandboxEnvironment):void 0),ret.addPropertyResult("usePrivateLinkForMetadataAndAuthorization","usePrivateLinkForMetadataAndAuthorization",properties.usePrivateLinkForMetadataAndAuthorization!=null?cfn_parse().FromCloudFormation.getBoolean(properties.usePrivateLinkForMetadataAndAuthorization):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileConnectorProfilePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("customConnector",CfnConnectorProfileCustomConnectorProfilePropertiesPropertyValidator)(properties.customConnector)),errors.collect(cdk().propertyValidator("datadog",CfnConnectorProfileDatadogConnectorProfilePropertiesPropertyValidator)(properties.datadog)),errors.collect(cdk().propertyValidator("dynatrace",CfnConnectorProfileDynatraceConnectorProfilePropertiesPropertyValidator)(properties.dynatrace)),errors.collect(cdk().propertyValidator("inforNexus",CfnConnectorProfileInforNexusConnectorProfilePropertiesPropertyValidator)(properties.inforNexus)),errors.collect(cdk().propertyValidator("marketo",CfnConnectorProfileMarketoConnectorProfilePropertiesPropertyValidator)(properties.marketo)),errors.collect(cdk().propertyValidator("pardot",CfnConnectorProfilePardotConnectorProfilePropertiesPropertyValidator)(properties.pardot)),errors.collect(cdk().propertyValidator("redshift",CfnConnectorProfileRedshiftConnectorProfilePropertiesPropertyValidator)(properties.redshift)),errors.collect(cdk().propertyValidator("sapoData",CfnConnectorProfileSAPODataConnectorProfilePropertiesPropertyValidator)(properties.sapoData)),errors.collect(cdk().propertyValidator("salesforce",CfnConnectorProfileSalesforceConnectorProfilePropertiesPropertyValidator)(properties.salesforce)),errors.collect(cdk().propertyValidator("serviceNow",CfnConnectorProfileServiceNowConnectorProfilePropertiesPropertyValidator)(properties.serviceNow)),errors.collect(cdk().propertyValidator("slack",CfnConnectorProfileSlackConnectorProfilePropertiesPropertyValidator)(properties.slack)),errors.collect(cdk().propertyValidator("snowflake",CfnConnectorProfileSnowflakeConnectorProfilePropertiesPropertyValidator)(properties.snowflake)),errors.collect(cdk().propertyValidator("veeva",CfnConnectorProfileVeevaConnectorProfilePropertiesPropertyValidator)(properties.veeva)),errors.collect(cdk().propertyValidator("zendesk",CfnConnectorProfileZendeskConnectorProfilePropertiesPropertyValidator)(properties.zendesk)),errors.wrap('supplied properties not correct for "ConnectorProfilePropertiesProperty"')}function convertCfnConnectorProfileConnectorProfilePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileConnectorProfilePropertiesPropertyValidator(properties).assertSuccess(),{CustomConnector:convertCfnConnectorProfileCustomConnectorProfilePropertiesPropertyToCloudFormation(properties.customConnector),Datadog:convertCfnConnectorProfileDatadogConnectorProfilePropertiesPropertyToCloudFormation(properties.datadog),Dynatrace:convertCfnConnectorProfileDynatraceConnectorProfilePropertiesPropertyToCloudFormation(properties.dynatrace),InforNexus:convertCfnConnectorProfileInforNexusConnectorProfilePropertiesPropertyToCloudFormation(properties.inforNexus),Marketo:convertCfnConnectorProfileMarketoConnectorProfilePropertiesPropertyToCloudFormation(properties.marketo),Pardot:convertCfnConnectorProfilePardotConnectorProfilePropertiesPropertyToCloudFormation(properties.pardot),Redshift:convertCfnConnectorProfileRedshiftConnectorProfilePropertiesPropertyToCloudFormation(properties.redshift),SAPOData:convertCfnConnectorProfileSAPODataConnectorProfilePropertiesPropertyToCloudFormation(properties.sapoData),Salesforce:convertCfnConnectorProfileSalesforceConnectorProfilePropertiesPropertyToCloudFormation(properties.salesforce),ServiceNow:convertCfnConnectorProfileServiceNowConnectorProfilePropertiesPropertyToCloudFormation(properties.serviceNow),Slack:convertCfnConnectorProfileSlackConnectorProfilePropertiesPropertyToCloudFormation(properties.slack),Snowflake:convertCfnConnectorProfileSnowflakeConnectorProfilePropertiesPropertyToCloudFormation(properties.snowflake),Veeva:convertCfnConnectorProfileVeevaConnectorProfilePropertiesPropertyToCloudFormation(properties.veeva),Zendesk:convertCfnConnectorProfileZendeskConnectorProfilePropertiesPropertyToCloudFormation(properties.zendesk)}):properties}function CfnConnectorProfileConnectorProfilePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("customConnector","CustomConnector",properties.CustomConnector!=null?CfnConnectorProfileCustomConnectorProfilePropertiesPropertyFromCloudFormation(properties.CustomConnector):void 0),ret.addPropertyResult("datadog","Datadog",properties.Datadog!=null?CfnConnectorProfileDatadogConnectorProfilePropertiesPropertyFromCloudFormation(properties.Datadog):void 0),ret.addPropertyResult("dynatrace","Dynatrace",properties.Dynatrace!=null?CfnConnectorProfileDynatraceConnectorProfilePropertiesPropertyFromCloudFormation(properties.Dynatrace):void 0),ret.addPropertyResult("inforNexus","InforNexus",properties.InforNexus!=null?CfnConnectorProfileInforNexusConnectorProfilePropertiesPropertyFromCloudFormation(properties.InforNexus):void 0),ret.addPropertyResult("marketo","Marketo",properties.Marketo!=null?CfnConnectorProfileMarketoConnectorProfilePropertiesPropertyFromCloudFormation(properties.Marketo):void 0),ret.addPropertyResult("pardot","Pardot",properties.Pardot!=null?CfnConnectorProfilePardotConnectorProfilePropertiesPropertyFromCloudFormation(properties.Pardot):void 0),ret.addPropertyResult("redshift","Redshift",properties.Redshift!=null?CfnConnectorProfileRedshiftConnectorProfilePropertiesPropertyFromCloudFormation(properties.Redshift):void 0),ret.addPropertyResult("salesforce","Salesforce",properties.Salesforce!=null?CfnConnectorProfileSalesforceConnectorProfilePropertiesPropertyFromCloudFormation(properties.Salesforce):void 0),ret.addPropertyResult("sapoData","SAPOData",properties.SAPOData!=null?CfnConnectorProfileSAPODataConnectorProfilePropertiesPropertyFromCloudFormation(properties.SAPOData):void 0),ret.addPropertyResult("serviceNow","ServiceNow",properties.ServiceNow!=null?CfnConnectorProfileServiceNowConnectorProfilePropertiesPropertyFromCloudFormation(properties.ServiceNow):void 0),ret.addPropertyResult("slack","Slack",properties.Slack!=null?CfnConnectorProfileSlackConnectorProfilePropertiesPropertyFromCloudFormation(properties.Slack):void 0),ret.addPropertyResult("snowflake","Snowflake",properties.Snowflake!=null?CfnConnectorProfileSnowflakeConnectorProfilePropertiesPropertyFromCloudFormation(properties.Snowflake):void 0),ret.addPropertyResult("veeva","Veeva",properties.Veeva!=null?CfnConnectorProfileVeevaConnectorProfilePropertiesPropertyFromCloudFormation(properties.Veeva):void 0),ret.addPropertyResult("zendesk","Zendesk",properties.Zendesk!=null?CfnConnectorProfileZendeskConnectorProfilePropertiesPropertyFromCloudFormation(properties.Zendesk):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfileConnectorProfileConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("connectorProfileCredentials",CfnConnectorProfileConnectorProfileCredentialsPropertyValidator)(properties.connectorProfileCredentials)),errors.collect(cdk().propertyValidator("connectorProfileProperties",CfnConnectorProfileConnectorProfilePropertiesPropertyValidator)(properties.connectorProfileProperties)),errors.wrap('supplied properties not correct for "ConnectorProfileConfigProperty"')}function convertCfnConnectorProfileConnectorProfileConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfileConnectorProfileConfigPropertyValidator(properties).assertSuccess(),{ConnectorProfileCredentials:convertCfnConnectorProfileConnectorProfileCredentialsPropertyToCloudFormation(properties.connectorProfileCredentials),ConnectorProfileProperties:convertCfnConnectorProfileConnectorProfilePropertiesPropertyToCloudFormation(properties.connectorProfileProperties)}):properties}function CfnConnectorProfileConnectorProfileConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("connectorProfileCredentials","ConnectorProfileCredentials",properties.ConnectorProfileCredentials!=null?CfnConnectorProfileConnectorProfileCredentialsPropertyFromCloudFormation(properties.ConnectorProfileCredentials):void 0),ret.addPropertyResult("connectorProfileProperties","ConnectorProfileProperties",properties.ConnectorProfileProperties!=null?CfnConnectorProfileConnectorProfilePropertiesPropertyFromCloudFormation(properties.ConnectorProfileProperties):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectorProfilePropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("connectionMode",cdk().requiredValidator)(properties.connectionMode)),errors.collect(cdk().propertyValidator("connectionMode",cdk().validateString)(properties.connectionMode)),errors.collect(cdk().propertyValidator("connectorLabel",cdk().validateString)(properties.connectorLabel)),errors.collect(cdk().propertyValidator("connectorProfileConfig",CfnConnectorProfileConnectorProfileConfigPropertyValidator)(properties.connectorProfileConfig)),errors.collect(cdk().propertyValidator("connectorProfileName",cdk().requiredValidator)(properties.connectorProfileName)),errors.collect(cdk().propertyValidator("connectorProfileName",cdk().validateString)(properties.connectorProfileName)),errors.collect(cdk().propertyValidator("connectorType",cdk().requiredValidator)(properties.connectorType)),errors.collect(cdk().propertyValidator("connectorType",cdk().validateString)(properties.connectorType)),errors.collect(cdk().propertyValidator("kmsArn",cdk().validateString)(properties.kmsArn)),errors.wrap('supplied properties not correct for "CfnConnectorProfileProps"')}function convertCfnConnectorProfilePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectorProfilePropsValidator(properties).assertSuccess(),{ConnectionMode:cdk().stringToCloudFormation(properties.connectionMode),ConnectorLabel:cdk().stringToCloudFormation(properties.connectorLabel),ConnectorProfileConfig:convertCfnConnectorProfileConnectorProfileConfigPropertyToCloudFormation(properties.connectorProfileConfig),ConnectorProfileName:cdk().stringToCloudFormation(properties.connectorProfileName),ConnectorType:cdk().stringToCloudFormation(properties.connectorType),KMSArn:cdk().stringToCloudFormation(properties.kmsArn)}):properties}function CfnConnectorProfilePropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("connectionMode","ConnectionMode",properties.ConnectionMode!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectionMode):void 0),ret.addPropertyResult("connectorLabel","ConnectorLabel",properties.ConnectorLabel!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorLabel):void 0),ret.addPropertyResult("connectorProfileConfig","ConnectorProfileConfig",properties.ConnectorProfileConfig!=null?CfnConnectorProfileConnectorProfileConfigPropertyFromCloudFormation(properties.ConnectorProfileConfig):void 0),ret.addPropertyResult("connectorProfileName","ConnectorProfileName",properties.ConnectorProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorProfileName):void 0),ret.addPropertyResult("connectorType","ConnectorType",properties.ConnectorType!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorType):void 0),ret.addPropertyResult("kmsArn","KMSArn",properties.KMSArn!=null?cfn_parse().FromCloudFormation.getString(properties.KMSArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFlow extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_appflow.CfnFlow",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::AppFlow::Flow";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFlowPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnFlow(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 isCfnFlow(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnFlow.CFN_RESOURCE_TYPE_NAME}static fromFlowArn(scope,id,arn){class Import extends cdk().Resource{flowRef;constructor(scope2,id2,arn2){super(scope2,id2,{environmentFromArn:arn2});const variables=new(cfn_parse()).TemplateString("arn:${Partition}:appflow:${Region}:${Account}:flow/${FlowName}").parse(arn2);this.flowRef={flowName:variables.FlowName,flowArn:arn2}}}return new Import(scope,id,arn)}static fromFlowName(scope,id,flowName){class Import extends cdk().Resource{flowRef;constructor(scope2,id2,flowName2){const arn=new(cfn_parse()).TemplateString("arn:${Partition}:appflow:${Region}:${Account}:flow/${FlowName}").interpolate({Partition:cdk().Stack.of(scope2).partition,Region:cdk().Stack.of(scope2).region,Account:cdk().Stack.of(scope2).account,FlowName:flowName2});super(scope2,id2,{environmentFromArn:arn}),this.flowRef={flowName:flowName2,flowArn:arn}}}return new Import(scope,id,flowName)}static arnForFlow(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_appflow_IFlowRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForFlow),error}return resource.flowRef.flowArn}_description;_destinationFlowConfigList;_flowName;_flowStatus;_kmsArn;_metadataCatalogConfig;_sourceFlowConfig;tags;_tagsRaw;_tasks;_triggerConfig;cfnPropertyNames={description:"Description",destinationFlowConfigList:"DestinationFlowConfigList",flowName:"FlowName",flowStatus:"FlowStatus",kmsArn:"KMSArn",metadataCatalogConfig:"MetadataCatalogConfig",sourceFlowConfig:"SourceFlowConfig",tags:"Tags",tasks:"Tasks",triggerConfig:"TriggerConfig"};constructor(scope,id,props){super(scope,id,{type:CfnFlow.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appflow_CfnFlowProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFlow),error}cdk().requireProperty(props,"destinationFlowConfigList",this),cdk().requireProperty(props,"flowName",this),cdk().requireProperty(props,"sourceFlowConfig",this),cdk().requireProperty(props,"tasks",this),cdk().requireProperty(props,"triggerConfig",this),this._description=props.description,this._destinationFlowConfigList=props.destinationFlowConfigList,this._flowName=props.flowName,this._flowStatus=props.flowStatus,this._kmsArn=cdk().getRefProperty(props.kmsArn?.keyRef,"keyArn")??cdk().ensureStringOrUndefined(props.kmsArn,"kmsArn","kms.IKeyRef | string"),this._metadataCatalogConfig=props.metadataCatalogConfig,this._sourceFlowConfig=props.sourceFlowConfig,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::AppFlow::Flow",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._tasks=props.tasks,this._triggerConfig=props.triggerConfig}get flowRef(){return{flowName:this.ref,flowArn:this.attrFlowArn}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get destinationFlowConfigList(){return this._destinationFlowConfigList}set destinationFlowConfigList(value){cdk().traceProperty(this.node,"DestinationFlowConfigList"),this._destinationFlowConfigList=value}get flowName(){return this._flowName}set flowName(value){cdk().traceProperty(this.node,"FlowName"),this._flowName=value}get flowStatus(){return this._flowStatus}set flowStatus(value){cdk().traceProperty(this.node,"FlowStatus"),this._flowStatus=value}get kmsArn(){return this._kmsArn}set kmsArn(value){cdk().traceProperty(this.node,"KMSArn"),this._kmsArn=value}get metadataCatalogConfig(){return this._metadataCatalogConfig}set metadataCatalogConfig(value){cdk().traceProperty(this.node,"MetadataCatalogConfig"),this._metadataCatalogConfig=value}get sourceFlowConfig(){return this._sourceFlowConfig}set sourceFlowConfig(value){cdk().traceProperty(this.node,"SourceFlowConfig"),this._sourceFlowConfig=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get tasks(){return this._tasks}set tasks(value){cdk().traceProperty(this.node,"Tasks"),this._tasks=value}get triggerConfig(){return this._triggerConfig}set triggerConfig(value){cdk().traceProperty(this.node,"TriggerConfig"),this._triggerConfig=value}get attrFlowArn(){return cdk().Token.asString(this.getAtt("FlowArn",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{description:this._description,destinationFlowConfigList:this._destinationFlowConfigList,flowName:this._flowName,flowStatus:this._flowStatus,kmsArn:this._kmsArn,metadataCatalogConfig:this._metadataCatalogConfig,sourceFlowConfig:this._sourceFlowConfig,tags:this.tags.renderTags(),tasks:this._tasks,triggerConfig:this._triggerConfig}}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",CfnFlow.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnFlowPropsToCloudFormation(props)}}exports.CfnFlow=CfnFlow;function CfnFlowConnectorOperatorPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("amplitude",cdk().validateString)(properties.amplitude)),errors.collect(cdk().propertyValidator("customConnector",cdk().validateString)(properties.customConnector)),errors.collect(cdk().propertyValidator("datadog",cdk().validateString)(properties.datadog)),errors.collect(cdk().propertyValidator("dynatrace",cdk().validateString)(properties.dynatrace)),errors.collect(cdk().propertyValidator("googleAnalytics",cdk().validateString)(properties.googleAnalytics)),errors.collect(cdk().propertyValidator("inforNexus",cdk().validateString)(properties.inforNexus)),errors.collect(cdk().propertyValidator("marketo",cdk().validateString)(properties.marketo)),errors.collect(cdk().propertyValidator("pardot",cdk().validateString)(properties.pardot)),errors.collect(cdk().propertyValidator("s3",cdk().validateString)(properties.s3)),errors.collect(cdk().propertyValidator("sapoData",cdk().validateString)(properties.sapoData)),errors.collect(cdk().propertyValidator("salesforce",cdk().validateString)(properties.salesforce)),errors.collect(cdk().propertyValidator("serviceNow",cdk().validateString)(properties.serviceNow)),errors.collect(cdk().propertyValidator("singular",cdk().validateString)(properties.singular)),errors.collect(cdk().propertyValidator("slack",cdk().validateString)(properties.slack)),errors.collect(cdk().propertyValidator("trendmicro",cdk().validateString)(properties.trendmicro)),errors.collect(cdk().propertyValidator("veeva",cdk().validateString)(properties.veeva)),errors.collect(cdk().propertyValidator("zendesk",cdk().validateString)(properties.zendesk)),errors.wrap('supplied properties not correct for "ConnectorOperatorProperty"')}function convertCfnFlowConnectorOperatorPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowConnectorOperatorPropertyValidator(properties).assertSuccess(),{Amplitude:cdk().stringToCloudFormation(properties.amplitude),CustomConnector:cdk().stringToCloudFormation(properties.customConnector),Datadog:cdk().stringToCloudFormation(properties.datadog),Dynatrace:cdk().stringToCloudFormation(properties.dynatrace),GoogleAnalytics:cdk().stringToCloudFormation(properties.googleAnalytics),InforNexus:cdk().stringToCloudFormation(properties.inforNexus),Marketo:cdk().stringToCloudFormation(properties.marketo),Pardot:cdk().stringToCloudFormation(properties.pardot),S3:cdk().stringToCloudFormation(properties.s3),SAPOData:cdk().stringToCloudFormation(properties.sapoData),Salesforce:cdk().stringToCloudFormation(properties.salesforce),ServiceNow:cdk().stringToCloudFormation(properties.serviceNow),Singular:cdk().stringToCloudFormation(properties.singular),Slack:cdk().stringToCloudFormation(properties.slack),Trendmicro:cdk().stringToCloudFormation(properties.trendmicro),Veeva:cdk().stringToCloudFormation(properties.veeva),Zendesk:cdk().stringToCloudFormation(properties.zendesk)}):properties}function CfnFlowConnectorOperatorPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("amplitude","Amplitude",properties.Amplitude!=null?cfn_parse().FromCloudFormation.getString(properties.Amplitude):void 0),ret.addPropertyResult("customConnector","CustomConnector",properties.CustomConnector!=null?cfn_parse().FromCloudFormation.getString(properties.CustomConnector):void 0),ret.addPropertyResult("datadog","Datadog",properties.Datadog!=null?cfn_parse().FromCloudFormation.getString(properties.Datadog):void 0),ret.addPropertyResult("dynatrace","Dynatrace",properties.Dynatrace!=null?cfn_parse().FromCloudFormation.getString(properties.Dynatrace):void 0),ret.addPropertyResult("googleAnalytics","GoogleAnalytics",properties.GoogleAnalytics!=null?cfn_parse().FromCloudFormation.getString(properties.GoogleAnalytics):void 0),ret.addPropertyResult("inforNexus","InforNexus",properties.InforNexus!=null?cfn_parse().FromCloudFormation.getString(properties.InforNexus):void 0),ret.addPropertyResult("marketo","Marketo",properties.Marketo!=null?cfn_parse().FromCloudFormation.getString(properties.Marketo):void 0),ret.addPropertyResult("pardot","Pardot",properties.Pardot!=null?cfn_parse().FromCloudFormation.getString(properties.Pardot):void 0),ret.addPropertyResult("s3","S3",properties.S3!=null?cfn_parse().FromCloudFormation.getString(properties.S3):void 0),ret.addPropertyResult("salesforce","Salesforce",properties.Salesforce!=null?cfn_parse().FromCloudFormation.getString(properties.Salesforce):void 0),ret.addPropertyResult("sapoData","SAPOData",properties.SAPOData!=null?cfn_parse().FromCloudFormation.getString(properties.SAPOData):void 0),ret.addPropertyResult("serviceNow","ServiceNow",properties.ServiceNow!=null?cfn_parse().FromCloudFormation.getString(properties.ServiceNow):void 0),ret.addPropertyResult("singular","Singular",properties.Singular!=null?cfn_parse().FromCloudFormation.getString(properties.Singular):void 0),ret.addPropertyResult("slack","Slack",properties.Slack!=null?cfn_parse().FromCloudFormation.getString(properties.Slack):void 0),ret.addPropertyResult("trendmicro","Trendmicro",properties.Trendmicro!=null?cfn_parse().FromCloudFormation.getString(properties.Trendmicro):void 0),ret.addPropertyResult("veeva","Veeva",properties.Veeva!=null?cfn_parse().FromCloudFormation.getString(properties.Veeva):void 0),ret.addPropertyResult("zendesk","Zendesk",properties.Zendesk!=null?cfn_parse().FromCloudFormation.getString(properties.Zendesk):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowTaskPropertiesObjectPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return 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 "TaskPropertiesObjectProperty"')}function convertCfnFlowTaskPropertiesObjectPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowTaskPropertiesObjectPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Value:cdk().stringToCloudFormation(properties.value)}):properties}function CfnFlowTaskPropertiesObjectPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(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 CfnFlowTaskPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("connectorOperator",CfnFlowConnectorOperatorPropertyValidator)(properties.connectorOperator)),errors.collect(cdk().propertyValidator("destinationField",cdk().validateString)(properties.destinationField)),errors.collect(cdk().propertyValidator("sourceFields",cdk().requiredValidator)(properties.sourceFields)),errors.collect(cdk().propertyValidator("sourceFields",cdk().listValidator(cdk().validateString))(properties.sourceFields)),errors.collect(cdk().propertyValidator("taskProperties",cdk().listValidator(CfnFlowTaskPropertiesObjectPropertyValidator))(properties.taskProperties)),errors.collect(cdk().propertyValidator("taskType",cdk().requiredValidator)(properties.taskType)),errors.collect(cdk().propertyValidator("taskType",cdk().validateString)(properties.taskType)),errors.wrap('supplied properties not correct for "TaskProperty"')}function convertCfnFlowTaskPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowTaskPropertyValidator(properties).assertSuccess(),{ConnectorOperator:convertCfnFlowConnectorOperatorPropertyToCloudFormation(properties.connectorOperator),DestinationField:cdk().stringToCloudFormation(properties.destinationField),SourceFields:cdk().listMapper(cdk().stringToCloudFormation)(properties.sourceFields),TaskProperties:cdk().listMapper(convertCfnFlowTaskPropertiesObjectPropertyToCloudFormation)(properties.taskProperties),TaskType:cdk().stringToCloudFormation(properties.taskType)}):properties}function CfnFlowTaskPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("connectorOperator","ConnectorOperator",properties.ConnectorOperator!=null?CfnFlowConnectorOperatorPropertyFromCloudFormation(properties.ConnectorOperator):void 0),ret.addPropertyResult("destinationField","DestinationField",properties.DestinationField!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationField):void 0),ret.addPropertyResult("sourceFields","SourceFields",properties.SourceFields!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SourceFields):void 0),ret.addPropertyResult("taskProperties","TaskProperties",properties.TaskProperties!=null?cfn_parse().FromCloudFormation.getArray(CfnFlowTaskPropertiesObjectPropertyFromCloudFormation)(properties.TaskProperties):void 0),ret.addPropertyResult("taskType","TaskType",properties.TaskType!=null?cfn_parse().FromCloudFormation.getString(properties.TaskType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowScheduledTriggerPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("dataPullMode",cdk().validateString)(properties.dataPullMode)),errors.collect(cdk().propertyValidator("firstExecutionFrom",cdk().validateNumber)(properties.firstExecutionFrom)),errors.collect(cdk().propertyValidator("flowErrorDeactivationThreshold",cdk().validateNumber)(properties.flowErrorDeactivationThreshold)),errors.collect(cdk().propertyValidator("scheduleEndTime",cdk().validateNumber)(properties.scheduleEndTime)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().requiredValidator)(properties.scheduleExpression)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().validateString)(properties.scheduleExpression)),errors.collect(cdk().propertyValidator("scheduleOffset",cdk().validateNumber)(properties.scheduleOffset)),errors.collect(cdk().propertyValidator("scheduleStartTime",cdk().validateNumber)(properties.scheduleStartTime)),errors.collect(cdk().propertyValidator("timeZone",cdk().validateString)(properties.timeZone)),errors.wrap('supplied properties not correct for "ScheduledTriggerPropertiesProperty"')}function convertCfnFlowScheduledTriggerPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowScheduledTriggerPropertiesPropertyValidator(properties).assertSuccess(),{DataPullMode:cdk().stringToCloudFormation(properties.dataPullMode),FirstExecutionFrom:cdk().numberToCloudFormation(properties.firstExecutionFrom),FlowErrorDeactivationThreshold:cdk().numberToCloudFormation(properties.flowErrorDeactivationThreshold),ScheduleEndTime:cdk().numberToCloudFormation(properties.scheduleEndTime),ScheduleExpression:cdk().stringToCloudFormation(properties.scheduleExpression),ScheduleOffset:cdk().numberToCloudFormation(properties.scheduleOffset),ScheduleStartTime:cdk().numberToCloudFormation(properties.scheduleStartTime),TimeZone:cdk().stringToCloudFormation(properties.timeZone)}):properties}function CfnFlowScheduledTriggerPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("dataPullMode","DataPullMode",properties.DataPullMode!=null?cfn_parse().FromCloudFormation.getString(properties.DataPullMode):void 0),ret.addPropertyResult("firstExecutionFrom","FirstExecutionFrom",properties.FirstExecutionFrom!=null?cfn_parse().FromCloudFormation.getNumber(properties.FirstExecutionFrom):void 0),ret.addPropertyResult("flowErrorDeactivationThreshold","FlowErrorDeactivationThreshold",properties.FlowErrorDeactivationThreshold!=null?cfn_parse().FromCloudFormation.getNumber(properties.FlowErrorDeactivationThreshold):void 0),ret.addPropertyResult("scheduleEndTime","ScheduleEndTime",properties.ScheduleEndTime!=null?cfn_parse().FromCloudFormation.getNumber(properties.ScheduleEndTime):void 0),ret.addPropertyResult("scheduleExpression","ScheduleExpression",properties.ScheduleExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ScheduleExpression):void 0),ret.addPropertyResult("scheduleOffset","ScheduleOffset",properties.ScheduleOffset!=null?cfn_parse().FromCloudFormation.getNumber(properties.ScheduleOffset):void 0),ret.addPropertyResult("scheduleStartTime","ScheduleStartTime",properties.ScheduleStartTime!=null?cfn_parse().FromCloudFormation.getNumber(properties.ScheduleStartTime):void 0),ret.addPropertyResult("timeZone","TimeZone",properties.TimeZone!=null?cfn_parse().FromCloudFormation.getString(properties.TimeZone):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowTriggerConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("triggerProperties",CfnFlowScheduledTriggerPropertiesPropertyValidator)(properties.triggerProperties)),errors.collect(cdk().propertyValidator("triggerType",cdk().requiredValidator)(properties.triggerType)),errors.collect(cdk().propertyValidator("triggerType",cdk().validateString)(properties.triggerType)),errors.wrap('supplied properties not correct for "TriggerConfigProperty"')}function convertCfnFlowTriggerConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowTriggerConfigPropertyValidator(properties).assertSuccess(),{TriggerProperties:convertCfnFlowScheduledTriggerPropertiesPropertyToCloudFormation(properties.triggerProperties),TriggerType:cdk().stringToCloudFormation(properties.triggerType)}):properties}function CfnFlowTriggerConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("triggerProperties","TriggerProperties",properties.TriggerProperties!=null?CfnFlowScheduledTriggerPropertiesPropertyFromCloudFormation(properties.TriggerProperties):void 0),ret.addPropertyResult("triggerType","TriggerType",properties.TriggerType!=null?cfn_parse().FromCloudFormation.getString(properties.TriggerType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowPrefixConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("pathPrefixHierarchy",cdk().listValidator(cdk().validateString))(properties.pathPrefixHierarchy)),errors.collect(cdk().propertyValidator("prefixFormat",cdk().validateString)(properties.prefixFormat)),errors.collect(cdk().propertyValidator("prefixType",cdk().validateString)(properties.prefixType)),errors.wrap('supplied properties not correct for "PrefixConfigProperty"')}function convertCfnFlowPrefixConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowPrefixConfigPropertyValidator(properties).assertSuccess(),{PathPrefixHierarchy:cdk().listMapper(cdk().stringToCloudFormation)(properties.pathPrefixHierarchy),PrefixFormat:cdk().stringToCloudFormation(properties.prefixFormat),PrefixType:cdk().stringToCloudFormation(properties.prefixType)}):properties}function CfnFlowPrefixConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("pathPrefixHierarchy","PathPrefixHierarchy",properties.PathPrefixHierarchy!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.PathPrefixHierarchy):void 0),ret.addPropertyResult("prefixFormat","PrefixFormat",properties.PrefixFormat!=null?cfn_parse().FromCloudFormation.getString(properties.PrefixFormat):void 0),ret.addPropertyResult("prefixType","PrefixType",properties.PrefixType!=null?cfn_parse().FromCloudFormation.getString(properties.PrefixType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowAggregationConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("aggregationType",cdk().validateString)(properties.aggregationType)),errors.collect(cdk().propertyValidator("targetFileSize",cdk().validateNumber)(properties.targetFileSize)),errors.wrap('supplied properties not correct for "AggregationConfigProperty"')}function convertCfnFlowAggregationConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowAggregationConfigPropertyValidator(properties).assertSuccess(),{AggregationType:cdk().stringToCloudFormation(properties.aggregationType),TargetFileSize:cdk().numberToCloudFormation(properties.targetFileSize)}):properties}function CfnFlowAggregationConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("aggregationType","AggregationType",properties.AggregationType!=null?cfn_parse().FromCloudFormation.getString(properties.AggregationType):void 0),ret.addPropertyResult("targetFileSize","TargetFileSize",properties.TargetFileSize!=null?cfn_parse().FromCloudFormation.getNumber(properties.TargetFileSize):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowS3OutputFormatConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("aggregationConfig",CfnFlowAggregationConfigPropertyValidator)(properties.aggregationConfig)),errors.collect(cdk().propertyValidator("fileType",cdk().validateString)(properties.fileType)),errors.collect(cdk().propertyValidator("prefixConfig",CfnFlowPrefixConfigPropertyValidator)(properties.prefixConfig)),errors.collect(cdk().propertyValidator("preserveSourceDataTyping",cdk().validateBoolean)(properties.preserveSourceDataTyping)),errors.wrap('supplied properties not correct for "S3OutputFormatConfigProperty"')}function convertCfnFlowS3OutputFormatConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowS3OutputFormatConfigPropertyValidator(properties).assertSuccess(),{AggregationConfig:convertCfnFlowAggregationConfigPropertyToCloudFormation(properties.aggregationConfig),FileType:cdk().stringToCloudFormation(properties.fileType),PrefixConfig:convertCfnFlowPrefixConfigPropertyToCloudFormation(properties.prefixConfig),PreserveSourceDataTyping:cdk().booleanToCloudFormation(properties.preserveSourceDataTyping)}):properties}function CfnFlowS3OutputFormatConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("aggregationConfig","AggregationConfig",properties.AggregationConfig!=null?CfnFlowAggregationConfigPropertyFromCloudFormation(properties.AggregationConfig):void 0),ret.addPropertyResult("fileType","FileType",properties.FileType!=null?cfn_parse().FromCloudFormation.getString(properties.FileType):void 0),ret.addPropertyResult("prefixConfig","PrefixConfig",properties.PrefixConfig!=null?CfnFlowPrefixConfigPropertyFromCloudFormation(properties.PrefixConfig):void 0),ret.addPropertyResult("preserveSourceDataTyping","PreserveSourceDataTyping",properties.PreserveSourceDataTyping!=null?cfn_parse().FromCloudFormation.getBoolean(properties.PreserveSourceDataTyping):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowS3DestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketName",cdk().requiredValidator)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("s3OutputFormatConfig",CfnFlowS3OutputFormatConfigPropertyValidator)(properties.s3OutputFormatConfig)),errors.wrap('supplied properties not correct for "S3DestinationPropertiesProperty"')}function convertCfnFlowS3DestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowS3DestinationPropertiesPropertyValidator(properties).assertSuccess(),{BucketName:cdk().stringToCloudFormation(properties.bucketName),BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),S3OutputFormatConfig:convertCfnFlowS3OutputFormatConfigPropertyToCloudFormation(properties.s3OutputFormatConfig)}):properties}function CfnFlowS3DestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("s3OutputFormatConfig","S3OutputFormatConfig",properties.S3OutputFormatConfig!=null?CfnFlowS3OutputFormatConfigPropertyFromCloudFormation(properties.S3OutputFormatConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowErrorHandlingConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("failOnFirstError",cdk().validateBoolean)(properties.failOnFirstError)),errors.wrap('supplied properties not correct for "ErrorHandlingConfigProperty"')}function convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowErrorHandlingConfigPropertyValidator(properties).assertSuccess(),{BucketName:cdk().stringToCloudFormation(properties.bucketName),BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),FailOnFirstError:cdk().booleanToCloudFormation(properties.failOnFirstError)}):properties}function CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("failOnFirstError","FailOnFirstError",properties.FailOnFirstError!=null?cfn_parse().FromCloudFormation.getBoolean(properties.FailOnFirstError):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowCustomConnectorDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("customProperties",cdk().hashValidator(cdk().validateString))(properties.customProperties)),errors.collect(cdk().propertyValidator("entityName",cdk().requiredValidator)(properties.entityName)),errors.collect(cdk().propertyValidator("entityName",cdk().validateString)(properties.entityName)),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("idFieldNames",cdk().listValidator(cdk().validateString))(properties.idFieldNames)),errors.collect(cdk().propertyValidator("writeOperationType",cdk().validateString)(properties.writeOperationType)),errors.wrap('supplied properties not correct for "CustomConnectorDestinationPropertiesProperty"')}function convertCfnFlowCustomConnectorDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowCustomConnectorDestinationPropertiesPropertyValidator(properties).assertSuccess(),{CustomProperties:cdk().hashMapper(cdk().stringToCloudFormation)(properties.customProperties),EntityName:cdk().stringToCloudFormation(properties.entityName),ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),IdFieldNames:cdk().listMapper(cdk().stringToCloudFormation)(properties.idFieldNames),WriteOperationType:cdk().stringToCloudFormation(properties.writeOperationType)}):properties}function CfnFlowCustomConnectorDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("customProperties","CustomProperties",properties.CustomProperties!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.CustomProperties):void 0),ret.addPropertyResult("entityName","EntityName",properties.EntityName!=null?cfn_parse().FromCloudFormation.getString(properties.EntityName):void 0),ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("idFieldNames","IdFieldNames",properties.IdFieldNames!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.IdFieldNames):void 0),ret.addPropertyResult("writeOperationType","WriteOperationType",properties.WriteOperationType!=null?cfn_parse().FromCloudFormation.getString(properties.WriteOperationType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowUpsolverS3OutputFormatConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("aggregationConfig",CfnFlowAggregationConfigPropertyValidator)(properties.aggregationConfig)),errors.collect(cdk().propertyValidator("fileType",cdk().validateString)(properties.fileType)),errors.collect(cdk().propertyValidator("prefixConfig",cdk().requiredValidator)(properties.prefixConfig)),errors.collect(cdk().propertyValidator("prefixConfig",CfnFlowPrefixConfigPropertyValidator)(properties.prefixConfig)),errors.wrap('supplied properties not correct for "UpsolverS3OutputFormatConfigProperty"')}function convertCfnFlowUpsolverS3OutputFormatConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowUpsolverS3OutputFormatConfigPropertyValidator(properties).assertSuccess(),{AggregationConfig:convertCfnFlowAggregationConfigPropertyToCloudFormation(properties.aggregationConfig),FileType:cdk().stringToCloudFormation(properties.fileType),PrefixConfig:convertCfnFlowPrefixConfigPropertyToCloudFormation(properties.prefixConfig)}):properties}function CfnFlowUpsolverS3OutputFormatConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("aggregationConfig","AggregationConfig",properties.AggregationConfig!=null?CfnFlowAggregationConfigPropertyFromCloudFormation(properties.AggregationConfig):void 0),ret.addPropertyResult("fileType","FileType",properties.FileType!=null?cfn_parse().FromCloudFormation.getString(properties.FileType):void 0),ret.addPropertyResult("prefixConfig","PrefixConfig",properties.PrefixConfig!=null?CfnFlowPrefixConfigPropertyFromCloudFormation(properties.PrefixConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowUpsolverDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketName",cdk().requiredValidator)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("s3OutputFormatConfig",cdk().requiredValidator)(properties.s3OutputFormatConfig)),errors.collect(cdk().propertyValidator("s3OutputFormatConfig",CfnFlowUpsolverS3OutputFormatConfigPropertyValidator)(properties.s3OutputFormatConfig)),errors.wrap('supplied properties not correct for "UpsolverDestinationPropertiesProperty"')}function convertCfnFlowUpsolverDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowUpsolverDestinationPropertiesPropertyValidator(properties).assertSuccess(),{BucketName:cdk().stringToCloudFormation(properties.bucketName),BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),S3OutputFormatConfig:convertCfnFlowUpsolverS3OutputFormatConfigPropertyToCloudFormation(properties.s3OutputFormatConfig)}):properties}function CfnFlowUpsolverDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("s3OutputFormatConfig","S3OutputFormatConfig",properties.S3OutputFormatConfig!=null?CfnFlowUpsolverS3OutputFormatConfigPropertyFromCloudFormation(properties.S3OutputFormatConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSuccessResponseHandlingConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.wrap('supplied properties not correct for "SuccessResponseHandlingConfigProperty"')}function convertCfnFlowSuccessResponseHandlingConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSuccessResponseHandlingConfigPropertyValidator(properties).assertSuccess(),{BucketName:cdk().stringToCloudFormation(properties.bucketName),BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix)}):properties}function CfnFlowSuccessResponseHandlingConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSAPODataDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("idFieldNames",cdk().listValidator(cdk().validateString))(properties.idFieldNames)),errors.collect(cdk().propertyValidator("objectPath",cdk().requiredValidator)(properties.objectPath)),errors.collect(cdk().propertyValidator("objectPath",cdk().validateString)(properties.objectPath)),errors.collect(cdk().propertyValidator("successResponseHandlingConfig",CfnFlowSuccessResponseHandlingConfigPropertyValidator)(properties.successResponseHandlingConfig)),errors.collect(cdk().propertyValidator("writeOperationType",cdk().validateString)(properties.writeOperationType)),errors.wrap('supplied properties not correct for "SAPODataDestinationPropertiesProperty"')}function convertCfnFlowSAPODataDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSAPODataDestinationPropertiesPropertyValidator(properties).assertSuccess(),{ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),IdFieldNames:cdk().listMapper(cdk().stringToCloudFormation)(properties.idFieldNames),ObjectPath:cdk().stringToCloudFormation(properties.objectPath),SuccessResponseHandlingConfig:convertCfnFlowSuccessResponseHandlingConfigPropertyToCloudFormation(properties.successResponseHandlingConfig),WriteOperationType:cdk().stringToCloudFormation(properties.writeOperationType)}):properties}function CfnFlowSAPODataDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("idFieldNames","IdFieldNames",properties.IdFieldNames!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.IdFieldNames):void 0),ret.addPropertyResult("objectPath","ObjectPath",properties.ObjectPath!=null?cfn_parse().FromCloudFormation.getString(properties.ObjectPath):void 0),ret.addPropertyResult("successResponseHandlingConfig","SuccessResponseHandlingConfig",properties.SuccessResponseHandlingConfig!=null?CfnFlowSuccessResponseHandlingConfigPropertyFromCloudFormation(properties.SuccessResponseHandlingConfig):void 0),ret.addPropertyResult("writeOperationType","WriteOperationType",properties.WriteOperationType!=null?cfn_parse().FromCloudFormation.getString(properties.WriteOperationType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSnowflakeDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("intermediateBucketName",cdk().requiredValidator)(properties.intermediateBucketName)),errors.collect(cdk().propertyValidator("intermediateBucketName",cdk().validateString)(properties.intermediateBucketName)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "SnowflakeDestinationPropertiesProperty"')}function convertCfnFlowSnowflakeDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSnowflakeDestinationPropertiesPropertyValidator(properties).assertSuccess(),{BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),IntermediateBucketName:cdk().stringToCloudFormation(properties.intermediateBucketName),Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowSnowflakeDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("intermediateBucketName","IntermediateBucketName",properties.IntermediateBucketName!=null?cfn_parse().FromCloudFormation.getString(properties.IntermediateBucketName):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowLookoutMetricsDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "LookoutMetricsDestinationPropertiesProperty"')}function convertCfnFlowLookoutMetricsDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowLookoutMetricsDestinationPropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowLookoutMetricsDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowEventBridgeDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "EventBridgeDestinationPropertiesProperty"')}function convertCfnFlowEventBridgeDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowEventBridgeDestinationPropertiesPropertyValidator(properties).assertSuccess(),{ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowEventBridgeDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowZendeskDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("idFieldNames",cdk().listValidator(cdk().validateString))(properties.idFieldNames)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.collect(cdk().propertyValidator("writeOperationType",cdk().validateString)(properties.writeOperationType)),errors.wrap('supplied properties not correct for "ZendeskDestinationPropertiesProperty"')}function convertCfnFlowZendeskDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowZendeskDestinationPropertiesPropertyValidator(properties).assertSuccess(),{ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),IdFieldNames:cdk().listMapper(cdk().stringToCloudFormation)(properties.idFieldNames),Object:cdk().stringToCloudFormation(properties.object),WriteOperationType:cdk().stringToCloudFormation(properties.writeOperationType)}):properties}function CfnFlowZendeskDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("idFieldNames","IdFieldNames",properties.IdFieldNames!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.IdFieldNames):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addPropertyResult("writeOperationType","WriteOperationType",properties.WriteOperationType!=null?cfn_parse().FromCloudFormation.getString(properties.WriteOperationType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowMarketoDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "MarketoDestinationPropertiesProperty"')}function convertCfnFlowMarketoDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowMarketoDestinationPropertiesPropertyValidator(properties).assertSuccess(),{ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowMarketoDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowRedshiftDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("intermediateBucketName",cdk().requiredValidator)(properties.intermediateBucketName)),errors.collect(cdk().propertyValidator("intermediateBucketName",cdk().validateString)(properties.intermediateBucketName)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "RedshiftDestinationPropertiesProperty"')}function convertCfnFlowRedshiftDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowRedshiftDestinationPropertiesPropertyValidator(properties).assertSuccess(),{BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),IntermediateBucketName:cdk().stringToCloudFormation(properties.intermediateBucketName),Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowRedshiftDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("intermediateBucketName","IntermediateBucketName",properties.IntermediateBucketName!=null?cfn_parse().FromCloudFormation.getString(properties.IntermediateBucketName):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSalesforceDestinationPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("dataTransferApi",cdk().validateString)(properties.dataTransferApi)),errors.collect(cdk().propertyValidator("errorHandlingConfig",CfnFlowErrorHandlingConfigPropertyValidator)(properties.errorHandlingConfig)),errors.collect(cdk().propertyValidator("idFieldNames",cdk().listValidator(cdk().validateString))(properties.idFieldNames)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.collect(cdk().propertyValidator("writeOperationType",cdk().validateString)(properties.writeOperationType)),errors.wrap('supplied properties not correct for "SalesforceDestinationPropertiesProperty"')}function convertCfnFlowSalesforceDestinationPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSalesforceDestinationPropertiesPropertyValidator(properties).assertSuccess(),{DataTransferApi:cdk().stringToCloudFormation(properties.dataTransferApi),ErrorHandlingConfig:convertCfnFlowErrorHandlingConfigPropertyToCloudFormation(properties.errorHandlingConfig),IdFieldNames:cdk().listMapper(cdk().stringToCloudFormation)(properties.idFieldNames),Object:cdk().stringToCloudFormation(properties.object),WriteOperationType:cdk().stringToCloudFormation(properties.writeOperationType)}):properties}function CfnFlowSalesforceDestinationPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("dataTransferApi","DataTransferApi",properties.DataTransferApi!=null?cfn_parse().FromCloudFormation.getString(properties.DataTransferApi):void 0),ret.addPropertyResult("errorHandlingConfig","ErrorHandlingConfig",properties.ErrorHandlingConfig!=null?CfnFlowErrorHandlingConfigPropertyFromCloudFormation(properties.ErrorHandlingConfig):void 0),ret.addPropertyResult("idFieldNames","IdFieldNames",properties.IdFieldNames!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.IdFieldNames):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addPropertyResult("writeOperationType","WriteOperationType",properties.WriteOperationType!=null?cfn_parse().FromCloudFormation.getString(properties.WriteOperationType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowDestinationConnectorPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("customConnector",CfnFlowCustomConnectorDestinationPropertiesPropertyValidator)(properties.customConnector)),errors.collect(cdk().propertyValidator("eventBridge",CfnFlowEventBridgeDestinationPropertiesPropertyValidator)(properties.eventBridge)),errors.collect(cdk().propertyValidator("lookoutMetrics",CfnFlowLookoutMetricsDestinationPropertiesPropertyValidator)(properties.lookoutMetrics)),errors.collect(cdk().propertyValidator("marketo",CfnFlowMarketoDestinationPropertiesPropertyValidator)(properties.marketo)),errors.collect(cdk().propertyValidator("redshift",CfnFlowRedshiftDestinationPropertiesPropertyValidator)(properties.redshift)),errors.collect(cdk().propertyValidator("s3",CfnFlowS3DestinationPropertiesPropertyValidator)(properties.s3)),errors.collect(cdk().propertyValidator("sapoData",CfnFlowSAPODataDestinationPropertiesPropertyValidator)(properties.sapoData)),errors.collect(cdk().propertyValidator("salesforce",CfnFlowSalesforceDestinationPropertiesPropertyValidator)(properties.salesforce)),errors.collect(cdk().propertyValidator("snowflake",CfnFlowSnowflakeDestinationPropertiesPropertyValidator)(properties.snowflake)),errors.collect(cdk().propertyValidator("upsolver",CfnFlowUpsolverDestinationPropertiesPropertyValidator)(properties.upsolver)),errors.collect(cdk().propertyValidator("zendesk",CfnFlowZendeskDestinationPropertiesPropertyValidator)(properties.zendesk)),errors.wrap('supplied properties not correct for "DestinationConnectorPropertiesProperty"')}function convertCfnFlowDestinationConnectorPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowDestinationConnectorPropertiesPropertyValidator(properties).assertSuccess(),{CustomConnector:convertCfnFlowCustomConnectorDestinationPropertiesPropertyToCloudFormation(properties.customConnector),EventBridge:convertCfnFlowEventBridgeDestinationPropertiesPropertyToCloudFormation(properties.eventBridge),LookoutMetrics:convertCfnFlowLookoutMetricsDestinationPropertiesPropertyToCloudFormation(properties.lookoutMetrics),Marketo:convertCfnFlowMarketoDestinationPropertiesPropertyToCloudFormation(properties.marketo),Redshift:convertCfnFlowRedshiftDestinationPropertiesPropertyToCloudFormation(properties.redshift),S3:convertCfnFlowS3DestinationPropertiesPropertyToCloudFormation(properties.s3),SAPOData:convertCfnFlowSAPODataDestinationPropertiesPropertyToCloudFormation(properties.sapoData),Salesforce:convertCfnFlowSalesforceDestinationPropertiesPropertyToCloudFormation(properties.salesforce),Snowflake:convertCfnFlowSnowflakeDestinationPropertiesPropertyToCloudFormation(properties.snowflake),Upsolver:convertCfnFlowUpsolverDestinationPropertiesPropertyToCloudFormation(properties.upsolver),Zendesk:convertCfnFlowZendeskDestinationPropertiesPropertyToCloudFormation(properties.zendesk)}):properties}function CfnFlowDestinationConnectorPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("customConnector","CustomConnector",properties.CustomConnector!=null?CfnFlowCustomConnectorDestinationPropertiesPropertyFromCloudFormation(properties.CustomConnector):void 0),ret.addPropertyResult("eventBridge","EventBridge",properties.EventBridge!=null?CfnFlowEventBridgeDestinationPropertiesPropertyFromCloudFormation(properties.EventBridge):void 0),ret.addPropertyResult("lookoutMetrics","LookoutMetrics",properties.LookoutMetrics!=null?CfnFlowLookoutMetricsDestinationPropertiesPropertyFromCloudFormation(properties.LookoutMetrics):void 0),ret.addPropertyResult("marketo","Marketo",properties.Marketo!=null?CfnFlowMarketoDestinationPropertiesPropertyFromCloudFormation(properties.Marketo):void 0),ret.addPropertyResult("redshift","Redshift",properties.Redshift!=null?CfnFlowRedshiftDestinationPropertiesPropertyFromCloudFormation(properties.Redshift):void 0),ret.addPropertyResult("s3","S3",properties.S3!=null?CfnFlowS3DestinationPropertiesPropertyFromCloudFormation(properties.S3):void 0),ret.addPropertyResult("salesforce","Salesforce",properties.Salesforce!=null?CfnFlowSalesforceDestinationPropertiesPropertyFromCloudFormation(properties.Salesforce):void 0),ret.addPropertyResult("sapoData","SAPOData",properties.SAPOData!=null?CfnFlowSAPODataDestinationPropertiesPropertyFromCloudFormation(properties.SAPOData):void 0),ret.addPropertyResult("snowflake","Snowflake",properties.Snowflake!=null?CfnFlowSnowflakeDestinationPropertiesPropertyFromCloudFormation(properties.Snowflake):void 0),ret.addPropertyResult("upsolver","Upsolver",properties.Upsolver!=null?CfnFlowUpsolverDestinationPropertiesPropertyFromCloudFormation(properties.Upsolver):void 0),ret.addPropertyResult("zendesk","Zendesk",properties.Zendesk!=null?CfnFlowZendeskDestinationPropertiesPropertyFromCloudFormation(properties.Zendesk):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowDestinationFlowConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiVersion",cdk().validateString)(properties.apiVersion)),errors.collect(cdk().propertyValidator("connectorProfileName",cdk().validateString)(properties.connectorProfileName)),errors.collect(cdk().propertyValidator("connectorType",cdk().requiredValidator)(properties.connectorType)),errors.collect(cdk().propertyValidator("connectorType",cdk().validateString)(properties.connectorType)),errors.collect(cdk().propertyValidator("destinationConnectorProperties",cdk().requiredValidator)(properties.destinationConnectorProperties)),errors.collect(cdk().propertyValidator("destinationConnectorProperties",CfnFlowDestinationConnectorPropertiesPropertyValidator)(properties.destinationConnectorProperties)),errors.wrap('supplied properties not correct for "DestinationFlowConfigProperty"')}function convertCfnFlowDestinationFlowConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowDestinationFlowConfigPropertyValidator(properties).assertSuccess(),{ApiVersion:cdk().stringToCloudFormation(properties.apiVersion),ConnectorProfileName:cdk().stringToCloudFormation(properties.connectorProfileName),ConnectorType:cdk().stringToCloudFormation(properties.connectorType),DestinationConnectorProperties:convertCfnFlowDestinationConnectorPropertiesPropertyToCloudFormation(properties.destinationConnectorProperties)}):properties}function CfnFlowDestinationFlowConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiVersion","ApiVersion",properties.ApiVersion!=null?cfn_parse().FromCloudFormation.getString(properties.ApiVersion):void 0),ret.addPropertyResult("connectorProfileName","ConnectorProfileName",properties.ConnectorProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorProfileName):void 0),ret.addPropertyResult("connectorType","ConnectorType",properties.ConnectorType!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorType):void 0),ret.addPropertyResult("destinationConnectorProperties","DestinationConnectorProperties",properties.DestinationConnectorProperties!=null?CfnFlowDestinationConnectorPropertiesPropertyFromCloudFormation(properties.DestinationConnectorProperties):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowAmplitudeSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "AmplitudeSourcePropertiesProperty"')}function convertCfnFlowAmplitudeSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowAmplitudeSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowAmplitudeSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowS3InputFormatConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("s3InputFileType",cdk().validateString)(properties.s3InputFileType)),errors.wrap('supplied properties not correct for "S3InputFormatConfigProperty"')}function convertCfnFlowS3InputFormatConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowS3InputFormatConfigPropertyValidator(properties).assertSuccess(),{S3InputFileType:cdk().stringToCloudFormation(properties.s3InputFileType)}):properties}function CfnFlowS3InputFormatConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("s3InputFileType","S3InputFileType",properties.S3InputFileType!=null?cfn_parse().FromCloudFormation.getString(properties.S3InputFileType):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowS3SourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bucketName",cdk().requiredValidator)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketName",cdk().validateString)(properties.bucketName)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().requiredValidator)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("bucketPrefix",cdk().validateString)(properties.bucketPrefix)),errors.collect(cdk().propertyValidator("s3InputFormatConfig",CfnFlowS3InputFormatConfigPropertyValidator)(properties.s3InputFormatConfig)),errors.wrap('supplied properties not correct for "S3SourcePropertiesProperty"')}function convertCfnFlowS3SourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowS3SourcePropertiesPropertyValidator(properties).assertSuccess(),{BucketName:cdk().stringToCloudFormation(properties.bucketName),BucketPrefix:cdk().stringToCloudFormation(properties.bucketPrefix),S3InputFormatConfig:convertCfnFlowS3InputFormatConfigPropertyToCloudFormation(properties.s3InputFormatConfig)}):properties}function CfnFlowS3SourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("bucketPrefix","BucketPrefix",properties.BucketPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.BucketPrefix):void 0),ret.addPropertyResult("s3InputFormatConfig","S3InputFormatConfig",properties.S3InputFormatConfig!=null?CfnFlowS3InputFormatConfigPropertyFromCloudFormation(properties.S3InputFormatConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowGoogleAnalyticsSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "GoogleAnalyticsSourcePropertiesProperty"')}function convertCfnFlowGoogleAnalyticsSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowGoogleAnalyticsSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowGoogleAnalyticsSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowServiceNowSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "ServiceNowSourcePropertiesProperty"')}function convertCfnFlowServiceNowSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowServiceNowSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowServiceNowSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowDataTransferApiPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return 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("type",cdk().requiredValidator)(properties.type)),errors.collect(cdk().propertyValidator("type",cdk().validateString)(properties.type)),errors.wrap('supplied properties not correct for "DataTransferApiProperty"')}function convertCfnFlowDataTransferApiPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowDataTransferApiPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Type:cdk().stringToCloudFormation(properties.type)}):properties}function CfnFlowDataTransferApiPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(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("type","Type",properties.Type!=null?cfn_parse().FromCloudFormation.getString(properties.Type):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowCustomConnectorSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("customProperties",cdk().hashValidator(cdk().validateString))(properties.customProperties)),errors.collect(cdk().propertyValidator("dataTransferApi",CfnFlowDataTransferApiPropertyValidator)(properties.dataTransferApi)),errors.collect(cdk().propertyValidator("entityName",cdk().requiredValidator)(properties.entityName)),errors.collect(cdk().propertyValidator("entityName",cdk().validateString)(properties.entityName)),errors.wrap('supplied properties not correct for "CustomConnectorSourcePropertiesProperty"')}function convertCfnFlowCustomConnectorSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowCustomConnectorSourcePropertiesPropertyValidator(properties).assertSuccess(),{CustomProperties:cdk().hashMapper(cdk().stringToCloudFormation)(properties.customProperties),DataTransferApi:convertCfnFlowDataTransferApiPropertyToCloudFormation(properties.dataTransferApi),EntityName:cdk().stringToCloudFormation(properties.entityName)}):properties}function CfnFlowCustomConnectorSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("customProperties","CustomProperties",properties.CustomProperties!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.CustomProperties):void 0),ret.addPropertyResult("dataTransferApi","DataTransferApi",properties.DataTransferApi!=null?CfnFlowDataTransferApiPropertyFromCloudFormation(properties.DataTransferApi):void 0),ret.addPropertyResult("entityName","EntityName",properties.EntityName!=null?cfn_parse().FromCloudFormation.getString(properties.EntityName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSAPODataPaginationConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("maxPageSize",cdk().requiredValidator)(properties.maxPageSize)),errors.collect(cdk().propertyValidator("maxPageSize",cdk().validateNumber)(properties.maxPageSize)),errors.wrap('supplied properties not correct for "SAPODataPaginationConfigProperty"')}function convertCfnFlowSAPODataPaginationConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSAPODataPaginationConfigPropertyValidator(properties).assertSuccess(),{maxPageSize:cdk().numberToCloudFormation(properties.maxPageSize)}):properties}function CfnFlowSAPODataPaginationConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("maxPageSize","maxPageSize",properties.maxPageSize!=null?cfn_parse().FromCloudFormation.getNumber(properties.maxPageSize):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSAPODataParallelismConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("maxParallelism",cdk().requiredValidator)(properties.maxParallelism)),errors.collect(cdk().propertyValidator("maxParallelism",cdk().validateNumber)(properties.maxParallelism)),errors.wrap('supplied properties not correct for "SAPODataParallelismConfigProperty"')}function convertCfnFlowSAPODataParallelismConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSAPODataParallelismConfigPropertyValidator(properties).assertSuccess(),{maxParallelism:cdk().numberToCloudFormation(properties.maxParallelism)}):properties}function CfnFlowSAPODataParallelismConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("maxParallelism","maxParallelism",properties.maxParallelism!=null?cfn_parse().FromCloudFormation.getNumber(properties.maxParallelism):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSAPODataSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("objectPath",cdk().requiredValidator)(properties.objectPath)),errors.collect(cdk().propertyValidator("objectPath",cdk().validateString)(properties.objectPath)),errors.collect(cdk().propertyValidator("paginationConfig",CfnFlowSAPODataPaginationConfigPropertyValidator)(properties.paginationConfig)),errors.collect(cdk().propertyValidator("parallelismConfig",CfnFlowSAPODataParallelismConfigPropertyValidator)(properties.parallelismConfig)),errors.wrap('supplied properties not correct for "SAPODataSourcePropertiesProperty"')}function convertCfnFlowSAPODataSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSAPODataSourcePropertiesPropertyValidator(properties).assertSuccess(),{ObjectPath:cdk().stringToCloudFormation(properties.objectPath),paginationConfig:convertCfnFlowSAPODataPaginationConfigPropertyToCloudFormation(properties.paginationConfig),parallelismConfig:convertCfnFlowSAPODataParallelismConfigPropertyToCloudFormation(properties.parallelismConfig)}):properties}function CfnFlowSAPODataSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("objectPath","ObjectPath",properties.ObjectPath!=null?cfn_parse().FromCloudFormation.getString(properties.ObjectPath):void 0),ret.addPropertyResult("paginationConfig","paginationConfig",properties.paginationConfig!=null?CfnFlowSAPODataPaginationConfigPropertyFromCloudFormation(properties.paginationConfig):void 0),ret.addPropertyResult("parallelismConfig","parallelismConfig",properties.parallelismConfig!=null?CfnFlowSAPODataParallelismConfigPropertyFromCloudFormation(properties.parallelismConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowPardotSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "PardotSourcePropertiesProperty"')}function convertCfnFlowPardotSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowPardotSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowPardotSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowVeevaSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("documentType",cdk().validateString)(properties.documentType)),errors.collect(cdk().propertyValidator("includeAllVersions",cdk().validateBoolean)(properties.includeAllVersions)),errors.collect(cdk().propertyValidator("includeRenditions",cdk().validateBoolean)(properties.includeRenditions)),errors.collect(cdk().propertyValidator("includeSourceFiles",cdk().validateBoolean)(properties.includeSourceFiles)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "VeevaSourcePropertiesProperty"')}function convertCfnFlowVeevaSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowVeevaSourcePropertiesPropertyValidator(properties).assertSuccess(),{DocumentType:cdk().stringToCloudFormation(properties.documentType),IncludeAllVersions:cdk().booleanToCloudFormation(properties.includeAllVersions),IncludeRenditions:cdk().booleanToCloudFormation(properties.includeRenditions),IncludeSourceFiles:cdk().booleanToCloudFormation(properties.includeSourceFiles),Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowVeevaSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("documentType","DocumentType",properties.DocumentType!=null?cfn_parse().FromCloudFormation.getString(properties.DocumentType):void 0),ret.addPropertyResult("includeAllVersions","IncludeAllVersions",properties.IncludeAllVersions!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IncludeAllVersions):void 0),ret.addPropertyResult("includeRenditions","IncludeRenditions",properties.IncludeRenditions!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IncludeRenditions):void 0),ret.addPropertyResult("includeSourceFiles","IncludeSourceFiles",properties.IncludeSourceFiles!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IncludeSourceFiles):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowTrendmicroSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "TrendmicroSourcePropertiesProperty"')}function convertCfnFlowTrendmicroSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowTrendmicroSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowTrendmicroSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowDatadogSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "DatadogSourcePropertiesProperty"')}function convertCfnFlowDatadogSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowDatadogSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowDatadogSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowMarketoSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "MarketoSourcePropertiesProperty"')}function convertCfnFlowMarketoSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowMarketoSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowMarketoSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSingularSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "SingularSourcePropertiesProperty"')}function convertCfnFlowSingularSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSingularSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowSingularSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSlackSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "SlackSourcePropertiesProperty"')}function convertCfnFlowSlackSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSlackSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowSlackSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowDynatraceSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "DynatraceSourcePropertiesProperty"')}function convertCfnFlowDynatraceSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowDynatraceSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowDynatraceSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowZendeskSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "ZendeskSourcePropertiesProperty"')}function convertCfnFlowZendeskSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowZendeskSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowZendeskSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowInforNexusSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "InforNexusSourcePropertiesProperty"')}function convertCfnFlowInforNexusSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowInforNexusSourcePropertiesPropertyValidator(properties).assertSuccess(),{Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowInforNexusSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSalesforceSourcePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("dataTransferApi",cdk().validateString)(properties.dataTransferApi)),errors.collect(cdk().propertyValidator("enableDynamicFieldUpdate",cdk().validateBoolean)(properties.enableDynamicFieldUpdate)),errors.collect(cdk().propertyValidator("includeDeletedRecords",cdk().validateBoolean)(properties.includeDeletedRecords)),errors.collect(cdk().propertyValidator("object",cdk().requiredValidator)(properties.object)),errors.collect(cdk().propertyValidator("object",cdk().validateString)(properties.object)),errors.wrap('supplied properties not correct for "SalesforceSourcePropertiesProperty"')}function convertCfnFlowSalesforceSourcePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSalesforceSourcePropertiesPropertyValidator(properties).assertSuccess(),{DataTransferApi:cdk().stringToCloudFormation(properties.dataTransferApi),EnableDynamicFieldUpdate:cdk().booleanToCloudFormation(properties.enableDynamicFieldUpdate),IncludeDeletedRecords:cdk().booleanToCloudFormation(properties.includeDeletedRecords),Object:cdk().stringToCloudFormation(properties.object)}):properties}function CfnFlowSalesforceSourcePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("dataTransferApi","DataTransferApi",properties.DataTransferApi!=null?cfn_parse().FromCloudFormation.getString(properties.DataTransferApi):void 0),ret.addPropertyResult("enableDynamicFieldUpdate","EnableDynamicFieldUpdate",properties.EnableDynamicFieldUpdate!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableDynamicFieldUpdate):void 0),ret.addPropertyResult("includeDeletedRecords","IncludeDeletedRecords",properties.IncludeDeletedRecords!=null?cfn_parse().FromCloudFormation.getBoolean(properties.IncludeDeletedRecords):void 0),ret.addPropertyResult("object","Object",properties.Object!=null?cfn_parse().FromCloudFormation.getString(properties.Object):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSourceConnectorPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("amplitude",CfnFlowAmplitudeSourcePropertiesPropertyValidator)(properties.amplitude)),errors.collect(cdk().propertyValidator("customConnector",CfnFlowCustomConnectorSourcePropertiesPropertyValidator)(properties.customConnector)),errors.collect(cdk().propertyValidator("datadog",CfnFlowDatadogSourcePropertiesPropertyValidator)(properties.datadog)),errors.collect(cdk().propertyValidator("dynatrace",CfnFlowDynatraceSourcePropertiesPropertyValidator)(properties.dynatrace)),errors.collect(cdk().propertyValidator("googleAnalytics",CfnFlowGoogleAnalyticsSourcePropertiesPropertyValidator)(properties.googleAnalytics)),errors.collect(cdk().propertyValidator("inforNexus",CfnFlowInforNexusSourcePropertiesPropertyValidator)(properties.inforNexus)),errors.collect(cdk().propertyValidator("marketo",CfnFlowMarketoSourcePropertiesPropertyValidator)(properties.marketo)),errors.collect(cdk().propertyValidator("pardot",CfnFlowPardotSourcePropertiesPropertyValidator)(properties.pardot)),errors.collect(cdk().propertyValidator("s3",CfnFlowS3SourcePropertiesPropertyValidator)(properties.s3)),errors.collect(cdk().propertyValidator("sapoData",CfnFlowSAPODataSourcePropertiesPropertyValidator)(properties.sapoData)),errors.collect(cdk().propertyValidator("salesforce",CfnFlowSalesforceSourcePropertiesPropertyValidator)(properties.salesforce)),errors.collect(cdk().propertyValidator("serviceNow",CfnFlowServiceNowSourcePropertiesPropertyValidator)(properties.serviceNow)),errors.collect(cdk().propertyValidator("singular",CfnFlowSingularSourcePropertiesPropertyValidator)(properties.singular)),errors.collect(cdk().propertyValidator("slack",CfnFlowSlackSourcePropertiesPropertyValidator)(properties.slack)),errors.collect(cdk().propertyValidator("trendmicro",CfnFlowTrendmicroSourcePropertiesPropertyValidator)(properties.trendmicro)),errors.collect(cdk().propertyValidator("veeva",CfnFlowVeevaSourcePropertiesPropertyValidator)(properties.veeva)),errors.collect(cdk().propertyValidator("zendesk",CfnFlowZendeskSourcePropertiesPropertyValidator)(properties.zendesk)),errors.wrap('supplied properties not correct for "SourceConnectorPropertiesProperty"')}function convertCfnFlowSourceConnectorPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSourceConnectorPropertiesPropertyValidator(properties).assertSuccess(),{Amplitude:convertCfnFlowAmplitudeSourcePropertiesPropertyToCloudFormation(properties.amplitude),CustomConnector:convertCfnFlowCustomConnectorSourcePropertiesPropertyToCloudFormation(properties.customConnector),Datadog:convertCfnFlowDatadogSourcePropertiesPropertyToCloudFormation(properties.datadog),Dynatrace:convertCfnFlowDynatraceSourcePropertiesPropertyToCloudFormation(properties.dynatrace),GoogleAnalytics:convertCfnFlowGoogleAnalyticsSourcePropertiesPropertyToCloudFormation(properties.googleAnalytics),InforNexus:convertCfnFlowInforNexusSourcePropertiesPropertyToCloudFormation(properties.inforNexus),Marketo:convertCfnFlowMarketoSourcePropertiesPropertyToCloudFormation(properties.marketo),Pardot:convertCfnFlowPardotSourcePropertiesPropertyToCloudFormation(properties.pardot),S3:convertCfnFlowS3SourcePropertiesPropertyToCloudFormation(properties.s3),SAPOData:convertCfnFlowSAPODataSourcePropertiesPropertyToCloudFormation(properties.sapoData),Salesforce:convertCfnFlowSalesforceSourcePropertiesPropertyToCloudFormation(properties.salesforce),ServiceNow:convertCfnFlowServiceNowSourcePropertiesPropertyToCloudFormation(properties.serviceNow),Singular:convertCfnFlowSingularSourcePropertiesPropertyToCloudFormation(properties.singular),Slack:convertCfnFlowSlackSourcePropertiesPropertyToCloudFormation(properties.slack),Trendmicro:convertCfnFlowTrendmicroSourcePropertiesPropertyToCloudFormation(properties.trendmicro),Veeva:convertCfnFlowVeevaSourcePropertiesPropertyToCloudFormation(properties.veeva),Zendesk:convertCfnFlowZendeskSourcePropertiesPropertyToCloudFormation(properties.zendesk)}):properties}function CfnFlowSourceConnectorPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("amplitude","Amplitude",properties.Amplitude!=null?CfnFlowAmplitudeSourcePropertiesPropertyFromCloudFormation(properties.Amplitude):void 0),ret.addPropertyResult("customConnector","CustomConnector",properties.CustomConnector!=null?CfnFlowCustomConnectorSourcePropertiesPropertyFromCloudFormation(properties.CustomConnector):void 0),ret.addPropertyResult("datadog","Datadog",properties.Datadog!=null?CfnFlowDatadogSourcePropertiesPropertyFromCloudFormation(properties.Datadog):void 0),ret.addPropertyResult("dynatrace","Dynatrace",properties.Dynatrace!=null?CfnFlowDynatraceSourcePropertiesPropertyFromCloudFormation(properties.Dynatrace):void 0),ret.addPropertyResult("googleAnalytics","GoogleAnalytics",properties.GoogleAnalytics!=null?CfnFlowGoogleAnalyticsSourcePropertiesPropertyFromCloudFormation(properties.GoogleAnalytics):void 0),ret.addPropertyResult("inforNexus","InforNexus",properties.InforNexus!=null?CfnFlowInforNexusSourcePropertiesPropertyFromCloudFormation(properties.InforNexus):void 0),ret.addPropertyResult("marketo","Marketo",properties.Marketo!=null?CfnFlowMarketoSourcePropertiesPropertyFromCloudFormation(properties.Marketo):void 0),ret.addPropertyResult("pardot","Pardot",properties.Pardot!=null?CfnFlowPardotSourcePropertiesPropertyFromCloudFormation(properties.Pardot):void 0),ret.addPropertyResult("s3","S3",properties.S3!=null?CfnFlowS3SourcePropertiesPropertyFromCloudFormation(properties.S3):void 0),ret.addPropertyResult("salesforce","Salesforce",properties.Salesforce!=null?CfnFlowSalesforceSourcePropertiesPropertyFromCloudFormation(properties.Salesforce):void 0),ret.addPropertyResult("sapoData","SAPOData",properties.SAPOData!=null?CfnFlowSAPODataSourcePropertiesPropertyFromCloudFormation(properties.SAPOData):void 0),ret.addPropertyResult("serviceNow","ServiceNow",properties.ServiceNow!=null?CfnFlowServiceNowSourcePropertiesPropertyFromCloudFormation(properties.ServiceNow):void 0),ret.addPropertyResult("singular","Singular",properties.Singular!=null?CfnFlowSingularSourcePropertiesPropertyFromCloudFormation(properties.Singular):void 0),ret.addPropertyResult("slack","Slack",properties.Slack!=null?CfnFlowSlackSourcePropertiesPropertyFromCloudFormation(properties.Slack):void 0),ret.addPropertyResult("trendmicro","Trendmicro",properties.Trendmicro!=null?CfnFlowTrendmicroSourcePropertiesPropertyFromCloudFormation(properties.Trendmicro):void 0),ret.addPropertyResult("veeva","Veeva",properties.Veeva!=null?CfnFlowVeevaSourcePropertiesPropertyFromCloudFormation(properties.Veeva):void 0),ret.addPropertyResult("zendesk","Zendesk",properties.Zendesk!=null?CfnFlowZendeskSourcePropertiesPropertyFromCloudFormation(properties.Zendesk):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowIncrementalPullConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("datetimeTypeFieldName",cdk().validateString)(properties.datetimeTypeFieldName)),errors.wrap('supplied properties not correct for "IncrementalPullConfigProperty"')}function convertCfnFlowIncrementalPullConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowIncrementalPullConfigPropertyValidator(properties).assertSuccess(),{DatetimeTypeFieldName:cdk().stringToCloudFormation(properties.datetimeTypeFieldName)}):properties}function CfnFlowIncrementalPullConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("datetimeTypeFieldName","DatetimeTypeFieldName",properties.DatetimeTypeFieldName!=null?cfn_parse().FromCloudFormation.getString(properties.DatetimeTypeFieldName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowSourceFlowConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("apiVersion",cdk().validateString)(properties.apiVersion)),errors.collect(cdk().propertyValidator("connectorProfileName",cdk().validateString)(properties.connectorProfileName)),errors.collect(cdk().propertyValidator("connectorType",cdk().requiredValidator)(properties.connectorType)),errors.collect(cdk().propertyValidator("connectorType",cdk().validateString)(properties.connectorType)),errors.collect(cdk().propertyValidator("incrementalPullConfig",CfnFlowIncrementalPullConfigPropertyValidator)(properties.incrementalPullConfig)),errors.collect(cdk().propertyValidator("sourceConnectorProperties",cdk().requiredValidator)(properties.sourceConnectorProperties)),errors.collect(cdk().propertyValidator("sourceConnectorProperties",CfnFlowSourceConnectorPropertiesPropertyValidator)(properties.sourceConnectorProperties)),errors.wrap('supplied properties not correct for "SourceFlowConfigProperty"')}function convertCfnFlowSourceFlowConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowSourceFlowConfigPropertyValidator(properties).assertSuccess(),{ApiVersion:cdk().stringToCloudFormation(properties.apiVersion),ConnectorProfileName:cdk().stringToCloudFormation(properties.connectorProfileName),ConnectorType:cdk().stringToCloudFormation(properties.connectorType),IncrementalPullConfig:convertCfnFlowIncrementalPullConfigPropertyToCloudFormation(properties.incrementalPullConfig),SourceConnectorProperties:convertCfnFlowSourceConnectorPropertiesPropertyToCloudFormation(properties.sourceConnectorProperties)}):properties}function CfnFlowSourceFlowConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("apiVersion","ApiVersion",properties.ApiVersion!=null?cfn_parse().FromCloudFormation.getString(properties.ApiVersion):void 0),ret.addPropertyResult("connectorProfileName","ConnectorProfileName",properties.ConnectorProfileName!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorProfileName):void 0),ret.addPropertyResult("connectorType","ConnectorType",properties.ConnectorType!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectorType):void 0),ret.addPropertyResult("incrementalPullConfig","IncrementalPullConfig",properties.IncrementalPullConfig!=null?CfnFlowIncrementalPullConfigPropertyFromCloudFormation(properties.IncrementalPullConfig):void 0),ret.addPropertyResult("sourceConnectorProperties","SourceConnectorProperties",properties.SourceConnectorProperties!=null?CfnFlowSourceConnectorPropertiesPropertyFromCloudFormation(properties.SourceConnectorProperties):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowGlueDataCatalogPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("databaseName",cdk().requiredValidator)(properties.databaseName)),errors.collect(cdk().propertyValidator("databaseName",cdk().validateString)(properties.databaseName)),errors.collect(cdk().propertyValidator("roleArn",cdk().requiredValidator)(properties.roleArn)),errors.collect(cdk().propertyValidator("roleArn",cdk().validateString)(properties.roleArn)),errors.collect(cdk().propertyValidator("tablePrefix",cdk().requiredValidator)(properties.tablePrefix)),errors.collect(cdk().propertyValidator("tablePrefix",cdk().validateString)(properties.tablePrefix)),errors.wrap('supplied properties not correct for "GlueDataCatalogProperty"')}function convertCfnFlowGlueDataCatalogPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowGlueDataCatalogPropertyValidator(properties).assertSuccess(),{DatabaseName:cdk().stringToCloudFormation(properties.databaseName),RoleArn:cdk().stringToCloudFormation(properties.roleArn),TablePrefix:cdk().stringToCloudFormation(properties.tablePrefix)}):properties}function CfnFlowGlueDataCatalogPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("databaseName","DatabaseName",properties.DatabaseName!=null?cfn_parse().FromCloudFormation.getString(properties.DatabaseName):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("tablePrefix","TablePrefix",properties.TablePrefix!=null?cfn_parse().FromCloudFormation.getString(properties.TablePrefix):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowMetadataCatalogConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("glueDataCatalog",CfnFlowGlueDataCatalogPropertyValidator)(properties.glueDataCatalog)),errors.wrap('supplied properties not correct for "MetadataCatalogConfigProperty"')}function convertCfnFlowMetadataCatalogConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowMetadataCatalogConfigPropertyValidator(properties).assertSuccess(),{GlueDataCatalog:convertCfnFlowGlueDataCatalogPropertyToCloudFormation(properties.glueDataCatalog)}):properties}function CfnFlowMetadataCatalogConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("glueDataCatalog","GlueDataCatalog",properties.GlueDataCatalog!=null?CfnFlowGlueDataCatalogPropertyFromCloudFormation(properties.GlueDataCatalog):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFlowPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return 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("destinationFlowConfigList",cdk().requiredValidator)(properties.destinationFlowConfigList)),errors.collect(cdk().propertyValidator("destinationFlowConfigList",cdk().listValidator(CfnFlowDestinationFlowConfigPropertyValidator))(properties.destinationFlowConfigList)),errors.collect(cdk().propertyValidator("flowName",cdk().requiredValidator)(properties.flowName)),errors.collect(cdk().propertyValidator("flowName",cdk().validateString)(properties.flowName)),errors.collect(cdk().propertyValidator("flowStatus",cdk().validateString)(properties.flowStatus)),errors.collect(cdk().propertyValidator("kmsArn",cdk().validateString)(properties.kmsArn)),errors.collect(cdk().propertyValidator("metadataCatalogConfig",CfnFlowMetadataCatalogConfigPropertyValidator)(properties.metadataCatalogConfig)),errors.collect(cdk().propertyValidator("sourceFlowConfig",cdk().requiredValidator)(properties.sourceFlowConfig)),errors.collect(cdk().propertyValidator("sourceFlowConfig",CfnFlowSourceFlowConfigPropertyValidator)(properties.sourceFlowConfig)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("tasks",cdk().requiredValidator)(properties.tasks)),errors.collect(cdk().propertyValidator("tasks",cdk().listValidator(CfnFlowTaskPropertyValidator))(properties.tasks)),errors.collect(cdk().propertyValidator("triggerConfig",cdk().requiredValidator)(properties.triggerConfig)),errors.collect(cdk().propertyValidator("triggerConfig",CfnFlowTriggerConfigPropertyValidator)(properties.triggerConfig)),errors.wrap('supplied properties not correct for "CfnFlowProps"')}function convertCfnFlowPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnFlowPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),DestinationFlowConfigList:cdk().listMapper(convertCfnFlowDestinationFlowConfigPropertyToCloudFormation)(properties.destinationFlowConfigList),FlowName:cdk().stringToCloudFormation(properties.flowName),FlowStatus:cdk().stringToCloudFormation(properties.flowStatus),KMSArn:cdk().stringToCloudFormation(properties.kmsArn),MetadataCatalogConfig:convertCfnFlowMetadataCatalogConfigPropertyToCloudFormation(properties.metadataCatalogConfig),SourceFlowConfig:convertCfnFlowSourceFlowConfigPropertyToCloudFormation(properties.sourceFlowConfig),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),Tasks:cdk().listMapper(convertCfnFlowTaskPropertyToCloudFormation)(properties.tasks),TriggerConfig:convertCfnFlowTriggerConfigPropertyToCloudFormation(properties.triggerConfig)}):properties}function CfnFlowPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(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("destinationFlowConfigList","DestinationFlowConfigList",properties.DestinationFlowConfigList!=null?cfn_parse().FromCloudFormation.getArray(CfnFlowDestinationFlowConfigPropertyFromCloudFormation)(properties.DestinationFlowConfigList):void 0),ret.addPropertyResult("flowName","FlowName",properties.FlowName!=null?cfn_parse().FromCloudFormation.getString(properties.FlowName):void 0),ret.addPropertyResult("flowStatus","FlowStatus",properties.FlowStatus!=null?cfn_parse().FromCloudFormation.getString(properties.FlowStatus):void 0),ret.addPropertyResult("kmsArn","KMSArn",properties.KMSArn!=null?cfn_parse().FromCloudFormation.getString(properties.KMSArn):void 0),ret.addPropertyResult("metadataCatalogConfig","MetadataCatalogConfig",properties.MetadataCatalogConfig!=null?CfnFlowMetadataCatalogConfigPropertyFromCloudFormation(properties.MetadataCatalogConfig):void 0),ret.addPropertyResult("sourceFlowConfig","SourceFlowConfig",properties.SourceFlowConfig!=null?CfnFlowSourceFlowConfigPropertyFromCloudFormation(properties.SourceFlowConfig):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("tasks","Tasks",properties.Tasks!=null?cfn_parse().FromCloudFormation.getArray(CfnFlowTaskPropertyFromCloudFormation)(properties.Tasks):void 0),ret.addPropertyResult("triggerConfig","TriggerConfig",properties.TriggerConfig!=null?CfnFlowTriggerConfigPropertyFromCloudFormation(properties.TriggerConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}