# @generated by generate_proto_mypy_stubs.py.  Do not edit!
import sys
from google.protobuf.descriptor import (
    Descriptor as google___protobuf___descriptor___Descriptor,
    EnumDescriptor as google___protobuf___descriptor___EnumDescriptor,
)

from google.protobuf.duration_pb2 import (
    Duration as google___protobuf___duration_pb2___Duration,
)

from google.protobuf.internal.containers import (
    RepeatedCompositeFieldContainer as google___protobuf___internal___containers___RepeatedCompositeFieldContainer,
    RepeatedScalarFieldContainer as google___protobuf___internal___containers___RepeatedScalarFieldContainer,
)

from google.protobuf.message import (
    Message as google___protobuf___message___Message,
)

from google.protobuf.timestamp_pb2 import (
    Timestamp as google___protobuf___timestamp_pb2___Timestamp,
)

from ...pipeline.v1.beam_runner_api_pb2 import (
    Coder as org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Coder,
    Environment as org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Environment,
    IsBounded as org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___IsBounded,
    PCollection as org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PCollection,
    PTransform as org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PTransform,
    WindowingStrategy as org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___WindowingStrategy,
)

from ...pipeline.v1.endpoints_pb2 import (
    ApiServiceDescriptor as org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor,
)

from ...pipeline.v1.metrics_pb2 import (
    MonitoringInfo as org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo,
)

from typing import (
    Iterable as typing___Iterable,
    List as typing___List,
    Mapping as typing___Mapping,
    MutableMapping as typing___MutableMapping,
    Optional as typing___Optional,
    Text as typing___Text,
    Tuple as typing___Tuple,
    Union as typing___Union,
    cast as typing___cast,
)

from typing_extensions import (
    Literal as typing_extensions___Literal,
)


builtin___bool = bool
builtin___bytes = bytes
builtin___float = float
builtin___int = int
builtin___str = str
if sys.version_info < (3,):
    builtin___buffer = buffer
    builtin___unicode = unicode


class RemoteGrpcPort(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    coder_id = ... # type: typing___Text

    @property
    def api_service_descriptor(self) -> org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor: ...

    def __init__(self,
        *,
        api_service_descriptor : typing___Optional[org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor] = None,
        coder_id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> RemoteGrpcPort: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> RemoteGrpcPort: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"api_service_descriptor"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"api_service_descriptor",u"coder_id"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"api_service_descriptor",b"api_service_descriptor"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"api_service_descriptor",b"api_service_descriptor",u"coder_id",b"coder_id"]) -> None: ...

class GetProcessBundleDescriptorRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    process_bundle_descriptor_id = ... # type: typing___Text

    def __init__(self,
        *,
        process_bundle_descriptor_id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> GetProcessBundleDescriptorRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> GetProcessBundleDescriptorRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"process_bundle_descriptor_id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"process_bundle_descriptor_id",b"process_bundle_descriptor_id"]) -> None: ...

class InstructionRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    instruction_id = ... # type: typing___Text

    @property
    def process_bundle(self) -> ProcessBundleRequest: ...

    @property
    def process_bundle_progress(self) -> ProcessBundleProgressRequest: ...

    @property
    def process_bundle_split(self) -> ProcessBundleSplitRequest: ...

    @property
    def finalize_bundle(self) -> FinalizeBundleRequest: ...

    @property
    def monitoring_infos(self) -> MonitoringInfosMetadataRequest: ...

    @property
    def harness_monitoring_infos(self) -> HarnessMonitoringInfosRequest: ...

    @property
    def register(self) -> RegisterRequest: ...

    def __init__(self,
        *,
        instruction_id : typing___Optional[typing___Text] = None,
        process_bundle : typing___Optional[ProcessBundleRequest] = None,
        process_bundle_progress : typing___Optional[ProcessBundleProgressRequest] = None,
        process_bundle_split : typing___Optional[ProcessBundleSplitRequest] = None,
        finalize_bundle : typing___Optional[FinalizeBundleRequest] = None,
        monitoring_infos : typing___Optional[MonitoringInfosMetadataRequest] = None,
        harness_monitoring_infos : typing___Optional[HarnessMonitoringInfosRequest] = None,
        register : typing___Optional[RegisterRequest] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> InstructionRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> InstructionRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"finalize_bundle",u"harness_monitoring_infos",u"monitoring_infos",u"process_bundle",u"process_bundle_progress",u"process_bundle_split",u"register",u"request"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"finalize_bundle",u"harness_monitoring_infos",u"instruction_id",u"monitoring_infos",u"process_bundle",u"process_bundle_progress",u"process_bundle_split",u"register",u"request"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"finalize_bundle",b"finalize_bundle",u"harness_monitoring_infos",b"harness_monitoring_infos",u"monitoring_infos",b"monitoring_infos",u"process_bundle",b"process_bundle",u"process_bundle_progress",b"process_bundle_progress",u"process_bundle_split",b"process_bundle_split",u"register",b"register",u"request",b"request"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"finalize_bundle",b"finalize_bundle",u"harness_monitoring_infos",b"harness_monitoring_infos",u"instruction_id",b"instruction_id",u"monitoring_infos",b"monitoring_infos",u"process_bundle",b"process_bundle",u"process_bundle_progress",b"process_bundle_progress",u"process_bundle_split",b"process_bundle_split",u"register",b"register",u"request",b"request"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"request",b"request"]) -> typing_extensions___Literal["process_bundle","process_bundle_progress","process_bundle_split","finalize_bundle","monitoring_infos","harness_monitoring_infos","register"]: ...

class InstructionResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    instruction_id = ... # type: typing___Text
    error = ... # type: typing___Text

    @property
    def process_bundle(self) -> ProcessBundleResponse: ...

    @property
    def process_bundle_progress(self) -> ProcessBundleProgressResponse: ...

    @property
    def process_bundle_split(self) -> ProcessBundleSplitResponse: ...

    @property
    def finalize_bundle(self) -> FinalizeBundleResponse: ...

    @property
    def monitoring_infos(self) -> MonitoringInfosMetadataResponse: ...

    @property
    def harness_monitoring_infos(self) -> HarnessMonitoringInfosResponse: ...

    @property
    def register(self) -> RegisterResponse: ...

    def __init__(self,
        *,
        instruction_id : typing___Optional[typing___Text] = None,
        error : typing___Optional[typing___Text] = None,
        process_bundle : typing___Optional[ProcessBundleResponse] = None,
        process_bundle_progress : typing___Optional[ProcessBundleProgressResponse] = None,
        process_bundle_split : typing___Optional[ProcessBundleSplitResponse] = None,
        finalize_bundle : typing___Optional[FinalizeBundleResponse] = None,
        monitoring_infos : typing___Optional[MonitoringInfosMetadataResponse] = None,
        harness_monitoring_infos : typing___Optional[HarnessMonitoringInfosResponse] = None,
        register : typing___Optional[RegisterResponse] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> InstructionResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> InstructionResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"finalize_bundle",u"harness_monitoring_infos",u"monitoring_infos",u"process_bundle",u"process_bundle_progress",u"process_bundle_split",u"register",u"response"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"error",u"finalize_bundle",u"harness_monitoring_infos",u"instruction_id",u"monitoring_infos",u"process_bundle",u"process_bundle_progress",u"process_bundle_split",u"register",u"response"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"finalize_bundle",b"finalize_bundle",u"harness_monitoring_infos",b"harness_monitoring_infos",u"monitoring_infos",b"monitoring_infos",u"process_bundle",b"process_bundle",u"process_bundle_progress",b"process_bundle_progress",u"process_bundle_split",b"process_bundle_split",u"register",b"register",u"response",b"response"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"error",b"error",u"finalize_bundle",b"finalize_bundle",u"harness_monitoring_infos",b"harness_monitoring_infos",u"instruction_id",b"instruction_id",u"monitoring_infos",b"monitoring_infos",u"process_bundle",b"process_bundle",u"process_bundle_progress",b"process_bundle_progress",u"process_bundle_split",b"process_bundle_split",u"register",b"register",u"response",b"response"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"response",b"response"]) -> typing_extensions___Literal["process_bundle","process_bundle_progress","process_bundle_split","finalize_bundle","monitoring_infos","harness_monitoring_infos","register"]: ...

class HarnessMonitoringInfosRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> HarnessMonitoringInfosRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> HarnessMonitoringInfosRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class HarnessMonitoringInfosResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class MonitoringDataEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text
        value = ... # type: builtin___bytes

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> HarnessMonitoringInfosResponse.MonitoringDataEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> HarnessMonitoringInfosResponse.MonitoringDataEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...


    @property
    def monitoring_data(self) -> typing___MutableMapping[typing___Text, builtin___bytes]: ...

    def __init__(self,
        *,
        monitoring_data : typing___Optional[typing___Mapping[typing___Text, builtin___bytes]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> HarnessMonitoringInfosResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> HarnessMonitoringInfosResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_data"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_data",b"monitoring_data"]) -> None: ...

class RegisterRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def process_bundle_descriptor(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[ProcessBundleDescriptor]: ...

    def __init__(self,
        *,
        process_bundle_descriptor : typing___Optional[typing___Iterable[ProcessBundleDescriptor]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> RegisterRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> RegisterRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"process_bundle_descriptor"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"process_bundle_descriptor",b"process_bundle_descriptor"]) -> None: ...

class RegisterResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> RegisterResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> RegisterResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class ProcessBundleDescriptor(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class TransformsEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PTransform: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PTransform] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleDescriptor.TransformsEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleDescriptor.TransformsEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    class PcollectionsEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PCollection: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PCollection] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleDescriptor.PcollectionsEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleDescriptor.PcollectionsEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    class WindowingStrategiesEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___WindowingStrategy: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___WindowingStrategy] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleDescriptor.WindowingStrategiesEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleDescriptor.WindowingStrategiesEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    class CodersEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Coder: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Coder] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleDescriptor.CodersEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleDescriptor.CodersEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    class EnvironmentsEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Environment: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Environment] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleDescriptor.EnvironmentsEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleDescriptor.EnvironmentsEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    id = ... # type: typing___Text

    @property
    def transforms(self) -> typing___MutableMapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PTransform]: ...

    @property
    def pcollections(self) -> typing___MutableMapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PCollection]: ...

    @property
    def windowing_strategies(self) -> typing___MutableMapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___WindowingStrategy]: ...

    @property
    def coders(self) -> typing___MutableMapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Coder]: ...

    @property
    def environments(self) -> typing___MutableMapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Environment]: ...

    @property
    def state_api_service_descriptor(self) -> org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor: ...

    @property
    def timer_api_service_descriptor(self) -> org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor: ...

    def __init__(self,
        *,
        id : typing___Optional[typing___Text] = None,
        transforms : typing___Optional[typing___Mapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PTransform]] = None,
        pcollections : typing___Optional[typing___Mapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___PCollection]] = None,
        windowing_strategies : typing___Optional[typing___Mapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___WindowingStrategy]] = None,
        coders : typing___Optional[typing___Mapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Coder]] = None,
        environments : typing___Optional[typing___Mapping[typing___Text, org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___Environment]] = None,
        state_api_service_descriptor : typing___Optional[org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor] = None,
        timer_api_service_descriptor : typing___Optional[org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ProcessBundleDescriptor: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleDescriptor: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"state_api_service_descriptor",u"timer_api_service_descriptor"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"coders",u"environments",u"id",u"pcollections",u"state_api_service_descriptor",u"timer_api_service_descriptor",u"transforms",u"windowing_strategies"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"state_api_service_descriptor",b"state_api_service_descriptor",u"timer_api_service_descriptor",b"timer_api_service_descriptor"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"coders",b"coders",u"environments",b"environments",u"id",b"id",u"pcollections",b"pcollections",u"state_api_service_descriptor",b"state_api_service_descriptor",u"timer_api_service_descriptor",b"timer_api_service_descriptor",u"transforms",b"transforms",u"windowing_strategies",b"windowing_strategies"]) -> None: ...

