"""
@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.timestamp_pb2
import qwak.administration.authenticated_user.v1.credentials_pb2
import qwak.batch_job.v1.batch_job_events_pb2
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 _InputFileType:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _InputFileTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_InputFileType.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    UNDEFINED_INPUT_FILE_TYPE: _InputFileType.ValueType  # 0
    CSV_INPUT_FILE_TYPE: _InputFileType.ValueType  # 1
    FEATHER_INPUT_FILE_TYPE: _InputFileType.ValueType  # 2
    PARQUET_INPUT_FILE_TYPE: _InputFileType.ValueType  # 3

class InputFileType(_InputFileType, metaclass=_InputFileTypeEnumTypeWrapper): ...

UNDEFINED_INPUT_FILE_TYPE: InputFileType.ValueType  # 0
CSV_INPUT_FILE_TYPE: InputFileType.ValueType  # 1
FEATHER_INPUT_FILE_TYPE: InputFileType.ValueType  # 2
PARQUET_INPUT_FILE_TYPE: InputFileType.ValueType  # 3
global___InputFileType = InputFileType

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

class _OutputFileTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_OutputFileType.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    UNDEFINED_OUTPUT_FILE_TYPE: _OutputFileType.ValueType  # 0
    CSV_OUTPUT_FILE_TYPE: _OutputFileType.ValueType  # 1
    FEATHER_OUTPUT_FILE_TYPE: _OutputFileType.ValueType  # 2
    PARQUET_OUTPUT_FILE_TYPE: _OutputFileType.ValueType  # 3

class OutputFileType(_OutputFileType, metaclass=_OutputFileTypeEnumTypeWrapper): ...

UNDEFINED_OUTPUT_FILE_TYPE: OutputFileType.ValueType  # 0
CSV_OUTPUT_FILE_TYPE: OutputFileType.ValueType  # 1
FEATHER_OUTPUT_FILE_TYPE: OutputFileType.ValueType  # 2
PARQUET_OUTPUT_FILE_TYPE: OutputFileType.ValueType  # 3
global___OutputFileType = OutputFileType

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

class _BatchJobStatusMessageEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BatchJobStatusMessage.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    UNDEFINED_BATCH_JOB_STATUS: _BatchJobStatusMessage.ValueType  # 0
    BATCH_JOB_COMMITTED_STATUS: _BatchJobStatusMessage.ValueType  # 1
    BATCH_JOB_PENDING_STATUS: _BatchJobStatusMessage.ValueType  # 2
    BATCH_JOB_RUNNING_STATUS: _BatchJobStatusMessage.ValueType  # 3
    BATCH_JOB_FINISHED_STATUS: _BatchJobStatusMessage.ValueType  # 4
    BATCH_JOB_FAILED_STATUS: _BatchJobStatusMessage.ValueType  # 5
    BATCH_JOB_CANCELLED_STATUS: _BatchJobStatusMessage.ValueType  # 6
    BATCH_JOB_TIMEOUT_STATUS: _BatchJobStatusMessage.ValueType  # 7

class BatchJobStatusMessage(_BatchJobStatusMessage, metaclass=_BatchJobStatusMessageEnumTypeWrapper): ...

UNDEFINED_BATCH_JOB_STATUS: BatchJobStatusMessage.ValueType  # 0
BATCH_JOB_COMMITTED_STATUS: BatchJobStatusMessage.ValueType  # 1
BATCH_JOB_PENDING_STATUS: BatchJobStatusMessage.ValueType  # 2
BATCH_JOB_RUNNING_STATUS: BatchJobStatusMessage.ValueType  # 3
BATCH_JOB_FINISHED_STATUS: BatchJobStatusMessage.ValueType  # 4
BATCH_JOB_FAILED_STATUS: BatchJobStatusMessage.ValueType  # 5
BATCH_JOB_CANCELLED_STATUS: BatchJobStatusMessage.ValueType  # 6
BATCH_JOB_TIMEOUT_STATUS: BatchJobStatusMessage.ValueType  # 7
global___BatchJobStatusMessage = BatchJobStatusMessage

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

class _BatchTaskStatusMessageEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BatchTaskStatusMessage.ValueType], builtins.type):  # noqa: F821
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    UNDEFINED_BATCH_TASK_STATUS: _BatchTaskStatusMessage.ValueType  # 0
    BATCH_TASK_COMMITTED_STATUS: _BatchTaskStatusMessage.ValueType  # 1
    BATCH_TASK_PENDING_START_STATUS: _BatchTaskStatusMessage.ValueType  # 2
    BATCH_TASK_RUNNING_STATUS: _BatchTaskStatusMessage.ValueType  # 3
    BATCH_TASK_FINISHED_STATUS: _BatchTaskStatusMessage.ValueType  # 4
    BATCH_TASK_FAILED_STATUS: _BatchTaskStatusMessage.ValueType  # 5
    BATCH_TASK_CANCELLED_STATUS: _BatchTaskStatusMessage.ValueType  # 6
    BATCH_TASK_TIMEOUT_STATUS: _BatchTaskStatusMessage.ValueType  # 7

class BatchTaskStatusMessage(_BatchTaskStatusMessage, metaclass=_BatchTaskStatusMessageEnumTypeWrapper): ...

UNDEFINED_BATCH_TASK_STATUS: BatchTaskStatusMessage.ValueType  # 0
BATCH_TASK_COMMITTED_STATUS: BatchTaskStatusMessage.ValueType  # 1
BATCH_TASK_PENDING_START_STATUS: BatchTaskStatusMessage.ValueType  # 2
BATCH_TASK_RUNNING_STATUS: BatchTaskStatusMessage.ValueType  # 3
BATCH_TASK_FINISHED_STATUS: BatchTaskStatusMessage.ValueType  # 4
BATCH_TASK_FAILED_STATUS: BatchTaskStatusMessage.ValueType  # 5
BATCH_TASK_CANCELLED_STATUS: BatchTaskStatusMessage.ValueType  # 6
BATCH_TASK_TIMEOUT_STATUS: BatchTaskStatusMessage.ValueType  # 7
global___BatchTaskStatusMessage = BatchTaskStatusMessage

class StartWarmupJobRequest(google.protobuf.message.Message):
    """Warmup job request. In order to spare the initialization time of a batch job, which is spinning up new instances
    and pulling the model image - we offer an optional 'warmup' with the intention of saving the aforementioned time
    when the batch job actually starts running
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MODEL_ID_FIELD_NUMBER: builtins.int
    BRANCH_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    WARMUP_TIMEOUT_FIELD_NUMBER: builtins.int
    BATCH_JOB_DEPLOYMENT_SIZE_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """Model ID to start a batch"""
    branch_id: builtins.str
    """The branch ID of the model"""
    build_id: builtins.str
    """Specific build ID the warmup will be executed upon. If empty - deployed build ID will be the default"""
    warmup_timeout: builtins.int
    """After how much seconds the warmup will cancel itself"""
    @property
    def batch_job_deployment_size(self) -> global___BatchJobDeploymentSize:
        """The warmup size"""
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        branch_id: builtins.str = ...,
        build_id: builtins.str = ...,
        warmup_timeout: builtins.int = ...,
        batch_job_deployment_size: global___BatchJobDeploymentSize | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["batch_job_deployment_size", b"batch_job_deployment_size"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_job_deployment_size", b"batch_job_deployment_size", "branch_id", b"branch_id", "build_id", b"build_id", "model_id", b"model_id", "warmup_timeout", b"warmup_timeout"]) -> None: ...

global___StartWarmupJobRequest = StartWarmupJobRequest

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

    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    success: builtins.bool
    """Whether the warmup started successfully"""
    failure_message: builtins.str
    """Failure message in case the warmup start failed"""
    def __init__(
        self,
        *,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["failure_message", b"failure_message", "success", b"success"]) -> None: ...

global___StartWarmupJobResponse = StartWarmupJobResponse

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    BRANCH_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """The model ID to cancel the warmup on"""
    branch_id: builtins.str
    """The branch ID for the model"""
    build_id: builtins.str
    """The build ID to cancel the warmup on"""
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        branch_id: builtins.str = ...,
        build_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["branch_id", b"branch_id", "build_id", b"build_id", "model_id", b"model_id"]) -> None: ...

