"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import common_pb2
import google.protobuf.descriptor
import google.protobuf.field_mask_pb2
import google.protobuf.internal.containers
import google.protobuf.message
import google.protobuf.timestamp_pb2
import job_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 JobRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AUTH_INFO_FIELD_NUMBER: builtins.int
    JOB_FIELD_NUMBER: builtins.int
    @property
    def auth_info(self) -> common_pb2.NBXAuthInfo: ...
    @property
    def job(self) -> job_pb2.Job: ...
    def __init__(
        self,
        *,
        auth_info: common_pb2.NBXAuthInfo | None = ...,
        job: job_pb2.Job | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "job", b"job"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "job", b"job"]) -> None: ...

global___JobRequest = JobRequest

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

    AUTH_INFO_FIELD_NUMBER: builtins.int
    JOB_FIELD_NUMBER: builtins.int
    UPDATE_MASK_FIELD_NUMBER: builtins.int
    @property
    def auth_info(self) -> common_pb2.NBXAuthInfo: ...
    @property
    def job(self) -> job_pb2.Job: ...
    @property
    def update_mask(self) -> google.protobuf.field_mask_pb2.FieldMask: ...
    def __init__(
        self,
        *,
        auth_info: common_pb2.NBXAuthInfo | None = ...,
        job: job_pb2.Job | None = ...,
        update_mask: google.protobuf.field_mask_pb2.FieldMask | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "job", b"job", "update_mask", b"update_mask"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "job", b"job", "update_mask", b"update_mask"]) -> None: ...

global___UpdateJobRequest = UpdateJobRequest

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

    AUTH_INFO_FIELD_NUMBER: builtins.int
    LIMIT_FIELD_NUMBER: builtins.int
    OFFSET_FIELD_NUMBER: builtins.int
    @property
    def auth_info(self) -> common_pb2.NBXAuthInfo: ...
    limit: builtins.int
    offset: builtins.int
    def __init__(
        self,
        *,
        auth_info: common_pb2.NBXAuthInfo | None = ...,
        limit: builtins.int = ...,
        offset: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "limit", b"limit", "offset", b"offset"]) -> None: ...

global___ListJobsRequest = ListJobsRequest

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

    JOBS_FIELD_NUMBER: builtins.int
    NEXT_PAGE_FIELD_NUMBER: builtins.int
    @property
    def jobs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[job_pb2.Job]: ...
    next_page: builtins.int
    def __init__(
        self,
        *,
        jobs: collections.abc.Iterable[job_pb2.Job] | None = ...,
        next_page: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["jobs", b"jobs", "next_page", b"next_page"]) -> None: ...

global___ListJobsResponse = ListJobsResponse

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

    JOB_FIELD_NUMBER: builtins.int
    K8S_INFO_FIELD_NUMBER: builtins.int
    LOG_FIELD_NUMBER: builtins.int
    @property
    def job(self) -> job_pb2.Job: ...
    @property
    def k8s_info(self) -> job_pb2.K8sInfo: ...
    @property
    def log(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        job: job_pb2.Job | None = ...,
        k8s_info: job_pb2.K8sInfo | None = ...,
        log: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["job", b"job", "k8s_info", b"k8s_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["job", b"job", "k8s_info", b"k8s_info", "log", b"log"]) -> None: ...

global___JobLog = JobLog

@typing_extensions.final
class UpdateRunRequest(google.protobuf.message.Message):
    """To update run for a job, identified by token
    required fields in job are: [token, status, updated_at] (dag is optional)
    message is optional
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TOKEN_FIELD_NUMBER: builtins.int
    JOB_FIELD_NUMBER: builtins.int
    UPDATED_AT_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    AUTH_INFO_FIELD_NUMBER: builtins.int
    token: builtins.str
    """token to identify the run"""
    @property
    def job(self) -> job_pb2.Job:
        """set status here"""
    @property
    def updated_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """should be time.now()"""
    message: builtins.str
    """optional"""
    @property
    def auth_info(self) -> common_pb2.NBXAuthInfo:
        """Required Auth Info"""
    def __init__(
        self,
        *,
        token: builtins.str = ...,
        job: job_pb2.Job | None = ...,
        updated_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        message: builtins.str = ...,
        auth_info: common_pb2.NBXAuthInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "job", b"job", "updated_at", b"updated_at"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "job", b"job", "message", b"message", "token", b"token", "updated_at", b"updated_at"]) -> None: ...

global___UpdateRunRequest = UpdateRunRequest
