import * as core from "@terrascript/core"; export interface ResourceCreationLimitPolicyArgs extends core.SchemaArgs { newGameSessionsPerCreator?: number | core.NumberOut; policyPeriodInMinutes?: number | core.NumberOut; } export declare class ResourceCreationLimitPolicy extends core.Schema { newGameSessionsPerCreator?: number | core.NumberOut; policyPeriodInMinutes?: number | core.NumberOut; } export interface Ec2InboundPermissionArgs extends core.SchemaArgs { fromPort: number | core.NumberOut; ipRange: string | core.StringOut; protocol: string | core.StringOut; toPort: number | core.NumberOut; } export declare class Ec2InboundPermission extends core.Schema { fromPort: number | core.NumberOut; ipRange: string | core.StringOut; protocol: string | core.StringOut; toPort: number | core.NumberOut; } export interface ServerProcessArgs extends core.SchemaArgs { concurrentExecutions: number | core.NumberOut; launchPath: string | core.StringOut; parameters?: string | core.StringOut; } export declare class ServerProcess extends core.Schema { concurrentExecutions: number | core.NumberOut; launchPath: string | core.StringOut; parameters?: string | core.StringOut; } export interface RuntimeConfigurationArgs extends core.SchemaArgs { gameSessionActivationTimeoutSeconds?: number | core.NumberOut; maxConcurrentGameSessionActivations?: number | core.NumberOut; serverProcess?: core.Array | core.ArrayOut; } export declare class RuntimeConfiguration extends core.Schema { gameSessionActivationTimeoutSeconds?: number | core.NumberOut; maxConcurrentGameSessionActivations?: number | core.NumberOut; serverProcess?: core.Array | core.ArrayOut; } export interface CertificateConfigurationArgs extends core.SchemaArgs { certificateType?: string | core.StringOut; } export declare class CertificateConfiguration extends core.Schema { certificateType?: string | core.StringOut; } export interface FleetArgs extends core.ResourceArgs { /** * (Optional) ID of the GameLift Build to be deployed on the fleet. */ buildId?: string | core.StringOut; /** * (Optional) Prompts GameLift to generate a TLS/SSL certificate for the fleet. See [certificate_config * uration](#certificate_configuration). */ certificateConfiguration?: CertificateConfiguration; /** * (Optional) Human-readable description of the fleet. */ description?: string | core.StringOut; /** * (Optional) Range of IP addresses and port settings that permit inbound traffic to access server proc * esses running on the fleet. See below. */ ec2InboundPermission?: core.Array | core.ArrayOut; /** * (Required) Name of an EC2 instance typeE.g., `t2.micro` */ ec2InstanceType: string | core.StringOut; /** * (Optional) Type of fleet. This value must be `ON_DEMAND` or `SPOT`. Defaults to `ON_DEMAND`. */ fleetType?: string | core.StringOut; /** * (Optional) ARN of an IAM role that instances in the fleet can assume. */ instanceRoleArn?: string | core.StringOut; /** * (Optional) List of names of metric groups to add this fleet to. A metric group tracks metrics across * all fleets in the group. Defaults to `default`. */ metricGroups?: core.Array | core.ArrayOut; /** * (Required) The name of the fleet. */ name: string | core.StringOut; /** * (Optional) Game session protection policy to apply to all instances in this fleetE.g., `FullProtecti * on`. Defaults to `NoProtection`. */ newGameSessionProtectionPolicy?: string | core.StringOut; /** * (Optional) Policy that limits the number of game sessions an individual player can create over a spa * n of time for this fleet. See below. */ resourceCreationLimitPolicy?: ResourceCreationLimitPolicy; /** * (Optional) Instructions for launching server processes on each instance in the fleet. See below. */ runtimeConfiguration?: RuntimeConfiguration; /** * (Optional) ID of the GameLift Script to be deployed on the fleet. */ scriptId?: string | core.StringOut; /** * (Optional) Key-value map of resource tags. If configured with a provider [`default_tags` configurati * on block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configurati * on-block) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export declare class Fleet extends core.Resource { /** * Fleet ARN. */ arn: string | core.StringOut; /** * Build ARN. */ buildArn: string | core.StringOut; /** * (Optional) ID of the GameLift Build to be deployed on the fleet. */ buildId?: string | core.StringOut; /** * (Optional) Prompts GameLift to generate a TLS/SSL certificate for the fleet. See [certificate_config * uration](#certificate_configuration). */ certificateConfiguration?: CertificateConfiguration; /** * (Optional) Human-readable description of the fleet. */ description?: string | core.StringOut; /** * (Optional) Range of IP addresses and port settings that permit inbound traffic to access server proc * esses running on the fleet. See below. */ ec2InboundPermission?: core.Array | core.ArrayOut; /** * (Required) Name of an EC2 instance typeE.g., `t2.micro` */ ec2InstanceType: string | core.StringOut; /** * (Optional) Type of fleet. This value must be `ON_DEMAND` or `SPOT`. Defaults to `ON_DEMAND`. */ fleetType?: string | core.StringOut; /** * Fleet ID. */ id: string | core.StringOut; /** * (Optional) ARN of an IAM role that instances in the fleet can assume. */ instanceRoleArn?: string | core.StringOut; logPaths: core.Array | core.ArrayOut; /** * (Optional) List of names of metric groups to add this fleet to. A metric group tracks metrics across * all fleets in the group. Defaults to `default`. */ metricGroups?: core.Array | core.ArrayOut; /** * (Required) The name of the fleet. */ name: string | core.StringOut; /** * (Optional) Game session protection policy to apply to all instances in this fleetE.g., `FullProtecti * on`. Defaults to `NoProtection`. */ newGameSessionProtectionPolicy?: string | core.StringOut; /** * Operating system of the fleet's computing resources. */ operatingSystem: string | core.StringOut; /** * (Optional) Policy that limits the number of game sessions an individual player can create over a spa * n of time for this fleet. See below. */ resourceCreationLimitPolicy?: ResourceCreationLimitPolicy; /** * (Optional) Instructions for launching server processes on each instance in the fleet. See below. */ runtimeConfiguration?: RuntimeConfiguration; /** * Script ARN. */ scriptArn: string | core.StringOut; /** * (Optional) ID of the GameLift Script to be deployed on the fleet. */ scriptId?: string | core.StringOut; /** * (Optional) Key-value map of resource tags. If configured with a provider [`default_tags` configurati * on block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configurati * on-block) present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; constructor(name: string, args?: FleetArgs); getNamespace(): string; } //# sourceMappingURL=fleet.d.ts.map