"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import shared_pb2
import sys
import typing

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

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

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

            STRUCTURED_FIELD_NUMBER: builtins.int
            STRING_FIELD_NUMBER: builtins.int
            @property
            def structured(self) -> shared_pb2.Empty: ...
            @property
            def string(self) -> shared_pb2.Empty: ...
            def __init__(
                self,
                *,
                structured: shared_pb2.Empty | None = ...,
                string: shared_pb2.Empty | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal["content", b"content", "string", b"string", "structured", b"structured"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal["content", b"content", "string", b"string", "structured", b"structured"]) -> None: ...
            def WhichOneof(self, oneof_group: typing_extensions.Literal["content", b"content"]) -> typing_extensions.Literal["structured", "string"] | None: ...

        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        ALL_FIELD_NUMBER: builtins.int
        GROUP_NAME_FIELD_NUMBER: builtins.int
        BUFFER_SIZE_FIELD_NUMBER: builtins.int
        UUID_OPTION_FIELD_NUMBER: builtins.int
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        @property
        def all(self) -> shared_pb2.Empty: ...
        group_name: builtins.str
        buffer_size: builtins.int
        @property
        def uuid_option(self) -> global___ReadReq.Options.UUIDOption: ...
        def __init__(
            self,
            *,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            all: shared_pb2.Empty | None = ...,
            group_name: builtins.str = ...,
            buffer_size: builtins.int = ...,
            uuid_option: global___ReadReq.Options.UUIDOption | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all", b"all", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option", "uuid_option", b"uuid_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all", b"all", "buffer_size", b"buffer_size", "group_name", b"group_name", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option", "uuid_option", b"uuid_option"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stream_option", b"stream_option"]) -> typing_extensions.Literal["stream_identifier", "all"] | None: ...

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

        ID_FIELD_NUMBER: builtins.int
        IDS_FIELD_NUMBER: builtins.int
        id: builtins.bytes
        @property
        def ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[shared_pb2.UUID]: ...
        def __init__(
            self,
            *,
            id: builtins.bytes = ...,
            ids: collections.abc.Iterable[shared_pb2.UUID] | None = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["id", b"id", "ids", b"ids"]) -> None: ...

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

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

        class _ActionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ReadReq.Nack._Action.ValueType], builtins.type):  # noqa: F821
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            Unknown: ReadReq.Nack._Action.ValueType  # 0
            Park: ReadReq.Nack._Action.ValueType  # 1
            Retry: ReadReq.Nack._Action.ValueType  # 2
            Skip: ReadReq.Nack._Action.ValueType  # 3
            Stop: ReadReq.Nack._Action.ValueType  # 4

        class Action(_Action, metaclass=_ActionEnumTypeWrapper): ...
        Unknown: ReadReq.Nack.Action.ValueType  # 0
        Park: ReadReq.Nack.Action.ValueType  # 1
        Retry: ReadReq.Nack.Action.ValueType  # 2
        Skip: ReadReq.Nack.Action.ValueType  # 3
        Stop: ReadReq.Nack.Action.ValueType  # 4

        ID_FIELD_NUMBER: builtins.int
        IDS_FIELD_NUMBER: builtins.int
        ACTION_FIELD_NUMBER: builtins.int
        REASON_FIELD_NUMBER: builtins.int
        id: builtins.bytes
        @property
        def ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[shared_pb2.UUID]: ...
        action: global___ReadReq.Nack.Action.ValueType
        reason: builtins.str
        def __init__(
            self,
            *,
            id: builtins.bytes = ...,
            ids: collections.abc.Iterable[shared_pb2.UUID] | None = ...,
            action: global___ReadReq.Nack.Action.ValueType = ...,
            reason: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "id", b"id", "ids", b"ids", "reason", b"reason"]) -> None: ...

    OPTIONS_FIELD_NUMBER: builtins.int
    ACK_FIELD_NUMBER: builtins.int
    NACK_FIELD_NUMBER: builtins.int
    @property
    def options(self) -> global___ReadReq.Options: ...
    @property
    def ack(self) -> global___ReadReq.Ack: ...
    @property
    def nack(self) -> global___ReadReq.Nack: ...
    def __init__(
        self,
        *,
        options: global___ReadReq.Options | None = ...,
        ack: global___ReadReq.Ack | None = ...,
        nack: global___ReadReq.Nack | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["ack", b"ack", "content", b"content", "nack", b"nack", "options", b"options"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ack", b"ack", "content", b"content", "nack", b"nack", "options", b"options"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["content", b"content"]) -> typing_extensions.Literal["options", "ack", "nack"] | None: ...

global___ReadReq = ReadReq

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

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

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

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

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

            ID_FIELD_NUMBER: builtins.int
            STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
            STREAM_REVISION_FIELD_NUMBER: builtins.int
            PREPARE_POSITION_FIELD_NUMBER: builtins.int
            COMMIT_POSITION_FIELD_NUMBER: builtins.int
            METADATA_FIELD_NUMBER: builtins.int
            CUSTOM_METADATA_FIELD_NUMBER: builtins.int
            DATA_FIELD_NUMBER: builtins.int
            @property
            def id(self) -> shared_pb2.UUID: ...
            @property
            def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
            stream_revision: builtins.int
            prepare_position: builtins.int
            commit_position: builtins.int
            @property
            def metadata(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
            custom_metadata: builtins.bytes
            data: builtins.bytes
            def __init__(
                self,
                *,
                id: shared_pb2.UUID | None = ...,
                stream_identifier: shared_pb2.StreamIdentifier | None = ...,
                stream_revision: builtins.int = ...,
                prepare_position: builtins.int = ...,
                commit_position: builtins.int = ...,
                metadata: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
                custom_metadata: builtins.bytes = ...,
                data: builtins.bytes = ...,
            ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal["id", b"id", "stream_identifier", b"stream_identifier"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal["commit_position", b"commit_position", "custom_metadata", b"custom_metadata", "data", b"data", "id", b"id", "metadata", b"metadata", "prepare_position", b"prepare_position", "stream_identifier", b"stream_identifier", "stream_revision", b"stream_revision"]) -> None: ...

        EVENT_FIELD_NUMBER: builtins.int
        LINK_FIELD_NUMBER: builtins.int
        COMMIT_POSITION_FIELD_NUMBER: builtins.int
        NO_POSITION_FIELD_NUMBER: builtins.int
        RETRY_COUNT_FIELD_NUMBER: builtins.int
        NO_RETRY_COUNT_FIELD_NUMBER: builtins.int
        @property
        def event(self) -> global___ReadResp.ReadEvent.RecordedEvent: ...
        @property
        def link(self) -> global___ReadResp.ReadEvent.RecordedEvent: ...
        commit_position: builtins.int
        @property
        def no_position(self) -> shared_pb2.Empty: ...
        retry_count: builtins.int
        @property
        def no_retry_count(self) -> shared_pb2.Empty: ...
        def __init__(
            self,
            *,
            event: global___ReadResp.ReadEvent.RecordedEvent | None = ...,
            link: global___ReadResp.ReadEvent.RecordedEvent | None = ...,
            commit_position: builtins.int = ...,
            no_position: shared_pb2.Empty | None = ...,
            retry_count: builtins.int = ...,
            no_retry_count: shared_pb2.Empty | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["commit_position", b"commit_position", "count", b"count", "event", b"event", "link", b"link", "no_position", b"no_position", "no_retry_count", b"no_retry_count", "position", b"position", "retry_count", b"retry_count"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["commit_position", b"commit_position", "count", b"count", "event", b"event", "link", b"link", "no_position", b"no_position", "no_retry_count", b"no_retry_count", "position", b"position", "retry_count", b"retry_count"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["count", b"count"]) -> typing_extensions.Literal["retry_count", "no_retry_count"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["position", b"position"]) -> typing_extensions.Literal["commit_position", "no_position"] | None: ...

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

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

    EVENT_FIELD_NUMBER: builtins.int
    SUBSCRIPTION_CONFIRMATION_FIELD_NUMBER: builtins.int
    @property
    def event(self) -> global___ReadResp.ReadEvent: ...
    @property
    def subscription_confirmation(self) -> global___ReadResp.SubscriptionConfirmation: ...
    def __init__(
        self,
        *,
        event: global___ReadResp.ReadEvent | None = ...,
        subscription_confirmation: global___ReadResp.SubscriptionConfirmation | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["content", b"content", "event", b"event", "subscription_confirmation", b"subscription_confirmation"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["content", b"content", "event", b"event", "subscription_confirmation", b"subscription_confirmation"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["content", b"content"]) -> typing_extensions.Literal["event", "subscription_confirmation"] | None: ...

global___ReadResp = ReadResp

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

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

    class _ConsumerStrategyEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[CreateReq._ConsumerStrategy.ValueType], builtins.type):  # noqa: F821
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        DispatchToSingle: CreateReq._ConsumerStrategy.ValueType  # 0
        RoundRobin: CreateReq._ConsumerStrategy.ValueType  # 1
        Pinned: CreateReq._ConsumerStrategy.ValueType  # 2

    class ConsumerStrategy(_ConsumerStrategy, metaclass=_ConsumerStrategyEnumTypeWrapper): ...
    DispatchToSingle: CreateReq.ConsumerStrategy.ValueType  # 0
    RoundRobin: CreateReq.ConsumerStrategy.ValueType  # 1
    Pinned: CreateReq.ConsumerStrategy.ValueType  # 2

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

        STREAM_FIELD_NUMBER: builtins.int
        ALL_FIELD_NUMBER: builtins.int
        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        GROUP_NAME_FIELD_NUMBER: builtins.int
        SETTINGS_FIELD_NUMBER: builtins.int
        @property
        def stream(self) -> global___CreateReq.StreamOptions: ...
        @property
        def all(self) -> global___CreateReq.AllOptions: ...
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        group_name: builtins.str
        @property
        def settings(self) -> global___CreateReq.Settings: ...
        def __init__(
            self,
            *,
            stream: global___CreateReq.StreamOptions | None = ...,
            all: global___CreateReq.AllOptions | None = ...,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            group_name: builtins.str = ...,
            settings: global___CreateReq.Settings | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all", b"all", "settings", b"settings", "stream", b"stream", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all", b"all", "group_name", b"group_name", "settings", b"settings", "stream", b"stream", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stream_option", b"stream_option"]) -> typing_extensions.Literal["stream", "all"] | None: ...

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

        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        REVISION_FIELD_NUMBER: builtins.int
        START_FIELD_NUMBER: builtins.int
        END_FIELD_NUMBER: builtins.int
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        revision: builtins.int
        @property
        def start(self) -> shared_pb2.Empty: ...
        @property
        def end(self) -> shared_pb2.Empty: ...
        def __init__(
            self,
            *,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            revision: builtins.int = ...,
            start: shared_pb2.Empty | None = ...,
            end: shared_pb2.Empty | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["end", b"end", "revision", b"revision", "revision_option", b"revision_option", "start", b"start", "stream_identifier", b"stream_identifier"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["end", b"end", "revision", b"revision", "revision_option", b"revision_option", "start", b"start", "stream_identifier", b"stream_identifier"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["revision_option", b"revision_option"]) -> typing_extensions.Literal["revision", "start", "end"] | None: ...

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

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

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

                REGEX_FIELD_NUMBER: builtins.int
                PREFIX_FIELD_NUMBER: builtins.int
                regex: builtins.str
                @property
                def prefix(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
                def __init__(
                    self,
                    *,
                    regex: builtins.str = ...,
                    prefix: collections.abc.Iterable[builtins.str] | None = ...,
                ) -> None: ...
                def ClearField(self, field_name: typing_extensions.Literal["prefix", b"prefix", "regex", b"regex"]) -> None: ...

            STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
            EVENT_TYPE_FIELD_NUMBER: builtins.int
            MAX_FIELD_NUMBER: builtins.int
            COUNT_FIELD_NUMBER: builtins.int
            CHECKPOINTINTERVALMULTIPLIER_FIELD_NUMBER: builtins.int
            @property
            def stream_identifier(self) -> global___CreateReq.AllOptions.FilterOptions.Expression: ...
            @property
            def event_type(self) -> global___CreateReq.AllOptions.FilterOptions.Expression: ...
            max: builtins.int
            @property
            def count(self) -> shared_pb2.Empty: ...
            checkpointIntervalMultiplier: builtins.int
            def __init__(
                self,
                *,
                stream_identifier: global___CreateReq.AllOptions.FilterOptions.Expression | None = ...,
                event_type: global___CreateReq.AllOptions.FilterOptions.Expression | None = ...,
                max: builtins.int = ...,
                count: shared_pb2.Empty | None = ...,
                checkpointIntervalMultiplier: builtins.int = ...,
            ) -> None: ...
            def HasField(self, field_name: typing_extensions.Literal["count", b"count", "event_type", b"event_type", "filter", b"filter", "max", b"max", "stream_identifier", b"stream_identifier", "window", b"window"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing_extensions.Literal["checkpointIntervalMultiplier", b"checkpointIntervalMultiplier", "count", b"count", "event_type", b"event_type", "filter", b"filter", "max", b"max", "stream_identifier", b"stream_identifier", "window", b"window"]) -> None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal["filter", b"filter"]) -> typing_extensions.Literal["stream_identifier", "event_type"] | None: ...
            @typing.overload
            def WhichOneof(self, oneof_group: typing_extensions.Literal["window", b"window"]) -> typing_extensions.Literal["max", "count"] | None: ...

        POSITION_FIELD_NUMBER: builtins.int
        START_FIELD_NUMBER: builtins.int
        END_FIELD_NUMBER: builtins.int
        FILTER_FIELD_NUMBER: builtins.int
        NO_FILTER_FIELD_NUMBER: builtins.int
        @property
        def position(self) -> global___CreateReq.Position: ...
        @property
        def start(self) -> shared_pb2.Empty: ...
        @property
        def end(self) -> shared_pb2.Empty: ...
        @property
        def filter(self) -> global___CreateReq.AllOptions.FilterOptions: ...
        @property
        def no_filter(self) -> shared_pb2.Empty: ...
        def __init__(
            self,
            *,
            position: global___CreateReq.Position | None = ...,
            start: shared_pb2.Empty | None = ...,
            end: shared_pb2.Empty | None = ...,
            filter: global___CreateReq.AllOptions.FilterOptions | None = ...,
            no_filter: shared_pb2.Empty | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all_option", b"all_option", "end", b"end", "filter", b"filter", "filter_option", b"filter_option", "no_filter", b"no_filter", "position", b"position", "start", b"start"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all_option", b"all_option", "end", b"end", "filter", b"filter", "filter_option", b"filter_option", "no_filter", b"no_filter", "position", b"position", "start", b"start"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["all_option", b"all_option"]) -> typing_extensions.Literal["position", "start", "end"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["filter_option", b"filter_option"]) -> typing_extensions.Literal["filter", "no_filter"] | None: ...

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

        COMMIT_POSITION_FIELD_NUMBER: builtins.int
        PREPARE_POSITION_FIELD_NUMBER: builtins.int
        commit_position: builtins.int
        prepare_position: builtins.int
        def __init__(
            self,
            *,
            commit_position: builtins.int = ...,
            prepare_position: builtins.int = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["commit_position", b"commit_position", "prepare_position", b"prepare_position"]) -> None: ...

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

        RESOLVE_LINKS_FIELD_NUMBER: builtins.int
        REVISION_FIELD_NUMBER: builtins.int
        EXTRA_STATISTICS_FIELD_NUMBER: builtins.int
        MAX_RETRY_COUNT_FIELD_NUMBER: builtins.int
        MIN_CHECKPOINT_COUNT_FIELD_NUMBER: builtins.int
        MAX_CHECKPOINT_COUNT_FIELD_NUMBER: builtins.int
        MAX_SUBSCRIBER_COUNT_FIELD_NUMBER: builtins.int
        LIVE_BUFFER_SIZE_FIELD_NUMBER: builtins.int
        READ_BATCH_SIZE_FIELD_NUMBER: builtins.int
        HISTORY_BUFFER_SIZE_FIELD_NUMBER: builtins.int
        NAMED_CONSUMER_STRATEGY_FIELD_NUMBER: builtins.int
        MESSAGE_TIMEOUT_TICKS_FIELD_NUMBER: builtins.int
        MESSAGE_TIMEOUT_MS_FIELD_NUMBER: builtins.int
        CHECKPOINT_AFTER_TICKS_FIELD_NUMBER: builtins.int
        CHECKPOINT_AFTER_MS_FIELD_NUMBER: builtins.int
        CONSUMER_STRATEGY_FIELD_NUMBER: builtins.int
        resolve_links: builtins.bool
        revision: builtins.int
        extra_statistics: builtins.bool
        max_retry_count: builtins.int
        min_checkpoint_count: builtins.int
        max_checkpoint_count: builtins.int
        max_subscriber_count: builtins.int
        live_buffer_size: builtins.int
        read_batch_size: builtins.int
        history_buffer_size: builtins.int
        named_consumer_strategy: global___CreateReq.ConsumerStrategy.ValueType
        message_timeout_ticks: builtins.int
        message_timeout_ms: builtins.int
        checkpoint_after_ticks: builtins.int
        checkpoint_after_ms: builtins.int
        consumer_strategy: builtins.str
        def __init__(
            self,
            *,
            resolve_links: builtins.bool = ...,
            revision: builtins.int = ...,
            extra_statistics: builtins.bool = ...,
            max_retry_count: builtins.int = ...,
            min_checkpoint_count: builtins.int = ...,
            max_checkpoint_count: builtins.int = ...,
            max_subscriber_count: builtins.int = ...,
            live_buffer_size: builtins.int = ...,
            read_batch_size: builtins.int = ...,
            history_buffer_size: builtins.int = ...,
            named_consumer_strategy: global___CreateReq.ConsumerStrategy.ValueType = ...,
            message_timeout_ticks: builtins.int = ...,
            message_timeout_ms: builtins.int = ...,
            checkpoint_after_ticks: builtins.int = ...,
            checkpoint_after_ms: builtins.int = ...,
            consumer_strategy: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["checkpoint_after", b"checkpoint_after", "checkpoint_after_ms", b"checkpoint_after_ms", "checkpoint_after_ticks", b"checkpoint_after_ticks", "message_timeout", b"message_timeout", "message_timeout_ms", b"message_timeout_ms", "message_timeout_ticks", b"message_timeout_ticks"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["checkpoint_after", b"checkpoint_after", "checkpoint_after_ms", b"checkpoint_after_ms", "checkpoint_after_ticks", b"checkpoint_after_ticks", "consumer_strategy", b"consumer_strategy", "extra_statistics", b"extra_statistics", "history_buffer_size", b"history_buffer_size", "live_buffer_size", b"live_buffer_size", "max_checkpoint_count", b"max_checkpoint_count", "max_retry_count", b"max_retry_count", "max_subscriber_count", b"max_subscriber_count", "message_timeout", b"message_timeout", "message_timeout_ms", b"message_timeout_ms", "message_timeout_ticks", b"message_timeout_ticks", "min_checkpoint_count", b"min_checkpoint_count", "named_consumer_strategy", b"named_consumer_strategy", "read_batch_size", b"read_batch_size", "resolve_links", b"resolve_links", "revision", b"revision"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["checkpoint_after", b"checkpoint_after"]) -> typing_extensions.Literal["checkpoint_after_ticks", "checkpoint_after_ms"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["message_timeout", b"message_timeout"]) -> typing_extensions.Literal["message_timeout_ticks", "message_timeout_ms"] | None: ...

    OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def options(self) -> global___CreateReq.Options: ...
    def __init__(
        self,
        *,
        options: global___CreateReq.Options | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["options", b"options"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["options", b"options"]) -> None: ...

global___CreateReq = CreateReq

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

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

global___CreateResp = CreateResp

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

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

    class _ConsumerStrategyEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[UpdateReq._ConsumerStrategy.ValueType], builtins.type):  # noqa: F821
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        DispatchToSingle: UpdateReq._ConsumerStrategy.ValueType  # 0
        RoundRobin: UpdateReq._ConsumerStrategy.ValueType  # 1
        Pinned: UpdateReq._ConsumerStrategy.ValueType  # 2

    class ConsumerStrategy(_ConsumerStrategy, metaclass=_ConsumerStrategyEnumTypeWrapper): ...
    DispatchToSingle: UpdateReq.ConsumerStrategy.ValueType  # 0
    RoundRobin: UpdateReq.ConsumerStrategy.ValueType  # 1
    Pinned: UpdateReq.ConsumerStrategy.ValueType  # 2

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

        STREAM_FIELD_NUMBER: builtins.int
        ALL_FIELD_NUMBER: builtins.int
        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        GROUP_NAME_FIELD_NUMBER: builtins.int
        SETTINGS_FIELD_NUMBER: builtins.int
        @property
        def stream(self) -> global___UpdateReq.StreamOptions: ...
        @property
        def all(self) -> global___UpdateReq.AllOptions: ...
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        group_name: builtins.str
        @property
        def settings(self) -> global___UpdateReq.Settings: ...
        def __init__(
            self,
            *,
            stream: global___UpdateReq.StreamOptions | None = ...,
            all: global___UpdateReq.AllOptions | None = ...,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            group_name: builtins.str = ...,
            settings: global___UpdateReq.Settings | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all", b"all", "settings", b"settings", "stream", b"stream", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all", b"all", "group_name", b"group_name", "settings", b"settings", "stream", b"stream", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stream_option", b"stream_option"]) -> typing_extensions.Literal["stream", "all"] | None: ...

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

        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        REVISION_FIELD_NUMBER: builtins.int
        START_FIELD_NUMBER: builtins.int
        END_FIELD_NUMBER: builtins.int
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        revision: builtins.int
        @property
        def start(self) -> shared_pb2.Empty: ...
        @property
        def end(self) -> shared_pb2.Empty: ...
        def __init__(
            self,
            *,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            revision: builtins.int = ...,
            start: shared_pb2.Empty | None = ...,
            end: shared_pb2.Empty | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["end", b"end", "revision", b"revision", "revision_option", b"revision_option", "start", b"start", "stream_identifier", b"stream_identifier"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["end", b"end", "revision", b"revision", "revision_option", b"revision_option", "start", b"start", "stream_identifier", b"stream_identifier"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["revision_option", b"revision_option"]) -> typing_extensions.Literal["revision", "start", "end"] | None: ...

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

        POSITION_FIELD_NUMBER: builtins.int
        START_FIELD_NUMBER: builtins.int
        END_FIELD_NUMBER: builtins.int
        @property
        def position(self) -> global___UpdateReq.Position: ...
        @property
        def start(self) -> shared_pb2.Empty: ...
        @property
        def end(self) -> shared_pb2.Empty: ...
        def __init__(
            self,
            *,
            position: global___UpdateReq.Position | None = ...,
            start: shared_pb2.Empty | None = ...,
            end: shared_pb2.Empty | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all_option", b"all_option", "end", b"end", "position", b"position", "start", b"start"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all_option", b"all_option", "end", b"end", "position", b"position", "start", b"start"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["all_option", b"all_option"]) -> typing_extensions.Literal["position", "start", "end"] | None: ...

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

        COMMIT_POSITION_FIELD_NUMBER: builtins.int
        PREPARE_POSITION_FIELD_NUMBER: builtins.int
        commit_position: builtins.int
        prepare_position: builtins.int
        def __init__(
            self,
            *,
            commit_position: builtins.int = ...,
            prepare_position: builtins.int = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["commit_position", b"commit_position", "prepare_position", b"prepare_position"]) -> None: ...

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

        RESOLVE_LINKS_FIELD_NUMBER: builtins.int
        REVISION_FIELD_NUMBER: builtins.int
        EXTRA_STATISTICS_FIELD_NUMBER: builtins.int
        MAX_RETRY_COUNT_FIELD_NUMBER: builtins.int
        MIN_CHECKPOINT_COUNT_FIELD_NUMBER: builtins.int
        MAX_CHECKPOINT_COUNT_FIELD_NUMBER: builtins.int
        MAX_SUBSCRIBER_COUNT_FIELD_NUMBER: builtins.int
        LIVE_BUFFER_SIZE_FIELD_NUMBER: builtins.int
        READ_BATCH_SIZE_FIELD_NUMBER: builtins.int
        HISTORY_BUFFER_SIZE_FIELD_NUMBER: builtins.int
        NAMED_CONSUMER_STRATEGY_FIELD_NUMBER: builtins.int
        MESSAGE_TIMEOUT_TICKS_FIELD_NUMBER: builtins.int
        MESSAGE_TIMEOUT_MS_FIELD_NUMBER: builtins.int
        CHECKPOINT_AFTER_TICKS_FIELD_NUMBER: builtins.int
        CHECKPOINT_AFTER_MS_FIELD_NUMBER: builtins.int
        resolve_links: builtins.bool
        revision: builtins.int
        extra_statistics: builtins.bool
        max_retry_count: builtins.int
        min_checkpoint_count: builtins.int
        max_checkpoint_count: builtins.int
        max_subscriber_count: builtins.int
        live_buffer_size: builtins.int
        read_batch_size: builtins.int
        history_buffer_size: builtins.int
        named_consumer_strategy: global___UpdateReq.ConsumerStrategy.ValueType
        message_timeout_ticks: builtins.int
        message_timeout_ms: builtins.int
        checkpoint_after_ticks: builtins.int
        checkpoint_after_ms: builtins.int
        def __init__(
            self,
            *,
            resolve_links: builtins.bool = ...,
            revision: builtins.int = ...,
            extra_statistics: builtins.bool = ...,
            max_retry_count: builtins.int = ...,
            min_checkpoint_count: builtins.int = ...,
            max_checkpoint_count: builtins.int = ...,
            max_subscriber_count: builtins.int = ...,
            live_buffer_size: builtins.int = ...,
            read_batch_size: builtins.int = ...,
            history_buffer_size: builtins.int = ...,
            named_consumer_strategy: global___UpdateReq.ConsumerStrategy.ValueType = ...,
            message_timeout_ticks: builtins.int = ...,
            message_timeout_ms: builtins.int = ...,
            checkpoint_after_ticks: builtins.int = ...,
            checkpoint_after_ms: builtins.int = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["checkpoint_after", b"checkpoint_after", "checkpoint_after_ms", b"checkpoint_after_ms", "checkpoint_after_ticks", b"checkpoint_after_ticks", "message_timeout", b"message_timeout", "message_timeout_ms", b"message_timeout_ms", "message_timeout_ticks", b"message_timeout_ticks"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["checkpoint_after", b"checkpoint_after", "checkpoint_after_ms", b"checkpoint_after_ms", "checkpoint_after_ticks", b"checkpoint_after_ticks", "extra_statistics", b"extra_statistics", "history_buffer_size", b"history_buffer_size", "live_buffer_size", b"live_buffer_size", "max_checkpoint_count", b"max_checkpoint_count", "max_retry_count", b"max_retry_count", "max_subscriber_count", b"max_subscriber_count", "message_timeout", b"message_timeout", "message_timeout_ms", b"message_timeout_ms", "message_timeout_ticks", b"message_timeout_ticks", "min_checkpoint_count", b"min_checkpoint_count", "named_consumer_strategy", b"named_consumer_strategy", "read_batch_size", b"read_batch_size", "resolve_links", b"resolve_links", "revision", b"revision"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["checkpoint_after", b"checkpoint_after"]) -> typing_extensions.Literal["checkpoint_after_ticks", "checkpoint_after_ms"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["message_timeout", b"message_timeout"]) -> typing_extensions.Literal["message_timeout_ticks", "message_timeout_ms"] | None: ...

    OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def options(self) -> global___UpdateReq.Options: ...
    def __init__(
        self,
        *,
        options: global___UpdateReq.Options | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["options", b"options"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["options", b"options"]) -> None: ...

global___UpdateReq = UpdateReq

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

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

global___UpdateResp = UpdateResp

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

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

        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        ALL_FIELD_NUMBER: builtins.int
        GROUP_NAME_FIELD_NUMBER: builtins.int
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        @property
        def all(self) -> shared_pb2.Empty: ...
        group_name: builtins.str
        def __init__(
            self,
            *,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            all: shared_pb2.Empty | None = ...,
            group_name: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all", b"all", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all", b"all", "group_name", b"group_name", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stream_option", b"stream_option"]) -> typing_extensions.Literal["stream_identifier", "all"] | None: ...

    OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def options(self) -> global___DeleteReq.Options: ...
    def __init__(
        self,
        *,
        options: global___DeleteReq.Options | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["options", b"options"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["options", b"options"]) -> None: ...

global___DeleteReq = DeleteReq

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

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

global___DeleteResp = DeleteResp

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

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

        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        ALL_FIELD_NUMBER: builtins.int
        GROUP_NAME_FIELD_NUMBER: builtins.int
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        @property
        def all(self) -> shared_pb2.Empty: ...
        group_name: builtins.str
        def __init__(
            self,
            *,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            all: shared_pb2.Empty | None = ...,
            group_name: builtins.str = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all", b"all", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all", b"all", "group_name", b"group_name", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stream_option", b"stream_option"]) -> typing_extensions.Literal["stream_identifier", "all"] | None: ...

    OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def options(self) -> global___GetInfoReq.Options: ...
    def __init__(
        self,
        *,
        options: global___GetInfoReq.Options | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["options", b"options"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["options", b"options"]) -> None: ...

global___GetInfoReq = GetInfoReq

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

    SUBSCRIPTION_INFO_FIELD_NUMBER: builtins.int
    @property
    def subscription_info(self) -> global___SubscriptionInfo: ...
    def __init__(
        self,
        *,
        subscription_info: global___SubscriptionInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["subscription_info", b"subscription_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["subscription_info", b"subscription_info"]) -> None: ...

global___GetInfoResp = GetInfoResp

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

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

        FROM_FIELD_NUMBER: builtins.int
        USERNAME_FIELD_NUMBER: builtins.int
        AVERAGE_ITEMS_PER_SECOND_FIELD_NUMBER: builtins.int
        TOTAL_ITEMS_FIELD_NUMBER: builtins.int
        COUNT_SINCE_LAST_MEASUREMENT_FIELD_NUMBER: builtins.int
        OBSERVED_MEASUREMENTS_FIELD_NUMBER: builtins.int
        AVAILABLE_SLOTS_FIELD_NUMBER: builtins.int
        IN_FLIGHT_MESSAGES_FIELD_NUMBER: builtins.int
        CONNECTION_NAME_FIELD_NUMBER: builtins.int
        username: builtins.str
        average_items_per_second: builtins.int
        total_items: builtins.int
        count_since_last_measurement: builtins.int
        @property
        def observed_measurements(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubscriptionInfo.Measurement]: ...
        available_slots: builtins.int
        in_flight_messages: builtins.int
        connection_name: builtins.str
        def __init__(
            self,
            *,
            username: builtins.str = ...,
            average_items_per_second: builtins.int = ...,
            total_items: builtins.int = ...,
            count_since_last_measurement: builtins.int = ...,
            observed_measurements: collections.abc.Iterable[global___SubscriptionInfo.Measurement] | None = ...,
            available_slots: builtins.int = ...,
            in_flight_messages: builtins.int = ...,
            connection_name: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["available_slots", b"available_slots", "average_items_per_second", b"average_items_per_second", "connection_name", b"connection_name", "count_since_last_measurement", b"count_since_last_measurement", "from", b"from", "in_flight_messages", b"in_flight_messages", "observed_measurements", b"observed_measurements", "total_items", b"total_items", "username", b"username"]) -> None: ...

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

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

    EVENT_SOURCE_FIELD_NUMBER: builtins.int
    GROUP_NAME_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    CONNECTIONS_FIELD_NUMBER: builtins.int
    AVERAGE_PER_SECOND_FIELD_NUMBER: builtins.int
    TOTAL_ITEMS_FIELD_NUMBER: builtins.int
    COUNT_SINCE_LAST_MEASUREMENT_FIELD_NUMBER: builtins.int
    LAST_CHECKPOINTED_EVENT_POSITION_FIELD_NUMBER: builtins.int
    LAST_KNOWN_EVENT_POSITION_FIELD_NUMBER: builtins.int
    RESOLVE_LINK_TOS_FIELD_NUMBER: builtins.int
    START_FROM_FIELD_NUMBER: builtins.int
    MESSAGE_TIMEOUT_MILLISECONDS_FIELD_NUMBER: builtins.int
    EXTRA_STATISTICS_FIELD_NUMBER: builtins.int
    MAX_RETRY_COUNT_FIELD_NUMBER: builtins.int
    LIVE_BUFFER_SIZE_FIELD_NUMBER: builtins.int
    BUFFER_SIZE_FIELD_NUMBER: builtins.int
    READ_BATCH_SIZE_FIELD_NUMBER: builtins.int
    CHECK_POINT_AFTER_MILLISECONDS_FIELD_NUMBER: builtins.int
    MIN_CHECK_POINT_COUNT_FIELD_NUMBER: builtins.int
    MAX_CHECK_POINT_COUNT_FIELD_NUMBER: builtins.int
    READ_BUFFER_COUNT_FIELD_NUMBER: builtins.int
    LIVE_BUFFER_COUNT_FIELD_NUMBER: builtins.int
    RETRY_BUFFER_COUNT_FIELD_NUMBER: builtins.int
    TOTAL_IN_FLIGHT_MESSAGES_FIELD_NUMBER: builtins.int
    OUTSTANDING_MESSAGES_COUNT_FIELD_NUMBER: builtins.int
    NAMED_CONSUMER_STRATEGY_FIELD_NUMBER: builtins.int
    MAX_SUBSCRIBER_COUNT_FIELD_NUMBER: builtins.int
    PARKED_MESSAGE_COUNT_FIELD_NUMBER: builtins.int
    event_source: builtins.str
    group_name: builtins.str
    status: builtins.str
    @property
    def connections(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubscriptionInfo.ConnectionInfo]: ...
    average_per_second: builtins.int
    total_items: builtins.int
    count_since_last_measurement: builtins.int
    last_checkpointed_event_position: builtins.str
    last_known_event_position: builtins.str
    resolve_link_tos: builtins.bool
    start_from: builtins.str
    message_timeout_milliseconds: builtins.int
    extra_statistics: builtins.bool
    max_retry_count: builtins.int
    live_buffer_size: builtins.int
    buffer_size: builtins.int
    read_batch_size: builtins.int
    check_point_after_milliseconds: builtins.int
    min_check_point_count: builtins.int
    max_check_point_count: builtins.int
    read_buffer_count: builtins.int
    live_buffer_count: builtins.int
    retry_buffer_count: builtins.int
    total_in_flight_messages: builtins.int
    outstanding_messages_count: builtins.int
    named_consumer_strategy: builtins.str
    max_subscriber_count: builtins.int
    parked_message_count: builtins.int
    def __init__(
        self,
        *,
        event_source: builtins.str = ...,
        group_name: builtins.str = ...,
        status: builtins.str = ...,
        connections: collections.abc.Iterable[global___SubscriptionInfo.ConnectionInfo] | None = ...,
        average_per_second: builtins.int = ...,
        total_items: builtins.int = ...,
        count_since_last_measurement: builtins.int = ...,
        last_checkpointed_event_position: builtins.str = ...,
        last_known_event_position: builtins.str = ...,
        resolve_link_tos: builtins.bool = ...,
        start_from: builtins.str = ...,
        message_timeout_milliseconds: builtins.int = ...,
        extra_statistics: builtins.bool = ...,
        max_retry_count: builtins.int = ...,
        live_buffer_size: builtins.int = ...,
        buffer_size: builtins.int = ...,
        read_batch_size: builtins.int = ...,
        check_point_after_milliseconds: builtins.int = ...,
        min_check_point_count: builtins.int = ...,
        max_check_point_count: builtins.int = ...,
        read_buffer_count: builtins.int = ...,
        live_buffer_count: builtins.int = ...,
        retry_buffer_count: builtins.int = ...,
        total_in_flight_messages: builtins.int = ...,
        outstanding_messages_count: builtins.int = ...,
        named_consumer_strategy: builtins.str = ...,
        max_subscriber_count: builtins.int = ...,
        parked_message_count: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["average_per_second", b"average_per_second", "buffer_size", b"buffer_size", "check_point_after_milliseconds", b"check_point_after_milliseconds", "connections", b"connections", "count_since_last_measurement", b"count_since_last_measurement", "event_source", b"event_source", "extra_statistics", b"extra_statistics", "group_name", b"group_name", "last_checkpointed_event_position", b"last_checkpointed_event_position", "last_known_event_position", b"last_known_event_position", "live_buffer_count", b"live_buffer_count", "live_buffer_size", b"live_buffer_size", "max_check_point_count", b"max_check_point_count", "max_retry_count", b"max_retry_count", "max_subscriber_count", b"max_subscriber_count", "message_timeout_milliseconds", b"message_timeout_milliseconds", "min_check_point_count", b"min_check_point_count", "named_consumer_strategy", b"named_consumer_strategy", "outstanding_messages_count", b"outstanding_messages_count", "parked_message_count", b"parked_message_count", "read_batch_size", b"read_batch_size", "read_buffer_count", b"read_buffer_count", "resolve_link_tos", b"resolve_link_tos", "retry_buffer_count", b"retry_buffer_count", "start_from", b"start_from", "status", b"status", "total_in_flight_messages", b"total_in_flight_messages", "total_items", b"total_items"]) -> None: ...

global___SubscriptionInfo = SubscriptionInfo

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

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

        GROUP_NAME_FIELD_NUMBER: builtins.int
        STREAM_IDENTIFIER_FIELD_NUMBER: builtins.int
        ALL_FIELD_NUMBER: builtins.int
        STOP_AT_FIELD_NUMBER: builtins.int
        NO_LIMIT_FIELD_NUMBER: builtins.int
        group_name: builtins.str
        @property
        def stream_identifier(self) -> shared_pb2.StreamIdentifier: ...
        @property
        def all(self) -> shared_pb2.Empty: ...
        stop_at: builtins.int
        @property
        def no_limit(self) -> shared_pb2.Empty: ...
        def __init__(
            self,
            *,
            group_name: builtins.str = ...,
            stream_identifier: shared_pb2.StreamIdentifier | None = ...,
            all: shared_pb2.Empty | None = ...,
            stop_at: builtins.int = ...,
            no_limit: shared_pb2.Empty | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all", b"all", "no_limit", b"no_limit", "stop_at", b"stop_at", "stop_at_option", b"stop_at_option", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all", b"all", "group_name", b"group_name", "no_limit", b"no_limit", "stop_at", b"stop_at", "stop_at_option", b"stop_at_option", "stream_identifier", b"stream_identifier", "stream_option", b"stream_option"]) -> None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stop_at_option", b"stop_at_option"]) -> typing_extensions.Literal["stop_at", "no_limit"] | None: ...
        @typing.overload
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stream_option", b"stream_option"]) -> typing_extensions.Literal["stream_identifier", "all"] | None: ...

    OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def options(self) -> global___ReplayParkedReq.Options: ...
    def __init__(
        self,
        *,
        options: global___ReplayParkedReq.Options | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["options", b"options"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["options", b"options"]) -> None: ...

global___ReplayParkedReq = ReplayParkedReq

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

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

global___ReplayParkedResp = ReplayParkedResp

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

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

        LIST_ALL_SUBSCRIPTIONS_FIELD_NUMBER: builtins.int
        LIST_FOR_STREAM_FIELD_NUMBER: builtins.int
        @property
        def list_all_subscriptions(self) -> shared_pb2.Empty: ...
        @property
        def list_for_stream(self) -> global___ListReq.StreamOption: ...
        def __init__(
            self,
            *,
            list_all_subscriptions: shared_pb2.Empty | None = ...,
            list_for_stream: global___ListReq.StreamOption | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["list_all_subscriptions", b"list_all_subscriptions", "list_for_stream", b"list_for_stream", "list_option", b"list_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["list_all_subscriptions", b"list_all_subscriptions", "list_for_stream", b"list_for_stream", "list_option", b"list_option"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["list_option", b"list_option"]) -> typing_extensions.Literal["list_all_subscriptions", "list_for_stream"] | None: ...

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

        STREAM_FIELD_NUMBER: builtins.int
        ALL_FIELD_NUMBER: builtins.int
        @property
        def stream(self) -> shared_pb2.StreamIdentifier: ...
        @property
        def all(self) -> shared_pb2.Empty: ...
        def __init__(
            self,
            *,
            stream: shared_pb2.StreamIdentifier | None = ...,
            all: shared_pb2.Empty | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["all", b"all", "stream", b"stream", "stream_option", b"stream_option"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["all", b"all", "stream", b"stream", "stream_option", b"stream_option"]) -> None: ...
        def WhichOneof(self, oneof_group: typing_extensions.Literal["stream_option", b"stream_option"]) -> typing_extensions.Literal["stream", "all"] | None: ...

    OPTIONS_FIELD_NUMBER: builtins.int
    @property
    def options(self) -> global___ListReq.Options: ...
    def __init__(
        self,
        *,
        options: global___ListReq.Options | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["options", b"options"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["options", b"options"]) -> None: ...

global___ListReq = ListReq

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

    SUBSCRIPTIONS_FIELD_NUMBER: builtins.int
    @property
    def subscriptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubscriptionInfo]: ...
    def __init__(
        self,
        *,
        subscriptions: collections.abc.Iterable[global___SubscriptionInfo] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["subscriptions", b"subscriptions"]) -> None: ...

global___ListResp = ListResp
