"""
@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.internal.enum_type_wrapper
import google.protobuf.message
import google.protobuf.wrappers_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 _TriggerMetricType:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _TriggerMetricTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_TriggerMetricType.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    TRIGGER_METRIC_TYPE_NOT_VALID: _TriggerMetricType.ValueType  # 0
    TRIGGER_METRIC_TYPE_VALUE: _TriggerMetricType.ValueType  # 1
    TRIGGER_METRIC_TYPE_AVERAGE_VALUE: _TriggerMetricType.ValueType  # 2

class TriggerMetricType(_TriggerMetricType, metaclass=_TriggerMetricTypeEnumTypeWrapper): ...

TRIGGER_METRIC_TYPE_NOT_VALID: TriggerMetricType.ValueType  # 0
TRIGGER_METRIC_TYPE_VALUE: TriggerMetricType.ValueType  # 1
TRIGGER_METRIC_TYPE_AVERAGE_VALUE: TriggerMetricType.ValueType  # 2
global___TriggerMetricType = TriggerMetricType

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

class _KubeDeploymentTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_KubeDeploymentType.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    UNKNOWN: _KubeDeploymentType.ValueType  # 0
    REALTIME: _KubeDeploymentType.ValueType  # 1
    STREAM: _KubeDeploymentType.ValueType  # 2

class KubeDeploymentType(_KubeDeploymentType, metaclass=_KubeDeploymentTypeEnumTypeWrapper): ...

UNKNOWN: KubeDeploymentType.ValueType  # 0
REALTIME: KubeDeploymentType.ValueType  # 1
STREAM: KubeDeploymentType.ValueType  # 2
global___KubeDeploymentType = KubeDeploymentType

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

    NUMBER_OF_WORKERS_FIELD_NUMBER: builtins.int
    HTTP_REQUEST_TIMEOUT_MS_FIELD_NUMBER: builtins.int
    DAEMON_MODE_FIELD_NUMBER: builtins.int
    CUSTOM_IAM_ROLE_ARN_FIELD_NUMBER: builtins.int
    MAX_BATCH_SIZE_FIELD_NUMBER: builtins.int
    DEPLOYMENT_PROCESS_TIMEOUT_LIMIT_FIELD_NUMBER: builtins.int
    PURCHASE_OPTION_FIELD_NUMBER: builtins.int
    number_of_workers: builtins.int
    """Number of workers http server"""
    http_request_timeout_ms: builtins.int
    """Timeout for request timeout"""
    @property
    def daemon_mode(self) -> google.protobuf.wrappers_pb2.BoolValue:
        """Serve model container in daemon mode"""
    custom_iam_role_arn: builtins.str
    """Custom IAM Role ARN"""
    max_batch_size: builtins.int
    """Max batch size of records"""
    deployment_process_timeout_limit: builtins.int
    """The timeout for the deployment (in seconds)"""
    purchase_option: builtins.str
    """Whether it is spot/ondemand (default - spot)"""
    def __init__(
        self,
        *,
        number_of_workers: builtins.int = ...,
        http_request_timeout_ms: builtins.int = ...,
        daemon_mode: google.protobuf.wrappers_pb2.BoolValue | None = ...,
        custom_iam_role_arn: builtins.str = ...,
        max_batch_size: builtins.int = ...,
        deployment_process_timeout_limit: builtins.int = ...,
        purchase_option: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["daemon_mode", b"daemon_mode"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["custom_iam_role_arn", b"custom_iam_role_arn", "daemon_mode", b"daemon_mode", "deployment_process_timeout_limit", b"deployment_process_timeout_limit", "http_request_timeout_ms", b"http_request_timeout_ms", "max_batch_size", b"max_batch_size", "number_of_workers", b"number_of_workers", "purchase_option", b"purchase_option"]) -> None: ...

global___KubeAdvancedDeploymentOptions = KubeAdvancedDeploymentOptions

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

    REALTIME_CONFIG_FIELD_NUMBER: builtins.int
    STREAM_CONFIG_FIELD_NUMBER: builtins.int
    @property
    def realtime_config(self) -> global___RealTimeConfig:
        """RealTime will replace advanced - a placeholder for now"""
    @property
    def stream_config(self) -> global___StreamConfig:
        """Deploy using streaming solution (kafka)"""
    def __init__(
        self,
        *,
        realtime_config: global___RealTimeConfig | None = ...,
        stream_config: global___StreamConfig | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["Strategy", b"Strategy", "realtime_config", b"realtime_config", "stream_config", b"stream_config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["Strategy", b"Strategy", "realtime_config", b"realtime_config", "stream_config", b"stream_config"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["Strategy", b"Strategy"]) -> typing_extensions.Literal["realtime_config", "stream_config"] | None: ...

global___KubeServingStrategy = KubeServingStrategy

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

    MIN_REPLICA_COUNT_FIELD_NUMBER: builtins.int
    MAX_REPLICA_COUNT_FIELD_NUMBER: builtins.int
    POLLING_INTERVAL_FIELD_NUMBER: builtins.int
    COOL_DOWN_PERIOD_FIELD_NUMBER: builtins.int
    TRIGGERS_FIELD_NUMBER: builtins.int
    min_replica_count: builtins.int
    """The minimum number of replicas will scale the resource down to"""
    max_replica_count: builtins.int
    """The maximum number of replicas of the target resource"""
    polling_interval: builtins.int
    """This is the interval to check each trigger on. By default it's every 30 seconds."""
    cool_down_period: builtins.int
    """The period to wait after the last trigger reported active before scaling the resource back to 0. By default it’s 5 minutes (300 seconds)."""
    @property
    def triggers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Triggers]:
        """List of triggers to activate scaling(up/down) of the target resource based on"""
    def __init__(
        self,
        *,
        min_replica_count: builtins.int = ...,
        max_replica_count: builtins.int = ...,
        polling_interval: builtins.int = ...,
        cool_down_period: builtins.int = ...,
        triggers: collections.abc.Iterable[global___Triggers] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["cool_down_period", b"cool_down_period", "max_replica_count", b"max_replica_count", "min_replica_count", b"min_replica_count", "polling_interval", b"polling_interval", "triggers", b"triggers"]) -> None: ...

