"""
@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 CapacityProviderManagedScaling(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    MINIMUM_SCALING_STEP_SIZE_FIELD_NUMBER: builtins.int
    MAXIMUM_SCALING_STEP_SIZE_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    TARGET_CAPACITY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    minimum_scaling_step_size: builtins.int
    maximum_scaling_step_size: builtins.int
    status: builtins.str
    target_capacity: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        minimum_scaling_step_size: builtins.int = ...,
        maximum_scaling_step_size: builtins.int = ...,
        status: builtins.str = ...,
        target_capacity: 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_scaling_step_size", b"maximum_scaling_step_size", "minimum_scaling_step_size", b"minimum_scaling_step_size", "resource_info", b"resource_info", "status", b"status", "target_capacity", b"target_capacity"]) -> None: ...

global___CapacityProviderManagedScaling = CapacityProviderManagedScaling

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AUTO_SCALING_GROUP_ARN_FIELD_NUMBER: builtins.int
    MANAGED_SCALING_FIELD_NUMBER: builtins.int
    MANAGED_TERMINATION_PROTECTION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    auto_scaling_group_arn: builtins.str
    @property
    def managed_scaling(self) -> global___CapacityProviderManagedScaling: ...
    managed_termination_protection: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        auto_scaling_group_arn: builtins.str = ...,
        managed_scaling: global___CapacityProviderManagedScaling | None = ...,
        managed_termination_protection: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["managed_scaling", b"managed_scaling", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auto_scaling_group_arn", b"auto_scaling_group_arn", "managed_scaling", b"managed_scaling", "managed_termination_protection", b"managed_termination_protection", "resource_info", b"resource_info"]) -> None: ...

global___CapacityProviderAutoScalingGroupProvider = CapacityProviderAutoScalingGroupProvider

@typing_extensions.final
class CapacityProvider(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
    AUTO_SCALING_GROUP_PROVIDER_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def auto_scaling_group_provider(self) -> global___CapacityProviderAutoScalingGroupProvider: ...
    name: builtins.str
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        auto_scaling_group_provider: global___CapacityProviderAutoScalingGroupProvider | None = ...,
        name: builtins.str = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["auto_scaling_group_provider", b"auto_scaling_group_provider", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auto_scaling_group_provider", b"auto_scaling_group_provider", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___CapacityProvider = CapacityProvider

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

    CAPACITY_PROVIDER_FIELD_NUMBER: builtins.int
    CLUSTER_FIELD_NUMBER: builtins.int
    PRIMARY_TASK_SET_FIELD_NUMBER: builtins.int
    SERVICE_FIELD_NUMBER: builtins.int
    TASK_DEFINITION_FIELD_NUMBER: builtins.int
    TASK_SET_FIELD_NUMBER: builtins.int
    @property
    def capacity_provider(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CapacityProvider]: ...
    @property
    def cluster(self) -> global___Cluster: ...
    @property
    def primary_task_set(self) -> global___PrimaryTaskSet: ...
    @property
    def service(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Service]: ...
    @property
    def task_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinition]: ...
    @property
    def task_set(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskSet]: ...
    def __init__(
        self,
        *,
        capacity_provider: collections.abc.Iterable[global___CapacityProvider] | None = ...,
        cluster: global___Cluster | None = ...,
        primary_task_set: global___PrimaryTaskSet | None = ...,
        service: collections.abc.Iterable[global___Service] | None = ...,
        task_definition: collections.abc.Iterable[global___TaskDefinition] | None = ...,
        task_set: collections.abc.Iterable[global___TaskSet] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["cluster", b"cluster", "primary_task_set", b"primary_task_set"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["capacity_provider", b"capacity_provider", "cluster", b"cluster", "primary_task_set", b"primary_task_set", "service", b"service", "task_definition", b"task_definition", "task_set", b"task_set"]) -> None: ...

global___ECS = ECS

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        value: 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", "value", b"value"]) -> None: ...

global___ClusterClusterSettings = ClusterClusterSettings

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CAPACITY_PROVIDER_FIELD_NUMBER: builtins.int
    WEIGHT_FIELD_NUMBER: builtins.int
    BASE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    capacity_provider: builtins.str
    weight: builtins.int
    base: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        capacity_provider: builtins.str = ...,
        weight: builtins.int = ...,
        base: 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["base", b"base", "capacity_provider", b"capacity_provider", "resource_info", b"resource_info", "weight", b"weight"]) -> None: ...

global___ClusterCapacityProviderStrategyItem = ClusterCapacityProviderStrategyItem

@typing_extensions.final
class Cluster(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
    CLUSTER_NAME_FIELD_NUMBER: builtins.int
    CLUSTER_SETTINGS_FIELD_NUMBER: builtins.int
    CAPACITY_PROVIDERS_FIELD_NUMBER: builtins.int
    DEFAULT_CAPACITY_PROVIDER_STRATEGY_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]: ...
    cluster_name: builtins.str
    @property
    def cluster_settings(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ClusterClusterSettings]: ...
    @property
    def capacity_providers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def default_capacity_provider_strategy(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ClusterCapacityProviderStrategyItem]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        cluster_name: builtins.str = ...,
        cluster_settings: collections.abc.Iterable[global___ClusterClusterSettings] | None = ...,
        capacity_providers: collections.abc.Iterable[builtins.str] | None = ...,
        default_capacity_provider_strategy: collections.abc.Iterable[global___ClusterCapacityProviderStrategyItem] | 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["capacity_providers", b"capacity_providers", "cluster_name", b"cluster_name", "cluster_settings", b"cluster_settings", "default_capacity_provider_strategy", b"default_capacity_provider_strategy", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___Cluster = Cluster

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CLUSTER_FIELD_NUMBER: builtins.int
    TASK_SET_ID_FIELD_NUMBER: builtins.int
    SERVICE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    cluster: builtins.str
    task_set_id: builtins.str
    service: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        cluster: builtins.str = ...,
        task_set_id: builtins.str = ...,
        service: 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["cluster", b"cluster", "resource_info", b"resource_info", "service", b"service", "task_set_id", b"task_set_id"]) -> None: ...

global___PrimaryTaskSet = PrimaryTaskSet

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BASE_FIELD_NUMBER: builtins.int
    CAPACITY_PROVIDER_FIELD_NUMBER: builtins.int
    WEIGHT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    base: builtins.int
    capacity_provider: builtins.str
    weight: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        base: builtins.int = ...,
        capacity_provider: builtins.str = ...,
        weight: 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["base", b"base", "capacity_provider", b"capacity_provider", "resource_info", b"resource_info", "weight", b"weight"]) -> None: ...

global___ServiceCapacityProviderStrategyItem = ServiceCapacityProviderStrategyItem

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    MAXIMUM_PERCENT_FIELD_NUMBER: builtins.int
    MINIMUM_HEALTHY_PERCENT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    maximum_percent: builtins.int
    minimum_healthy_percent: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        maximum_percent: builtins.int = ...,
        minimum_healthy_percent: 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_percent", b"maximum_percent", "minimum_healthy_percent", b"minimum_healthy_percent", "resource_info", b"resource_info"]) -> None: ...

global___ServiceDeploymentConfiguration = ServiceDeploymentConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | 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"]) -> None: ...

global___ServiceDeploymentController = ServiceDeploymentController

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_NAME_FIELD_NUMBER: builtins.int
    CONTAINER_PORT_FIELD_NUMBER: builtins.int
    LOAD_BALANCER_NAME_FIELD_NUMBER: builtins.int
    TARGET_GROUP_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_name: builtins.str
    container_port: builtins.int
    load_balancer_name: builtins.str
    target_group_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_name: builtins.str = ...,
        container_port: builtins.int = ...,
        load_balancer_name: builtins.str = ...,
        target_group_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["container_name", b"container_name", "container_port", b"container_port", "load_balancer_name", b"load_balancer_name", "resource_info", b"resource_info", "target_group_arn", b"target_group_arn"]) -> None: ...

global___ServiceLoadBalancer = ServiceLoadBalancer

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ASSIGN_PUBLIC_IP_FIELD_NUMBER: builtins.int
    SECURITY_GROUPS_FIELD_NUMBER: builtins.int
    SUBNETS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    assign_public_ip: builtins.str
    @property
    def security_groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def subnets(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        assign_public_ip: builtins.str = ...,
        security_groups: collections.abc.Iterable[builtins.str] | None = ...,
        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["assign_public_ip", b"assign_public_ip", "resource_info", b"resource_info", "security_groups", b"security_groups", "subnets", b"subnets"]) -> None: ...

global___ServiceAwsVpcConfiguration = ServiceAwsVpcConfiguration

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

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

global___ServiceNetworkConfiguration = ServiceNetworkConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EXPRESSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    expression: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        expression: 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["expression", b"expression", "resource_info", b"resource_info"]) -> None: ...

global___ServicePlacementConstraint = ServicePlacementConstraint

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FIELD_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    field: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        field: 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["field", b"field", "resource_info", b"resource_info"]) -> None: ...

global___ServicePlacementStrategy = ServicePlacementStrategy

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_NAME_FIELD_NUMBER: builtins.int
    CONTAINER_PORT_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    REGISTRY_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_name: builtins.str
    container_port: builtins.int
    port: builtins.int
    registry_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_name: builtins.str = ...,
        container_port: builtins.int = ...,
        port: builtins.int = ...,
        registry_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["container_name", b"container_name", "container_port", b"container_port", "port", b"port", "registry_arn", b"registry_arn", "resource_info", b"resource_info"]) -> None: ...

global___ServiceServiceRegistry = ServiceServiceRegistry

@typing_extensions.final
class Service(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
    SERVICE_ARN_FIELD_NUMBER: builtins.int
    CAPACITY_PROVIDER_STRATEGY_FIELD_NUMBER: builtins.int
    CLUSTER_FIELD_NUMBER: builtins.int
    DEPLOYMENT_CONFIGURATION_FIELD_NUMBER: builtins.int
    DEPLOYMENT_CONTROLLER_FIELD_NUMBER: builtins.int
    DESIRED_COUNT_FIELD_NUMBER: builtins.int
    ENABLE_ECS_MANAGED_TAGS_FIELD_NUMBER: builtins.int
    HEALTH_CHECK_GRACE_PERIOD_SECONDS_FIELD_NUMBER: builtins.int
    LAUNCH_TYPE_FIELD_NUMBER: builtins.int
    LOAD_BALANCERS_FIELD_NUMBER: builtins.int
    NETWORK_CONFIGURATION_FIELD_NUMBER: builtins.int
    PLACEMENT_CONSTRAINTS_FIELD_NUMBER: builtins.int
    PLACEMENT_STRATEGIES_FIELD_NUMBER: builtins.int
    PLATFORM_VERSION_FIELD_NUMBER: builtins.int
    PROPAGATE_TAGS_FIELD_NUMBER: builtins.int
    ROLE_FIELD_NUMBER: builtins.int
    SCHEDULING_STRATEGY_FIELD_NUMBER: builtins.int
    SERVICE_NAME_FIELD_NUMBER: builtins.int
    SERVICE_REGISTRIES_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    TASK_DEFINITION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    service_arn: builtins.str
    @property
    def capacity_provider_strategy(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ServiceCapacityProviderStrategyItem]: ...
    cluster: builtins.str
    @property
    def deployment_configuration(self) -> global___ServiceDeploymentConfiguration: ...
    @property
    def deployment_controller(self) -> global___ServiceDeploymentController: ...
    desired_count: builtins.int
    enable_ecs_managed_tags: builtins.bool
    health_check_grace_period_seconds: builtins.int
    launch_type: builtins.str
    @property
    def load_balancers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ServiceLoadBalancer]: ...
    @property
    def network_configuration(self) -> global___ServiceNetworkConfiguration: ...
    @property
    def placement_constraints(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ServicePlacementConstraint]: ...
    @property
    def placement_strategies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ServicePlacementStrategy]: ...
    platform_version: builtins.str
    propagate_tags: builtins.str
    role: builtins.str
    scheduling_strategy: builtins.str
    service_name: builtins.str
    @property
    def service_registries(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ServiceServiceRegistry]: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    task_definition: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        service_arn: builtins.str = ...,
        capacity_provider_strategy: collections.abc.Iterable[global___ServiceCapacityProviderStrategyItem] | None = ...,
        cluster: builtins.str = ...,
        deployment_configuration: global___ServiceDeploymentConfiguration | None = ...,
        deployment_controller: global___ServiceDeploymentController | None = ...,
        desired_count: builtins.int = ...,
        enable_ecs_managed_tags: builtins.bool = ...,
        health_check_grace_period_seconds: builtins.int = ...,
        launch_type: builtins.str = ...,
        load_balancers: collections.abc.Iterable[global___ServiceLoadBalancer] | None = ...,
        network_configuration: global___ServiceNetworkConfiguration | None = ...,
        placement_constraints: collections.abc.Iterable[global___ServicePlacementConstraint] | None = ...,
        placement_strategies: collections.abc.Iterable[global___ServicePlacementStrategy] | None = ...,
        platform_version: builtins.str = ...,
        propagate_tags: builtins.str = ...,
        role: builtins.str = ...,
        scheduling_strategy: builtins.str = ...,
        service_name: builtins.str = ...,
        service_registries: collections.abc.Iterable[global___ServiceServiceRegistry] | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        task_definition: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["deployment_configuration", b"deployment_configuration", "deployment_controller", b"deployment_controller", "network_configuration", b"network_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["capacity_provider_strategy", b"capacity_provider_strategy", "cluster", b"cluster", "deployment_configuration", b"deployment_configuration", "deployment_controller", b"deployment_controller", "desired_count", b"desired_count", "enable_ecs_managed_tags", b"enable_ecs_managed_tags", "health_check_grace_period_seconds", b"health_check_grace_period_seconds", "launch_type", b"launch_type", "load_balancers", b"load_balancers", "network_configuration", b"network_configuration", "placement_constraints", b"placement_constraints", "placement_strategies", b"placement_strategies", "platform_version", b"platform_version", "propagate_tags", b"propagate_tags", "resource_info", b"resource_info", "role", b"role", "scheduling_strategy", b"scheduling_strategy", "service_arn", b"service_arn", "service_name", b"service_name", "service_registries", b"service_registries", "tags", b"tags", "task_definition", b"task_definition"]) -> None: ...

global___Service = Service

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        value: 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", "value", b"value"]) -> None: ...

global___TaskDefinitionKeyValuePair = TaskDefinitionKeyValuePair

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        value: 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["resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___TaskDefinitionEnvironmentFile = TaskDefinitionEnvironmentFile

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HOSTNAME_FIELD_NUMBER: builtins.int
    IP_ADDRESS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    hostname: builtins.str
    ip_address: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        hostname: builtins.str = ...,
        ip_address: 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["hostname", b"hostname", "ip_address", b"ip_address", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionHostEntry = TaskDefinitionHostEntry

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

    @typing_extensions.final
    class OptionsEntry(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
    OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def options(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        options: 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["options", b"options", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionFirelensConfiguration = TaskDefinitionFirelensConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMMAND_FIELD_NUMBER: builtins.int
    INTERVAL_FIELD_NUMBER: builtins.int
    TIMEOUT_FIELD_NUMBER: builtins.int
    RETRIES_FIELD_NUMBER: builtins.int
    START_PERIOD_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def command(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    interval: builtins.int
    timeout: builtins.int
    retries: builtins.int
    start_period: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        command: collections.abc.Iterable[builtins.str] | None = ...,
        interval: builtins.int = ...,
        timeout: builtins.int = ...,
        retries: builtins.int = ...,
        start_period: 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["command", b"command", "interval", b"interval", "resource_info", b"resource_info", "retries", b"retries", "start_period", b"start_period", "timeout", b"timeout"]) -> None: ...

global___TaskDefinitionHealthCheck = TaskDefinitionHealthCheck

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ADD_FIELD_NUMBER: builtins.int
    DROP_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def add(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def drop(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        add: collections.abc.Iterable[builtins.str] | None = ...,
        drop: 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["add", b"add", "drop", b"drop", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionKernelCapabilities = TaskDefinitionKernelCapabilities

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_PATH_FIELD_NUMBER: builtins.int
    HOST_PATH_FIELD_NUMBER: builtins.int
    PERMISSIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_path: builtins.str
    host_path: builtins.str
    @property
    def permissions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_path: builtins.str = ...,
        host_path: builtins.str = ...,
        permissions: 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["container_path", b"container_path", "host_path", b"host_path", "permissions", b"permissions", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionDevice = TaskDefinitionDevice

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_PATH_FIELD_NUMBER: builtins.int
    MOUNT_OPTIONS_FIELD_NUMBER: builtins.int
    SIZE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_path: builtins.str
    @property
    def mount_options(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    size: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_path: builtins.str = ...,
        mount_options: collections.abc.Iterable[builtins.str] | None = ...,
        size: 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["container_path", b"container_path", "mount_options", b"mount_options", "resource_info", b"resource_info", "size", b"size"]) -> None: ...

global___TaskDefinitionTmpfs = TaskDefinitionTmpfs

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CAPABILITIES_FIELD_NUMBER: builtins.int
    DEVICES_FIELD_NUMBER: builtins.int
    INIT_PROCESS_ENABLED_FIELD_NUMBER: builtins.int
    MAX_SWAP_FIELD_NUMBER: builtins.int
    SHARED_MEMORY_SIZE_FIELD_NUMBER: builtins.int
    SWAPPINESS_FIELD_NUMBER: builtins.int
    TMPFS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def capabilities(self) -> global___TaskDefinitionKernelCapabilities: ...
    @property
    def devices(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionDevice]: ...
    init_process_enabled: builtins.bool
    max_swap: builtins.int
    shared_memory_size: builtins.int
    swappiness: builtins.int
    @property
    def tmpfs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionTmpfs]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        capabilities: global___TaskDefinitionKernelCapabilities | None = ...,
        devices: collections.abc.Iterable[global___TaskDefinitionDevice] | None = ...,
        init_process_enabled: builtins.bool = ...,
        max_swap: builtins.int = ...,
        shared_memory_size: builtins.int = ...,
        swappiness: builtins.int = ...,
        tmpfs: collections.abc.Iterable[global___TaskDefinitionTmpfs] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["capabilities", b"capabilities", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["capabilities", b"capabilities", "devices", b"devices", "init_process_enabled", b"init_process_enabled", "max_swap", b"max_swap", "resource_info", b"resource_info", "shared_memory_size", b"shared_memory_size", "swappiness", b"swappiness", "tmpfs", b"tmpfs"]) -> None: ...

global___TaskDefinitionLinuxParameters = TaskDefinitionLinuxParameters

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    VALUE_FROM_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    value_from: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        value_from: 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", "value_from", b"value_from"]) -> None: ...

global___TaskDefinitionSecret = TaskDefinitionSecret

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

    @typing_extensions.final
    class OptionsEntry(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
    LOG_DRIVER_FIELD_NUMBER: builtins.int
    OPTIONS_FIELD_NUMBER: builtins.int
    SECRET_OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    log_driver: builtins.str
    @property
    def options(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def secret_options(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionSecret]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        log_driver: builtins.str = ...,
        options: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        secret_options: collections.abc.Iterable[global___TaskDefinitionSecret] | 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["log_driver", b"log_driver", "options", b"options", "resource_info", b"resource_info", "secret_options", b"secret_options"]) -> None: ...

global___TaskDefinitionLogConfiguration = TaskDefinitionLogConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_PATH_FIELD_NUMBER: builtins.int
    READ_ONLY_FIELD_NUMBER: builtins.int
    SOURCE_VOLUME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_path: builtins.str
    read_only: builtins.bool
    source_volume: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_path: builtins.str = ...,
        read_only: builtins.bool = ...,
        source_volume: 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["container_path", b"container_path", "read_only", b"read_only", "resource_info", b"resource_info", "source_volume", b"source_volume"]) -> None: ...

global___TaskDefinitionMountPoint = TaskDefinitionMountPoint

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_PORT_FIELD_NUMBER: builtins.int
    HOST_PORT_FIELD_NUMBER: builtins.int
    PROTOCOL_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_port: builtins.int
    host_port: builtins.int
    protocol: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_port: builtins.int = ...,
        host_port: builtins.int = ...,
        protocol: 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["container_port", b"container_port", "host_port", b"host_port", "protocol", b"protocol", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionPortMapping = TaskDefinitionPortMapping

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CREDENTIALS_PARAMETER_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    credentials_parameter: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        credentials_parameter: 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["credentials_parameter", b"credentials_parameter", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionRepositoryCredentials = TaskDefinitionRepositoryCredentials

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        value: 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["resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___TaskDefinitionResourceRequirement = TaskDefinitionResourceRequirement

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HARD_LIMIT_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SOFT_LIMIT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    hard_limit: builtins.int
    name: builtins.str
    soft_limit: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        hard_limit: builtins.int = ...,
        name: builtins.str = ...,
        soft_limit: 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["hard_limit", b"hard_limit", "name", b"name", "resource_info", b"resource_info", "soft_limit", b"soft_limit"]) -> None: ...

global___TaskDefinitionUlimit = TaskDefinitionUlimit

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    READ_ONLY_FIELD_NUMBER: builtins.int
    SOURCE_CONTAINER_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    read_only: builtins.bool
    source_container: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        read_only: builtins.bool = ...,
        source_container: 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["read_only", b"read_only", "resource_info", b"resource_info", "source_container", b"source_container"]) -> None: ...

global___TaskDefinitionVolumeFrom = TaskDefinitionVolumeFrom

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAMESPACE_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    namespace: builtins.str
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        namespace: builtins.str = ...,
        value: 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["namespace", b"namespace", "resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___TaskDefinitionSystemControl = TaskDefinitionSystemControl

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

    @typing_extensions.final
    class DockerLabelsEntry(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
    COMMAND_FIELD_NUMBER: builtins.int
    CPU_FIELD_NUMBER: builtins.int
    DISABLE_NETWORKING_FIELD_NUMBER: builtins.int
    DNS_SEARCH_DOMAINS_FIELD_NUMBER: builtins.int
    DNS_SERVERS_FIELD_NUMBER: builtins.int
    DOCKER_LABELS_FIELD_NUMBER: builtins.int
    DOCKER_SECURITY_OPTIONS_FIELD_NUMBER: builtins.int
    ENTRY_POINT_FIELD_NUMBER: builtins.int
    ENVIRONMENT_FIELD_NUMBER: builtins.int
    ENVIRONMENT_FILES_FIELD_NUMBER: builtins.int
    ESSENTIAL_FIELD_NUMBER: builtins.int
    EXTRA_HOSTS_FIELD_NUMBER: builtins.int
    FIRELENS_CONFIGURATION_FIELD_NUMBER: builtins.int
    HEALTH_CHECK_FIELD_NUMBER: builtins.int
    HOSTNAME_FIELD_NUMBER: builtins.int
    IMAGE_FIELD_NUMBER: builtins.int
    LINKS_FIELD_NUMBER: builtins.int
    LINUX_PARAMETERS_FIELD_NUMBER: builtins.int
    LOG_CONFIGURATION_FIELD_NUMBER: builtins.int
    MEMORY_FIELD_NUMBER: builtins.int
    MEMORY_RESERVATION_FIELD_NUMBER: builtins.int
    MOUNT_POINTS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PORT_MAPPINGS_FIELD_NUMBER: builtins.int
    PRIVILEGED_FIELD_NUMBER: builtins.int
    READONLY_ROOT_FILESYSTEM_FIELD_NUMBER: builtins.int
    REPOSITORY_CREDENTIALS_FIELD_NUMBER: builtins.int
    RESOURCE_REQUIREMENTS_FIELD_NUMBER: builtins.int
    SECRETS_FIELD_NUMBER: builtins.int
    START_TIMEOUT_FIELD_NUMBER: builtins.int
    STOP_TIMEOUT_FIELD_NUMBER: builtins.int
    ULIMITS_FIELD_NUMBER: builtins.int
    USER_FIELD_NUMBER: builtins.int
    VOLUMES_FROM_FIELD_NUMBER: builtins.int
    WORKING_DIRECTORY_FIELD_NUMBER: builtins.int
    INTERACTIVE_FIELD_NUMBER: builtins.int
    PSEUDO_TERMINAL_FIELD_NUMBER: builtins.int
    SYSTEM_CONTROLS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def command(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    cpu: builtins.int
    disable_networking: builtins.bool
    @property
    def dns_search_domains(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def dns_servers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def docker_labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def docker_security_options(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def entry_point(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def environment(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionKeyValuePair]: ...
    @property
    def environment_files(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionEnvironmentFile]: ...
    essential: builtins.bool
    @property
    def extra_hosts(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionHostEntry]: ...
    @property
    def firelens_configuration(self) -> global___TaskDefinitionFirelensConfiguration: ...
    @property
    def health_check(self) -> global___TaskDefinitionHealthCheck: ...
    hostname: builtins.str
    image: builtins.str
    @property
    def links(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def linux_parameters(self) -> global___TaskDefinitionLinuxParameters: ...
    @property
    def log_configuration(self) -> global___TaskDefinitionLogConfiguration: ...
    memory: builtins.int
    memory_reservation: builtins.int
    @property
    def mount_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionMountPoint]: ...
    name: builtins.str
    @property
    def port_mappings(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionPortMapping]: ...
    privileged: builtins.bool
    readonly_root_filesystem: builtins.bool
    @property
    def repository_credentials(self) -> global___TaskDefinitionRepositoryCredentials: ...
    @property
    def resource_requirements(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionResourceRequirement]: ...
    @property
    def secrets(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionSecret]: ...
    start_timeout: builtins.int
    stop_timeout: builtins.int
    @property
    def ulimits(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionUlimit]: ...
    user: builtins.str
    @property
    def volumes_from(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionVolumeFrom]: ...
    working_directory: builtins.str
    interactive: builtins.bool
    pseudo_terminal: builtins.bool
    @property
    def system_controls(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionSystemControl]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        command: collections.abc.Iterable[builtins.str] | None = ...,
        cpu: builtins.int = ...,
        disable_networking: builtins.bool = ...,
        dns_search_domains: collections.abc.Iterable[builtins.str] | None = ...,
        dns_servers: collections.abc.Iterable[builtins.str] | None = ...,
        docker_labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        docker_security_options: collections.abc.Iterable[builtins.str] | None = ...,
        entry_point: collections.abc.Iterable[builtins.str] | None = ...,
        environment: collections.abc.Iterable[global___TaskDefinitionKeyValuePair] | None = ...,
        environment_files: collections.abc.Iterable[global___TaskDefinitionEnvironmentFile] | None = ...,
        essential: builtins.bool = ...,
        extra_hosts: collections.abc.Iterable[global___TaskDefinitionHostEntry] | None = ...,
        firelens_configuration: global___TaskDefinitionFirelensConfiguration | None = ...,
        health_check: global___TaskDefinitionHealthCheck | None = ...,
        hostname: builtins.str = ...,
        image: builtins.str = ...,
        links: collections.abc.Iterable[builtins.str] | None = ...,
        linux_parameters: global___TaskDefinitionLinuxParameters | None = ...,
        log_configuration: global___TaskDefinitionLogConfiguration | None = ...,
        memory: builtins.int = ...,
        memory_reservation: builtins.int = ...,
        mount_points: collections.abc.Iterable[global___TaskDefinitionMountPoint] | None = ...,
        name: builtins.str = ...,
        port_mappings: collections.abc.Iterable[global___TaskDefinitionPortMapping] | None = ...,
        privileged: builtins.bool = ...,
        readonly_root_filesystem: builtins.bool = ...,
        repository_credentials: global___TaskDefinitionRepositoryCredentials | None = ...,
        resource_requirements: collections.abc.Iterable[global___TaskDefinitionResourceRequirement] | None = ...,
        secrets: collections.abc.Iterable[global___TaskDefinitionSecret] | None = ...,
        start_timeout: builtins.int = ...,
        stop_timeout: builtins.int = ...,
        ulimits: collections.abc.Iterable[global___TaskDefinitionUlimit] | None = ...,
        user: builtins.str = ...,
        volumes_from: collections.abc.Iterable[global___TaskDefinitionVolumeFrom] | None = ...,
        working_directory: builtins.str = ...,
        interactive: builtins.bool = ...,
        pseudo_terminal: builtins.bool = ...,
        system_controls: collections.abc.Iterable[global___TaskDefinitionSystemControl] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["firelens_configuration", b"firelens_configuration", "health_check", b"health_check", "linux_parameters", b"linux_parameters", "log_configuration", b"log_configuration", "repository_credentials", b"repository_credentials", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["command", b"command", "cpu", b"cpu", "disable_networking", b"disable_networking", "dns_search_domains", b"dns_search_domains", "dns_servers", b"dns_servers", "docker_labels", b"docker_labels", "docker_security_options", b"docker_security_options", "entry_point", b"entry_point", "environment", b"environment", "environment_files", b"environment_files", "essential", b"essential", "extra_hosts", b"extra_hosts", "firelens_configuration", b"firelens_configuration", "health_check", b"health_check", "hostname", b"hostname", "image", b"image", "interactive", b"interactive", "links", b"links", "linux_parameters", b"linux_parameters", "log_configuration", b"log_configuration", "memory", b"memory", "memory_reservation", b"memory_reservation", "mount_points", b"mount_points", "name", b"name", "port_mappings", b"port_mappings", "privileged", b"privileged", "pseudo_terminal", b"pseudo_terminal", "readonly_root_filesystem", b"readonly_root_filesystem", "repository_credentials", b"repository_credentials", "resource_info", b"resource_info", "resource_requirements", b"resource_requirements", "secrets", b"secrets", "start_timeout", b"start_timeout", "stop_timeout", b"stop_timeout", "system_controls", b"system_controls", "ulimits", b"ulimits", "user", b"user", "volumes_from", b"volumes_from", "working_directory", b"working_directory"]) -> None: ...

global___TaskDefinitionContainerDefinition = TaskDefinitionContainerDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DEVICE_NAME_FIELD_NUMBER: builtins.int
    DEVICE_TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    device_name: builtins.str
    device_type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        device_name: builtins.str = ...,
        device_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["device_name", b"device_name", "device_type", b"device_type", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionInferenceAccelerator = TaskDefinitionInferenceAccelerator

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EXPRESSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    expression: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        expression: 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["expression", b"expression", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionTaskDefinitionPlacementConstraint = TaskDefinitionTaskDefinitionPlacementConstraint

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_NAME_FIELD_NUMBER: builtins.int
    PROXY_CONFIGURATION_PROPERTIES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_name: builtins.str
    @property
    def proxy_configuration_properties(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionKeyValuePair]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_name: builtins.str = ...,
        proxy_configuration_properties: collections.abc.Iterable[global___TaskDefinitionKeyValuePair] | 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["container_name", b"container_name", "proxy_configuration_properties", b"proxy_configuration_properties", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionProxyConfiguration = TaskDefinitionProxyConfiguration

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

    @typing_extensions.final
    class DriverOptsEntry(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: ...

    @typing_extensions.final
    class LabelsEntry(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
    AUTOPROVISION_FIELD_NUMBER: builtins.int
    DRIVER_FIELD_NUMBER: builtins.int
    DRIVER_OPTS_FIELD_NUMBER: builtins.int
    LABELS_FIELD_NUMBER: builtins.int
    SCOPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    autoprovision: builtins.bool
    driver: builtins.str
    @property
    def driver_opts(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    scope: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        autoprovision: builtins.bool = ...,
        driver: builtins.str = ...,
        driver_opts: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        scope: 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["autoprovision", b"autoprovision", "driver", b"driver", "driver_opts", b"driver_opts", "labels", b"labels", "resource_info", b"resource_info", "scope", b"scope"]) -> None: ...

global___TaskDefinitionDockerVolumeConfiguration = TaskDefinitionDockerVolumeConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FILESYSTEM_ID_FIELD_NUMBER: builtins.int
    ROOT_DIRECTORY_FIELD_NUMBER: builtins.int
    TRANSIT_ENCRYPTION_FIELD_NUMBER: builtins.int
    TRANSIT_ENCRYPTION_PORT_FIELD_NUMBER: builtins.int
    AUTHORIZATION_CONFIG_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    filesystem_id: builtins.str
    root_directory: builtins.str
    transit_encryption: builtins.str
    transit_encryption_port: builtins.int
    @property
    def authorization_config(self) -> global___TaskDefinitionAuthorizationConfig: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        filesystem_id: builtins.str = ...,
        root_directory: builtins.str = ...,
        transit_encryption: builtins.str = ...,
        transit_encryption_port: builtins.int = ...,
        authorization_config: global___TaskDefinitionAuthorizationConfig | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["authorization_config", b"authorization_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["authorization_config", b"authorization_config", "filesystem_id", b"filesystem_id", "resource_info", b"resource_info", "root_directory", b"root_directory", "transit_encryption", b"transit_encryption", "transit_encryption_port", b"transit_encryption_port"]) -> None: ...

global___TaskDefinitionEFSVolumeConfiguration = TaskDefinitionEFSVolumeConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SOURCE_PATH_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    source_path: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        source_path: 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["resource_info", b"resource_info", "source_path", b"source_path"]) -> None: ...

global___TaskDefinitionHostVolumeProperties = TaskDefinitionHostVolumeProperties

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DOCKER_VOLUME_CONFIGURATION_FIELD_NUMBER: builtins.int
    EFS_VOLUME_CONFIGURATION_FIELD_NUMBER: builtins.int
    HOST_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def docker_volume_configuration(self) -> global___TaskDefinitionDockerVolumeConfiguration: ...
    @property
    def efs_volume_configuration(self) -> global___TaskDefinitionEFSVolumeConfiguration: ...
    @property
    def host(self) -> global___TaskDefinitionHostVolumeProperties: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        docker_volume_configuration: global___TaskDefinitionDockerVolumeConfiguration | None = ...,
        efs_volume_configuration: global___TaskDefinitionEFSVolumeConfiguration | None = ...,
        host: global___TaskDefinitionHostVolumeProperties | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["docker_volume_configuration", b"docker_volume_configuration", "efs_volume_configuration", b"efs_volume_configuration", "host", b"host", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["docker_volume_configuration", b"docker_volume_configuration", "efs_volume_configuration", b"efs_volume_configuration", "host", b"host", "name", b"name", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionVolume = TaskDefinitionVolume

@typing_extensions.final
class TaskDefinition(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
    FAMILY_FIELD_NUMBER: builtins.int
    CONTAINER_DEFINITIONS_FIELD_NUMBER: builtins.int
    CPU_FIELD_NUMBER: builtins.int
    EXECUTION_ROLE_ARN_FIELD_NUMBER: builtins.int
    INFERENCE_ACCELERATORS_FIELD_NUMBER: builtins.int
    MEMORY_FIELD_NUMBER: builtins.int
    NETWORK_MODE_FIELD_NUMBER: builtins.int
    PLACEMENT_CONSTRAINTS_FIELD_NUMBER: builtins.int
    PROXY_CONFIGURATION_FIELD_NUMBER: builtins.int
    REQUIRES_COMPATIBILITIES_FIELD_NUMBER: builtins.int
    TASK_ROLE_ARN_FIELD_NUMBER: builtins.int
    VOLUMES_FIELD_NUMBER: builtins.int
    PID_MODE_FIELD_NUMBER: builtins.int
    IPC_MODE_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    family: builtins.str
    @property
    def container_definitions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionContainerDefinition]: ...
    cpu: builtins.str
    execution_role_arn: builtins.str
    @property
    def inference_accelerators(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionInferenceAccelerator]: ...
    memory: builtins.str
    network_mode: builtins.str
    @property
    def placement_constraints(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionTaskDefinitionPlacementConstraint]: ...
    @property
    def proxy_configuration(self) -> global___TaskDefinitionProxyConfiguration: ...
    @property
    def requires_compatibilities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    task_role_arn: builtins.str
    @property
    def volumes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskDefinitionVolume]: ...
    pid_mode: builtins.str
    ipc_mode: builtins.str
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        family: builtins.str = ...,
        container_definitions: collections.abc.Iterable[global___TaskDefinitionContainerDefinition] | None = ...,
        cpu: builtins.str = ...,
        execution_role_arn: builtins.str = ...,
        inference_accelerators: collections.abc.Iterable[global___TaskDefinitionInferenceAccelerator] | None = ...,
        memory: builtins.str = ...,
        network_mode: builtins.str = ...,
        placement_constraints: collections.abc.Iterable[global___TaskDefinitionTaskDefinitionPlacementConstraint] | None = ...,
        proxy_configuration: global___TaskDefinitionProxyConfiguration | None = ...,
        requires_compatibilities: collections.abc.Iterable[builtins.str] | None = ...,
        task_role_arn: builtins.str = ...,
        volumes: collections.abc.Iterable[global___TaskDefinitionVolume] | None = ...,
        pid_mode: builtins.str = ...,
        ipc_mode: builtins.str = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["proxy_configuration", b"proxy_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["container_definitions", b"container_definitions", "cpu", b"cpu", "execution_role_arn", b"execution_role_arn", "family", b"family", "inference_accelerators", b"inference_accelerators", "ipc_mode", b"ipc_mode", "memory", b"memory", "network_mode", b"network_mode", "pid_mode", b"pid_mode", "placement_constraints", b"placement_constraints", "proxy_configuration", b"proxy_configuration", "requires_compatibilities", b"requires_compatibilities", "resource_info", b"resource_info", "tags", b"tags", "task_role_arn", b"task_role_arn", "volumes", b"volumes"]) -> None: ...

global___TaskDefinition = TaskDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_NAME_FIELD_NUMBER: builtins.int
    CONTAINER_PORT_FIELD_NUMBER: builtins.int
    LOAD_BALANCER_NAME_FIELD_NUMBER: builtins.int
    TARGET_GROUP_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_name: builtins.str
    container_port: builtins.int
    load_balancer_name: builtins.str
    target_group_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_name: builtins.str = ...,
        container_port: builtins.int = ...,
        load_balancer_name: builtins.str = ...,
        target_group_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["container_name", b"container_name", "container_port", b"container_port", "load_balancer_name", b"load_balancer_name", "resource_info", b"resource_info", "target_group_arn", b"target_group_arn"]) -> None: ...

global___TaskSetLoadBalancer = TaskSetLoadBalancer

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ASSIGN_PUBLIC_IP_FIELD_NUMBER: builtins.int
    SECURITY_GROUPS_FIELD_NUMBER: builtins.int
    SUBNETS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    assign_public_ip: builtins.str
    @property
    def security_groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def subnets(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        assign_public_ip: builtins.str = ...,
        security_groups: collections.abc.Iterable[builtins.str] | None = ...,
        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["assign_public_ip", b"assign_public_ip", "resource_info", b"resource_info", "security_groups", b"security_groups", "subnets", b"subnets"]) -> None: ...

global___TaskSetAwsVpcConfiguration = TaskSetAwsVpcConfiguration

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

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

global___TaskSetNetworkConfiguration = TaskSetNetworkConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    UNIT_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    unit: builtins.str
    value: builtins.float
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        unit: builtins.str = ...,
        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", "unit", b"unit", "value", b"value"]) -> None: ...

global___TaskSetScale = TaskSetScale

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_NAME_FIELD_NUMBER: builtins.int
    CONTAINER_PORT_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    REGISTRY_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_name: builtins.str
    container_port: builtins.int
    port: builtins.int
    registry_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_name: builtins.str = ...,
        container_port: builtins.int = ...,
        port: builtins.int = ...,
        registry_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["container_name", b"container_name", "container_port", b"container_port", "port", b"port", "registry_arn", b"registry_arn", "resource_info", b"resource_info"]) -> None: ...

global___TaskSetServiceRegistry = TaskSetServiceRegistry

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CLUSTER_FIELD_NUMBER: builtins.int
    EXTERNAL_ID_FIELD_NUMBER: builtins.int
    LAUNCH_TYPE_FIELD_NUMBER: builtins.int
    LOAD_BALANCERS_FIELD_NUMBER: builtins.int
    NETWORK_CONFIGURATION_FIELD_NUMBER: builtins.int
    PLATFORM_VERSION_FIELD_NUMBER: builtins.int
    SCALE_FIELD_NUMBER: builtins.int
    SERVICE_FIELD_NUMBER: builtins.int
    SERVICE_REGISTRIES_FIELD_NUMBER: builtins.int
    TASK_DEFINITION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    cluster: builtins.str
    external_id: builtins.str
    launch_type: builtins.str
    @property
    def load_balancers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskSetLoadBalancer]: ...
    @property
    def network_configuration(self) -> global___TaskSetNetworkConfiguration: ...
    platform_version: builtins.str
    @property
    def scale(self) -> global___TaskSetScale: ...
    service: builtins.str
    @property
    def service_registries(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskSetServiceRegistry]: ...
    task_definition: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        cluster: builtins.str = ...,
        external_id: builtins.str = ...,
        launch_type: builtins.str = ...,
        load_balancers: collections.abc.Iterable[global___TaskSetLoadBalancer] | None = ...,
        network_configuration: global___TaskSetNetworkConfiguration | None = ...,
        platform_version: builtins.str = ...,
        scale: global___TaskSetScale | None = ...,
        service: builtins.str = ...,
        service_registries: collections.abc.Iterable[global___TaskSetServiceRegistry] | None = ...,
        task_definition: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["network_configuration", b"network_configuration", "resource_info", b"resource_info", "scale", b"scale"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["cluster", b"cluster", "external_id", b"external_id", "launch_type", b"launch_type", "load_balancers", b"load_balancers", "network_configuration", b"network_configuration", "platform_version", b"platform_version", "resource_info", b"resource_info", "scale", b"scale", "service", b"service", "service_registries", b"service_registries", "task_definition", b"task_definition"]) -> None: ...

global___TaskSet = TaskSet

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    IAM_FIELD_NUMBER: builtins.int
    ACCESS_POINT_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    iam: builtins.str
    access_point_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        iam: builtins.str = ...,
        access_point_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["access_point_id", b"access_point_id", "iam", b"iam", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionAuthorizationConfig = TaskDefinitionAuthorizationConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTAINER_NAME_FIELD_NUMBER: builtins.int
    CONDITION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    container_name: builtins.str
    condition: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        container_name: builtins.str = ...,
        condition: 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["condition", b"condition", "container_name", b"container_name", "resource_info", b"resource_info"]) -> None: ...

global___TaskDefinitionContainerDependency = TaskDefinitionContainerDependency
