UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 93.9 kB
"use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnScript=exports.CfnMatchmakingRuleSet=exports.CfnMatchmakingConfiguration=exports.CfnLocation=exports.CfnGameSessionQueue=exports.CfnGameServerGroup=exports.CfnFleet=exports.CfnBuild=exports.CfnAlias=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnAliasPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("routingStrategy",cdk.requiredValidator)(properties.routingStrategy)),errors.collect(cdk.propertyValidator("routingStrategy",CfnAlias_RoutingStrategyPropertyValidator)(properties.routingStrategy)),errors.wrap('supplied properties not correct for "CfnAliasProps"')}function cfnAliasPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAliasPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),RoutingStrategy:cfnAliasRoutingStrategyPropertyToCloudFormation(properties.routingStrategy),Description:cdk.stringToCloudFormation(properties.description)}):properties}function CfnAliasPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("routingStrategy","RoutingStrategy",CfnAliasRoutingStrategyPropertyFromCloudFormation(properties.RoutingStrategy)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAlias extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnAlias.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_gamelift_CfnAliasProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAlias),error}cdk.requireProperty(props,"name",this),cdk.requireProperty(props,"routingStrategy",this),this.attrAliasId=cdk.Token.asString(this.getAtt("AliasId",cdk.ResolutionTypeHint.STRING)),this.name=props.name,this.routingStrategy=props.routingStrategy,this.description=props.description}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAliasPropsFromCloudFormation(resourceProperties),ret=new CfnAlias(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnAlias.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{name:this.name,routingStrategy:this.routingStrategy,description:this.description}}renderProperties(props){return cfnAliasPropsToCloudFormation(props)}}exports.CfnAlias=CfnAlias,_a=JSII_RTTI_SYMBOL_1,CfnAlias[_a]={fqn:"aws-cdk-lib.aws_gamelift.CfnAlias",version:"2.70.0"},CfnAlias.CFN_RESOURCE_TYPE_NAME="AWS::GameLift::Alias";function CfnAlias_RoutingStrategyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fleetId",cdk.validateString)(properties.fleetId)),errors.collect(cdk.propertyValidator("message",cdk.validateString)(properties.message)),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 "RoutingStrategyProperty"')}function cfnAliasRoutingStrategyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAlias_RoutingStrategyPropertyValidator(properties).assertSuccess(),{FleetId:cdk.stringToCloudFormation(properties.fleetId),Message:cdk.stringToCloudFormation(properties.message),Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnAliasRoutingStrategyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fleetId","FleetId",properties.FleetId!=null?cfn_parse.FromCloudFormation.getString(properties.FleetId):void 0),ret.addPropertyResult("message","Message",properties.Message!=null?cfn_parse.FromCloudFormation.getString(properties.Message):void 0),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBuildPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("operatingSystem",cdk.validateString)(properties.operatingSystem)),errors.collect(cdk.propertyValidator("storageLocation",CfnBuild_StorageLocationPropertyValidator)(properties.storageLocation)),errors.collect(cdk.propertyValidator("version",cdk.validateString)(properties.version)),errors.wrap('supplied properties not correct for "CfnBuildProps"')}function cfnBuildPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBuildPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),OperatingSystem:cdk.stringToCloudFormation(properties.operatingSystem),StorageLocation:cfnBuildStorageLocationPropertyToCloudFormation(properties.storageLocation),Version:cdk.stringToCloudFormation(properties.version)}):properties}function CfnBuildPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")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("operatingSystem","OperatingSystem",properties.OperatingSystem!=null?cfn_parse.FromCloudFormation.getString(properties.OperatingSystem):void 0),ret.addPropertyResult("storageLocation","StorageLocation",properties.StorageLocation!=null?CfnBuildStorageLocationPropertyFromCloudFormation(properties.StorageLocation):void 0),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse.FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBuild extends cdk.CfnResource{constructor(scope,id,props={}){super(scope,id,{type:CfnBuild.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_gamelift_CfnBuildProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBuild),error}this.attrBuildId=cdk.Token.asString(this.getAtt("BuildId",cdk.ResolutionTypeHint.STRING)),this.name=props.name,this.operatingSystem=props.operatingSystem,this.storageLocation=props.storageLocation,this.version=props.version}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBuildPropsFromCloudFormation(resourceProperties),ret=new CfnBuild(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnBuild.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{name:this.name,operatingSystem:this.operatingSystem,storageLocation:this.storageLocation,version:this.version}}renderProperties(props){return cfnBuildPropsToCloudFormation(props)}}exports.CfnBuild=CfnBuild,_b=JSII_RTTI_SYMBOL_1,CfnBuild[_b]={fqn:"aws-cdk-lib.aws_gamelift.CfnBuild",version:"2.70.0"},CfnBuild.CFN_RESOURCE_TYPE_NAME="AWS::GameLift::Build";function CfnBuild_StorageLocationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("bucket",cdk.requiredValidator)(properties.bucket)),errors.collect(cdk.propertyValidator("bucket",cdk.validateString)(properties.bucket)),errors.collect(cdk.propertyValidator("key",cdk.requiredValidator)(properties.key)),errors.collect(cdk.propertyValidator("key",cdk.validateString)(properties.key)),errors.collect(cdk.propertyValidator("objectVersion",cdk.validateString)(properties.objectVersion)),errors.collect(cdk.propertyValidator("roleArn",cdk.requiredValidator)(properties.roleArn)),errors.collect(cdk.propertyValidator("roleArn",cdk.validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "StorageLocationProperty"')}function cfnBuildStorageLocationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBuild_StorageLocationPropertyValidator(properties).assertSuccess(),{Bucket:cdk.stringToCloudFormation(properties.bucket),Key:cdk.stringToCloudFormation(properties.key),ObjectVersion:cdk.stringToCloudFormation(properties.objectVersion),RoleArn:cdk.stringToCloudFormation(properties.roleArn)}):properties}function CfnBuildStorageLocationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("bucket","Bucket",cfn_parse.FromCloudFormation.getString(properties.Bucket)),ret.addPropertyResult("key","Key",cfn_parse.FromCloudFormation.getString(properties.Key)),ret.addPropertyResult("objectVersion","ObjectVersion",properties.ObjectVersion!=null?cfn_parse.FromCloudFormation.getString(properties.ObjectVersion):void 0),ret.addPropertyResult("roleArn","RoleArn",cfn_parse.FromCloudFormation.getString(properties.RoleArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleetPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("anywhereConfiguration",CfnFleet_AnywhereConfigurationPropertyValidator)(properties.anywhereConfiguration)),errors.collect(cdk.propertyValidator("buildId",cdk.validateString)(properties.buildId)),errors.collect(cdk.propertyValidator("certificateConfiguration",CfnFleet_CertificateConfigurationPropertyValidator)(properties.certificateConfiguration)),errors.collect(cdk.propertyValidator("computeType",cdk.validateString)(properties.computeType)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("desiredEc2Instances",cdk.validateNumber)(properties.desiredEc2Instances)),errors.collect(cdk.propertyValidator("ec2InboundPermissions",cdk.listValidator(CfnFleet_IpPermissionPropertyValidator))(properties.ec2InboundPermissions)),errors.collect(cdk.propertyValidator("ec2InstanceType",cdk.validateString)(properties.ec2InstanceType)),errors.collect(cdk.propertyValidator("fleetType",cdk.validateString)(properties.fleetType)),errors.collect(cdk.propertyValidator("instanceRoleArn",cdk.validateString)(properties.instanceRoleArn)),errors.collect(cdk.propertyValidator("locations",cdk.listValidator(CfnFleet_LocationConfigurationPropertyValidator))(properties.locations)),errors.collect(cdk.propertyValidator("maxSize",cdk.validateNumber)(properties.maxSize)),errors.collect(cdk.propertyValidator("metricGroups",cdk.listValidator(cdk.validateString))(properties.metricGroups)),errors.collect(cdk.propertyValidator("minSize",cdk.validateNumber)(properties.minSize)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("newGameSessionProtectionPolicy",cdk.validateString)(properties.newGameSessionProtectionPolicy)),errors.collect(cdk.propertyValidator("peerVpcAwsAccountId",cdk.validateString)(properties.peerVpcAwsAccountId)),errors.collect(cdk.propertyValidator("peerVpcId",cdk.validateString)(properties.peerVpcId)),errors.collect(cdk.propertyValidator("resourceCreationLimitPolicy",CfnFleet_ResourceCreationLimitPolicyPropertyValidator)(properties.resourceCreationLimitPolicy)),errors.collect(cdk.propertyValidator("runtimeConfiguration",CfnFleet_RuntimeConfigurationPropertyValidator)(properties.runtimeConfiguration)),errors.collect(cdk.propertyValidator("scriptId",cdk.validateString)(properties.scriptId)),errors.wrap('supplied properties not correct for "CfnFleetProps"')}function cfnFleetPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleetPropsValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),AnywhereConfiguration:cfnFleetAnywhereConfigurationPropertyToCloudFormation(properties.anywhereConfiguration),BuildId:cdk.stringToCloudFormation(properties.buildId),CertificateConfiguration:cfnFleetCertificateConfigurationPropertyToCloudFormation(properties.certificateConfiguration),ComputeType:cdk.stringToCloudFormation(properties.computeType),Description:cdk.stringToCloudFormation(properties.description),DesiredEC2Instances:cdk.numberToCloudFormation(properties.desiredEc2Instances),EC2InboundPermissions:cdk.listMapper(cfnFleetIpPermissionPropertyToCloudFormation)(properties.ec2InboundPermissions),EC2InstanceType:cdk.stringToCloudFormation(properties.ec2InstanceType),FleetType:cdk.stringToCloudFormation(properties.fleetType),InstanceRoleARN:cdk.stringToCloudFormation(properties.instanceRoleArn),Locations:cdk.listMapper(cfnFleetLocationConfigurationPropertyToCloudFormation)(properties.locations),MaxSize:cdk.numberToCloudFormation(properties.maxSize),MetricGroups:cdk.listMapper(cdk.stringToCloudFormation)(properties.metricGroups),MinSize:cdk.numberToCloudFormation(properties.minSize),NewGameSessionProtectionPolicy:cdk.stringToCloudFormation(properties.newGameSessionProtectionPolicy),PeerVpcAwsAccountId:cdk.stringToCloudFormation(properties.peerVpcAwsAccountId),PeerVpcId:cdk.stringToCloudFormation(properties.peerVpcId),ResourceCreationLimitPolicy:cfnFleetResourceCreationLimitPolicyPropertyToCloudFormation(properties.resourceCreationLimitPolicy),RuntimeConfiguration:cfnFleetRuntimeConfigurationPropertyToCloudFormation(properties.runtimeConfiguration),ScriptId:cdk.stringToCloudFormation(properties.scriptId)}):properties}function CfnFleetPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("anywhereConfiguration","AnywhereConfiguration",properties.AnywhereConfiguration!=null?CfnFleetAnywhereConfigurationPropertyFromCloudFormation(properties.AnywhereConfiguration):void 0),ret.addPropertyResult("buildId","BuildId",properties.BuildId!=null?cfn_parse.FromCloudFormation.getString(properties.BuildId):void 0),ret.addPropertyResult("certificateConfiguration","CertificateConfiguration",properties.CertificateConfiguration!=null?CfnFleetCertificateConfigurationPropertyFromCloudFormation(properties.CertificateConfiguration):void 0),ret.addPropertyResult("computeType","ComputeType",properties.ComputeType!=null?cfn_parse.FromCloudFormation.getString(properties.ComputeType):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("desiredEc2Instances","DesiredEC2Instances",properties.DesiredEC2Instances!=null?cfn_parse.FromCloudFormation.getNumber(properties.DesiredEC2Instances):void 0),ret.addPropertyResult("ec2InboundPermissions","EC2InboundPermissions",properties.EC2InboundPermissions!=null?cfn_parse.FromCloudFormation.getArray(CfnFleetIpPermissionPropertyFromCloudFormation)(properties.EC2InboundPermissions):void 0),ret.addPropertyResult("ec2InstanceType","EC2InstanceType",properties.EC2InstanceType!=null?cfn_parse.FromCloudFormation.getString(properties.EC2InstanceType):void 0),ret.addPropertyResult("fleetType","FleetType",properties.FleetType!=null?cfn_parse.FromCloudFormation.getString(properties.FleetType):void 0),ret.addPropertyResult("instanceRoleArn","InstanceRoleARN",properties.InstanceRoleARN!=null?cfn_parse.FromCloudFormation.getString(properties.InstanceRoleARN):void 0),ret.addPropertyResult("locations","Locations",properties.Locations!=null?cfn_parse.FromCloudFormation.getArray(CfnFleetLocationConfigurationPropertyFromCloudFormation)(properties.Locations):void 0),ret.addPropertyResult("maxSize","MaxSize",properties.MaxSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.MaxSize):void 0),ret.addPropertyResult("metricGroups","MetricGroups",properties.MetricGroups!=null?cfn_parse.FromCloudFormation.getStringArray(properties.MetricGroups):void 0),ret.addPropertyResult("minSize","MinSize",properties.MinSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.MinSize):void 0),ret.addPropertyResult("newGameSessionProtectionPolicy","NewGameSessionProtectionPolicy",properties.NewGameSessionProtectionPolicy!=null?cfn_parse.FromCloudFormation.getString(properties.NewGameSessionProtectionPolicy):void 0),ret.addPropertyResult("peerVpcAwsAccountId","PeerVpcAwsAccountId",properties.PeerVpcAwsAccountId!=null?cfn_parse.FromCloudFormation.getString(properties.PeerVpcAwsAccountId):void 0),ret.addPropertyResult("peerVpcId","PeerVpcId",properties.PeerVpcId!=null?cfn_parse.FromCloudFormation.getString(properties.PeerVpcId):void 0),ret.addPropertyResult("resourceCreationLimitPolicy","ResourceCreationLimitPolicy",properties.ResourceCreationLimitPolicy!=null?CfnFleetResourceCreationLimitPolicyPropertyFromCloudFormation(properties.ResourceCreationLimitPolicy):void 0),ret.addPropertyResult("runtimeConfiguration","RuntimeConfiguration",properties.RuntimeConfiguration!=null?CfnFleetRuntimeConfigurationPropertyFromCloudFormation(properties.RuntimeConfiguration):void 0),ret.addPropertyResult("scriptId","ScriptId",properties.ScriptId!=null?cfn_parse.FromCloudFormation.getString(properties.ScriptId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFleet extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnFleet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_gamelift_CfnFleetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFleet),error}cdk.requireProperty(props,"name",this),this.attrFleetId=cdk.Token.asString(this.getAtt("FleetId",cdk.ResolutionTypeHint.STRING)),this.name=props.name,this.anywhereConfiguration=props.anywhereConfiguration,this.buildId=props.buildId,this.certificateConfiguration=props.certificateConfiguration,this.computeType=props.computeType,this.description=props.description,this.desiredEc2Instances=props.desiredEc2Instances,this.ec2InboundPermissions=props.ec2InboundPermissions,this.ec2InstanceType=props.ec2InstanceType,this.fleetType=props.fleetType,this.instanceRoleArn=props.instanceRoleArn,this.locations=props.locations,this.maxSize=props.maxSize,this.metricGroups=props.metricGroups,this.minSize=props.minSize,this.newGameSessionProtectionPolicy=props.newGameSessionProtectionPolicy,this.peerVpcAwsAccountId=props.peerVpcAwsAccountId,this.peerVpcId=props.peerVpcId,this.resourceCreationLimitPolicy=props.resourceCreationLimitPolicy,this.runtimeConfiguration=props.runtimeConfiguration,this.scriptId=props.scriptId}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnFleetPropsFromCloudFormation(resourceProperties),ret=new CfnFleet(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnFleet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{name:this.name,anywhereConfiguration:this.anywhereConfiguration,buildId:this.buildId,certificateConfiguration:this.certificateConfiguration,computeType:this.computeType,description:this.description,desiredEc2Instances:this.desiredEc2Instances,ec2InboundPermissions:this.ec2InboundPermissions,ec2InstanceType:this.ec2InstanceType,fleetType:this.fleetType,instanceRoleArn:this.instanceRoleArn,locations:this.locations,maxSize:this.maxSize,metricGroups:this.metricGroups,minSize:this.minSize,newGameSessionProtectionPolicy:this.newGameSessionProtectionPolicy,peerVpcAwsAccountId:this.peerVpcAwsAccountId,peerVpcId:this.peerVpcId,resourceCreationLimitPolicy:this.resourceCreationLimitPolicy,runtimeConfiguration:this.runtimeConfiguration,scriptId:this.scriptId}}renderProperties(props){return cfnFleetPropsToCloudFormation(props)}}exports.CfnFleet=CfnFleet,_c=JSII_RTTI_SYMBOL_1,CfnFleet[_c]={fqn:"aws-cdk-lib.aws_gamelift.CfnFleet",version:"2.70.0"},CfnFleet.CFN_RESOURCE_TYPE_NAME="AWS::GameLift::Fleet";function CfnFleet_AnywhereConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("cost",cdk.requiredValidator)(properties.cost)),errors.collect(cdk.propertyValidator("cost",cdk.validateString)(properties.cost)),errors.wrap('supplied properties not correct for "AnywhereConfigurationProperty"')}function cfnFleetAnywhereConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_AnywhereConfigurationPropertyValidator(properties).assertSuccess(),{Cost:cdk.stringToCloudFormation(properties.cost)}):properties}function CfnFleetAnywhereConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("cost","Cost",cfn_parse.FromCloudFormation.getString(properties.Cost)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleet_CertificateConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("certificateType",cdk.requiredValidator)(properties.certificateType)),errors.collect(cdk.propertyValidator("certificateType",cdk.validateString)(properties.certificateType)),errors.wrap('supplied properties not correct for "CertificateConfigurationProperty"')}function cfnFleetCertificateConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_CertificateConfigurationPropertyValidator(properties).assertSuccess(),{CertificateType:cdk.stringToCloudFormation(properties.certificateType)}):properties}function CfnFleetCertificateConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("certificateType","CertificateType",cfn_parse.FromCloudFormation.getString(properties.CertificateType)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleet_IpPermissionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fromPort",cdk.requiredValidator)(properties.fromPort)),errors.collect(cdk.propertyValidator("fromPort",cdk.validateNumber)(properties.fromPort)),errors.collect(cdk.propertyValidator("ipRange",cdk.requiredValidator)(properties.ipRange)),errors.collect(cdk.propertyValidator("ipRange",cdk.validateString)(properties.ipRange)),errors.collect(cdk.propertyValidator("protocol",cdk.requiredValidator)(properties.protocol)),errors.collect(cdk.propertyValidator("protocol",cdk.validateString)(properties.protocol)),errors.collect(cdk.propertyValidator("toPort",cdk.requiredValidator)(properties.toPort)),errors.collect(cdk.propertyValidator("toPort",cdk.validateNumber)(properties.toPort)),errors.wrap('supplied properties not correct for "IpPermissionProperty"')}function cfnFleetIpPermissionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_IpPermissionPropertyValidator(properties).assertSuccess(),{FromPort:cdk.numberToCloudFormation(properties.fromPort),IpRange:cdk.stringToCloudFormation(properties.ipRange),Protocol:cdk.stringToCloudFormation(properties.protocol),ToPort:cdk.numberToCloudFormation(properties.toPort)}):properties}function CfnFleetIpPermissionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fromPort","FromPort",cfn_parse.FromCloudFormation.getNumber(properties.FromPort)),ret.addPropertyResult("ipRange","IpRange",cfn_parse.FromCloudFormation.getString(properties.IpRange)),ret.addPropertyResult("protocol","Protocol",cfn_parse.FromCloudFormation.getString(properties.Protocol)),ret.addPropertyResult("toPort","ToPort",cfn_parse.FromCloudFormation.getNumber(properties.ToPort)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleet_LocationCapacityPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("desiredEc2Instances",cdk.requiredValidator)(properties.desiredEc2Instances)),errors.collect(cdk.propertyValidator("desiredEc2Instances",cdk.validateNumber)(properties.desiredEc2Instances)),errors.collect(cdk.propertyValidator("maxSize",cdk.requiredValidator)(properties.maxSize)),errors.collect(cdk.propertyValidator("maxSize",cdk.validateNumber)(properties.maxSize)),errors.collect(cdk.propertyValidator("minSize",cdk.requiredValidator)(properties.minSize)),errors.collect(cdk.propertyValidator("minSize",cdk.validateNumber)(properties.minSize)),errors.wrap('supplied properties not correct for "LocationCapacityProperty"')}function cfnFleetLocationCapacityPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_LocationCapacityPropertyValidator(properties).assertSuccess(),{DesiredEC2Instances:cdk.numberToCloudFormation(properties.desiredEc2Instances),MaxSize:cdk.numberToCloudFormation(properties.maxSize),MinSize:cdk.numberToCloudFormation(properties.minSize)}):properties}function CfnFleetLocationCapacityPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("desiredEc2Instances","DesiredEC2Instances",cfn_parse.FromCloudFormation.getNumber(properties.DesiredEC2Instances)),ret.addPropertyResult("maxSize","MaxSize",cfn_parse.FromCloudFormation.getNumber(properties.MaxSize)),ret.addPropertyResult("minSize","MinSize",cfn_parse.FromCloudFormation.getNumber(properties.MinSize)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleet_LocationConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("location",cdk.requiredValidator)(properties.location)),errors.collect(cdk.propertyValidator("location",cdk.validateString)(properties.location)),errors.collect(cdk.propertyValidator("locationCapacity",CfnFleet_LocationCapacityPropertyValidator)(properties.locationCapacity)),errors.wrap('supplied properties not correct for "LocationConfigurationProperty"')}function cfnFleetLocationConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_LocationConfigurationPropertyValidator(properties).assertSuccess(),{Location:cdk.stringToCloudFormation(properties.location),LocationCapacity:cfnFleetLocationCapacityPropertyToCloudFormation(properties.locationCapacity)}):properties}function CfnFleetLocationConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("location","Location",cfn_parse.FromCloudFormation.getString(properties.Location)),ret.addPropertyResult("locationCapacity","LocationCapacity",properties.LocationCapacity!=null?CfnFleetLocationCapacityPropertyFromCloudFormation(properties.LocationCapacity):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleet_ResourceCreationLimitPolicyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("newGameSessionsPerCreator",cdk.validateNumber)(properties.newGameSessionsPerCreator)),errors.collect(cdk.propertyValidator("policyPeriodInMinutes",cdk.validateNumber)(properties.policyPeriodInMinutes)),errors.wrap('supplied properties not correct for "ResourceCreationLimitPolicyProperty"')}function cfnFleetResourceCreationLimitPolicyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_ResourceCreationLimitPolicyPropertyValidator(properties).assertSuccess(),{NewGameSessionsPerCreator:cdk.numberToCloudFormation(properties.newGameSessionsPerCreator),PolicyPeriodInMinutes:cdk.numberToCloudFormation(properties.policyPeriodInMinutes)}):properties}function CfnFleetResourceCreationLimitPolicyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("newGameSessionsPerCreator","NewGameSessionsPerCreator",properties.NewGameSessionsPerCreator!=null?cfn_parse.FromCloudFormation.getNumber(properties.NewGameSessionsPerCreator):void 0),ret.addPropertyResult("policyPeriodInMinutes","PolicyPeriodInMinutes",properties.PolicyPeriodInMinutes!=null?cfn_parse.FromCloudFormation.getNumber(properties.PolicyPeriodInMinutes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleet_RuntimeConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("gameSessionActivationTimeoutSeconds",cdk.validateNumber)(properties.gameSessionActivationTimeoutSeconds)),errors.collect(cdk.propertyValidator("maxConcurrentGameSessionActivations",cdk.validateNumber)(properties.maxConcurrentGameSessionActivations)),errors.collect(cdk.propertyValidator("serverProcesses",cdk.listValidator(CfnFleet_ServerProcessPropertyValidator))(properties.serverProcesses)),errors.wrap('supplied properties not correct for "RuntimeConfigurationProperty"')}function cfnFleetRuntimeConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_RuntimeConfigurationPropertyValidator(properties).assertSuccess(),{GameSessionActivationTimeoutSeconds:cdk.numberToCloudFormation(properties.gameSessionActivationTimeoutSeconds),MaxConcurrentGameSessionActivations:cdk.numberToCloudFormation(properties.maxConcurrentGameSessionActivations),ServerProcesses:cdk.listMapper(cfnFleetServerProcessPropertyToCloudFormation)(properties.serverProcesses)}):properties}function CfnFleetRuntimeConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("gameSessionActivationTimeoutSeconds","GameSessionActivationTimeoutSeconds",properties.GameSessionActivationTimeoutSeconds!=null?cfn_parse.FromCloudFormation.getNumber(properties.GameSessionActivationTimeoutSeconds):void 0),ret.addPropertyResult("maxConcurrentGameSessionActivations","MaxConcurrentGameSessionActivations",properties.MaxConcurrentGameSessionActivations!=null?cfn_parse.FromCloudFormation.getNumber(properties.MaxConcurrentGameSessionActivations):void 0),ret.addPropertyResult("serverProcesses","ServerProcesses",properties.ServerProcesses!=null?cfn_parse.FromCloudFormation.getArray(CfnFleetServerProcessPropertyFromCloudFormation)(properties.ServerProcesses):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFleet_ServerProcessPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("concurrentExecutions",cdk.requiredValidator)(properties.concurrentExecutions)),errors.collect(cdk.propertyValidator("concurrentExecutions",cdk.validateNumber)(properties.concurrentExecutions)),errors.collect(cdk.propertyValidator("launchPath",cdk.requiredValidator)(properties.launchPath)),errors.collect(cdk.propertyValidator("launchPath",cdk.validateString)(properties.launchPath)),errors.collect(cdk.propertyValidator("parameters",cdk.validateString)(properties.parameters)),errors.wrap('supplied properties not correct for "ServerProcessProperty"')}function cfnFleetServerProcessPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFleet_ServerProcessPropertyValidator(properties).assertSuccess(),{ConcurrentExecutions:cdk.numberToCloudFormation(properties.concurrentExecutions),LaunchPath:cdk.stringToCloudFormation(properties.launchPath),Parameters:cdk.stringToCloudFormation(properties.parameters)}):properties}function CfnFleetServerProcessPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("concurrentExecutions","ConcurrentExecutions",cfn_parse.FromCloudFormation.getNumber(properties.ConcurrentExecutions)),ret.addPropertyResult("launchPath","LaunchPath",cfn_parse.FromCloudFormation.getString(properties.LaunchPath)),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse.FromCloudFormation.getString(properties.Parameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnGameServerGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("autoScalingPolicy",CfnGameServerGroup_AutoScalingPolicyPropertyValidator)(properties.autoScalingPolicy)),errors.collect(cdk.propertyValidator("balancingStrategy",cdk.validateString)(properties.balancingStrategy)),errors.collect(cdk.propertyValidator("deleteOption",cdk.validateString)(properties.deleteOption)),errors.collect(cdk.propertyValidator("gameServerGroupName",cdk.requiredValidator)(properties.gameServerGroupName)),errors.collect(cdk.propertyValidator("gameServerGroupName",cdk.validateString)(properties.gameServerGroupName)),errors.collect(cdk.propertyValidator("gameServerProtectionPolicy",cdk.validateString)(properties.gameServerProtectionPolicy)),errors.collect(cdk.propertyValidator("instanceDefinitions",cdk.requiredValidator)(properties.instanceDefinitions)),errors.collect(cdk.propertyValidator("instanceDefinitions",cdk.listValidator(CfnGameServerGroup_InstanceDefinitionPropertyValidator))(properties.instanceDefinitions)),errors.collect(cdk.propertyValidator("launchTemplate",cdk.requiredValidator)(properties.launchTemplate)),errors.collect(cdk.propertyValidator("launchTemplate",CfnGameServerGroup_LaunchTemplatePropertyValidator)(properties.launchTemplate)),errors.collect(cdk.propertyValidator("maxSize",cdk.validateNumber)(properties.maxSize)),errors.collect(cdk.propertyValidator("minSize",cdk.validateNumber)(properties.minSize)),errors.collect(cdk.propertyValidator("roleArn",cdk.requiredValidator)(properties.roleArn)),errors.collect(cdk.propertyValidator("roleArn",cdk.validateString)(properties.roleArn)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("vpcSubnets",cdk.listValidator(cdk.validateString))(properties.vpcSubnets)),errors.wrap('supplied properties not correct for "CfnGameServerGroupProps"')}function cfnGameServerGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnGameServerGroupPropsValidator(properties).assertSuccess(),{GameServerGroupName:cdk.stringToCloudFormation(properties.gameServerGroupName),InstanceDefinitions:cdk.listMapper(cfnGameServerGroupInstanceDefinitionPropertyToCloudFormation)(properties.instanceDefinitions),LaunchTemplate:cfnGameServerGroupLaunchTemplatePropertyToCloudFormation(properties.launchTemplate),RoleArn:cdk.stringToCloudFormation(properties.roleArn),AutoScalingPolicy:cfnGameServerGroupAutoScalingPolicyPropertyToCloudFormation(properties.autoScalingPolicy),BalancingStrategy:cdk.stringToCloudFormation(properties.balancingStrategy),DeleteOption:cdk.stringToCloudFormation(properties.deleteOption),GameServerProtectionPolicy:cdk.stringToCloudFormation(properties.gameServerProtectionPolicy),MaxSize:cdk.numberToCloudFormation(properties.maxSize),MinSize:cdk.numberToCloudFormation(properties.minSize),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),VpcSubnets:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcSubnets)}):properties}function CfnGameServerGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("gameServerGroupName","GameServerGroupName",cfn_parse.FromCloudFormation.getString(properties.GameServerGroupName)),ret.addPropertyResult("instanceDefinitions","InstanceDefinitions",cfn_parse.FromCloudFormation.getArray(CfnGameServerGroupInstanceDefinitionPropertyFromCloudFormation)(properties.InstanceDefinitions)),ret.addPropertyResult("launchTemplate","LaunchTemplate",CfnGameServerGroupLaunchTemplatePropertyFromCloudFormation(properties.LaunchTemplate)),ret.addPropertyResult("roleArn","RoleArn",cfn_parse.FromCloudFormation.getString(properties.RoleArn)),ret.addPropertyResult("autoScalingPolicy","AutoScalingPolicy",properties.AutoScalingPolicy!=null?CfnGameServerGroupAutoScalingPolicyPropertyFromCloudFormation(properties.AutoScalingPolicy):void 0),ret.addPropertyResult("balancingStrategy","BalancingStrategy",properties.BalancingStrategy!=null?cfn_parse.FromCloudFormation.getString(properties.BalancingStrategy):void 0),ret.addPropertyResult("deleteOption","DeleteOption",properties.DeleteOption!=null?cfn_parse.FromCloudFormation.getString(properties.DeleteOption):void 0),ret.addPropertyResult("gameServerProtectionPolicy","GameServerProtectionPolicy",properties.GameServerProtectionPolicy!=null?cfn_parse.FromCloudFormation.getString(properties.GameServerProtectionPolicy):void 0),ret.addPropertyResult("maxSize","MaxSize",properties.MaxSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.MaxSize):void 0),ret.addPropertyResult("minSize","MinSize",properties.MinSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.MinSize):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcSubnets","VpcSubnets",properties.VpcSubnets!=null?cfn_parse.FromCloudFormation.getStringArray(properties.VpcSubnets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnGameServerGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnGameServerGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_gamelift_CfnGameServerGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnGameServerGroup),error}cdk.requireProperty(props,"gameServerGroupName",this),cdk.requireProperty(props,"instanceDefinitions",this),cdk.requireProperty(props,"launchTemplate",this),cdk.requireProperty(props,"roleArn",this),this.attrAutoScalingGroupArn=cdk.Token.asString(this.getAtt("AutoScalingGroupArn",cdk.ResolutionTypeHint.STRING)),this.attrGameServerGroupArn=cdk.Token.asString(this.getAtt("GameServerGroupArn",cdk.ResolutionTypeHint.STRING)),this.gameServerGroupName=props.gameServerGroupName,this.instanceDefinitions=props.instanceDefinitions,this.launchTemplate=props.launchTemplate,this.roleArn=props.roleArn,this.autoScalingPolicy=props.autoScalingPolicy,this.balancingStrategy=props.balancingStrategy,this.deleteOption=props.deleteOption,this.gameServerProtectionPolicy=props.gameServerProtectionPolicy,this.maxSize=props.maxSize,this.minSize=props.minSize,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::GameLift::GameServerGroup",props.tags,{tagPropertyName:"tags"}),this.vpcSubnets=props.vpcSubnets}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnGameServerGroupPropsFromCloudFormation(resourceProperties),ret=new CfnGameServerGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnGameServerGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{gameServerGroupName:this.gameServerGroupName,instanceDefinitions:this.instanceDefinitions,launchTemplate:this.launchTemplate,roleArn:this.roleArn,autoScalingPolicy:this.autoScalingPolicy,balancingStrategy:this.balancingStrategy,deleteOption:this.deleteOption,gameServerProtectionPolicy:this.gameServerProtectionPolicy,maxSize:this.maxSize,minSize:this.minSize,tags:this.tags.renderTags(),vpcSubnets:this.vpcSubnets}}renderProperties(props){return cfnGameServerGroupPropsToCloudFormation(props)}}exports.CfnGameServerGroup=CfnGameServerGroup,_d=JSII_RTTI_SYMBOL_1,CfnGameServerGroup[_d]={fqn:"aws-cdk-lib.aws_gamelift.CfnGameServerGroup",version:"2.70.0"},CfnGameServerGroup.CFN_RESOURCE_TYPE_NAME="AWS::GameLift::GameServerGroup";function CfnGameServerGroup_AutoScalingPolicyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("estimatedInstanceWarmup",cdk.validateNumber)(properties.estimatedInstanceWarmup)),errors.collect(cdk.propertyValidator("targetTrackingConfiguration",cdk.requiredValidator)(properties.targetTrackingConfiguration)),errors.collect(cdk.propertyValidator("targetTrackingConfiguration",CfnGameServerGroup_TargetTrackingConfigurationPropertyValidator)(properties.targetTrackingConfiguration)),errors.wrap('supplied properties not correct for "AutoScalingPolicyProperty"')}function cfnGameServerGroupAutoScalingPolicyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnGameServerGroup_AutoScalingPolicyPropertyValidator(properties).assertSuccess(),{EstimatedInstanceWarmup:cdk.numberToCloudFormation(properties.estimatedInstanceWarmup),TargetTrackingConfiguration:cfnGameServerGroupTargetTrackingConfigurationPropertyToCloudFormation(properties.targetTrackingConfiguration)}):properties}function CfnGameServerGroupAutoScalingPolicyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("estimatedInstanceWarmup","EstimatedInstanceWarmup",properties.EstimatedInstanceWarmup!=null?cfn_parse.FromCloudFormation.getNumber(properties.EstimatedInstanceWarmup):void 0),ret.addPropertyResult("targetTrackingConfiguration","TargetTrackingConfiguration",CfnGameServerGroupTargetTrackingConfigurationPropertyFromCloudFormation(properties.TargetTrackingConfiguration)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnGameServerGroup_InstanceDefinitionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.V