"""
@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 sys
import typing

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

class _BuildArtifactTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BuildArtifactType.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    INVALID_ARTIFACT_TYPE: _BuildArtifactType.ValueType  # 0
    DATA_ARTIFACT_TYPE: _BuildArtifactType.ValueType  # 1
    FILE_ARTIFACT_TYPE: _BuildArtifactType.ValueType  # 2
    CODE_ARTIFACT_TYPE: _BuildArtifactType.ValueType  # 3

class BuildArtifactType(_BuildArtifactType, metaclass=_BuildArtifactTypeEnumTypeWrapper):
    """build artifact Types"""

INVALID_ARTIFACT_TYPE: BuildArtifactType.ValueType  # 0
DATA_ARTIFACT_TYPE: BuildArtifactType.ValueType  # 1
FILE_ARTIFACT_TYPE: BuildArtifactType.ValueType  # 2
CODE_ARTIFACT_TYPE: BuildArtifactType.ValueType  # 3
global___BuildArtifactType = BuildArtifactType

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    TAG_VALUE_FIELD_NUMBER: builtins.int
    ARTIFACT_TYPE_FIELD_NUMBER: builtins.int
    USE_CLOUD_PROVIDER_STORAGE_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """Model ID"""
    build_id: builtins.str
    """Build Id"""
    tag_value: builtins.str
    """Tag to save the artifact by"""
    artifact_type: global___BuildArtifactType.ValueType
    """The type of the artifact to upload"""
    use_cloud_provider_storage: builtins.bool
    """When true, will use the cloud provider URL"""
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        build_id: builtins.str = ...,
        tag_value: builtins.str = ...,
        artifact_type: global___BuildArtifactType.ValueType = ...,
        use_cloud_provider_storage: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["cloud_provider_option", b"cloud_provider_option", "use_cloud_provider_storage", b"use_cloud_provider_storage"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["artifact_type", b"artifact_type", "build_id", b"build_id", "cloud_provider_option", b"cloud_provider_option", "model_id", b"model_id", "tag_value", b"tag_value", "use_cloud_provider_storage", b"use_cloud_provider_storage"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["cloud_provider_option", b"cloud_provider_option"]) -> typing_extensions.Literal["use_cloud_provider_storage"] | None: ...

global___BuildUploadUrlParameters = BuildUploadUrlParameters
