"""
@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.message
import sys

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class JokeResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___JokeResponse = JokeResponse

@typing_extensions.final
class SearchRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    QUERY_FIELD_NUMBER: builtins.int
    LIMIT_FIELD_NUMBER: builtins.int
    query: builtins.str
    limit: builtins.int
    def __init__(
        self,
        *,
        query: builtins.str = ...,
        limit: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_limit", b"_limit", "limit", b"limit"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_limit", b"_limit", "limit", b"limit", "query", b"query"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_limit", b"_limit"]) -> typing_extensions.Literal["limit"] | None: ...

global___SearchRequest = SearchRequest

@typing_extensions.final
class SearchResult(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___SearchResult = SearchResult
