UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 129 kB
"use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k,_l,_m,_o;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnUser=exports.CfnStackUserAssociation=exports.CfnStackFleetAssociation=exports.CfnStack=exports.CfnImageBuilder=exports.CfnFleet=exports.CfnEntitlement=exports.CfnDirectoryConfig=exports.CfnApplicationFleetAssociation=exports.CfnApplicationEntitlementAssociation=exports.CfnApplication=exports.CfnAppBlockBuilder=exports.CfnAppBlock=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");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 CfnAppBlock extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAppBlockPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnAppBlock(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}constructor(scope,id,props){super(scope,id,{type:CfnAppBlock.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appstream_CfnAppBlockProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAppBlock),error}cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"sourceS3Location",this),this.attrArn=cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING)),this.attrCreatedTime=cdk().Token.asString(this.getAtt("CreatedTime",cdk().ResolutionTypeHint.STRING)),this.description=props.description,this.displayName=props.displayName,this.name=props.name,this.packagingType=props.packagingType,this.postSetupScriptDetails=props.postSetupScriptDetails,this.setupScriptDetails=props.setupScriptDetails,this.sourceS3Location=props.sourceS3Location,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::AppStream::AppBlock",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{description:this.description,displayName:this.displayName,name:this.name,packagingType:this.packagingType,postSetupScriptDetails:this.postSetupScriptDetails,setupScriptDetails:this.setupScriptDetails,sourceS3Location:this.sourceS3Location,tags:this.tags.renderTags()}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnAppBlock.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAppBlockPropsToCloudFormation(props)}}exports.CfnAppBlock=CfnAppBlock,_a=JSII_RTTI_SYMBOL_1,CfnAppBlock[_a]={fqn:"aws-cdk-lib.aws_appstream.CfnAppBlock",version:"2.202.0"},CfnAppBlock.CFN_RESOURCE_TYPE_NAME="AWS::AppStream::AppBlock";function CfnAppBlockS3LocationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("s3Bucket",cdk().requiredValidator)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Bucket",cdk().validateString)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Key",cdk().validateString)(properties.s3Key)),errors.wrap('supplied properties not correct for "S3LocationProperty"')}function convertCfnAppBlockS3LocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppBlockS3LocationPropertyValidator(properties).assertSuccess(),{S3Bucket:cdk().stringToCloudFormation(properties.s3Bucket),S3Key:cdk().stringToCloudFormation(properties.s3Key)}):properties}function CfnAppBlockS3LocationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("s3Bucket","S3Bucket",properties.S3Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.S3Bucket):void 0),ret.addPropertyResult("s3Key","S3Key",properties.S3Key!=null?cfn_parse().FromCloudFormation.getString(properties.S3Key):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppBlockScriptDetailsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("executableParameters",cdk().validateString)(properties.executableParameters)),errors.collect(cdk().propertyValidator("executablePath",cdk().requiredValidator)(properties.executablePath)),errors.collect(cdk().propertyValidator("executablePath",cdk().validateString)(properties.executablePath)),errors.collect(cdk().propertyValidator("scriptS3Location",cdk().requiredValidator)(properties.scriptS3Location)),errors.collect(cdk().propertyValidator("scriptS3Location",CfnAppBlockS3LocationPropertyValidator)(properties.scriptS3Location)),errors.collect(cdk().propertyValidator("timeoutInSeconds",cdk().requiredValidator)(properties.timeoutInSeconds)),errors.collect(cdk().propertyValidator("timeoutInSeconds",cdk().validateNumber)(properties.timeoutInSeconds)),errors.wrap('supplied properties not correct for "ScriptDetailsProperty"')}function convertCfnAppBlockScriptDetailsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppBlockScriptDetailsPropertyValidator(properties).assertSuccess(),{ExecutableParameters:cdk().stringToCloudFormation(properties.executableParameters),ExecutablePath:cdk().stringToCloudFormation(properties.executablePath),ScriptS3Location:convertCfnAppBlockS3LocationPropertyToCloudFormation(properties.scriptS3Location),TimeoutInSeconds:cdk().numberToCloudFormation(properties.timeoutInSeconds)}):properties}function CfnAppBlockScriptDetailsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("executableParameters","ExecutableParameters",properties.ExecutableParameters!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutableParameters):void 0),ret.addPropertyResult("executablePath","ExecutablePath",properties.ExecutablePath!=null?cfn_parse().FromCloudFormation.getString(properties.ExecutablePath):void 0),ret.addPropertyResult("scriptS3Location","ScriptS3Location",properties.ScriptS3Location!=null?CfnAppBlockS3LocationPropertyFromCloudFormation(properties.ScriptS3Location):void 0),ret.addPropertyResult("timeoutInSeconds","TimeoutInSeconds",properties.TimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.TimeoutInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppBlockPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return 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("displayName",cdk().validateString)(properties.displayName)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("packagingType",cdk().validateString)(properties.packagingType)),errors.collect(cdk().propertyValidator("postSetupScriptDetails",CfnAppBlockScriptDetailsPropertyValidator)(properties.postSetupScriptDetails)),errors.collect(cdk().propertyValidator("setupScriptDetails",CfnAppBlockScriptDetailsPropertyValidator)(properties.setupScriptDetails)),errors.collect(cdk().propertyValidator("sourceS3Location",cdk().requiredValidator)(properties.sourceS3Location)),errors.collect(cdk().propertyValidator("sourceS3Location",CfnAppBlockS3LocationPropertyValidator)(properties.sourceS3Location)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnAppBlockProps"')}function convertCfnAppBlockPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppBlockPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),DisplayName:cdk().stringToCloudFormation(properties.displayName),Name:cdk().stringToCloudFormation(properties.name),PackagingType:cdk().stringToCloudFormation(properties.packagingType),PostSetupScriptDetails:convertCfnAppBlockScriptDetailsPropertyToCloudFormation(properties.postSetupScriptDetails),SetupScriptDetails:convertCfnAppBlockScriptDetailsPropertyToCloudFormation(properties.setupScriptDetails),SourceS3Location:convertCfnAppBlockS3LocationPropertyToCloudFormation(properties.sourceS3Location),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnAppBlockPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(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("displayName","DisplayName",properties.DisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.DisplayName):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("packagingType","PackagingType",properties.PackagingType!=null?cfn_parse().FromCloudFormation.getString(properties.PackagingType):void 0),ret.addPropertyResult("postSetupScriptDetails","PostSetupScriptDetails",properties.PostSetupScriptDetails!=null?CfnAppBlockScriptDetailsPropertyFromCloudFormation(properties.PostSetupScriptDetails):void 0),ret.addPropertyResult("setupScriptDetails","SetupScriptDetails",properties.SetupScriptDetails!=null?CfnAppBlockScriptDetailsPropertyFromCloudFormation(properties.SetupScriptDetails):void 0),ret.addPropertyResult("sourceS3Location","SourceS3Location",properties.SourceS3Location!=null?CfnAppBlockS3LocationPropertyFromCloudFormation(properties.SourceS3Location):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAppBlockBuilder extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAppBlockBuilderPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnAppBlockBuilder(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}constructor(scope,id,props){super(scope,id,{type:CfnAppBlockBuilder.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appstream_CfnAppBlockBuilderProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAppBlockBuilder),error}cdk().requireProperty(props,"instanceType",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"platform",this),cdk().requireProperty(props,"vpcConfig",this),this.attrArn=cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING)),this.attrCreatedTime=cdk().Token.asString(this.getAtt("CreatedTime",cdk().ResolutionTypeHint.STRING)),this.accessEndpoints=props.accessEndpoints,this.appBlockArns=props.appBlockArns,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::AppStream::AppBlockBuilder",void 0,{tagPropertyName:"tags"}),this.description=props.description,this.displayName=props.displayName,this.enableDefaultInternetAccess=props.enableDefaultInternetAccess,this.iamRoleArn=props.iamRoleArn,this.instanceType=props.instanceType,this.name=props.name,this.platform=props.platform,this.tags=props.tags,this.vpcConfig=props.vpcConfig}get cfnProperties(){return{accessEndpoints:this.accessEndpoints,appBlockArns:this.appBlockArns,tags:this.cdkTagManager.renderTags(this.tags),description:this.description,displayName:this.displayName,enableDefaultInternetAccess:this.enableDefaultInternetAccess,iamRoleArn:this.iamRoleArn,instanceType:this.instanceType,name:this.name,platform:this.platform,vpcConfig:this.vpcConfig}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnAppBlockBuilder.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAppBlockBuilderPropsToCloudFormation(props)}}exports.CfnAppBlockBuilder=CfnAppBlockBuilder,_b=JSII_RTTI_SYMBOL_1,CfnAppBlockBuilder[_b]={fqn:"aws-cdk-lib.aws_appstream.CfnAppBlockBuilder",version:"2.202.0"},CfnAppBlockBuilder.CFN_RESOURCE_TYPE_NAME="AWS::AppStream::AppBlockBuilder";function CfnAppBlockBuilderVpcConfigPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnetIds",cdk().listValidator(cdk().validateString))(properties.subnetIds)),errors.wrap('supplied properties not correct for "VpcConfigProperty"')}function convertCfnAppBlockBuilderVpcConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppBlockBuilderVpcConfigPropertyValidator(properties).assertSuccess(),{SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),SubnetIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnetIds)}):properties}function CfnAppBlockBuilderVpcConfigPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SubnetIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppBlockBuilderAccessEndpointPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("endpointType",cdk().requiredValidator)(properties.endpointType)),errors.collect(cdk().propertyValidator("endpointType",cdk().validateString)(properties.endpointType)),errors.collect(cdk().propertyValidator("vpceId",cdk().requiredValidator)(properties.vpceId)),errors.collect(cdk().propertyValidator("vpceId",cdk().validateString)(properties.vpceId)),errors.wrap('supplied properties not correct for "AccessEndpointProperty"')}function convertCfnAppBlockBuilderAccessEndpointPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppBlockBuilderAccessEndpointPropertyValidator(properties).assertSuccess(),{EndpointType:cdk().stringToCloudFormation(properties.endpointType),VpceId:cdk().stringToCloudFormation(properties.vpceId)}):properties}function CfnAppBlockBuilderAccessEndpointPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("endpointType","EndpointType",properties.EndpointType!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointType):void 0),ret.addPropertyResult("vpceId","VpceId",properties.VpceId!=null?cfn_parse().FromCloudFormation.getString(properties.VpceId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAppBlockBuilderPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("accessEndpoints",cdk().listValidator(CfnAppBlockBuilderAccessEndpointPropertyValidator))(properties.accessEndpoints)),errors.collect(cdk().propertyValidator("appBlockArns",cdk().listValidator(cdk().validateString))(properties.appBlockArns)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("displayName",cdk().validateString)(properties.displayName)),errors.collect(cdk().propertyValidator("enableDefaultInternetAccess",cdk().validateBoolean)(properties.enableDefaultInternetAccess)),errors.collect(cdk().propertyValidator("iamRoleArn",cdk().validateString)(properties.iamRoleArn)),errors.collect(cdk().propertyValidator("instanceType",cdk().requiredValidator)(properties.instanceType)),errors.collect(cdk().propertyValidator("instanceType",cdk().validateString)(properties.instanceType)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("platform",cdk().requiredValidator)(properties.platform)),errors.collect(cdk().propertyValidator("platform",cdk().validateString)(properties.platform)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("vpcConfig",cdk().requiredValidator)(properties.vpcConfig)),errors.collect(cdk().propertyValidator("vpcConfig",CfnAppBlockBuilderVpcConfigPropertyValidator)(properties.vpcConfig)),errors.wrap('supplied properties not correct for "CfnAppBlockBuilderProps"')}function convertCfnAppBlockBuilderPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAppBlockBuilderPropsValidator(properties).assertSuccess(),{AccessEndpoints:cdk().listMapper(convertCfnAppBlockBuilderAccessEndpointPropertyToCloudFormation)(properties.accessEndpoints),AppBlockArns:cdk().listMapper(cdk().stringToCloudFormation)(properties.appBlockArns),Description:cdk().stringToCloudFormation(properties.description),DisplayName:cdk().stringToCloudFormation(properties.displayName),EnableDefaultInternetAccess:cdk().booleanToCloudFormation(properties.enableDefaultInternetAccess),IamRoleArn:cdk().stringToCloudFormation(properties.iamRoleArn),InstanceType:cdk().stringToCloudFormation(properties.instanceType),Name:cdk().stringToCloudFormation(properties.name),Platform:cdk().stringToCloudFormation(properties.platform),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),VpcConfig:convertCfnAppBlockBuilderVpcConfigPropertyToCloudFormation(properties.vpcConfig)}):properties}function CfnAppBlockBuilderPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("accessEndpoints","AccessEndpoints",properties.AccessEndpoints!=null?cfn_parse().FromCloudFormation.getArray(CfnAppBlockBuilderAccessEndpointPropertyFromCloudFormation)(properties.AccessEndpoints):void 0),ret.addPropertyResult("appBlockArns","AppBlockArns",properties.AppBlockArns!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AppBlockArns):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("displayName","DisplayName",properties.DisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.DisplayName):void 0),ret.addPropertyResult("enableDefaultInternetAccess","EnableDefaultInternetAccess",properties.EnableDefaultInternetAccess!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableDefaultInternetAccess):void 0),ret.addPropertyResult("iamRoleArn","IamRoleArn",properties.IamRoleArn!=null?cfn_parse().FromCloudFormation.getString(properties.IamRoleArn):void 0),ret.addPropertyResult("instanceType","InstanceType",properties.InstanceType!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceType):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("platform","Platform",properties.Platform!=null?cfn_parse().FromCloudFormation.getString(properties.Platform):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcConfig","VpcConfig",properties.VpcConfig!=null?CfnAppBlockBuilderVpcConfigPropertyFromCloudFormation(properties.VpcConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApplication extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnApplicationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnApplication(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}constructor(scope,id,props){super(scope,id,{type:CfnApplication.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appstream_CfnApplicationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApplication),error}cdk().requireProperty(props,"appBlockArn",this),cdk().requireProperty(props,"iconS3Location",this),cdk().requireProperty(props,"instanceFamilies",this),cdk().requireProperty(props,"launchPath",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"platforms",this),this.attrArn=cdk().Token.asString(this.getAtt("Arn",cdk().ResolutionTypeHint.STRING)),this.attrCreatedTime=cdk().Token.asString(this.getAtt("CreatedTime",cdk().ResolutionTypeHint.STRING)),this.appBlockArn=props.appBlockArn,this.attributesToDelete=props.attributesToDelete,this.description=props.description,this.displayName=props.displayName,this.iconS3Location=props.iconS3Location,this.instanceFamilies=props.instanceFamilies,this.launchParameters=props.launchParameters,this.launchPath=props.launchPath,this.name=props.name,this.platforms=props.platforms,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::AppStream::Application",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags,this.workingDirectory=props.workingDirectory}get cfnProperties(){return{appBlockArn:this.appBlockArn,attributesToDelete:this.attributesToDelete,description:this.description,displayName:this.displayName,iconS3Location:this.iconS3Location,instanceFamilies:this.instanceFamilies,launchParameters:this.launchParameters,launchPath:this.launchPath,name:this.name,platforms:this.platforms,tags:this.tags.renderTags(),workingDirectory:this.workingDirectory}}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",CfnApplication.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnApplicationPropsToCloudFormation(props)}}exports.CfnApplication=CfnApplication,_c=JSII_RTTI_SYMBOL_1,CfnApplication[_c]={fqn:"aws-cdk-lib.aws_appstream.CfnApplication",version:"2.202.0"},CfnApplication.CFN_RESOURCE_TYPE_NAME="AWS::AppStream::Application";function CfnApplicationS3LocationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("s3Bucket",cdk().requiredValidator)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Bucket",cdk().validateString)(properties.s3Bucket)),errors.collect(cdk().propertyValidator("s3Key",cdk().requiredValidator)(properties.s3Key)),errors.collect(cdk().propertyValidator("s3Key",cdk().validateString)(properties.s3Key)),errors.wrap('supplied properties not correct for "S3LocationProperty"')}function convertCfnApplicationS3LocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationS3LocationPropertyValidator(properties).assertSuccess(),{S3Bucket:cdk().stringToCloudFormation(properties.s3Bucket),S3Key:cdk().stringToCloudFormation(properties.s3Key)}):properties}function CfnApplicationS3LocationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("s3Bucket","S3Bucket",properties.S3Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.S3Bucket):void 0),ret.addPropertyResult("s3Key","S3Key",properties.S3Key!=null?cfn_parse().FromCloudFormation.getString(properties.S3Key):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApplicationPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("appBlockArn",cdk().requiredValidator)(properties.appBlockArn)),errors.collect(cdk().propertyValidator("appBlockArn",cdk().validateString)(properties.appBlockArn)),errors.collect(cdk().propertyValidator("attributesToDelete",cdk().listValidator(cdk().validateString))(properties.attributesToDelete)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("displayName",cdk().validateString)(properties.displayName)),errors.collect(cdk().propertyValidator("iconS3Location",cdk().requiredValidator)(properties.iconS3Location)),errors.collect(cdk().propertyValidator("iconS3Location",CfnApplicationS3LocationPropertyValidator)(properties.iconS3Location)),errors.collect(cdk().propertyValidator("instanceFamilies",cdk().requiredValidator)(properties.instanceFamilies)),errors.collect(cdk().propertyValidator("instanceFamilies",cdk().listValidator(cdk().validateString))(properties.instanceFamilies)),errors.collect(cdk().propertyValidator("launchParameters",cdk().validateString)(properties.launchParameters)),errors.collect(cdk().propertyValidator("launchPath",cdk().requiredValidator)(properties.launchPath)),errors.collect(cdk().propertyValidator("launchPath",cdk().validateString)(properties.launchPath)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("platforms",cdk().requiredValidator)(properties.platforms)),errors.collect(cdk().propertyValidator("platforms",cdk().listValidator(cdk().validateString))(properties.platforms)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("workingDirectory",cdk().validateString)(properties.workingDirectory)),errors.wrap('supplied properties not correct for "CfnApplicationProps"')}function convertCfnApplicationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationPropsValidator(properties).assertSuccess(),{AppBlockArn:cdk().stringToCloudFormation(properties.appBlockArn),AttributesToDelete:cdk().listMapper(cdk().stringToCloudFormation)(properties.attributesToDelete),Description:cdk().stringToCloudFormation(properties.description),DisplayName:cdk().stringToCloudFormation(properties.displayName),IconS3Location:convertCfnApplicationS3LocationPropertyToCloudFormation(properties.iconS3Location),InstanceFamilies:cdk().listMapper(cdk().stringToCloudFormation)(properties.instanceFamilies),LaunchParameters:cdk().stringToCloudFormation(properties.launchParameters),LaunchPath:cdk().stringToCloudFormation(properties.launchPath),Name:cdk().stringToCloudFormation(properties.name),Platforms:cdk().listMapper(cdk().stringToCloudFormation)(properties.platforms),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),WorkingDirectory:cdk().stringToCloudFormation(properties.workingDirectory)}):properties}function CfnApplicationPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("appBlockArn","AppBlockArn",properties.AppBlockArn!=null?cfn_parse().FromCloudFormation.getString(properties.AppBlockArn):void 0),ret.addPropertyResult("attributesToDelete","AttributesToDelete",properties.AttributesToDelete!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AttributesToDelete):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("displayName","DisplayName",properties.DisplayName!=null?cfn_parse().FromCloudFormation.getString(properties.DisplayName):void 0),ret.addPropertyResult("iconS3Location","IconS3Location",properties.IconS3Location!=null?CfnApplicationS3LocationPropertyFromCloudFormation(properties.IconS3Location):void 0),ret.addPropertyResult("instanceFamilies","InstanceFamilies",properties.InstanceFamilies!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.InstanceFamilies):void 0),ret.addPropertyResult("launchParameters","LaunchParameters",properties.LaunchParameters!=null?cfn_parse().FromCloudFormation.getString(properties.LaunchParameters):void 0),ret.addPropertyResult("launchPath","LaunchPath",properties.LaunchPath!=null?cfn_parse().FromCloudFormation.getString(properties.LaunchPath):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("platforms","Platforms",properties.Platforms!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Platforms):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("workingDirectory","WorkingDirectory",properties.WorkingDirectory!=null?cfn_parse().FromCloudFormation.getString(properties.WorkingDirectory):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApplicationEntitlementAssociation extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnApplicationEntitlementAssociationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnApplicationEntitlementAssociation(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}constructor(scope,id,props){super(scope,id,{type:CfnApplicationEntitlementAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appstream_CfnApplicationEntitlementAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApplicationEntitlementAssociation),error}cdk().requireProperty(props,"applicationIdentifier",this),cdk().requireProperty(props,"entitlementName",this),cdk().requireProperty(props,"stackName",this),this.applicationIdentifier=props.applicationIdentifier,this.entitlementName=props.entitlementName,this.stackName=props.stackName}get cfnProperties(){return{applicationIdentifier:this.applicationIdentifier,entitlementName:this.entitlementName,stackName:this.stackName}}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",CfnApplicationEntitlementAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnApplicationEntitlementAssociationPropsToCloudFormation(props)}}exports.CfnApplicationEntitlementAssociation=CfnApplicationEntitlementAssociation,_d=JSII_RTTI_SYMBOL_1,CfnApplicationEntitlementAssociation[_d]={fqn:"aws-cdk-lib.aws_appstream.CfnApplicationEntitlementAssociation",version:"2.202.0"},CfnApplicationEntitlementAssociation.CFN_RESOURCE_TYPE_NAME="AWS::AppStream::ApplicationEntitlementAssociation";function CfnApplicationEntitlementAssociationPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("applicationIdentifier",cdk().requiredValidator)(properties.applicationIdentifier)),errors.collect(cdk().propertyValidator("applicationIdentifier",cdk().validateString)(properties.applicationIdentifier)),errors.collect(cdk().propertyValidator("entitlementName",cdk().requiredValidator)(properties.entitlementName)),errors.collect(cdk().propertyValidator("entitlementName",cdk().validateString)(properties.entitlementName)),errors.collect(cdk().propertyValidator("stackName",cdk().requiredValidator)(properties.stackName)),errors.collect(cdk().propertyValidator("stackName",cdk().validateString)(properties.stackName)),errors.wrap('supplied properties not correct for "CfnApplicationEntitlementAssociationProps"')}function convertCfnApplicationEntitlementAssociationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationEntitlementAssociationPropsValidator(properties).assertSuccess(),{ApplicationIdentifier:cdk().stringToCloudFormation(properties.applicationIdentifier),EntitlementName:cdk().stringToCloudFormation(properties.entitlementName),StackName:cdk().stringToCloudFormation(properties.stackName)}):properties}function CfnApplicationEntitlementAssociationPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("applicationIdentifier","ApplicationIdentifier",properties.ApplicationIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationIdentifier):void 0),ret.addPropertyResult("entitlementName","EntitlementName",properties.EntitlementName!=null?cfn_parse().FromCloudFormation.getString(properties.EntitlementName):void 0),ret.addPropertyResult("stackName","StackName",properties.StackName!=null?cfn_parse().FromCloudFormation.getString(properties.StackName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApplicationFleetAssociation extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnApplicationFleetAssociationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnApplicationFleetAssociation(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}constructor(scope,id,props){super(scope,id,{type:CfnApplicationFleetAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appstream_CfnApplicationFleetAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApplicationFleetAssociation),error}cdk().requireProperty(props,"applicationArn",this),cdk().requireProperty(props,"fleetName",this),this.applicationArn=props.applicationArn,this.fleetName=props.fleetName}get cfnProperties(){return{applicationArn:this.applicationArn,fleetName:this.fleetName}}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",CfnApplicationFleetAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnApplicationFleetAssociationPropsToCloudFormation(props)}}exports.CfnApplicationFleetAssociation=CfnApplicationFleetAssociation,_e=JSII_RTTI_SYMBOL_1,CfnApplicationFleetAssociation[_e]={fqn:"aws-cdk-lib.aws_appstream.CfnApplicationFleetAssociation",version:"2.202.0"},CfnApplicationFleetAssociation.CFN_RESOURCE_TYPE_NAME="AWS::AppStream::ApplicationFleetAssociation";function CfnApplicationFleetAssociationPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("applicationArn",cdk().requiredValidator)(properties.applicationArn)),errors.collect(cdk().propertyValidator("applicationArn",cdk().validateString)(properties.applicationArn)),errors.collect(cdk().propertyValidator("fleetName",cdk().requiredValidator)(properties.fleetName)),errors.collect(cdk().propertyValidator("fleetName",cdk().validateString)(properties.fleetName)),errors.wrap('supplied properties not correct for "CfnApplicationFleetAssociationProps"')}function convertCfnApplicationFleetAssociationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApplicationFleetAssociationPropsValidator(properties).assertSuccess(),{ApplicationArn:cdk().stringToCloudFormation(properties.applicationArn),FleetName:cdk().stringToCloudFormation(properties.fleetName)}):properties}function CfnApplicationFleetAssociationPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("applicationArn","ApplicationArn",properties.ApplicationArn!=null?cfn_parse().FromCloudFormation.getString(properties.ApplicationArn):void 0),ret.addPropertyResult("fleetName","FleetName",properties.FleetName!=null?cfn_parse().FromCloudFormation.getString(properties.FleetName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDirectoryConfig extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDirectoryConfigPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnDirectoryConfig(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}constructor(scope,id,props){super(scope,id,{type:CfnDirectoryConfig.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_appstream_CfnDirectoryConfigProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDirectoryConfig),error}cdk().requireProperty(props,"directoryName",this),cdk().requireProperty(props,"organizationalUnitDistinguishedNames",this),cdk().requireProperty(props,"serviceAccountCredentials",this),this.certificateBasedAuthProperties=props.certificateBasedAuthProperties,this.directoryName=props.directoryName,this.organizationalUnitDistinguishedNames=props.organizationalUnitDistinguishedNames,this.serviceAccountCredentials=props.serviceAccountCredentials}get cfnProperties(){return{certificateBasedAuthProperties:this.certificateBasedAuthProperties,directoryName:this.directoryName,organizationalUnitDistinguishedNames:this.organizationalUnitDistinguishedNames,serviceAccountCredentials:this.serviceAccountCredentials}}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",CfnDirectoryConfig.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDirectoryConfigPropsToCloudFormation(props)}}exports.CfnDirectoryConfig=CfnDirectoryConfig,_f=JSII_RTTI_SYMBOL_1,CfnDirectoryConfig[_f]={fqn:"aws-cdk-lib.aws_appstream.CfnDirectoryConfig",version:"2.202.0"},CfnDirectoryConfig.CFN_RESOURCE_TYPE_NAME="AWS::AppStream::DirectoryConfig";function CfnDirectoryConfigServiceAccountCredentialsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return 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().requiredValidator)(properties.accountName)),errors.collect(cdk().propertyValidator("accountName",cdk().validateString)(properties.accountName)),errors.collect(cdk().propertyValidator("accountPassword",cdk().requiredValidator)(properties.accountPassword)),errors.collect(cdk().propertyValidator("accountPassword",cdk().validateString)(properties.accountPassword)),errors.wrap('supplied properties not correct for "ServiceAccountCredentialsProperty"')}function convertCfnDirectoryConfigServiceAccountCredentialsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDirectoryConfigServiceAccountCredentialsPropertyValidator(properties).assertSuccess(),{AccountName:cdk().stringToCloudFormation(properties.accountName),AccountPassword:cdk().stringToCloudFormation(properties.accountPassword)}):properties}function CfnDirectoryConfigServiceAccountCredentialsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(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("accountPassword","AccountPassword",properties.AccountPassword!=null?cfn_parse().FromCloudFormation.getString(properties.AccountPassword):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDirectoryConfigCertificateBasedAuthPropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("certificateAuthorityArn",cdk().validateString)(properties.certificateAuthorityArn)),errors.collect(cdk().propertyValidator("status",cdk().validateString)(properties.status)),errors.wrap('supplied properties not correct for "CertificateBasedAuthPropertiesProperty"')}function convertCfnDirectoryConfigCertificateBasedAuthPropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDirectoryConfigCertificateBasedAuthPropertiesPropertyValidator(properties).assertSuccess(),{CertificateAuthorityArn:cdk().stringToCloudFormation(properties.certificateAuthorityArn),Status:cdk().stringToCloudFormation(properties.status)}):properties}function CfnDirectoryConfigCertificateBasedAuthPropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=pr