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

import builtins
import google.protobuf.descriptor
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
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 _Timeframe:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _TimeframeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Timeframe.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    TimeframeSecond: _Timeframe.ValueType  # 0
    TimeframeMinute: _Timeframe.ValueType  # 1
    TimeframeHour: _Timeframe.ValueType  # 2
    TimeframeDay: _Timeframe.ValueType  # 3
    TimeframeWeek: _Timeframe.ValueType  # 4
    TimeframeMonth: _Timeframe.ValueType  # 5
    TimeframeYear: _Timeframe.ValueType  # 6

class Timeframe(_Timeframe, metaclass=_TimeframeEnumTypeWrapper): ...

TimeframeSecond: Timeframe.ValueType  # 0
TimeframeMinute: Timeframe.ValueType  # 1
TimeframeHour: Timeframe.ValueType  # 2
TimeframeDay: Timeframe.ValueType  # 3
TimeframeWeek: Timeframe.ValueType  # 4
TimeframeMonth: Timeframe.ValueType  # 5
TimeframeYear: Timeframe.ValueType  # 6
Global___Timeframe: typing_extensions.TypeAlias = Timeframe

@typing.final
class PagingInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PAGEINDEX_FIELD_NUMBER: builtins.int
    PAGESIZE_FIELD_NUMBER: builtins.int
    SEARCHTERM_FIELD_NUMBER: builtins.int
    SORTCOLUMN_FIELD_NUMBER: builtins.int
    PageIndex: builtins.int
    PageSize: builtins.int
    SearchTerm: builtins.str
    SortColumn: builtins.str
    def __init__(
        self,
        *,
        PageIndex: builtins.int | None = ...,
        PageSize: builtins.int | None = ...,
        SearchTerm: builtins.str | None = ...,
        SortColumn: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing.Literal[
            "PageIndex",
            b"PageIndex",
            "PageSize",
            b"PageSize",
            "SearchTerm",
            b"SearchTerm",
            "SortColumn",
            b"SortColumn",
            "_PageIndex",
            b"_PageIndex",
            "_PageSize",
            b"_PageSize",
            "_SearchTerm",
            b"_SearchTerm",
            "_SortColumn",
            b"_SortColumn",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing.Literal[
            "PageIndex",
            b"PageIndex",
            "PageSize",
            b"PageSize",
            "SearchTerm",
            b"SearchTerm",
            "SortColumn",
            b"SortColumn",
            "_PageIndex",
            b"_PageIndex",
            "_PageSize",
            b"_PageSize",
            "_SearchTerm",
            b"_SearchTerm",
            "_SortColumn",
            b"_SortColumn",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_PageIndex", b"_PageIndex"]
    ) -> typing.Literal["PageIndex"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_PageSize", b"_PageSize"]
    ) -> typing.Literal["PageSize"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_SearchTerm", b"_SearchTerm"]
    ) -> typing.Literal["SearchTerm"] | None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing.Literal["_SortColumn", b"_SortColumn"]
    ) -> typing.Literal["SortColumn"] | None: ...

Global___PagingInfo: typing_extensions.TypeAlias = PagingInfo
