"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
*!
Copyright (c) Streamlit Inc. (2018-2022) Snowflake Inc. (2022-2026)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""

from collections import abc as _abc
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf.internal import containers as _containers
import builtins as _builtins
import sys
import typing as _typing

if sys.version_info >= (3, 11):
    from typing import TypeAlias as _TypeAlias, Never as _Never
else:
    from typing_extensions import TypeAlias as _TypeAlias, Never as _Never

DESCRIPTOR: _descriptor.FileDescriptor

@_typing.final
class Help(_message.Message):
    """Help element - displays documentation and other information for a given object."""

    DESCRIPTOR: _descriptor.Descriptor

    DOC_STRING_FIELD_NUMBER: _builtins.int
    TYPE_FIELD_NUMBER: _builtins.int
    NAME_FIELD_NUMBER: _builtins.int
    VALUE_FIELD_NUMBER: _builtins.int
    MEMBERS_FIELD_NUMBER: _builtins.int
    doc_string: _builtins.str
    """The doc string."""
    type: _builtins.str
    """The type of the object."""
    name: _builtins.str
    """The name the user gave to the variable holding this object."""
    value: _builtins.str
    """A string representation of this object's value."""
    @_builtins.property
    def members(self) -> _containers.RepeatedCompositeFieldContainer[Global___Member]:
        """List of this object's methods and member variables."""

    def __init__(
        self,
        *,
        doc_string: _builtins.str = ...,
        type: _builtins.str = ...,
        name: _builtins.str = ...,
        value: _builtins.str = ...,
        members: _abc.Iterable[Global___Member] | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _Never  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["doc_string", b"doc_string", "members", b"members", "name", b"name", "type", b"type", "value", b"value"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...
    def WhichOneof(self, oneof_group: _Never) -> None: ...

Global___Help: _TypeAlias = Help  # noqa: Y015

@_typing.final
class Member(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    NAME_FIELD_NUMBER: _builtins.int
    TYPE_FIELD_NUMBER: _builtins.int
    VALUE_FIELD_NUMBER: _builtins.int
    DOC_STRING_FIELD_NUMBER: _builtins.int
    name: _builtins.str
    """The name of the object."""
    type: _builtins.str
    """The type of the object."""
    value: _builtins.str
    """A string representation of this member's value."""
    doc_string: _builtins.str
    """The doc string."""
    def __init__(
        self,
        *,
        name: _builtins.str = ...,
        type: _builtins.str = ...,
        value: _builtins.str = ...,
        doc_string: _builtins.str = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["contents", b"contents", "doc_string", b"doc_string", "value", b"value"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["contents", b"contents", "doc_string", b"doc_string", "name", b"name", "type", b"type", "value", b"value"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...
    _WhichOneofReturnType_contents: _TypeAlias = _typing.Literal["value", "doc_string"]  # noqa: Y015
    _WhichOneofArgType_contents: _TypeAlias = _typing.Literal["contents", b"contents"]  # noqa: Y015
    def WhichOneof(self, oneof_group: _WhichOneofArgType_contents) -> _WhichOneofReturnType_contents | None: ...

Global___Member: _TypeAlias = Member  # noqa: Y015
