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

import builtins
import collections.abc
import sys

import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class WorkflowMetadata(google.protobuf.message.Message):
    """The name of the query to retrieve this information is `__temporal_workflow_metadata`."""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DEFINITION_FIELD_NUMBER: builtins.int
    CURRENT_DETAILS_FIELD_NUMBER: builtins.int
    @property
    def definition(self) -> global___WorkflowDefinition:
        """Metadata provided at declaration or creation time."""
    current_details: builtins.str
    """Current long-form details of the workflow's state. This is used by user interfaces to show
    long-form text. This text may be formatted by the user interface.
    """
    def __init__(
        self,
        *,
        definition: global___WorkflowDefinition | None = ...,
        current_details: builtins.str = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["definition", b"definition"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "current_details", b"current_details", "definition", b"definition"
        ],
    ) -> None: ...

global___WorkflowMetadata = WorkflowMetadata

class WorkflowDefinition(google.protobuf.message.Message):
    """(-- api-linter: core::0203::optional=disabled --)"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TYPE_FIELD_NUMBER: builtins.int
    QUERY_DEFINITIONS_FIELD_NUMBER: builtins.int
    SIGNAL_DEFINITIONS_FIELD_NUMBER: builtins.int
    UPDATE_DEFINITIONS_FIELD_NUMBER: builtins.int
    type: builtins.str
    """A name scoped by the task queue that maps to this workflow definition.
    If missing, this workflow is a dynamic workflow.
    """
    @property
    def query_definitions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___WorkflowInteractionDefinition
    ]:
        """Query definitions, sorted by name."""
    @property
    def signal_definitions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___WorkflowInteractionDefinition
    ]:
        """Signal definitions, sorted by name."""
    @property
    def update_definitions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___WorkflowInteractionDefinition
    ]:
        """Update definitions, sorted by name."""
    def __init__(
        self,
        *,
        type: builtins.str = ...,
        query_definitions: collections.abc.Iterable[
            global___WorkflowInteractionDefinition
        ]
        | None = ...,
        signal_definitions: collections.abc.Iterable[
            global___WorkflowInteractionDefinition
        ]
        | None = ...,
        update_definitions: collections.abc.Iterable[
            global___WorkflowInteractionDefinition
        ]
        | None = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "query_definitions",
            b"query_definitions",
            "signal_definitions",
            b"signal_definitions",
            "type",
            b"type",
            "update_definitions",
            b"update_definitions",
        ],
    ) -> None: ...

global___WorkflowDefinition = WorkflowDefinition

class WorkflowInteractionDefinition(google.protobuf.message.Message):
    """(-- api-linter: core::0123::resource-annotation=disabled
        aip.dev/not-precedent: The `name` field is optional. --)
    (-- api-linter: core::0203::optional=disabled --)
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    name: builtins.str
    """An optional name for the handler. If missing, it represents
    a dynamic handler that processes any interactions not handled by others.
    There is at most one dynamic handler per workflow and interaction kind.
    """
    description: builtins.str
    """An optional interaction description provided by the application.
    By convention, external tools may interpret its first part,
    i.e., ending with a line break, as a summary of the description.
    """
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        description: builtins.str = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "description", b"description", "name", b"name"
        ],
    ) -> None: ...

global___WorkflowInteractionDefinition = WorkflowInteractionDefinition
