"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import shared.shared_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class AliasRoutingStrategy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    FLEET_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    message: builtins.str
    fleet_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        message: builtins.str = ...,
        fleet_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["fleet_id", b"fleet_id", "message", b"message", "resource_info", b"resource_info"]) -> None: ...

global___AliasRoutingStrategy = AliasRoutingStrategy

@typing_extensions.final
class Alias(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ROUTING_STRATEGY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    description: builtins.str
    name: builtins.str
    @property
    def routing_strategy(self) -> global___AliasRoutingStrategy: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        description: builtins.str = ...,
        name: builtins.str = ...,
        routing_strategy: global___AliasRoutingStrategy | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "routing_strategy", b"routing_strategy"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "name", b"name", "resource_info", b"resource_info", "routing_strategy", b"routing_strategy"]) -> None: ...

global___Alias = Alias

@typing_extensions.final
class GameLift(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALIAS_FIELD_NUMBER: builtins.int
    BUILD_FIELD_NUMBER: builtins.int
    FLEET_FIELD_NUMBER: builtins.int
    GAME_SERVER_GROUP_FIELD_NUMBER: builtins.int
    GAME_SESSION_QUEUE_FIELD_NUMBER: builtins.int
    MATCHMAKING_CONFIGURATION_FIELD_NUMBER: builtins.int
    MATCHMAKING_RULE_SET_FIELD_NUMBER: builtins.int
    SCRIPT_FIELD_NUMBER: builtins.int
    @property
    def alias(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Alias]: ...
    @property
    def build(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Build]: ...
    @property
    def fleet(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Fleet]: ...
    @property
    def game_server_group(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GameServerGroup]: ...
    @property
    def game_session_queue(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GameSessionQueue]: ...
    @property
    def matchmaking_configuration(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MatchmakingConfiguration]: ...
    @property
    def matchmaking_rule_set(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MatchmakingRuleSet]: ...
    @property
    def script(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Script]: ...
    def __init__(
        self,
        *,
        alias: collections.abc.Iterable[global___Alias] | None = ...,
        build: collections.abc.Iterable[global___Build] | None = ...,
        fleet: collections.abc.Iterable[global___Fleet] | None = ...,
        game_server_group: collections.abc.Iterable[global___GameServerGroup] | None = ...,
        game_session_queue: collections.abc.Iterable[global___GameSessionQueue] | None = ...,
        matchmaking_configuration: collections.abc.Iterable[global___MatchmakingConfiguration] | None = ...,
        matchmaking_rule_set: collections.abc.Iterable[global___MatchmakingRuleSet] | None = ...,
        script: collections.abc.Iterable[global___Script] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["alias", b"alias", "build", b"build", "fleet", b"fleet", "game_server_group", b"game_server_group", "game_session_queue", b"game_session_queue", "matchmaking_configuration", b"matchmaking_configuration", "matchmaking_rule_set", b"matchmaking_rule_set", "script", b"script"]) -> None: ...

global___GameLift = GameLift

@typing_extensions.final
class BuildS3Location(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    OBJECT_VERSION_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    bucket: builtins.str
    key: builtins.str
    object_version: builtins.str
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        bucket: builtins.str = ...,
        key: builtins.str = ...,
        object_version: builtins.str = ...,
        role_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["bucket", b"bucket", "key", b"key", "object_version", b"object_version", "resource_info", b"resource_info", "role_arn", b"role_arn"]) -> None: ...

global___BuildS3Location = BuildS3Location

@typing_extensions.final
class Build(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    OPERATING_SYSTEM_FIELD_NUMBER: builtins.int
    STORAGE_LOCATION_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    operating_system: builtins.str
    @property
    def storage_location(self) -> global___BuildS3Location: ...
    version: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        operating_system: builtins.str = ...,
        storage_location: global___BuildS3Location | None = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "storage_location", b"storage_location"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "operating_system", b"operating_system", "resource_info", b"resource_info", "storage_location", b"storage_location", "version", b"version"]) -> None: ...

global___Build = Build

