UNPKG

typed-aws

Version:

Helps you write AWS CloudFormation in TypeScript

189 lines (188 loc) 9.09 kB
import { CfnResource, Resolvable } from '../../base'; export declare type GameServerGroup_Type = 'AWS::GameLift::GameServerGroup'; export declare const GameServerGroup_Type = "AWS::GameLift::GameServerGroup"; /** * The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift * (GameLift) GameServerGroup. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html} */ export default function GameServerGroup(props: GameServerGroup_Properties): CfnResource<GameServerGroup_Properties>; /** * The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift * (GameLift) GameServerGroup. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html} */ export declare type GameServerGroup_Properties = { AutoScalingGroupArn?: AutoScalingGroupArn; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-autoscalingpolicy} */ AutoScalingPolicy?: AutoScalingPolicy; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-balancingstrategy} */ BalancingStrategy?: BalancingStrategy; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-deleteoption} */ DeleteOption?: DeleteOption; GameServerGroupArn?: GameServerGroupArn; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-gameservergroupname} */ GameServerGroupName: GameServerGroupName; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-gameserverprotectionpolicy} */ GameServerProtectionPolicy?: GameServerProtectionPolicy; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-instancedefinitions} */ InstanceDefinitions: InstanceDefinitions; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-launchtemplate} */ LaunchTemplate: LaunchTemplate; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-maxsize} */ MaxSize?: MaxSize; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-minsize} */ MinSize?: MinSize; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-rolearn} */ RoleArn: RoleArn; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-tags} */ Tags?: Tags; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html#cfn-gamelift-gameservergroup-vpcsubnets} */ VpcSubnets?: VpcSubnets; }; /** * Configuration settings to define a scaling policy for the Auto Scaling * group that is optimized for game hosting {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-autoscalingpolicy.html} */ export declare type AutoScalingPolicy = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-autoscalingpolicy.html#cfn-gamelift-gameservergroup-autoscalingpolicy-estimatedinstancewarmup} */ EstimatedInstanceWarmup?: EstimatedInstanceWarmup; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-autoscalingpolicy.html#cfn-gamelift-gameservergroup-autoscalingpolicy-targettrackingconfiguration} */ TargetTrackingConfiguration: TargetTrackingConfiguration; }; export declare type EstimatedInstanceWarmup = Resolvable<number>; /** * Settings for a target-based scaling policy applied to Auto Scaling * group. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-targettrackingconfiguration.html} */ export declare type TargetTrackingConfiguration = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-targettrackingconfiguration.html#cfn-gamelift-gameservergroup-targettrackingconfiguration-targetvalue} */ TargetValue: TargetValue; }; export declare type TargetValue = Resolvable<number>; export declare type BalancingStrategy = Resolvable<'SPOT_ONLY' | 'SPOT_PREFERRED' | 'ON_DEMAND_ONLY'>; export declare type DeleteOption = Resolvable<'SAFE_DELETE' | 'FORCE_DELETE' | 'RETAIN'>; export declare type GameServerGroupName = Resolvable<string>; export declare type GameServerProtectionPolicy = Resolvable<'NO_PROTECTION' | 'FULL_PROTECTION'>; export declare type GameServerGroupArn = Resolvable<string>; export declare type InstanceDefinitions = InstanceDefinition[]; /** * An allowed instance type for your game server group. {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-instancedefinition.html} */ export declare type InstanceDefinition = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-instancedefinition.html#cfn-gamelift-gameservergroup-instancedefinition-instancetype} */ InstanceType: InstanceType; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-instancedefinition.html#cfn-gamelift-gameservergroup-instancedefinition-weightedcapacity} */ WeightedCapacity?: WeightedCapacity; }; export declare type InstanceType = Resolvable<string>; export declare type WeightedCapacity = Resolvable<string>; /** * The EC2 launch template that contains configuration settings and game * server code to be deployed to all instances in the game server group. * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html} */ export declare type LaunchTemplate = { /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html#cfn-gamelift-gameservergroup-launchtemplate-launchtemplateid} */ LaunchTemplateId?: LaunchTemplateId; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html#cfn-gamelift-gameservergroup-launchtemplate-launchtemplatename} */ LaunchTemplateName?: LaunchTemplateName; /** * {@link * http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gameservergroup-launchtemplate.html#cfn-gamelift-gameservergroup-launchtemplate-version} */ Version?: Version; }; export declare type LaunchTemplateId = Resolvable<string>; export declare type LaunchTemplateName = Resolvable<string>; export declare type Version = Resolvable<string>; export declare type MaxSize = Resolvable<number>; export declare type MinSize = Resolvable<number>; export declare type RoleArn = Resolvable<string>; export declare type Tags = Tag[]; export declare type Tag = { Key?: Resolvable<string>; Value?: Resolvable<string>; }; export declare type VpcSubnets = Resolvable<string>[]; export declare type GameServerGroup = { AutoScalingGroupArn?: AutoScalingGroupArn; BalancingStrategy?: BalancingStrategy; CreationTime?: CreationTime; GameServerGroupArn?: GameServerGroupArn; GameServerGroupName?: GameServerGroupName; GameServerProtectionPolicy?: GameServerProtectionPolicy; InstanceDefinitions?: InstanceDefinitions; LastUpdatedTime?: LastUpdatedTime; RoleArn?: RoleArn; Status?: Status; StatusReason?: StatusReason; SuspendedActions?: SuspendedActions; }; export declare type AutoScalingGroupArn = Resolvable<string>; export declare type CreationTime = Resolvable<string>; export declare type LastUpdatedTime = Resolvable<string>; export declare type Status = Resolvable<'NEW' | 'ACTIVATING' | 'ACTIVE' | 'DELETE_SCHEDULED' | 'DELETING' | 'DELETED' | 'ERROR'>; export declare type StatusReason = Resolvable<string>; export declare type SuspendedActions = Resolvable<'REPLACE_INSTANCE_TYPES'>[];