global___AutoScalingSpec = AutoScalingSpec

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

    PROMETHEUS_TRIGGER_FIELD_NUMBER: builtins.int
    @property
    def prometheus_trigger(self) -> global___PrometheusTrigger: ...
    def __init__(
        self,
        *,
        prometheus_trigger: global___PrometheusTrigger | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["trigger_type", b"trigger_type"]) -> typing_extensions.Literal["prometheus_trigger"] | None: ...

global___Triggers = Triggers

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

    METRIC_NAME_FIELD_NUMBER: builtins.int
    THRESHOLD_FIELD_NUMBER: builtins.int
    QUERY_FIELD_NUMBER: builtins.int
    METRIC_TYPE_FIELD_NUMBER: builtins.int
    metric_name: builtins.str
    """Name to identify the Metric in the external.metrics.k8s.io API"""
    threshold: builtins.int
    """Value to initiate scaling on"""
    query: builtins.str
    """Promql syntax query"""
    metric_type: global___TriggerMetricType.ValueType
    """Type of the metric"""
    def __init__(
        self,
        *,
        metric_name: builtins.str = ...,
        threshold: builtins.int = ...,
        query: builtins.str = ...,
        metric_type: global___TriggerMetricType.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["metric_name", b"metric_name", "metric_type", b"metric_type", "query", b"query", "threshold", b"threshold"]) -> None: ...

global___PrometheusTrigger = PrometheusTrigger

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

    SELECTED_VARIATION_MAPPING_NAME_FIELD_NUMBER: builtins.int
    ASSUMED_IAM_ROLE_ARN_FIELD_NUMBER: builtins.int
    selected_variation_mapping_name: builtins.str
    assumed_iam_role_arn: builtins.str
    def __init__(
        self,
        *,
        selected_variation_mapping_name: builtins.str = ...,
        assumed_iam_role_arn: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["assumed_iam_role_arn", b"assumed_iam_role_arn", "selected_variation_mapping_name", b"selected_variation_mapping_name"]) -> None: ...