@typing_extensions.final
class FleetCertificateConfiguration(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CERTIFICATE_TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    certificate_type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        certificate_type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["certificate_type", b"certificate_type", "resource_info", b"resource_info"]) -> None: ...

global___FleetCertificateConfiguration = FleetCertificateConfiguration

@typing_extensions.final
class FleetIpPermission(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FROM_PORT_FIELD_NUMBER: builtins.int
    IP_RANGE_FIELD_NUMBER: builtins.int
    PROTOCOL_FIELD_NUMBER: builtins.int
    TO_PORT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    from_port: builtins.int
    ip_range: builtins.str
    protocol: builtins.str
    to_port: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        from_port: builtins.int = ...,
        ip_range: builtins.str = ...,
        protocol: builtins.str = ...,
        to_port: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["from_port", b"from_port", "ip_range", b"ip_range", "protocol", b"protocol", "resource_info", b"resource_info", "to_port", b"to_port"]) -> None: ...

global___FleetIpPermission = FleetIpPermission

@typing_extensions.final
class FleetResourceCreationLimitPolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NEW_GAME_SESSIONS_PER_CREATOR_FIELD_NUMBER: builtins.int
    POLICY_PERIOD_IN_MINUTES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    new_game_sessions_per_creator: builtins.int
    policy_period_in_minutes: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        new_game_sessions_per_creator: builtins.int = ...,
        policy_period_in_minutes: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["new_game_sessions_per_creator", b"new_game_sessions_per_creator", "policy_period_in_minutes", b"policy_period_in_minutes", "resource_info", b"resource_info"]) -> None: ...

global___FleetResourceCreationLimitPolicy = FleetResourceCreationLimitPolicy

@typing_extensions.final
class FleetServerProcess(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONCURRENT_EXECUTIONS_FIELD_NUMBER: builtins.int
    LAUNCH_PATH_FIELD_NUMBER: builtins.int
    PARAMETERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    concurrent_executions: builtins.int
    launch_path: builtins.str
    parameters: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        concurrent_executions: builtins.int = ...,
        launch_path: builtins.str = ...,
        parameters: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["concurrent_executions", b"concurrent_executions", "launch_path", b"launch_path", "parameters", b"parameters", "resource_info", b"resource_info"]) -> None: ...

global___FleetServerProcess = FleetServerProcess

@typing_extensions.final
class FleetRuntimeConfiguration(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    GAME_SESSION_ACTIVATION_TIMEOUT_SECONDS_FIELD_NUMBER: builtins.int
    MAX_CONCURRENT_GAME_SESSION_ACTIVATIONS_FIELD_NUMBER: builtins.int
    SERVER_PROCESSES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    game_session_activation_timeout_seconds: builtins.int
    max_concurrent_game_session_activations: builtins.int
    @property
    def server_processes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FleetServerProcess]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        game_session_activation_timeout_seconds: builtins.int = ...,
        max_concurrent_game_session_activations: builtins.int = ...,
        server_processes: collections.abc.Iterable[global___FleetServerProcess] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["game_session_activation_timeout_seconds", b"game_session_activation_timeout_seconds", "max_concurrent_game_session_activations", b"max_concurrent_game_session_activations", "resource_info", b"resource_info", "server_processes", b"server_processes"]) -> None: ...

global___FleetRuntimeConfiguration = FleetRuntimeConfiguration