global___CancelWarmupJobRequest = CancelWarmupJobRequest

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

    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    success: builtins.bool
    """Whether the warmup cancelled successfully"""
    failure_message: builtins.str
    """Failure message in case the warmup cancel failed"""
    def __init__(
        self,
        *,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["failure_message", b"failure_message", "success", b"success"]) -> None: ...

global___CancelWarmupJobResponse = CancelWarmupJobResponse

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    BRANCH_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    SOURCE_BUCKET_FIELD_NUMBER: builtins.int
    DESTINATION_BUCKET_FIELD_NUMBER: builtins.int
    SOURCE_FOLDER_FIELD_NUMBER: builtins.int
    DESTINATION_FOLDER_FIELD_NUMBER: builtins.int
    BATCH_JOB_DEPLOYMENT_SIZE_FIELD_NUMBER: builtins.int
    JOB_TIMEOUT_FIELD_NUMBER: builtins.int
    TASK_TIMEOUT_FIELD_NUMBER: builtins.int
    INPUT_FILE_TYPE_FIELD_NUMBER: builtins.int
    OUTPUT_FILE_TYPE_FIELD_NUMBER: builtins.int
    TOKEN_SECRET_FIELD_NUMBER: builtins.int
    SECRET_SECRET_FIELD_NUMBER: builtins.int
    ADVANCED_DEPLOYMENT_OPTIONS_FIELD_NUMBER: builtins.int
    PARAMETERS_FIELD_NUMBER: builtins.int
    BATCH_JOB_REQUEST_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """The model ID to start the job on"""
    branch_id: builtins.str
    """The branch ID of the model"""
    build_id: builtins.str
    """Specific build ID the invocation will be executed upon. If empty - deployed build ID will be the default"""
    source_bucket: builtins.str
    """The source bucket from which the files will be read"""
    destination_bucket: builtins.str
    """The destination bucket to which the files will be written"""
    source_folder: builtins.str
    """The source folder from which the files will be read on the source bucket"""
    destination_folder: builtins.str
    """The destination folder to which the files will be written on the destination bucket"""
    @property
    def batch_job_deployment_size(self) -> global___BatchJobDeploymentSize:
        """The batch job size"""
    job_timeout: builtins.int
    """The total batch job timeout in seconds"""
    task_timeout: builtins.int
    """The single task timeout in seconds"""
    input_file_type: global___InputFileType.ValueType
    """The file type for the input files"""
    output_file_type: global___OutputFileType.ValueType
    """The file type for the output files"""
    token_secret: builtins.str
    """The access token's secret name in secret service"""
    secret_secret: builtins.str
    """The access secret's secret name in secret service"""
    @property
    def advanced_deployment_options(self) -> global___AdvancedDeploymentOptions:
        """Advanced deployment options"""
    @property
    def parameters(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BatchJobParameter]:
        """User provided parameters which will be passed to the batch execution job as environment variables"""
    @property
    def batch_job_request(self) -> global___BatchJobRequest:
        """The request message reorganized
        We will migrate to this massage.
        """
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        branch_id: builtins.str = ...,
        build_id: builtins.str = ...,
        source_bucket: builtins.str = ...,
        destination_bucket: builtins.str = ...,
        source_folder: builtins.str = ...,
        destination_folder: builtins.str = ...,
        batch_job_deployment_size: global___BatchJobDeploymentSize | None = ...,
        job_timeout: builtins.int = ...,
        task_timeout: builtins.int = ...,
        input_file_type: global___InputFileType.ValueType = ...,
        output_file_type: global___OutputFileType.ValueType = ...,
        token_secret: builtins.str = ...,
        secret_secret: builtins.str = ...,
        advanced_deployment_options: global___AdvancedDeploymentOptions | None = ...,
        parameters: collections.abc.Iterable[global___BatchJobParameter] | None = ...,
        batch_job_request: global___BatchJobRequest | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["advanced_deployment_options", b"advanced_deployment_options", "batch_job_deployment_size", b"batch_job_deployment_size", "batch_job_request", b"batch_job_request"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["advanced_deployment_options", b"advanced_deployment_options", "batch_job_deployment_size", b"batch_job_deployment_size", "batch_job_request", b"batch_job_request", "branch_id", b"branch_id", "build_id", b"build_id", "destination_bucket", b"destination_bucket", "destination_folder", b"destination_folder", "input_file_type", b"input_file_type", "job_timeout", b"job_timeout", "model_id", b"model_id", "output_file_type", b"output_file_type", "parameters", b"parameters", "secret_secret", b"secret_secret", "source_bucket", b"source_bucket", "source_folder", b"source_folder", "task_timeout", b"task_timeout", "token_secret", b"token_secret"]) -> None: ...