global___RealTimeConfig = RealTimeConfig

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

    KAFKA_FIELD_NUMBER: builtins.int
    @property
    def kafka(self) -> global___KafkaConfig: ...
    def __init__(
        self,
        *,
        kafka: global___KafkaConfig | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["configuration", b"configuration", "kafka", b"kafka"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["configuration", b"configuration", "kafka", b"kafka"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["configuration", b"configuration"]) -> typing_extensions.Literal["kafka"] | None: ...

global___StreamConfig = StreamConfig

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

    class Consumer(google.protobuf.message.Message):
        """The consumer config"""

        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _AutoOffSetTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[KafkaConfig.Consumer._AutoOffSetType.ValueType], builtins.type):  # noqa: F821
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN: KafkaConfig.Consumer._AutoOffSetType.ValueType  # 0
            EARLIEST: KafkaConfig.Consumer._AutoOffSetType.ValueType  # 1
            LATEST: KafkaConfig.Consumer._AutoOffSetType.ValueType  # 2

        class AutoOffSetType(_AutoOffSetType, metaclass=_AutoOffSetTypeEnumTypeWrapper):
            """The offset types"""

        UNKNOWN: KafkaConfig.Consumer.AutoOffSetType.ValueType  # 0
        EARLIEST: KafkaConfig.Consumer.AutoOffSetType.ValueType  # 1
        LATEST: KafkaConfig.Consumer.AutoOffSetType.ValueType  # 2

        BOOTSTRAP_SERVER_FIELD_NUMBER: builtins.int
        TOPIC_FIELD_NUMBER: builtins.int
        GROUP_FIELD_NUMBER: builtins.int
        TIMEOUT_FIELD_NUMBER: builtins.int
        AUTO_OFFSET_TYPE_FIELD_NUMBER: builtins.int
        MAX_BATCH_SIZE_FIELD_NUMBER: builtins.int
        MAX_POLL_LATENCY_FIELD_NUMBER: builtins.int
        @property
        def bootstrap_server(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
            """Bootstrap servers"""
        topic: builtins.str
        """Consumer Topic"""
        group: builtins.str
        """Consumer Group"""
        timeout: builtins.int
        """Consumer timeout"""
        auto_offset_type: global___KafkaConfig.Consumer.AutoOffSetType.ValueType
        """The offset for the consumer"""
        max_batch_size: builtins.int
        max_poll_latency: builtins.float
        def __init__(
            self,
            *,
            bootstrap_server: collections.abc.Iterable[builtins.str] | None = ...,
            topic: builtins.str = ...,
            group: builtins.str = ...,
            timeout: builtins.int = ...,
            auto_offset_type: global___KafkaConfig.Consumer.AutoOffSetType.ValueType = ...,
            max_batch_size: builtins.int = ...,
            max_poll_latency: builtins.float = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["auto_offset_type", b"auto_offset_type", "bootstrap_server", b"bootstrap_server", "group", b"group", "max_batch_size", b"max_batch_size", "max_poll_latency", b"max_poll_latency", "timeout", b"timeout", "topic", b"topic"]) -> None: ...

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

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

        class _CompressionTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[KafkaConfig.Producer._CompressionType.ValueType], builtins.type):  # noqa: F821
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN: KafkaConfig.Producer._CompressionType.ValueType  # 0
            UNCOMPRESSED: KafkaConfig.Producer._CompressionType.ValueType  # 1
            GZIP: KafkaConfig.Producer._CompressionType.ValueType  # 2
            SNAPPY: KafkaConfig.Producer._CompressionType.ValueType  # 3
            LZ4: KafkaConfig.Producer._CompressionType.ValueType  # 4
            ZSTD: KafkaConfig.Producer._CompressionType.ValueType  # 5

        class CompressionType(_CompressionType, metaclass=_CompressionTypeEnumTypeWrapper):
            """The compression types"""

        UNKNOWN: KafkaConfig.Producer.CompressionType.ValueType  # 0
        UNCOMPRESSED: KafkaConfig.Producer.CompressionType.ValueType  # 1
        GZIP: KafkaConfig.Producer.CompressionType.ValueType  # 2
        SNAPPY: KafkaConfig.Producer.CompressionType.ValueType  # 3
        LZ4: KafkaConfig.Producer.CompressionType.ValueType  # 4
        ZSTD: KafkaConfig.Producer.CompressionType.ValueType  # 5

        BOOTSTRAP_SERVER_FIELD_NUMBER: builtins.int
        TOPIC_FIELD_NUMBER: builtins.int
        COMPRESSION_TYPE_FIELD_NUMBER: builtins.int
        @property
        def bootstrap_server(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
            """The producer bootstrap servers"""
        topic: builtins.str
        """The producer topic"""
        compression_type: global___KafkaConfig.Producer.CompressionType.ValueType
        """The producer compression type"""
        def __init__(
            self,
            *,
            bootstrap_server: collections.abc.Iterable[builtins.str] | None = ...,
            topic: builtins.str = ...,
            compression_type: global___KafkaConfig.Producer.CompressionType.ValueType = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["bootstrap_server", b"bootstrap_server", "compression_type", b"compression_type", "topic", b"topic"]) -> None: ...

    CONSUMER_FIELD_NUMBER: builtins.int
    PRODUCER_FIELD_NUMBER: builtins.int
    WORKERS_FIELD_NUMBER: builtins.int
    @property
    def consumer(self) -> global___KafkaConfig.Consumer:
        """Consumer config"""
    @property
    def producer(self) -> global___KafkaConfig.Producer:
        """Producer config"""
    workers: builtins.int
    """Number of prediction workers"""
    def __init__(
        self,
        *,
        consumer: global___KafkaConfig.Consumer | None = ...,
        producer: global___KafkaConfig.Producer | None = ...,
        workers: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["consumer", b"consumer", "producer", b"producer"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["consumer", b"consumer", "producer", b"producer", "workers", b"workers"]) -> None: ...

global___KafkaConfig = KafkaConfig

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

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

    class _GpuTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[KubeDeploymentSize._GpuType.ValueType], builtins.type):  # noqa: F821
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        INVALID_GPU: KubeDeploymentSize._GpuType.ValueType  # 0
        NVIDIA_K80: KubeDeploymentSize._GpuType.ValueType  # 1
        NVIDIA_V100: KubeDeploymentSize._GpuType.ValueType  # 2
        NVIDIA_A100: KubeDeploymentSize._GpuType.ValueType  # 3
        NVIDIA_T4: KubeDeploymentSize._GpuType.ValueType  # 4
        NVIDIA_A10G: KubeDeploymentSize._GpuType.ValueType  # 5
        NVIDIA_L4: KubeDeploymentSize._GpuType.ValueType  # 6
        NVIDIA_T4_1_4_15: KubeDeploymentSize._GpuType.ValueType  # 7
        """More specific node types
        t4.xl
        """
        NVIDIA_T4_1_8_30: KubeDeploymentSize._GpuType.ValueType  # 8
        """t4.2xl"""
        NVIDIA_T4_1_16_60: KubeDeploymentSize._GpuType.ValueType  # 9
        """t4.4xl"""
        NVIDIA_A100_80GB_8_96_1360: KubeDeploymentSize._GpuType.ValueType  # 10
        """a100.8xl"""
        NVIDIA_V100_1_8_52: KubeDeploymentSize._GpuType.ValueType  # 11
        """a100.xl"""
        NVIDIA_V100_4_32_208: KubeDeploymentSize._GpuType.ValueType  # 12
        """v100.4xl"""

    class GpuType(_GpuType, metaclass=_GpuTypeEnumTypeWrapper): ...
    INVALID_GPU: KubeDeploymentSize.GpuType.ValueType  # 0
    NVIDIA_K80: KubeDeploymentSize.GpuType.ValueType  # 1
    NVIDIA_V100: KubeDeploymentSize.GpuType.ValueType  # 2
    NVIDIA_A100: KubeDeploymentSize.GpuType.ValueType  # 3
    NVIDIA_T4: KubeDeploymentSize.GpuType.ValueType  # 4
    NVIDIA_A10G: KubeDeploymentSize.GpuType.ValueType  # 5
    NVIDIA_L4: KubeDeploymentSize.GpuType.ValueType  # 6
    NVIDIA_T4_1_4_15: KubeDeploymentSize.GpuType.ValueType  # 7
    """More specific node types
    t4.xl
    """
    NVIDIA_T4_1_8_30: KubeDeploymentSize.GpuType.ValueType  # 8
    """t4.2xl"""
    NVIDIA_T4_1_16_60: KubeDeploymentSize.GpuType.ValueType  # 9
    """t4.4xl"""
    NVIDIA_A100_80GB_8_96_1360: KubeDeploymentSize.GpuType.ValueType  # 10
    """a100.8xl"""
    NVIDIA_V100_1_8_52: KubeDeploymentSize.GpuType.ValueType  # 11
    """a100.xl"""
    NVIDIA_V100_4_32_208: KubeDeploymentSize.GpuType.ValueType  # 12
    """v100.4xl"""

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

    class _MemoryUnitEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[KubeDeploymentSize._MemoryUnit.ValueType], builtins.type):  # noqa: F821
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: KubeDeploymentSize._MemoryUnit.ValueType  # 0
        MIB: KubeDeploymentSize._MemoryUnit.ValueType  # 1
        GIB: KubeDeploymentSize._MemoryUnit.ValueType  # 2

    class MemoryUnit(_MemoryUnit, metaclass=_MemoryUnitEnumTypeWrapper): ...
    UNKNOWN: KubeDeploymentSize.MemoryUnit.ValueType  # 0
    MIB: KubeDeploymentSize.MemoryUnit.ValueType  # 1
    GIB: KubeDeploymentSize.MemoryUnit.ValueType  # 2

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

        GPU_TYPE_FIELD_NUMBER: builtins.int
        GPU_AMOUNT_FIELD_NUMBER: builtins.int
        gpu_type: global___KubeDeploymentSize.GpuType.ValueType
        """The type of the GPU"""
        gpu_amount: builtins.int
        """Amount of GPUs"""
        def __init__(
            self,
            *,
            gpu_type: global___KubeDeploymentSize.GpuType.ValueType = ...,
            gpu_amount: builtins.int = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["gpu_amount", b"gpu_amount", "gpu_type", b"gpu_type"]) -> None: ...

    NUMBER_OF_PODS_FIELD_NUMBER: builtins.int
    CPU_FIELD_NUMBER: builtins.int
    MEMORY_AMOUNT_FIELD_NUMBER: builtins.int
    MEMORY_UNITS_FIELD_NUMBER: builtins.int
    GPU_RESOURCES_FIELD_NUMBER: builtins.int
    number_of_pods: builtins.int
    """Number of pods to deploy"""
    cpu: builtins.float
    """Cpu"""
    memory_amount: builtins.int
    """Amount of memory"""
    memory_units: global___KubeDeploymentSize.MemoryUnit.ValueType
    """Units type of memory"""
    @property
    def gpu_resources(self) -> global___KubeDeploymentSize.GpuResources:
        """GPU Resource for deployed model"""
    def __init__(
        self,
        *,
        number_of_pods: builtins.int = ...,
        cpu: builtins.float = ...,
        memory_amount: builtins.int = ...,
        memory_units: global___KubeDeploymentSize.MemoryUnit.ValueType = ...,
        gpu_resources: global___KubeDeploymentSize.GpuResources | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["gpu_resources", b"gpu_resources"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["cpu", b"cpu", "gpu_resources", b"gpu_resources", "memory_amount", b"memory_amount", "memory_units", b"memory_units", "number_of_pods", b"number_of_pods"]) -> None: ...

global___KubeDeploymentSize = KubeDeploymentSize

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

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

    class _LogLevelEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[KubeRuntimeDeploymentSettings._LogLevel.ValueType], builtins.type):  # noqa: F821
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        NOT_SET: KubeRuntimeDeploymentSettings._LogLevel.ValueType  # 0
        ERROR: KubeRuntimeDeploymentSettings._LogLevel.ValueType  # 1
        WARN: KubeRuntimeDeploymentSettings._LogLevel.ValueType  # 2
        INFO: KubeRuntimeDeploymentSettings._LogLevel.ValueType  # 3
        DEBUG: KubeRuntimeDeploymentSettings._LogLevel.ValueType  # 4

    class LogLevel(_LogLevel, metaclass=_LogLevelEnumTypeWrapper): ...
    NOT_SET: KubeRuntimeDeploymentSettings.LogLevel.ValueType  # 0
    ERROR: KubeRuntimeDeploymentSettings.LogLevel.ValueType  # 1
    WARN: KubeRuntimeDeploymentSettings.LogLevel.ValueType  # 2
    INFO: KubeRuntimeDeploymentSettings.LogLevel.ValueType  # 3
    DEBUG: KubeRuntimeDeploymentSettings.LogLevel.ValueType  # 4

    ROOT_LOGGER_LEVEL_FIELD_NUMBER: builtins.int
    root_logger_level: global___KubeRuntimeDeploymentSettings.LogLevel.ValueType
    def __init__(
        self,
        *,
        root_logger_level: global___KubeRuntimeDeploymentSettings.LogLevel.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["root_logger_level", b"root_logger_level"]) -> None: ...

global___KubeRuntimeDeploymentSettings = KubeRuntimeDeploymentSettings