class BundleApplication(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class OutputWatermarksEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> BundleApplication.OutputWatermarksEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> BundleApplication.OutputWatermarksEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    transform_id = ... # type: typing___Text
    input_id = ... # type: typing___Text
    element = ... # type: builtin___bytes
    is_bounded = ... # type: org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___IsBounded.Enum

    @property
    def output_watermarks(self) -> typing___MutableMapping[typing___Text, google___protobuf___timestamp_pb2___Timestamp]: ...

    def __init__(self,
        *,
        transform_id : typing___Optional[typing___Text] = None,
        input_id : typing___Optional[typing___Text] = None,
        element : typing___Optional[builtin___bytes] = None,
        output_watermarks : typing___Optional[typing___Mapping[typing___Text, google___protobuf___timestamp_pb2___Timestamp]] = None,
        is_bounded : typing___Optional[org___apache___beam___model___pipeline___v1___beam_runner_api_pb2___IsBounded.Enum] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> BundleApplication: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> BundleApplication: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"element",u"input_id",u"is_bounded",u"output_watermarks",u"transform_id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"element",b"element",u"input_id",b"input_id",u"is_bounded",b"is_bounded",u"output_watermarks",b"output_watermarks",u"transform_id",b"transform_id"]) -> None: ...

class DelayedBundleApplication(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def application(self) -> BundleApplication: ...

    @property
    def requested_time_delay(self) -> google___protobuf___duration_pb2___Duration: ...

    def __init__(self,
        *,
        application : typing___Optional[BundleApplication] = None,
        requested_time_delay : typing___Optional[google___protobuf___duration_pb2___Duration] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> DelayedBundleApplication: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> DelayedBundleApplication: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"application",u"requested_time_delay"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"application",u"requested_time_delay"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"application",b"application",u"requested_time_delay",b"requested_time_delay"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"application",b"application",u"requested_time_delay",b"requested_time_delay"]) -> None: ...

class ProcessBundleRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class CacheToken(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        class UserState(google___protobuf___message___Message):
            DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

            def __init__(self,
                ) -> None: ...
            if sys.version_info >= (3,):
                @classmethod
                def FromString(cls, s: builtin___bytes) -> ProcessBundleRequest.CacheToken.UserState: ...
            else:
                @classmethod
                def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleRequest.CacheToken.UserState: ...
            def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
            def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

        class SideInput(google___protobuf___message___Message):
            DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
            transform_id = ... # type: typing___Text
            side_input_id = ... # type: typing___Text

            def __init__(self,
                *,
                transform_id : typing___Optional[typing___Text] = None,
                side_input_id : typing___Optional[typing___Text] = None,
                ) -> None: ...
            if sys.version_info >= (3,):
                @classmethod
                def FromString(cls, s: builtin___bytes) -> ProcessBundleRequest.CacheToken.SideInput: ...
            else:
                @classmethod
                def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleRequest.CacheToken.SideInput: ...
            def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
            def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
            if sys.version_info >= (3,):
                def ClearField(self, field_name: typing_extensions___Literal[u"side_input_id",u"transform_id"]) -> None: ...
            else:
                def ClearField(self, field_name: typing_extensions___Literal[u"side_input_id",b"side_input_id",u"transform_id",b"transform_id"]) -> None: ...

        token = ... # type: builtin___bytes

        @property
        def user_state(self) -> ProcessBundleRequest.CacheToken.UserState: ...

        @property
        def side_input(self) -> ProcessBundleRequest.CacheToken.SideInput: ...

        def __init__(self,
            *,
            user_state : typing___Optional[ProcessBundleRequest.CacheToken.UserState] = None,
            side_input : typing___Optional[ProcessBundleRequest.CacheToken.SideInput] = None,
            token : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleRequest.CacheToken: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleRequest.CacheToken: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"side_input",u"type",u"user_state"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"side_input",u"token",u"type",u"user_state"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"side_input",b"side_input",u"type",b"type",u"user_state",b"user_state"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"side_input",b"side_input",u"token",b"token",u"type",b"type",u"user_state",b"user_state"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions___Literal[u"type",b"type"]) -> typing_extensions___Literal["user_state","side_input"]: ...

    process_bundle_descriptor_id = ... # type: typing___Text

    @property
    def cache_tokens(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[ProcessBundleRequest.CacheToken]: ...

    @property
    def elements(self) -> Elements: ...

    def __init__(self,
        *,
        process_bundle_descriptor_id : typing___Optional[typing___Text] = None,
        cache_tokens : typing___Optional[typing___Iterable[ProcessBundleRequest.CacheToken]] = None,
        elements : typing___Optional[Elements] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ProcessBundleRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"elements"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cache_tokens",u"elements",u"process_bundle_descriptor_id"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"elements",b"elements"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cache_tokens",b"cache_tokens",u"elements",b"elements",u"process_bundle_descriptor_id",b"process_bundle_descriptor_id"]) -> None: ...

class ProcessBundleResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class MonitoringDataEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text
        value = ... # type: builtin___bytes

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleResponse.MonitoringDataEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleResponse.MonitoringDataEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    requires_finalization = ... # type: builtin___bool

    @property
    def residual_roots(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[DelayedBundleApplication]: ...

    @property
    def monitoring_infos(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo]: ...

    @property
    def monitoring_data(self) -> typing___MutableMapping[typing___Text, builtin___bytes]: ...

    @property
    def elements(self) -> Elements: ...

    def __init__(self,
        *,
        residual_roots : typing___Optional[typing___Iterable[DelayedBundleApplication]] = None,
        monitoring_infos : typing___Optional[typing___Iterable[org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo]] = None,
        requires_finalization : typing___Optional[builtin___bool] = None,
        monitoring_data : typing___Optional[typing___Mapping[typing___Text, builtin___bytes]] = None,
        elements : typing___Optional[Elements] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ProcessBundleResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"elements"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"elements",u"monitoring_data",u"monitoring_infos",u"requires_finalization",u"residual_roots"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"elements",b"elements"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"elements",b"elements",u"monitoring_data",b"monitoring_data",u"monitoring_infos",b"monitoring_infos",u"requires_finalization",b"requires_finalization",u"residual_roots",b"residual_roots"]) -> None: ...

class ProcessBundleProgressRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    instruction_id = ... # type: typing___Text

    def __init__(self,
        *,
        instruction_id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ProcessBundleProgressRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleProgressRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id",b"instruction_id"]) -> None: ...

class MonitoringInfosMetadataRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    monitoring_info_id = ... # type: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text]

    def __init__(self,
        *,
        monitoring_info_id : typing___Optional[typing___Iterable[typing___Text]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> MonitoringInfosMetadataRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> MonitoringInfosMetadataRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_info_id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_info_id",b"monitoring_info_id"]) -> None: ...

class ProcessBundleProgressResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class MonitoringDataEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text
        value = ... # type: builtin___bytes

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleProgressResponse.MonitoringDataEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleProgressResponse.MonitoringDataEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...


    @property
    def monitoring_infos(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo]: ...

    @property
    def monitoring_data(self) -> typing___MutableMapping[typing___Text, builtin___bytes]: ...

    def __init__(self,
        *,
        monitoring_infos : typing___Optional[typing___Iterable[org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo]] = None,
        monitoring_data : typing___Optional[typing___Mapping[typing___Text, builtin___bytes]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ProcessBundleProgressResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleProgressResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_data",u"monitoring_infos"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_data",b"monitoring_data",u"monitoring_infos",b"monitoring_infos"]) -> None: ...

class MonitoringInfosMetadataResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class MonitoringInfoEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> MonitoringInfosMetadataResponse.MonitoringInfoEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> MonitoringInfosMetadataResponse.MonitoringInfoEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...


    @property
    def monitoring_info(self) -> typing___MutableMapping[typing___Text, org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo]: ...

    def __init__(self,
        *,
        monitoring_info : typing___Optional[typing___Mapping[typing___Text, org___apache___beam___model___pipeline___v1___metrics_pb2___MonitoringInfo]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> MonitoringInfosMetadataResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> MonitoringInfosMetadataResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_info"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"monitoring_info",b"monitoring_info"]) -> None: ...

class ProcessBundleSplitRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class DesiredSplit(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        fraction_of_remainder = ... # type: builtin___float
        allowed_split_points = ... # type: google___protobuf___internal___containers___RepeatedScalarFieldContainer[builtin___int]
        estimated_input_elements = ... # type: builtin___int

        def __init__(self,
            *,
            fraction_of_remainder : typing___Optional[builtin___float] = None,
            allowed_split_points : typing___Optional[typing___Iterable[builtin___int]] = None,
            estimated_input_elements : typing___Optional[builtin___int] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleSplitRequest.DesiredSplit: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleSplitRequest.DesiredSplit: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"allowed_split_points",u"estimated_input_elements",u"fraction_of_remainder"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"allowed_split_points",b"allowed_split_points",u"estimated_input_elements",b"estimated_input_elements",u"fraction_of_remainder",b"fraction_of_remainder"]) -> None: ...

    class DesiredSplitsEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> ProcessBundleSplitRequest.DesiredSplit: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[ProcessBundleSplitRequest.DesiredSplit] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleSplitRequest.DesiredSplitsEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleSplitRequest.DesiredSplitsEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def HasField(self, field_name: typing_extensions___Literal[u"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    instruction_id = ... # type: typing___Text

    @property
    def desired_splits(self) -> typing___MutableMapping[typing___Text, ProcessBundleSplitRequest.DesiredSplit]: ...

    def __init__(self,
        *,
        instruction_id : typing___Optional[typing___Text] = None,
        desired_splits : typing___Optional[typing___Mapping[typing___Text, ProcessBundleSplitRequest.DesiredSplit]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ProcessBundleSplitRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleSplitRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"desired_splits",u"instruction_id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"desired_splits",b"desired_splits",u"instruction_id",b"instruction_id"]) -> None: ...

class ProcessBundleSplitResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class ChannelSplit(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        transform_id = ... # type: typing___Text
        last_primary_element = ... # type: builtin___int
        first_residual_element = ... # type: builtin___int

        def __init__(self,
            *,
            transform_id : typing___Optional[typing___Text] = None,
            last_primary_element : typing___Optional[builtin___int] = None,
            first_residual_element : typing___Optional[builtin___int] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> ProcessBundleSplitResponse.ChannelSplit: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleSplitResponse.ChannelSplit: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"first_residual_element",u"last_primary_element",u"transform_id"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"first_residual_element",b"first_residual_element",u"last_primary_element",b"last_primary_element",u"transform_id",b"transform_id"]) -> None: ...


    @property
    def primary_roots(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[BundleApplication]: ...

    @property
    def residual_roots(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[DelayedBundleApplication]: ...

    @property
    def channel_splits(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[ProcessBundleSplitResponse.ChannelSplit]: ...

    def __init__(self,
        *,
        primary_roots : typing___Optional[typing___Iterable[BundleApplication]] = None,
        residual_roots : typing___Optional[typing___Iterable[DelayedBundleApplication]] = None,
        channel_splits : typing___Optional[typing___Iterable[ProcessBundleSplitResponse.ChannelSplit]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ProcessBundleSplitResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ProcessBundleSplitResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"channel_splits",u"primary_roots",u"residual_roots"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"channel_splits",b"channel_splits",u"primary_roots",b"primary_roots",u"residual_roots",b"residual_roots"]) -> None: ...

class FinalizeBundleRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    instruction_id = ... # type: typing___Text

    def __init__(self,
        *,
        instruction_id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> FinalizeBundleRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> FinalizeBundleRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id",b"instruction_id"]) -> None: ...

class FinalizeBundleResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> FinalizeBundleResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> FinalizeBundleResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class Elements(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class Data(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        instruction_id = ... # type: typing___Text
        transform_id = ... # type: typing___Text
        data = ... # type: builtin___bytes
        is_last = ... # type: builtin___bool

        def __init__(self,
            *,
            instruction_id : typing___Optional[typing___Text] = None,
            transform_id : typing___Optional[typing___Text] = None,
            data : typing___Optional[builtin___bytes] = None,
            is_last : typing___Optional[builtin___bool] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> Elements.Data: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Elements.Data: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"data",u"instruction_id",u"is_last",u"transform_id"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"data",b"data",u"instruction_id",b"instruction_id",u"is_last",b"is_last",u"transform_id",b"transform_id"]) -> None: ...

    class Timers(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        instruction_id = ... # type: typing___Text
        transform_id = ... # type: typing___Text
        timer_family_id = ... # type: typing___Text
        timers = ... # type: builtin___bytes
        is_last = ... # type: builtin___bool

        def __init__(self,
            *,
            instruction_id : typing___Optional[typing___Text] = None,
            transform_id : typing___Optional[typing___Text] = None,
            timer_family_id : typing___Optional[typing___Text] = None,
            timers : typing___Optional[builtin___bytes] = None,
            is_last : typing___Optional[builtin___bool] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> Elements.Timers: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Elements.Timers: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id",u"is_last",u"timer_family_id",u"timers",u"transform_id"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id",b"instruction_id",u"is_last",b"is_last",u"timer_family_id",b"timer_family_id",u"timers",b"timers",u"transform_id",b"transform_id"]) -> None: ...


    @property
    def data(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Elements.Data]: ...

    @property
    def timers(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Elements.Timers]: ...

    def __init__(self,
        *,
        data : typing___Optional[typing___Iterable[Elements.Data]] = None,
        timers : typing___Optional[typing___Iterable[Elements.Timers]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Elements: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Elements: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"data",u"timers"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"data",b"data",u"timers",b"timers"]) -> None: ...

class StateRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    id = ... # type: typing___Text
    instruction_id = ... # type: typing___Text

    @property
    def state_key(self) -> StateKey: ...

    @property
    def get(self) -> StateGetRequest: ...

    @property
    def append(self) -> StateAppendRequest: ...

    @property
    def clear(self) -> StateClearRequest: ...

    def __init__(self,
        *,
        id : typing___Optional[typing___Text] = None,
        instruction_id : typing___Optional[typing___Text] = None,
        state_key : typing___Optional[StateKey] = None,
        get : typing___Optional[StateGetRequest] = None,
        append : typing___Optional[StateAppendRequest] = None,
        clear : typing___Optional[StateClearRequest] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"append",u"clear",u"get",u"request",u"state_key"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"append",u"clear",u"get",u"id",u"instruction_id",u"request",u"state_key"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"append",b"append",u"clear",b"clear",u"get",b"get",u"request",b"request",u"state_key",b"state_key"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"append",b"append",u"clear",b"clear",u"get",b"get",u"id",b"id",u"instruction_id",b"instruction_id",u"request",b"request",u"state_key",b"state_key"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"request",b"request"]) -> typing_extensions___Literal["get","append","clear"]: ...

class StateResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    id = ... # type: typing___Text
    error = ... # type: typing___Text

    @property
    def get(self) -> StateGetResponse: ...

    @property
    def append(self) -> StateAppendResponse: ...

    @property
    def clear(self) -> StateClearResponse: ...

    def __init__(self,
        *,
        id : typing___Optional[typing___Text] = None,
        error : typing___Optional[typing___Text] = None,
        get : typing___Optional[StateGetResponse] = None,
        append : typing___Optional[StateAppendResponse] = None,
        clear : typing___Optional[StateClearResponse] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"append",u"clear",u"get",u"response"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"append",u"clear",u"error",u"get",u"id",u"response"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"append",b"append",u"clear",b"clear",u"get",b"get",u"response",b"response"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"append",b"append",u"clear",b"clear",u"error",b"error",u"get",b"get",u"id",b"id",u"response",b"response"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"response",b"response"]) -> typing_extensions___Literal["get","append","clear"]: ...

class StateKey(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class Runner(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: builtin___bytes

        def __init__(self,
            *,
            key : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StateKey.Runner: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey.Runner: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key"]) -> None: ...

    class IterableSideInput(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        transform_id = ... # type: typing___Text
        side_input_id = ... # type: typing___Text
        window = ... # type: builtin___bytes

        def __init__(self,
            *,
            transform_id : typing___Optional[typing___Text] = None,
            side_input_id : typing___Optional[typing___Text] = None,
            window : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StateKey.IterableSideInput: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey.IterableSideInput: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"side_input_id",u"transform_id",u"window"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"side_input_id",b"side_input_id",u"transform_id",b"transform_id",u"window",b"window"]) -> None: ...

    class MultimapSideInput(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        transform_id = ... # type: typing___Text
        side_input_id = ... # type: typing___Text
        window = ... # type: builtin___bytes
        key = ... # type: builtin___bytes

        def __init__(self,
            *,
            transform_id : typing___Optional[typing___Text] = None,
            side_input_id : typing___Optional[typing___Text] = None,
            window : typing___Optional[builtin___bytes] = None,
            key : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StateKey.MultimapSideInput: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey.MultimapSideInput: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"side_input_id",u"transform_id",u"window"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"side_input_id",b"side_input_id",u"transform_id",b"transform_id",u"window",b"window"]) -> None: ...

    class MultimapKeysSideInput(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        transform_id = ... # type: typing___Text
        side_input_id = ... # type: typing___Text
        window = ... # type: builtin___bytes

        def __init__(self,
            *,
            transform_id : typing___Optional[typing___Text] = None,
            side_input_id : typing___Optional[typing___Text] = None,
            window : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StateKey.MultimapKeysSideInput: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey.MultimapKeysSideInput: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"side_input_id",u"transform_id",u"window"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"side_input_id",b"side_input_id",u"transform_id",b"transform_id",u"window",b"window"]) -> None: ...

    class BagUserState(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        transform_id = ... # type: typing___Text
        user_state_id = ... # type: typing___Text
        window = ... # type: builtin___bytes
        key = ... # type: builtin___bytes

        def __init__(self,
            *,
            transform_id : typing___Optional[typing___Text] = None,
            user_state_id : typing___Optional[typing___Text] = None,
            window : typing___Optional[builtin___bytes] = None,
            key : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StateKey.BagUserState: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey.BagUserState: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"transform_id",u"user_state_id",u"window"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"transform_id",b"transform_id",u"user_state_id",b"user_state_id",u"window",b"window"]) -> None: ...

    class MultimapKeysUserState(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        transform_id = ... # type: typing___Text
        user_state_id = ... # type: typing___Text
        window = ... # type: builtin___bytes
        key = ... # type: builtin___bytes

        def __init__(self,
            *,
            transform_id : typing___Optional[typing___Text] = None,
            user_state_id : typing___Optional[typing___Text] = None,
            window : typing___Optional[builtin___bytes] = None,
            key : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StateKey.MultimapKeysUserState: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey.MultimapKeysUserState: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"transform_id",u"user_state_id",u"window"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"transform_id",b"transform_id",u"user_state_id",b"user_state_id",u"window",b"window"]) -> None: ...

    class MultimapUserState(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        transform_id = ... # type: typing___Text
        user_state_id = ... # type: typing___Text
        window = ... # type: builtin___bytes
        key = ... # type: builtin___bytes
        map_key = ... # type: builtin___bytes

        def __init__(self,
            *,
            transform_id : typing___Optional[typing___Text] = None,
            user_state_id : typing___Optional[typing___Text] = None,
            window : typing___Optional[builtin___bytes] = None,
            key : typing___Optional[builtin___bytes] = None,
            map_key : typing___Optional[builtin___bytes] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StateKey.MultimapUserState: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey.MultimapUserState: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"map_key",u"transform_id",u"user_state_id",u"window"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"map_key",b"map_key",u"transform_id",b"transform_id",u"user_state_id",b"user_state_id",u"window",b"window"]) -> None: ...


    @property
    def runner(self) -> StateKey.Runner: ...

    @property
    def multimap_side_input(self) -> StateKey.MultimapSideInput: ...

    @property
    def bag_user_state(self) -> StateKey.BagUserState: ...

    @property
    def iterable_side_input(self) -> StateKey.IterableSideInput: ...

    @property
    def multimap_keys_side_input(self) -> StateKey.MultimapKeysSideInput: ...

    @property
    def multimap_keys_user_state(self) -> StateKey.MultimapKeysUserState: ...

    @property
    def multimap_user_state(self) -> StateKey.MultimapUserState: ...

    def __init__(self,
        *,
        runner : typing___Optional[StateKey.Runner] = None,
        multimap_side_input : typing___Optional[StateKey.MultimapSideInput] = None,
        bag_user_state : typing___Optional[StateKey.BagUserState] = None,
        iterable_side_input : typing___Optional[StateKey.IterableSideInput] = None,
        multimap_keys_side_input : typing___Optional[StateKey.MultimapKeysSideInput] = None,
        multimap_keys_user_state : typing___Optional[StateKey.MultimapKeysUserState] = None,
        multimap_user_state : typing___Optional[StateKey.MultimapUserState] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateKey: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateKey: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"bag_user_state",u"iterable_side_input",u"multimap_keys_side_input",u"multimap_keys_user_state",u"multimap_side_input",u"multimap_user_state",u"runner",u"type"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"bag_user_state",u"iterable_side_input",u"multimap_keys_side_input",u"multimap_keys_user_state",u"multimap_side_input",u"multimap_user_state",u"runner",u"type"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"bag_user_state",b"bag_user_state",u"iterable_side_input",b"iterable_side_input",u"multimap_keys_side_input",b"multimap_keys_side_input",u"multimap_keys_user_state",b"multimap_keys_user_state",u"multimap_side_input",b"multimap_side_input",u"multimap_user_state",b"multimap_user_state",u"runner",b"runner",u"type",b"type"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"bag_user_state",b"bag_user_state",u"iterable_side_input",b"iterable_side_input",u"multimap_keys_side_input",b"multimap_keys_side_input",u"multimap_keys_user_state",b"multimap_keys_user_state",u"multimap_side_input",b"multimap_side_input",u"multimap_user_state",b"multimap_user_state",u"runner",b"runner",u"type",b"type"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"type",b"type"]) -> typing_extensions___Literal["runner","multimap_side_input","bag_user_state","iterable_side_input","multimap_keys_side_input","multimap_keys_user_state","multimap_user_state"]: ...

class StateGetRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    continuation_token = ... # type: builtin___bytes

    def __init__(self,
        *,
        continuation_token : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateGetRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateGetRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"continuation_token"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"continuation_token",b"continuation_token"]) -> None: ...

class StateGetResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    continuation_token = ... # type: builtin___bytes
    data = ... # type: builtin___bytes

    def __init__(self,
        *,
        continuation_token : typing___Optional[builtin___bytes] = None,
        data : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateGetResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateGetResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"continuation_token",u"data"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"continuation_token",b"continuation_token",u"data",b"data"]) -> None: ...

class StateAppendRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    data = ... # type: builtin___bytes

    def __init__(self,
        *,
        data : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateAppendRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateAppendRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"data"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"data",b"data"]) -> None: ...

class StateAppendResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateAppendResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateAppendResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class StateClearRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateClearRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateClearRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class StateClearResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StateClearResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StateClearResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class LogEntry(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class List(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

        @property
        def log_entries(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[LogEntry]: ...

        def __init__(self,
            *,
            log_entries : typing___Optional[typing___Iterable[LogEntry]] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> LogEntry.List: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> LogEntry.List: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"log_entries"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"log_entries",b"log_entries"]) -> None: ...

    class Severity(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        class Enum(builtin___int):
            DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
            @classmethod
            def Name(cls, number: builtin___int) -> builtin___str: ...
            @classmethod
            def Value(cls, name: builtin___str) -> 'LogEntry.Severity.Enum': ...
            @classmethod
            def keys(cls) -> typing___List[builtin___str]: ...
            @classmethod
            def values(cls) -> typing___List['LogEntry.Severity.Enum']: ...
            @classmethod
            def items(cls) -> typing___List[typing___Tuple[builtin___str, 'LogEntry.Severity.Enum']]: ...
            UNSPECIFIED = typing___cast('LogEntry.Severity.Enum', 0)
            TRACE = typing___cast('LogEntry.Severity.Enum', 1)
            DEBUG = typing___cast('LogEntry.Severity.Enum', 2)
            INFO = typing___cast('LogEntry.Severity.Enum', 3)
            NOTICE = typing___cast('LogEntry.Severity.Enum', 4)
            WARN = typing___cast('LogEntry.Severity.Enum', 5)
            ERROR = typing___cast('LogEntry.Severity.Enum', 6)
            CRITICAL = typing___cast('LogEntry.Severity.Enum', 7)
        UNSPECIFIED = typing___cast('LogEntry.Severity.Enum', 0)
        TRACE = typing___cast('LogEntry.Severity.Enum', 1)
        DEBUG = typing___cast('LogEntry.Severity.Enum', 2)
        INFO = typing___cast('LogEntry.Severity.Enum', 3)
        NOTICE = typing___cast('LogEntry.Severity.Enum', 4)
        WARN = typing___cast('LogEntry.Severity.Enum', 5)
        ERROR = typing___cast('LogEntry.Severity.Enum', 6)
        CRITICAL = typing___cast('LogEntry.Severity.Enum', 7)


        def __init__(self,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> LogEntry.Severity: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> LogEntry.Severity: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

    severity = ... # type: LogEntry.Severity.Enum
    message = ... # type: typing___Text
    trace = ... # type: typing___Text
    instruction_id = ... # type: typing___Text
    transform_id = ... # type: typing___Text
    log_location = ... # type: typing___Text
    thread = ... # type: typing___Text

    @property
    def timestamp(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

    def __init__(self,
        *,
        severity : typing___Optional[LogEntry.Severity.Enum] = None,
        timestamp : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
        message : typing___Optional[typing___Text] = None,
        trace : typing___Optional[typing___Text] = None,
        instruction_id : typing___Optional[typing___Text] = None,
        transform_id : typing___Optional[typing___Text] = None,
        log_location : typing___Optional[typing___Text] = None,
        thread : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> LogEntry: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> LogEntry: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"timestamp"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id",u"log_location",u"message",u"severity",u"thread",u"timestamp",u"trace",u"transform_id"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"timestamp",b"timestamp"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"instruction_id",b"instruction_id",u"log_location",b"log_location",u"message",b"message",u"severity",b"severity",u"thread",b"thread",u"timestamp",b"timestamp",u"trace",b"trace",u"transform_id",b"transform_id"]) -> None: ...

class LogControl(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> LogControl: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> LogControl: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class StartWorkerRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class ParamsEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text
        value = ... # type: typing___Text

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[typing___Text] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> StartWorkerRequest.ParamsEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StartWorkerRequest.ParamsEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        if sys.version_info >= (3,):
            def ClearField(self, field_name: typing_extensions___Literal[u"key",u"value"]) -> None: ...
        else:
            def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    worker_id = ... # type: typing___Text

    @property
    def control_endpoint(self) -> org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor: ...

    @property
    def logging_endpoint(self) -> org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor: ...

    @property
    def artifact_endpoint(self) -> org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor: ...

    @property
    def provision_endpoint(self) -> org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor: ...

    @property
    def params(self) -> typing___MutableMapping[typing___Text, typing___Text]: ...

    def __init__(self,
        *,
        worker_id : typing___Optional[typing___Text] = None,
        control_endpoint : typing___Optional[org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor] = None,
        logging_endpoint : typing___Optional[org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor] = None,
        artifact_endpoint : typing___Optional[org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor] = None,
        provision_endpoint : typing___Optional[org___apache___beam___model___pipeline___v1___endpoints_pb2___ApiServiceDescriptor] = None,
        params : typing___Optional[typing___Mapping[typing___Text, typing___Text]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StartWorkerRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StartWorkerRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"artifact_endpoint",u"control_endpoint",u"logging_endpoint",u"provision_endpoint"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"artifact_endpoint",u"control_endpoint",u"logging_endpoint",u"params",u"provision_endpoint",u"worker_id"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"artifact_endpoint",b"artifact_endpoint",u"control_endpoint",b"control_endpoint",u"logging_endpoint",b"logging_endpoint",u"provision_endpoint",b"provision_endpoint"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"artifact_endpoint",b"artifact_endpoint",u"control_endpoint",b"control_endpoint",u"logging_endpoint",b"logging_endpoint",u"params",b"params",u"provision_endpoint",b"provision_endpoint",u"worker_id",b"worker_id"]) -> None: ...

class StartWorkerResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    error = ... # type: typing___Text

    def __init__(self,
        *,
        error : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StartWorkerResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StartWorkerResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"error"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"error",b"error"]) -> None: ...

class StopWorkerRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    worker_id = ... # type: typing___Text

    def __init__(self,
        *,
        worker_id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StopWorkerRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StopWorkerRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"worker_id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"worker_id",b"worker_id"]) -> None: ...

class StopWorkerResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    error = ... # type: typing___Text

    def __init__(self,
        *,
        error : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> StopWorkerResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> StopWorkerResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"error"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"error",b"error"]) -> None: ...

class WorkerStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    id = ... # type: typing___Text

    def __init__(self,
        *,
        id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> WorkerStatusRequest: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> WorkerStatusRequest: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"id"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"id",b"id"]) -> None: ...

class WorkerStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    id = ... # type: typing___Text
    error = ... # type: typing___Text
    status_info = ... # type: typing___Text

    def __init__(self,
        *,
        id : typing___Optional[typing___Text] = None,
        error : typing___Optional[typing___Text] = None,
        status_info : typing___Optional[typing___Text] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> WorkerStatusResponse: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> WorkerStatusResponse: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def ClearField(self, field_name: typing_extensions___Literal[u"error",u"id",u"status_info"]) -> None: ...
    else:
        def ClearField(self, field_name: typing_extensions___Literal[u"error",b"error",u"id",b"id",u"status_info",b"status_info"]) -> None: ...