global___StartBatchJobRequest = StartBatchJobRequest

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

    MODEL_DETAILS_FIELD_NUMBER: builtins.int
    DATA_DETAILS_FIELD_NUMBER: builtins.int
    EXECUTION_DETAILS_FIELD_NUMBER: builtins.int
    @property
    def model_details(self) -> global___BatchJobModelDetails:
        """Data about the model to do batch prediction on"""
    @property
    def data_details(self) -> global___BatchJobDataDetails:
        """The params for the data that the prediction executed on"""
    @property
    def execution_details(self) -> global___BatchJobExecutionDetails:
        """How to execute the job"""
    def __init__(
        self,
        *,
        model_details: global___BatchJobModelDetails | None = ...,
        data_details: global___BatchJobDataDetails | None = ...,
        execution_details: global___BatchJobExecutionDetails | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["data_details", b"data_details", "execution_details", b"execution_details", "model_details", b"model_details"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["data_details", b"data_details", "execution_details", b"execution_details", "model_details", b"model_details"]) -> None: ...

global___BatchJobRequest = BatchJobRequest

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """The model ID to start the job on"""
    build_id: builtins.str
    """Specific build ID the invocation will be executed upon. If empty - deployed build ID will be the default"""
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        build_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["build_id", b"build_id", "model_id", b"model_id"]) -> None: ...

global___BatchJobModelDetails = BatchJobModelDetails

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

    SOURCE_PATH_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    TOKEN_SECRET_FIELD_NUMBER: builtins.int
    SECRET_SECRET_FIELD_NUMBER: builtins.int
    SERVICE_ACCOUNT_JSON_KEY_SECRET_FIELD_NUMBER: builtins.int
    @property
    def source_path(self) -> global___BatchJobSourcePath:
        """The source data details"""
    @property
    def destination_path(self) -> global___BatchJobDestinationPath:
        """The destination data details"""
    token_secret: builtins.str
    """The access token's secret name in secret service"""
    secret_secret: builtins.str
    """The access secret's secret name in secret service"""
    service_account_json_key_secret: builtins.str
    """The service account json key secret name"""
    def __init__(
        self,
        *,
        source_path: global___BatchJobSourcePath | None = ...,
        destination_path: global___BatchJobDestinationPath | None = ...,
        token_secret: builtins.str = ...,
        secret_secret: builtins.str = ...,
        service_account_json_key_secret: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "source_path", b"source_path"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "secret_secret", b"secret_secret", "service_account_json_key_secret", b"service_account_json_key_secret", "source_path", b"source_path", "token_secret", b"token_secret"]) -> None: ...

global___BatchJobDataDetails = BatchJobDataDetails

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

    SOURCE_BUCKET_FIELD_NUMBER: builtins.int
    SOURCE_FOLDER_FIELD_NUMBER: builtins.int
    INPUT_FILE_TYPE_FIELD_NUMBER: builtins.int
    source_bucket: builtins.str
    """The source bucket from which the files will be read"""
    source_folder: builtins.str
    """The source folder from which the files will be read on the source bucket"""
    input_file_type: global___InputFileType.ValueType
    """The file type for the input files"""
    def __init__(
        self,
        *,
        source_bucket: builtins.str = ...,
        source_folder: builtins.str = ...,
        input_file_type: global___InputFileType.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["input_file_type", b"input_file_type", "source_bucket", b"source_bucket", "source_folder", b"source_folder"]) -> None: ...

