"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import google.protobuf.descriptor
import google.protobuf.message
import insightproto.proto.common.v1.common_pb2
import insightproto.proto.results.v1.results_pb2
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class UpdateRequest(google.protobuf.message.Message):
    """UpdateRequest represents an incremental update sent by the agent during
    investigation processing.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INVESTIGATION_ID_FIELD_NUMBER: builtins.int
    ORG_FIELD_NUMBER: builtins.int
    EVENT_FIELD_NUMBER: builtins.int
    investigation_id: builtins.str
    """The investigation ID that this update relates to."""
    @property
    def org(self) -> insightproto.proto.common.v1.common_pb2.Organisation:
        """The organization that owns the investigation."""

    @property
    def event(self) -> insightproto.proto.results.v1.results_pb2.TimelineEvent:
        """The timeline event data for this update."""

    def __init__(
        self,
        *,
        investigation_id: builtins.str = ...,
        org: insightproto.proto.common.v1.common_pb2.Organisation | None = ...,
        event: insightproto.proto.results.v1.results_pb2.TimelineEvent | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["event", b"event", "org", b"org"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["event", b"event", "investigation_id", b"investigation_id", "org", b"org"]) -> None: ...

global___UpdateRequest = UpdateRequest