@typing_extensions.final
class Fleet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    CERTIFICATE_CONFIGURATION_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    DESIRED_E_C2_INSTANCES_FIELD_NUMBER: builtins.int
    E_C2_INBOUND_PERMISSIONS_FIELD_NUMBER: builtins.int
    E_C2_INSTANCE_TYPE_FIELD_NUMBER: builtins.int
    FLEET_TYPE_FIELD_NUMBER: builtins.int
    INSTANCE_ROLE_ARN_FIELD_NUMBER: builtins.int
    LOG_PATHS_FIELD_NUMBER: builtins.int
    MAX_SIZE_FIELD_NUMBER: builtins.int
    METRIC_GROUPS_FIELD_NUMBER: builtins.int
    MIN_SIZE_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    NEW_GAME_SESSION_PROTECTION_POLICY_FIELD_NUMBER: builtins.int
    PEER_VPC_AWS_ACCOUNT_ID_FIELD_NUMBER: builtins.int
    PEER_VPC_ID_FIELD_NUMBER: builtins.int
    RESOURCE_CREATION_LIMIT_POLICY_FIELD_NUMBER: builtins.int
    RUNTIME_CONFIGURATION_FIELD_NUMBER: builtins.int
    SCRIPT_ID_FIELD_NUMBER: builtins.int
    SERVER_LAUNCH_PARAMETERS_FIELD_NUMBER: builtins.int
    SERVER_LAUNCH_PATH_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    build_id: builtins.str
    @property
    def certificate_configuration(self) -> global___FleetCertificateConfiguration: ...
    description: builtins.str
    desired_e_c2_instances: builtins.int
    @property
    def e_c2_inbound_permissions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FleetIpPermission]: ...
    e_c2_instance_type: builtins.str
    fleet_type: builtins.str
    instance_role_arn: builtins.str
    @property
    def log_paths(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    max_size: builtins.int
    @property
    def metric_groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    min_size: builtins.int
    name: builtins.str
    new_game_session_protection_policy: builtins.str
    peer_vpc_aws_account_id: builtins.str
    peer_vpc_id: builtins.str
    @property
    def resource_creation_limit_policy(self) -> global___FleetResourceCreationLimitPolicy: ...
    @property
    def runtime_configuration(self) -> global___FleetRuntimeConfiguration: ...
    script_id: builtins.str
    server_launch_parameters: builtins.str
    server_launch_path: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        build_id: builtins.str = ...,
        certificate_configuration: global___FleetCertificateConfiguration | None = ...,
        description: builtins.str = ...,
        desired_e_c2_instances: builtins.int = ...,
        e_c2_inbound_permissions: collections.abc.Iterable[global___FleetIpPermission] | None = ...,
        e_c2_instance_type: builtins.str = ...,
        fleet_type: builtins.str = ...,
        instance_role_arn: builtins.str = ...,
        log_paths: collections.abc.Iterable[builtins.str] | None = ...,
        max_size: builtins.int = ...,
        metric_groups: collections.abc.Iterable[builtins.str] | None = ...,
        min_size: builtins.int = ...,
        name: builtins.str = ...,
        new_game_session_protection_policy: builtins.str = ...,
        peer_vpc_aws_account_id: builtins.str = ...,
        peer_vpc_id: builtins.str = ...,
        resource_creation_limit_policy: global___FleetResourceCreationLimitPolicy | None = ...,
        runtime_configuration: global___FleetRuntimeConfiguration | None = ...,
        script_id: builtins.str = ...,
        server_launch_parameters: builtins.str = ...,
        server_launch_path: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["certificate_configuration", b"certificate_configuration", "resource_creation_limit_policy", b"resource_creation_limit_policy", "resource_info", b"resource_info", "runtime_configuration", b"runtime_configuration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["build_id", b"build_id", "certificate_configuration", b"certificate_configuration", "description", b"description", "desired_e_c2_instances", b"desired_e_c2_instances", "e_c2_inbound_permissions", b"e_c2_inbound_permissions", "e_c2_instance_type", b"e_c2_instance_type", "fleet_type", b"fleet_type", "instance_role_arn", b"instance_role_arn", "log_paths", b"log_paths", "max_size", b"max_size", "metric_groups", b"metric_groups", "min_size", b"min_size", "name", b"name", "new_game_session_protection_policy", b"new_game_session_protection_policy", "peer_vpc_aws_account_id", b"peer_vpc_aws_account_id", "peer_vpc_id", b"peer_vpc_id", "resource_creation_limit_policy", b"resource_creation_limit_policy", "resource_info", b"resource_info", "runtime_configuration", b"runtime_configuration", "script_id", b"script_id", "server_launch_parameters", b"server_launch_parameters", "server_launch_path", b"server_launch_path"]) -> None: ...

global___Fleet = Fleet

@typing_extensions.final
class GameServerGroupTargetTrackingConfiguration(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TARGET_VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    target_value: builtins.float
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        target_value: builtins.float = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "target_value", b"target_value"]) -> None: ...

global___GameServerGroupTargetTrackingConfiguration = GameServerGroupTargetTrackingConfiguration

@typing_extensions.final
class GameServerGroupAutoScalingPolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ESTIMATED_INSTANCE_WARMUP_FIELD_NUMBER: builtins.int
    TARGET_TRACKING_CONFIGURATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    estimated_instance_warmup: builtins.float
    @property
    def target_tracking_configuration(self) -> global___GameServerGroupTargetTrackingConfiguration: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        estimated_instance_warmup: builtins.float = ...,
        target_tracking_configuration: global___GameServerGroupTargetTrackingConfiguration | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "target_tracking_configuration", b"target_tracking_configuration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["estimated_instance_warmup", b"estimated_instance_warmup", "resource_info", b"resource_info", "target_tracking_configuration", b"target_tracking_configuration"]) -> None: ...

global___GameServerGroupAutoScalingPolicy = GameServerGroupAutoScalingPolicy

@typing_extensions.final
class GameServerGroupInstanceDefinition(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INSTANCE_TYPE_FIELD_NUMBER: builtins.int
    WEIGHTED_CAPACITY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    instance_type: builtins.str
    weighted_capacity: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        instance_type: builtins.str = ...,
        weighted_capacity: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["instance_type", b"instance_type", "resource_info", b"resource_info", "weighted_capacity", b"weighted_capacity"]) -> None: ...

global___GameServerGroupInstanceDefinition = GameServerGroupInstanceDefinition

@typing_extensions.final
class GameServerGroupInstanceDefinitions(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INSTANCE_DEFINITIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def instance_definitions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GameServerGroupInstanceDefinition]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        instance_definitions: collections.abc.Iterable[global___GameServerGroupInstanceDefinition] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["instance_definitions", b"instance_definitions", "resource_info", b"resource_info"]) -> None: ...