global___BatchJobSourcePath = BatchJobSourcePath

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

    DESTINATION_BUCKET_FIELD_NUMBER: builtins.int
    DESTINATION_FOLDER_FIELD_NUMBER: builtins.int
    OUTPUT_FILE_TYPE_FIELD_NUMBER: builtins.int
    destination_bucket: builtins.str
    """The destination bucket to which the files will be written"""
    destination_folder: builtins.str
    """The destination folder to which the files will be written on the destination bucket"""
    output_file_type: global___OutputFileType.ValueType
    """The file type for the output files"""
    def __init__(
        self,
        *,
        destination_bucket: builtins.str = ...,
        destination_folder: builtins.str = ...,
        output_file_type: global___OutputFileType.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_bucket", b"destination_bucket", "destination_folder", b"destination_folder", "output_file_type", b"output_file_type"]) -> None: ...

global___BatchJobDestinationPath = BatchJobDestinationPath

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

    JOB_TIMEOUT_FIELD_NUMBER: builtins.int
    TASK_TIMEOUT_FIELD_NUMBER: builtins.int
    BATCH_JOB_DEPLOYMENT_SIZE_FIELD_NUMBER: builtins.int
    ADVANCED_DEPLOYMENT_OPTIONS_FIELD_NUMBER: builtins.int
    PARAMETERS_FIELD_NUMBER: builtins.int
    job_timeout: builtins.int
    """The total batch job timeout in seconds"""
    task_timeout: builtins.int
    """The single task timeout in seconds"""
    @property
    def batch_job_deployment_size(self) -> global___BatchJobDeploymentSize:
        """The batch job size"""
    @property
    def advanced_deployment_options(self) -> global___AdvancedDeploymentOptions:
        """Advanced deployment options"""
    @property
    def parameters(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BatchJobParameter]:
        """User provided parameters which will be passed to the batch execution job as environment variables"""
    def __init__(
        self,
        *,
        job_timeout: builtins.int = ...,
        task_timeout: builtins.int = ...,
        batch_job_deployment_size: global___BatchJobDeploymentSize | None = ...,
        advanced_deployment_options: global___AdvancedDeploymentOptions | None = ...,
        parameters: collections.abc.Iterable[global___BatchJobParameter] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["advanced_deployment_options", b"advanced_deployment_options", "batch_job_deployment_size", b"batch_job_deployment_size"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["advanced_deployment_options", b"advanced_deployment_options", "batch_job_deployment_size", b"batch_job_deployment_size", "job_timeout", b"job_timeout", "parameters", b"parameters", "task_timeout", b"task_timeout"]) -> None: ...

global___BatchJobExecutionDetails = BatchJobExecutionDetails

class BatchJobParameter(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: ...

global___BatchJobParameter = BatchJobParameter

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

    BATCH_ID_FIELD_NUMBER: builtins.int
    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    batch_id: builtins.str
    """The batch job id created"""
    success: builtins.bool
    """Whether the batch job creation succeeded"""
    failure_message: builtins.str
    """The failure message in case the batch job creation failed"""
    def __init__(
        self,
        *,
        batch_id: builtins.str = ...,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_id", b"batch_id", "failure_message", b"failure_message", "success", b"success"]) -> None: ...

global___StartBatchJobResponse = StartBatchJobResponse

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

    BATCH_ID_FIELD_NUMBER: builtins.int
    batch_id: builtins.str
    """The batch job id to cancel"""
    def __init__(
        self,
        *,
        batch_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_id", b"batch_id"]) -> None: ...

global___CancelBatchJobRequest = CancelBatchJobRequest

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

    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    success: builtins.bool
    """Whether the batch job cancel succeeded"""
    failure_message: builtins.str
    """The failure message in case the batch job cancel failed"""
    def __init__(
        self,
        *,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["failure_message", b"failure_message", "success", b"success"]) -> None: ...

global___CancelBatchJobResponse = CancelBatchJobResponse

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

    BATCH_ID_FIELD_NUMBER: builtins.int
    batch_id: builtins.str
    """The batch job id to get the status for"""
    def __init__(
        self,
        *,
        batch_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_id", b"batch_id"]) -> None: ...

global___GetBatchJobStatusRequest = GetBatchJobStatusRequest

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

    JOB_STATUS_FIELD_NUMBER: builtins.int
    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    FINISHED_FILES_FIELD_NUMBER: builtins.int
    TOTAL_FILES_FIELD_NUMBER: builtins.int
    job_status: global___BatchJobStatusMessage.ValueType
    """The status of the batch job"""
    success: builtins.bool
    """Whether the batch job status request succeeded"""
    failure_message: builtins.str
    """The failure message in case the batch job status request failed"""
    finished_files: builtins.int
    """The finished files/tasks in the job"""
    total_files: builtins.int
    """The total files/tasks in the job"""
    def __init__(
        self,
        *,
        job_status: global___BatchJobStatusMessage.ValueType = ...,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
        finished_files: builtins.int = ...,
        total_files: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["failure_message", b"failure_message", "finished_files", b"finished_files", "job_status", b"job_status", "success", b"success", "total_files", b"total_files"]) -> None: ...

global___GetBatchJobStatusResponse = GetBatchJobStatusResponse

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

    BATCH_ID_FIELD_NUMBER: builtins.int
    batch_id: builtins.str
    """The batch job id to get the report for"""
    def __init__(
        self,
        *,
        batch_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_id", b"batch_id"]) -> None: ...

global___GetBatchJobReportRequest = GetBatchJobReportRequest

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

    SUCCESSFUL_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    REPORT_MESSAGES_FIELD_NUMBER: builtins.int
    successful: builtins.bool
    """Whether the batch job report request succeeded"""
    failure_message: builtins.str
    """The failure message in case the batch job report request failed"""
    @property
    def report_messages(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """The batch job report"""
    def __init__(
        self,
        *,
        successful: builtins.bool = ...,
        failure_message: builtins.str = ...,
        report_messages: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["failure_message", b"failure_message", "report_messages", b"report_messages", "successful", b"successful"]) -> None: ...

global___GetBatchJobReportResponse = GetBatchJobReportResponse

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

    BATCH_TASK_EVENTS_FIELD_NUMBER: builtins.int
    @property
    def batch_task_events(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[qwak.batch_job.v1.batch_job_events_pb2.BatchTaskEventMessage]:
        """Update for multiple batch tasks"""
    def __init__(
        self,
        *,
        batch_task_events: collections.abc.Iterable[qwak.batch_job.v1.batch_job_events_pb2.BatchTaskEventMessage] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_task_events", b"batch_task_events"]) -> None: ...

global___UpdateBatchTasksStatusRequest = UpdateBatchTasksStatusRequest

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

    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    success: builtins.bool
    """Whether the update to batch tasks was successful"""
    failure_message: builtins.str
    """Failure message in case the update failed"""
    def __init__(
        self,
        *,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["failure_message", b"failure_message", "success", b"success"]) -> None: ...

global___UpdateBatchTaskStatusResponse = UpdateBatchTaskStatusResponse

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

    CUSTOM_IAM_ROLE_ARN_FIELD_NUMBER: builtins.int
    PURCHASE_OPTION_FIELD_NUMBER: builtins.int
    SERVICE_ACCOUNT_KEY_SECRET_NAME_FIELD_NUMBER: builtins.int
    custom_iam_role_arn: builtins.str
    """Custom IAM Role ARN"""
    purchase_option: builtins.str
    """Whether it is spot/ondemand (default - spot)"""
    service_account_key_secret_name: builtins.str
    """Service account key secret name for gcp"""
    def __init__(
        self,
        *,
        custom_iam_role_arn: builtins.str = ...,
        purchase_option: builtins.str = ...,
        service_account_key_secret_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["custom_iam_role_arn", b"custom_iam_role_arn", "purchase_option", b"purchase_option", "service_account_key_secret_name", b"service_account_key_secret_name"]) -> None: ...

global___AdvancedDeploymentOptions = AdvancedDeploymentOptions

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

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

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

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

    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
    CLIENT_POD_COMPUTE_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___BatchJobDeploymentSize.MemoryUnit.ValueType
    """Units type of memory"""
    @property
    def gpu_resources(self) -> qwak.user_application.common.v0.resources_pb2.GpuResources:
        """Optional GPU resources for batch"""
    @property
    def client_pod_compute_resources(self) -> qwak.user_application.common.v0.resources_pb2.ClientPodComputeResources:
        """Client Compute Resources"""
    def __init__(
        self,
        *,
        number_of_pods: builtins.int = ...,
        cpu: builtins.float = ...,
        memory_amount: builtins.int = ...,
        memory_units: global___BatchJobDeploymentSize.MemoryUnit.ValueType = ...,
        gpu_resources: qwak.user_application.common.v0.resources_pb2.GpuResources | None = ...,
        client_pod_compute_resources: qwak.user_application.common.v0.resources_pb2.ClientPodComputeResources | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "gpu_resources", b"gpu_resources"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "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___BatchJobDeploymentSize = BatchJobDeploymentSize

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

    NUMBER_OF_PODS_FIELD_NUMBER: builtins.int
    POD_COMPUTE_RESOURCES_FIELD_NUMBER: builtins.int
    TEMPLATE_ID_FIELD_NUMBER: builtins.int
    number_of_pods: builtins.int
    """Number of pods in execution"""
    @property
    def pod_compute_resources(self) -> qwak.user_application.common.v0.resources_pb2.PodComputeResources:
        """Resources Of Execution"""
    template_id: builtins.str
    """Template id used"""
    def __init__(
        self,
        *,
        number_of_pods: builtins.int = ...,
        pod_compute_resources: qwak.user_application.common.v0.resources_pb2.PodComputeResources | None = ...,
        template_id: builtins.str = ...,
    ) -> 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["number_of_pods", b"number_of_pods", "pod_compute_resources", b"pod_compute_resources", "template_id", b"template_id"]) -> None: ...

global___BatchJobExecutionSize = BatchJobExecutionSize

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    BRANCH_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """The model ID to get the list of batch jobs for"""
    branch_id: builtins.str
    """The branch ID for the model"""
    build_id: builtins.str
    """The build ID to get the list of batch jobs for"""
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        branch_id: builtins.str = ...,
        build_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["branch_id", b"branch_id", "build_id", b"build_id", "model_id", b"model_id"]) -> None: ...

global___ListBatchJobsRequest = ListBatchJobsRequest

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

    BATCH_JOBS_FIELD_NUMBER: builtins.int
    @property
    def batch_jobs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BatchJobDetails]:
        """The details for each batch job"""
    def __init__(
        self,
        *,
        batch_jobs: collections.abc.Iterable[global___BatchJobDetails] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_jobs", b"batch_jobs"]) -> None: ...

global___ListBatchJobsResponse = ListBatchJobsResponse

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

    BUILD_ID_FIELD_NUMBER: builtins.int
    JOB_ID_FIELD_NUMBER: builtins.int
    JOB_STATUS_FIELD_NUMBER: builtins.int
    START_TIME_FIELD_NUMBER: builtins.int
    END_TIME_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    JOB_SIZE_FIELD_NUMBER: builtins.int
    BATCH_JOB_EXECUTION_SIZE_FIELD_NUMBER: builtins.int
    ENVIRONMENT_ID_FIELD_NUMBER: builtins.int
    build_id: builtins.str
    """The build id used in the batch job"""
    job_id: builtins.str
    """The batch job id"""
    job_status: global___BatchJobStatusMessage.ValueType
    """The batch job status"""
    @property
    def start_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The start time for of the batch job"""
    @property
    def end_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The end time for of the batch job"""
    failure_message: builtins.str
    """The failure message of the batch job in case that failed"""
    @property
    def job_size(self) -> global___BatchJobDeploymentSize:
        """The batch job resources size"""
    @property
    def batch_job_execution_size(self) -> global___BatchJobExecutionSize:
        """The batch job resources size"""
    environment_id: builtins.str
    """Environment id"""
    def __init__(
        self,
        *,
        build_id: builtins.str = ...,
        job_id: builtins.str = ...,
        job_status: global___BatchJobStatusMessage.ValueType = ...,
        start_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        end_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        failure_message: builtins.str = ...,
        job_size: global___BatchJobDeploymentSize | None = ...,
        batch_job_execution_size: global___BatchJobExecutionSize | None = ...,
        environment_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["batch_job_execution_size", b"batch_job_execution_size", "end_time", b"end_time", "job_size", b"job_size", "start_time", b"start_time"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_job_execution_size", b"batch_job_execution_size", "build_id", b"build_id", "end_time", b"end_time", "environment_id", b"environment_id", "failure_message", b"failure_message", "job_id", b"job_id", "job_size", b"job_size", "job_status", b"job_status", "start_time", b"start_time"]) -> None: ...

global___BatchJobDetails = BatchJobDetails

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

    JOB_ID_FIELD_NUMBER: builtins.int
    job_id: builtins.str
    """The batch job ID"""
    def __init__(
        self,
        *,
        job_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["job_id", b"job_id"]) -> None: ...

global___GetBatchJobDetailsRequest = GetBatchJobDetailsRequest

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

    BATCH_JOB_FIELD_NUMBER: builtins.int
    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    @property
    def batch_job(self) -> global___BatchJobMessage:
        """The batch job details"""
    success: builtins.bool
    """Whether the request was successful"""
    failure_message: builtins.str
    """Failure message in case the request failed"""
    def __init__(
        self,
        *,
        batch_job: global___BatchJobMessage | None = ...,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["batch_job", b"batch_job"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["batch_job", b"batch_job", "failure_message", b"failure_message", "success", b"success"]) -> None: ...

global___GetBatchJobDetailsResponse = GetBatchJobDetailsResponse

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

    JOB_ID_FIELD_NUMBER: builtins.int
    MODEL_ID_FIELD_NUMBER: builtins.int
    BRANCH_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    START_TIME_FIELD_NUMBER: builtins.int
    END_TIME_FIELD_NUMBER: builtins.int
    JOB_STATUS_FIELD_NUMBER: builtins.int
    TOTAL_RECORDS_FIELD_NUMBER: builtins.int
    JOB_SIZE_FIELD_NUMBER: builtins.int
    REPORT_MESSAGES_FIELD_NUMBER: builtins.int
    EXECUTION_FILE_DETAILS_FIELD_NUMBER: builtins.int
    TASK_EXECUTIONS_FIELD_NUMBER: builtins.int
    job_id: builtins.str
    """The batch job id"""
    model_id: builtins.str
    """The model ID for the batch job"""
    branch_id: builtins.str
    """The branch id of the model"""
    build_id: builtins.str
    """The build ID used in the batch job"""
    @property
    def start_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The start time for of the batch job"""
    @property
    def end_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The end time for of the batch job"""
    job_status: global___BatchJobStatusMessage.ValueType
    """The batch job status"""
    total_records: builtins.int
    """The total records that were processed in the job"""
    @property
    def job_size(self) -> global___BatchJobDeploymentSize:
        """The batch job size"""
    @property
    def report_messages(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ExecutionReportLine]:
        """The report for the batch job"""
    @property
    def execution_file_details(self) -> global___ExecutionFileDetails:
        """Details on the files processed in the batch job"""
    @property
    def task_executions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TaskExecutionDetails]:
        """Details for each of the task execution"""
    def __init__(
        self,
        *,
        job_id: builtins.str = ...,
        model_id: builtins.str = ...,
        branch_id: builtins.str = ...,
        build_id: builtins.str = ...,
        start_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        end_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        job_status: global___BatchJobStatusMessage.ValueType = ...,
        total_records: builtins.int = ...,
        job_size: global___BatchJobDeploymentSize | None = ...,
        report_messages: collections.abc.Iterable[global___ExecutionReportLine] | None = ...,
        execution_file_details: global___ExecutionFileDetails | None = ...,
        task_executions: collections.abc.Iterable[global___TaskExecutionDetails] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["end_time", b"end_time", "execution_file_details", b"execution_file_details", "job_size", b"job_size", "start_time", b"start_time"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["branch_id", b"branch_id", "build_id", b"build_id", "end_time", b"end_time", "execution_file_details", b"execution_file_details", "job_id", b"job_id", "job_size", b"job_size", "job_status", b"job_status", "model_id", b"model_id", "report_messages", b"report_messages", "start_time", b"start_time", "task_executions", b"task_executions", "total_records", b"total_records"]) -> None: ...

global___BatchJobMessage = BatchJobMessage

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

    TIME_FIELD_NUMBER: builtins.int
    LINE_FIELD_NUMBER: builtins.int
    @property
    def time(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The report time"""
    line: builtins.str
    """The report details"""
    def __init__(
        self,
        *,
        time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        line: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["time", b"time"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["line", b"line", "time", b"time"]) -> None: ...

global___ExecutionReportLine = ExecutionReportLine

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

    SOURCE_BUCKET_FIELD_NUMBER: builtins.int
    DESTINATION_BUCKET_FIELD_NUMBER: builtins.int
    SOURCE_PATH_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    INPUT_FILE_TYPE_FIELD_NUMBER: builtins.int
    OUTPUT_FILE_TYPE_FIELD_NUMBER: builtins.int
    FINISHED_FILES_FIELD_NUMBER: builtins.int
    TOTAL_FILES_FIELD_NUMBER: builtins.int
    source_bucket: builtins.str
    """The source bucket from which the files are read"""
    destination_bucket: builtins.str
    """The destination bucket to which the files are written"""
    source_path: builtins.str
    """The source path from which the files are read on the source bucket"""
    destination_path: builtins.str
    """The destination path to which the files are written on the destination bucket"""
    input_file_type: global___InputFileType.ValueType
    """The file type for the input files"""
    output_file_type: global___OutputFileType.ValueType
    """The file type for the output files"""
    finished_files: builtins.int
    """The finished files/tasks in the job"""
    total_files: builtins.int
    """The total files/tasks in the job"""
    def __init__(
        self,
        *,
        source_bucket: builtins.str = ...,
        destination_bucket: builtins.str = ...,
        source_path: builtins.str = ...,
        destination_path: builtins.str = ...,
        input_file_type: global___InputFileType.ValueType = ...,
        output_file_type: global___OutputFileType.ValueType = ...,
        finished_files: builtins.int = ...,
        total_files: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_bucket", b"destination_bucket", "destination_path", b"destination_path", "finished_files", b"finished_files", "input_file_type", b"input_file_type", "output_file_type", b"output_file_type", "source_bucket", b"source_bucket", "source_path", b"source_path", "total_files", b"total_files"]) -> None: ...

global___ExecutionFileDetails = ExecutionFileDetails

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

    TASK_ID_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    START_TIME_FIELD_NUMBER: builtins.int
    END_TIME_FIELD_NUMBER: builtins.int
    NUM_OF_RECORDS_FIELD_NUMBER: builtins.int
    FILENAME_FIELD_NUMBER: builtins.int
    task_id: builtins.str
    """The task id"""
    status: global___BatchTaskStatusMessage.ValueType
    """The task status"""
    @property
    def start_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The task's start time"""
    @property
    def end_time(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """The task's end time"""
    num_of_records: builtins.int
    """The task's number of records processed"""
    filename: builtins.str
    """The task's filename"""
    def __init__(
        self,
        *,
        task_id: builtins.str = ...,
        status: global___BatchTaskStatusMessage.ValueType = ...,
        start_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        end_time: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        num_of_records: builtins.int = ...,
        filename: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["end_time", b"end_time", "start_time", b"start_time"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["end_time", b"end_time", "filename", b"filename", "num_of_records", b"num_of_records", "start_time", b"start_time", "status", b"status", "task_id", b"task_id"]) -> None: ...

global___TaskExecutionDetails = TaskExecutionDetails

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    NUMBER_OF_FILES_FIELD_NUMBER: builtins.int
    FILE_TYPE_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """The model id to receive a signed url for"""
    number_of_files: builtins.int
    """The number of files to upload"""
    file_type: builtins.str
    """The file type of the files"""
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        number_of_files: builtins.int = ...,
        file_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["file_type", b"file_type", "model_id", b"model_id", "number_of_files", b"number_of_files"]) -> None: ...

global___GetBatchJobPreSignedUploadUrlRequest = GetBatchJobPreSignedUploadUrlRequest

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

    INPUT_PATH_FIELD_NUMBER: builtins.int
    OUTPUT_PATH_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    URLS_FIELD_NUMBER: builtins.int
    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    input_path: builtins.str
    """The generated files path to store the files on"""
    output_path: builtins.str
    """The designated output path"""
    bucket: builtins.str
    """The bucket name to use"""
    @property
    def urls(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """The pre-signed urls"""
    success: builtins.bool
    """Whether the request succeeded"""
    failure_message: builtins.str
    """Failure message in case the request failed"""
    def __init__(
        self,
        *,
        input_path: builtins.str = ...,
        output_path: builtins.str = ...,
        bucket: builtins.str = ...,
        urls: collections.abc.Iterable[builtins.str] | None = ...,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["bucket", b"bucket", "failure_message", b"failure_message", "input_path", b"input_path", "output_path", b"output_path", "success", b"success", "urls", b"urls"]) -> None: ...

global___GetBatchJobPreSignedUploadUrlResponse = GetBatchJobPreSignedUploadUrlResponse

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

    JOB_ID_FIELD_NUMBER: builtins.int
    job_id: builtins.str
    """The job id to get the download urls for"""
    def __init__(
        self,
        *,
        job_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["job_id", b"job_id"]) -> None: ...

global___GetBatchJobPreSignedDownloadUrlRequest = GetBatchJobPreSignedDownloadUrlRequest

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

    URLS_FIELD_NUMBER: builtins.int
    SUCCESS_FIELD_NUMBER: builtins.int
    FAILURE_MESSAGE_FIELD_NUMBER: builtins.int
    @property
    def urls(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """The pre-signed urls"""
    success: builtins.bool
    """Whether the request succeeded"""
    failure_message: builtins.str
    """Failure message in case the request failed"""
    def __init__(
        self,
        *,
        urls: collections.abc.Iterable[builtins.str] | None = ...,
        success: builtins.bool = ...,
        failure_message: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["failure_message", b"failure_message", "success", b"success", "urls", b"urls"]) -> None: ...

global___GetBatchJobPreSignedDownloadUrlResponse = GetBatchJobPreSignedDownloadUrlResponse

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    """The model id to receive a signed url for"""
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["model_id", b"model_id"]) -> None: ...

global___GetBatchJobUploadDetailsRequest = GetBatchJobUploadDetailsRequest

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

    INPUT_PATH_FIELD_NUMBER: builtins.int
    OUTPUT_PATH_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    CREDENTIALS_FIELD_NUMBER: builtins.int
    input_path: builtins.str
    """The generated files path to store the files on"""
    output_path: builtins.str
    """The designated output path"""
    bucket: builtins.str
    """The bucket name to use"""
    @property
    def credentials(self) -> qwak.administration.authenticated_user.v1.credentials_pb2.AwsTemporaryCredentials:
        """Temp credentials for uploading files"""
    def __init__(
        self,
        *,
        input_path: builtins.str = ...,
        output_path: builtins.str = ...,
        bucket: builtins.str = ...,
        credentials: qwak.administration.authenticated_user.v1.credentials_pb2.AwsTemporaryCredentials | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["credentials", b"credentials"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["bucket", b"bucket", "credentials", b"credentials", "input_path", b"input_path", "output_path", b"output_path"]) -> None: ...

global___GetBatchJobUploadDetailsResponse = GetBatchJobUploadDetailsResponse

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

    JOB_ID_FIELD_NUMBER: builtins.int
    job_id: builtins.str
    """The job id to get the download keys for"""
    def __init__(
        self,
        *,
        job_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["job_id", b"job_id"]) -> None: ...

global___GetBatchJobDownloadDetailsRequest = GetBatchJobDownloadDetailsRequest

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

    BUCKET_FIELD_NUMBER: builtins.int
    KEYS_FIELD_NUMBER: builtins.int
    CREDENTIALS_FIELD_NUMBER: builtins.int
    bucket: builtins.str
    """The bucket name to use"""
    @property
    def keys(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """The files keys"""
    @property
    def credentials(self) -> qwak.administration.authenticated_user.v1.credentials_pb2.AwsTemporaryCredentials:
        """Temp credentials for download files"""
    def __init__(
        self,
        *,
        bucket: builtins.str = ...,
        keys: collections.abc.Iterable[builtins.str] | None = ...,
        credentials: qwak.administration.authenticated_user.v1.credentials_pb2.AwsTemporaryCredentials | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["credentials", b"credentials"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["bucket", b"bucket", "credentials", b"credentials", "keys", b"keys"]) -> None: ...

global___GetBatchJobDownloadDetailsResponse = GetBatchJobDownloadDetailsResponse

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

    MODEL_ID_FIELD_NUMBER: builtins.int
    BUILD_ID_FIELD_NUMBER: builtins.int
    DEFAULT_DEPLOYMENT_SIZE_FIELD_NUMBER: builtins.int
    ADVANCED_DEPLOYMENT_OPTIONS_FIELD_NUMBER: builtins.int
    model_id: builtins.str
    build_id: builtins.str
    @property
    def default_deployment_size(self) -> global___BatchJobDeploymentSize: ...
    @property
    def advanced_deployment_options(self) -> global___AdvancedDeploymentOptions: ...
    def __init__(
        self,
        *,
        model_id: builtins.str = ...,
        build_id: builtins.str = ...,
        default_deployment_size: global___BatchJobDeploymentSize | None = ...,
        advanced_deployment_options: global___AdvancedDeploymentOptions | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["advanced_deployment_options", b"advanced_deployment_options", "default_deployment_size", b"default_deployment_size"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["advanced_deployment_options", b"advanced_deployment_options", "build_id", b"build_id", "default_deployment_size", b"default_deployment_size", "model_id", b"model_id"]) -> None: ...

global___UpdateDefaultParamsRequest = UpdateDefaultParamsRequest

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

    def __init__(
        self,
    ) -> None: ...

global___UpdateDefaultParamsResponse = UpdateDefaultParamsResponse

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

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

global___DeleteDefaultParamsRequest = DeleteDefaultParamsRequest

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

    def __init__(
        self,
    ) -> None: ...

global___DeleteDefaultParamsResponse = DeleteDefaultParamsResponse

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

    TASK_ID_FIELD_NUMBER: builtins.int
    INGESTED_RECORDS_FIELD_NUMBER: builtins.int
    task_id: builtins.str
    """The task id"""
    ingested_records: builtins.int
    """The number of ingested records"""
    def __init__(
        self,
        *,
        task_id: builtins.str = ...,
        ingested_records: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["ingested_records", b"ingested_records", "task_id", b"task_id"]) -> None: ...

global___UpdateTaskIngestedRecordsAmountRequest = UpdateTaskIngestedRecordsAmountRequest

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

    def __init__(
        self,
    ) -> None: ...

global___UpdateTaskIngestedRecordsAmountResponse = UpdateTaskIngestedRecordsAmountResponse
