import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Definition of AWS::GameLiftStreams::StreamGroup Resource Type
 */
export declare class StreamGroup extends pulumi.CustomResource {
    /**
     * Get an existing StreamGroup resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): StreamGroup;
    /**
     * Returns true if the given object is an instance of StreamGroup.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is StreamGroup;
    /**
     * An [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) that uniquely identifies the stream group resource. For example: `arn:aws:gameliftstreams:us-west-2:123456789012:streamgroup/sg-1AB2C3De4` .
     */
    readonly arn: pulumi.Output<string>;
    /**
     * An ID that uniquely identifies the stream group resource. For example: `sg-1AB2C3De4` .
     */
    readonly awsId: pulumi.Output<string>;
    /**
     * Object that identifies the Amazon GameLift Streams application to stream with this stream group.
     */
    readonly defaultApplication: pulumi.Output<outputs.gameliftstreams.StreamGroupDefaultApplication | undefined>;
    /**
     * A descriptive label for the stream group.
     */
    readonly description: pulumi.Output<string>;
    /**
     * A set of one or more locations and the streaming capacity for each location. One of the locations MUST be your primary location, which is the AWS Region where you are specifying this resource.
     */
    readonly locationConfigurations: pulumi.Output<outputs.gameliftstreams.StreamGroupLocationConfiguration[]>;
    /**
     * The target stream quality for sessions that are hosted in this stream group. Set a stream class that is appropriate to the type of content that you're streaming. Stream class determines the type of computing resources Amazon GameLift Streams uses and impacts the cost of streaming. The following options are available:
     *
     * A stream class can be one of the following:
     *
     * - *`gen5n_win2022` (NVIDIA, ultra)* Supports applications with extremely high 3D scene complexity. Runs applications on Microsoft Windows Server 2022 Base and supports DirectX 12. Compatible with Unreal Engine versions up through 5.4, 32 and 64-bit applications, and anti-cheat technology. Uses NVIDIA A10G Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 24 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     * - *`gen5n_high` (NVIDIA, high)* Supports applications with moderate to high 3D scene complexity. Uses NVIDIA A10G Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 4 vCPUs, 16 GB RAM, 12 GB VRAM
     * - Tenancy: Supports up to 2 concurrent stream sessions
     * - *`gen5n_ultra` (NVIDIA, ultra)* Supports applications with extremely high 3D scene complexity. Uses dedicated NVIDIA A10G Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 24 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     * - *`gen4n_win2022` (NVIDIA, ultra)* Supports applications with extremely high 3D scene complexity. Runs applications on Microsoft Windows Server 2022 Base and supports DirectX 12. Compatible with Unreal Engine versions up through 5.4, 32 and 64-bit applications, and anti-cheat technology. Uses NVIDIA T4 Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 16 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     * - *`gen4n_high` (NVIDIA, high)* Supports applications with moderate to high 3D scene complexity. Uses NVIDIA T4 Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 4 vCPUs, 16 GB RAM, 8 GB VRAM
     * - Tenancy: Supports up to 2 concurrent stream sessions
     * - *`gen4n_ultra` (NVIDIA, ultra)* Supports applications with high 3D scene complexity. Uses dedicated NVIDIA T4 Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 16 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     */
    readonly streamClass: pulumi.Output<string>;
    /**
     * A list of labels to assign to the new stream group resource. Tags are developer-defined key-value pairs. Tagging AWS resources is useful for resource management, access management and cost allocation. See [Tagging AWS Resources](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) in the *AWS General Reference* .
     */
    readonly tags: pulumi.Output<{
        [key: string]: string;
    } | undefined>;
    /**
     * Create a StreamGroup resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: StreamGroupArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a StreamGroup resource.
 */
export interface StreamGroupArgs {
    /**
     * Object that identifies the Amazon GameLift Streams application to stream with this stream group.
     */
    defaultApplication?: pulumi.Input<inputs.gameliftstreams.StreamGroupDefaultApplicationArgs>;
    /**
     * A descriptive label for the stream group.
     */
    description: pulumi.Input<string>;
    /**
     * A set of one or more locations and the streaming capacity for each location. One of the locations MUST be your primary location, which is the AWS Region where you are specifying this resource.
     */
    locationConfigurations: pulumi.Input<pulumi.Input<inputs.gameliftstreams.StreamGroupLocationConfigurationArgs>[]>;
    /**
     * The target stream quality for sessions that are hosted in this stream group. Set a stream class that is appropriate to the type of content that you're streaming. Stream class determines the type of computing resources Amazon GameLift Streams uses and impacts the cost of streaming. The following options are available:
     *
     * A stream class can be one of the following:
     *
     * - *`gen5n_win2022` (NVIDIA, ultra)* Supports applications with extremely high 3D scene complexity. Runs applications on Microsoft Windows Server 2022 Base and supports DirectX 12. Compatible with Unreal Engine versions up through 5.4, 32 and 64-bit applications, and anti-cheat technology. Uses NVIDIA A10G Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 24 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     * - *`gen5n_high` (NVIDIA, high)* Supports applications with moderate to high 3D scene complexity. Uses NVIDIA A10G Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 4 vCPUs, 16 GB RAM, 12 GB VRAM
     * - Tenancy: Supports up to 2 concurrent stream sessions
     * - *`gen5n_ultra` (NVIDIA, ultra)* Supports applications with extremely high 3D scene complexity. Uses dedicated NVIDIA A10G Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 24 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     * - *`gen4n_win2022` (NVIDIA, ultra)* Supports applications with extremely high 3D scene complexity. Runs applications on Microsoft Windows Server 2022 Base and supports DirectX 12. Compatible with Unreal Engine versions up through 5.4, 32 and 64-bit applications, and anti-cheat technology. Uses NVIDIA T4 Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 16 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     * - *`gen4n_high` (NVIDIA, high)* Supports applications with moderate to high 3D scene complexity. Uses NVIDIA T4 Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 4 vCPUs, 16 GB RAM, 8 GB VRAM
     * - Tenancy: Supports up to 2 concurrent stream sessions
     * - *`gen4n_ultra` (NVIDIA, ultra)* Supports applications with high 3D scene complexity. Uses dedicated NVIDIA T4 Tensor GPU.
     *
     * - Reference resolution: 1080p
     * - Reference frame rate: 60 fps
     * - Workload specifications: 8 vCPUs, 32 GB RAM, 16 GB VRAM
     * - Tenancy: Supports 1 concurrent stream session
     */
    streamClass: pulumi.Input<string>;
    /**
     * A list of labels to assign to the new stream group resource. Tags are developer-defined key-value pairs. Tagging AWS resources is useful for resource management, access management and cost allocation. See [Tagging AWS Resources](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) in the *AWS General Reference* .
     */
    tags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    }>;
}