global___GameServerGroupInstanceDefinitions = GameServerGroupInstanceDefinitions

@typing_extensions.final
class GameServerGroupLaunchTemplate(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    LAUNCH_TEMPLATE_ID_FIELD_NUMBER: builtins.int
    LAUNCH_TEMPLATE_NAME_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    launch_template_id: builtins.str
    launch_template_name: builtins.str
    version: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        launch_template_id: builtins.str = ...,
        launch_template_name: builtins.str = ...,
        version: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["launch_template_id", b"launch_template_id", "launch_template_name", b"launch_template_name", "resource_info", b"resource_info", "version", b"version"]) -> None: ...

global___GameServerGroupLaunchTemplate = GameServerGroupLaunchTemplate

@typing_extensions.final
class GameServerGroupTags(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class TagsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___GameServerGroupTags = GameServerGroupTags

@typing_extensions.final
class GameServerGroupVpcSubnets(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VPC_SUBNETS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def vpc_subnets(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        vpc_subnets: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "vpc_subnets", b"vpc_subnets"]) -> None: ...

global___GameServerGroupVpcSubnets = GameServerGroupVpcSubnets

@typing_extensions.final
class GameServerGroup(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AUTO_SCALING_POLICY_FIELD_NUMBER: builtins.int
    BALANCING_STRATEGY_FIELD_NUMBER: builtins.int
    DELETE_OPTION_FIELD_NUMBER: builtins.int
    GAME_SERVER_GROUP_NAME_FIELD_NUMBER: builtins.int
    GAME_SERVER_PROTECTION_POLICY_FIELD_NUMBER: builtins.int
    INSTANCE_DEFINITIONS_FIELD_NUMBER: builtins.int
    LAUNCH_TEMPLATE_FIELD_NUMBER: builtins.int
    MAX_SIZE_FIELD_NUMBER: builtins.int
    MIN_SIZE_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    VPC_SUBNETS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def auto_scaling_policy(self) -> global___GameServerGroupAutoScalingPolicy: ...
    balancing_strategy: builtins.str
    delete_option: builtins.str
    game_server_group_name: builtins.str
    game_server_protection_policy: builtins.str
    @property
    def instance_definitions(self) -> global___GameServerGroupInstanceDefinitions: ...
    @property
    def launch_template(self) -> global___GameServerGroupLaunchTemplate: ...
    max_size: builtins.float
    min_size: builtins.float
    role_arn: builtins.str
    @property
    def tags(self) -> global___GameServerGroupTags: ...
    @property
    def vpc_subnets(self) -> global___GameServerGroupVpcSubnets: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        auto_scaling_policy: global___GameServerGroupAutoScalingPolicy | None = ...,
        balancing_strategy: builtins.str = ...,
        delete_option: builtins.str = ...,
        game_server_group_name: builtins.str = ...,
        game_server_protection_policy: builtins.str = ...,
        instance_definitions: global___GameServerGroupInstanceDefinitions | None = ...,
        launch_template: global___GameServerGroupLaunchTemplate | None = ...,
        max_size: builtins.float = ...,
        min_size: builtins.float = ...,
        role_arn: builtins.str = ...,
        tags: global___GameServerGroupTags | None = ...,
        vpc_subnets: global___GameServerGroupVpcSubnets | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["auto_scaling_policy", b"auto_scaling_policy", "instance_definitions", b"instance_definitions", "launch_template", b"launch_template", "resource_info", b"resource_info", "tags", b"tags", "vpc_subnets", b"vpc_subnets"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auto_scaling_policy", b"auto_scaling_policy", "balancing_strategy", b"balancing_strategy", "delete_option", b"delete_option", "game_server_group_name", b"game_server_group_name", "game_server_protection_policy", b"game_server_protection_policy", "instance_definitions", b"instance_definitions", "launch_template", b"launch_template", "max_size", b"max_size", "min_size", b"min_size", "resource_info", b"resource_info", "role_arn", b"role_arn", "tags", b"tags", "vpc_subnets", b"vpc_subnets"]) -> None: ...

global___GameServerGroup = GameServerGroup

@typing_extensions.final
class GameSessionQueuePlayerLatencyPolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    POLICY_DURATION_SECONDS_FIELD_NUMBER: builtins.int
    MAXIMUM_INDIVIDUAL_PLAYER_LATENCY_MILLISECONDS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    policy_duration_seconds: builtins.int
    maximum_individual_player_latency_milliseconds: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        policy_duration_seconds: builtins.int = ...,
        maximum_individual_player_latency_milliseconds: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["maximum_individual_player_latency_milliseconds", b"maximum_individual_player_latency_milliseconds", "policy_duration_seconds", b"policy_duration_seconds", "resource_info", b"resource_info"]) -> None: ...

global___GameSessionQueuePlayerLatencyPolicy = GameSessionQueuePlayerLatencyPolicy

@typing_extensions.final
class GameSessionQueueDestination(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DESTINATION_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    destination_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        destination_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_arn", b"destination_arn", "resource_info", b"resource_info"]) -> None: ...

global___GameSessionQueueDestination = GameSessionQueueDestination

@typing_extensions.final
class GameSessionQueue(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TIMEOUT_IN_SECONDS_FIELD_NUMBER: builtins.int
    PLAYER_LATENCY_POLICIES_FIELD_NUMBER: builtins.int
    DESTINATIONS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    timeout_in_seconds: builtins.int
    @property
    def player_latency_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GameSessionQueuePlayerLatencyPolicy]: ...
    @property
    def destinations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GameSessionQueueDestination]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        timeout_in_seconds: builtins.int = ...,
        player_latency_policies: collections.abc.Iterable[global___GameSessionQueuePlayerLatencyPolicy] | None = ...,
        destinations: collections.abc.Iterable[global___GameSessionQueueDestination] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destinations", b"destinations", "name", b"name", "player_latency_policies", b"player_latency_policies", "resource_info", b"resource_info", "timeout_in_seconds", b"timeout_in_seconds"]) -> None: ...

global___GameSessionQueue = GameSessionQueue

@typing_extensions.final
class MatchmakingConfigurationGameProperty(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    value: builtins.str
    key: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        value: builtins.str = ...,
        key: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___MatchmakingConfigurationGameProperty = MatchmakingConfigurationGameProperty

@typing_extensions.final
class MatchmakingConfiguration(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    GAME_PROPERTIES_FIELD_NUMBER: builtins.int
    GAME_SESSION_DATA_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    ACCEPTANCE_TIMEOUT_SECONDS_FIELD_NUMBER: builtins.int
    NOTIFICATION_TARGET_FIELD_NUMBER: builtins.int
    CUSTOM_EVENT_DATA_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ADDITIONAL_PLAYER_COUNT_FIELD_NUMBER: builtins.int
    BACKFILL_MODE_FIELD_NUMBER: builtins.int
    REQUEST_TIMEOUT_SECONDS_FIELD_NUMBER: builtins.int
    ACCEPTANCE_REQUIRED_FIELD_NUMBER: builtins.int
    RULE_SET_NAME_FIELD_NUMBER: builtins.int
    GAME_SESSION_QUEUE_ARNS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def game_properties(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MatchmakingConfigurationGameProperty]: ...
    game_session_data: builtins.str
    description: builtins.str
    acceptance_timeout_seconds: builtins.int
    notification_target: builtins.str
    custom_event_data: builtins.str
    name: builtins.str
    additional_player_count: builtins.int
    backfill_mode: builtins.str
    request_timeout_seconds: builtins.int
    acceptance_required: builtins.bool
    rule_set_name: builtins.str
    @property
    def game_session_queue_arns(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        game_properties: collections.abc.Iterable[global___MatchmakingConfigurationGameProperty] | None = ...,
        game_session_data: builtins.str = ...,
        description: builtins.str = ...,
        acceptance_timeout_seconds: builtins.int = ...,
        notification_target: builtins.str = ...,
        custom_event_data: builtins.str = ...,
        name: builtins.str = ...,
        additional_player_count: builtins.int = ...,
        backfill_mode: builtins.str = ...,
        request_timeout_seconds: builtins.int = ...,
        acceptance_required: builtins.bool = ...,
        rule_set_name: builtins.str = ...,
        game_session_queue_arns: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["acceptance_required", b"acceptance_required", "acceptance_timeout_seconds", b"acceptance_timeout_seconds", "additional_player_count", b"additional_player_count", "backfill_mode", b"backfill_mode", "custom_event_data", b"custom_event_data", "description", b"description", "game_properties", b"game_properties", "game_session_data", b"game_session_data", "game_session_queue_arns", b"game_session_queue_arns", "name", b"name", "notification_target", b"notification_target", "request_timeout_seconds", b"request_timeout_seconds", "resource_info", b"resource_info", "rule_set_name", b"rule_set_name"]) -> None: ...

global___MatchmakingConfiguration = MatchmakingConfiguration

@typing_extensions.final
class MatchmakingRuleSet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RULE_SET_BODY_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    rule_set_body: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        rule_set_body: builtins.str = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "resource_info", b"resource_info", "rule_set_body", b"rule_set_body"]) -> None: ...

global___MatchmakingRuleSet = MatchmakingRuleSet

@typing_extensions.final
class ScriptS3Location(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    OBJECT_VERSION_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    object_version: builtins.str
    bucket: builtins.str
    key: builtins.str
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        object_version: builtins.str = ...,
        bucket: builtins.str = ...,
        key: builtins.str = ...,
        role_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["bucket", b"bucket", "key", b"key", "object_version", b"object_version", "resource_info", b"resource_info", "role_arn", b"role_arn"]) -> None: ...

global___ScriptS3Location = ScriptS3Location

@typing_extensions.final
class Script(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    STORAGE_LOCATION_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    version: builtins.str
    @property
    def storage_location(self) -> global___ScriptS3Location: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        version: builtins.str = ...,
        storage_location: global___ScriptS3Location | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "storage_location", b"storage_location"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "resource_info", b"resource_info", "storage_location", b"storage_location", "version", b"version"]) -> None: ...

global___Script = Script
