"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import qwak.user_application.common.v0.resources_pb2
import sys
import typing

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class _InstanceTypeFilter:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _InstanceTypeFilterEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_InstanceTypeFilter.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    INSTANCE_TYPE_FILTER_UNSPECIFIED: _InstanceTypeFilter.ValueType  # 0
    INSTANCE_TYPE_FILTER_ALL: _InstanceTypeFilter.ValueType  # 1
    INSTANCE_TYPE_FILTER_CPU: _InstanceTypeFilter.ValueType  # 2
    INSTANCE_TYPE_FILTER_GPU: _InstanceTypeFilter.ValueType  # 3

class InstanceTypeFilter(_InstanceTypeFilter, metaclass=_InstanceTypeFilterEnumTypeWrapper): ...

INSTANCE_TYPE_FILTER_UNSPECIFIED: InstanceTypeFilter.ValueType  # 0
INSTANCE_TYPE_FILTER_ALL: InstanceTypeFilter.ValueType  # 1
INSTANCE_TYPE_FILTER_CPU: InstanceTypeFilter.ValueType  # 2
INSTANCE_TYPE_FILTER_GPU: InstanceTypeFilter.ValueType  # 3
global___InstanceTypeFilter = InstanceTypeFilter

class _InstanceType:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _InstanceTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_InstanceType.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    INSTANCE_TYPE_UNSPECIFIED: _InstanceType.ValueType  # 0
    INSTANCE_TYPE_CPU: _InstanceType.ValueType  # 1
    INSTANCE_TYPE_GPU: _InstanceType.ValueType  # 2

class InstanceType(_InstanceType, metaclass=_InstanceTypeEnumTypeWrapper): ...

INSTANCE_TYPE_UNSPECIFIED: InstanceType.ValueType  # 0
INSTANCE_TYPE_CPU: InstanceType.ValueType  # 1
INSTANCE_TYPE_GPU: InstanceType.ValueType  # 2
global___InstanceType = InstanceType

class InstanceTemplateSpec(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    ORDER_FIELD_NUMBER: builtins.int
    ENABLED_FIELD_NUMBER: builtins.int
    POD_COMPUTE_RESOURCES_FIELD_NUMBER: builtins.int
    INSTANCE_TYPE_FIELD_NUMBER: builtins.int
    QPU_FIELD_NUMBER: builtins.int
    AWS_SUPPORTED_FIELD_NUMBER: builtins.int
    GCP_SUPPORTED_FIELD_NUMBER: builtins.int
    id: builtins.str
    display_name: builtins.str
    order: builtins.int
    enabled: builtins.bool
    @property
    def pod_compute_resources(self) -> qwak.user_application.common.v0.resources_pb2.PodComputeResources: ...
    instance_type: global___InstanceType.ValueType
    qpu: builtins.float
    aws_supported: builtins.bool
    gcp_supported: builtins.bool
    def __init__(
        self,
        *,
        id: builtins.str = ...,
        display_name: builtins.str = ...,
        order: builtins.int = ...,
        enabled: builtins.bool = ...,
        pod_compute_resources: qwak.user_application.common.v0.resources_pb2.PodComputeResources | None = ...,
        instance_type: global___InstanceType.ValueType = ...,
        qpu: builtins.float = ...,
        aws_supported: builtins.bool = ...,
        gcp_supported: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["pod_compute_resources", b"pod_compute_resources"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aws_supported", b"aws_supported", "display_name", b"display_name", "enabled", b"enabled", "gcp_supported", b"gcp_supported", "id", b"id", "instance_type", b"instance_type", "order", b"order", "pod_compute_resources", b"pod_compute_resources", "qpu", b"qpu"]) -> None: ...

global___InstanceTemplateSpec = InstanceTemplateSpec

class InstanceFilter(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INSTANCE_TYPE_FILTER_FIELD_NUMBER: builtins.int
    instance_type_filter: global___InstanceTypeFilter.ValueType
    def __init__(
        self,
        *,
        instance_type_filter: global___InstanceTypeFilter.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["instance_type_filter", b"instance_type_filter"]) -> None: ...

global___InstanceFilter = InstanceFilter
