"""
@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 google.protobuf.timestamp_pb2
import sys
import typing

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

    NUM_FIELD_NUMBER: builtins.int
    UUID_FIELD_NUMBER: builtins.int
    num: builtins.int
    """Numerical ID of the point"""
    uuid: builtins.str
    """UUID"""
    def __init__(
        self,
        *,
        num: builtins.int = ...,
        uuid: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["num", b"num", "point_id_options", b"point_id_options", "uuid", b"uuid"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["num", b"num", "point_id_options", b"point_id_options", "uuid", b"uuid"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["point_id_options", b"point_id_options"]) -> typing_extensions.Literal["num", "uuid"] | None: ...

global___PointId = PointId

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

    LON_FIELD_NUMBER: builtins.int
    LAT_FIELD_NUMBER: builtins.int
    lon: builtins.float
    lat: builtins.float
    def __init__(
        self,
        *,
        lon: builtins.float = ...,
        lat: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["lat", b"lat", "lon", b"lon"]) -> None: ...

global___GeoPoint = GeoPoint

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

    SHOULD_FIELD_NUMBER: builtins.int
    MUST_FIELD_NUMBER: builtins.int
    MUST_NOT_FIELD_NUMBER: builtins.int
    MIN_SHOULD_FIELD_NUMBER: builtins.int
    @property
    def should(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition]:
        """At least one of those conditions should match"""
    @property
    def must(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition]:
        """All conditions must match"""
    @property
    def must_not(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition]:
        """All conditions must NOT match"""
    @property
    def min_should(self) -> global___MinShould:
        """At least minimum amount of given conditions should match"""
    def __init__(
        self,
        *,
        should: collections.abc.Iterable[global___Condition] | None = ...,
        must: collections.abc.Iterable[global___Condition] | None = ...,
        must_not: collections.abc.Iterable[global___Condition] | None = ...,
        min_should: global___MinShould | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_min_should", b"_min_should", "min_should", b"min_should"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_min_should", b"_min_should", "min_should", b"min_should", "must", b"must", "must_not", b"must_not", "should", b"should"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_min_should", b"_min_should"]) -> typing_extensions.Literal["min_should"] | None: ...

global___Filter = Filter

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

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

global___MinShould = MinShould

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

    FIELD_FIELD_NUMBER: builtins.int
    IS_EMPTY_FIELD_NUMBER: builtins.int
    HAS_ID_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    IS_NULL_FIELD_NUMBER: builtins.int
    NESTED_FIELD_NUMBER: builtins.int
    HAS_VECTOR_FIELD_NUMBER: builtins.int
    @property
    def field(self) -> global___FieldCondition: ...
    @property
    def is_empty(self) -> global___IsEmptyCondition: ...
    @property
    def has_id(self) -> global___HasIdCondition: ...
    @property
    def filter(self) -> global___Filter: ...
    @property
    def is_null(self) -> global___IsNullCondition: ...
    @property
    def nested(self) -> global___NestedCondition: ...
    @property
    def has_vector(self) -> global___HasVectorCondition: ...
    def __init__(
        self,
        *,
        field: global___FieldCondition | None = ...,
        is_empty: global___IsEmptyCondition | None = ...,
        has_id: global___HasIdCondition | None = ...,
        filter: global___Filter | None = ...,
        is_null: global___IsNullCondition | None = ...,
        nested: global___NestedCondition | None = ...,
        has_vector: global___HasVectorCondition | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["condition_one_of", b"condition_one_of", "field", b"field", "filter", b"filter", "has_id", b"has_id", "has_vector", b"has_vector", "is_empty", b"is_empty", "is_null", b"is_null", "nested", b"nested"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["condition_one_of", b"condition_one_of", "field", b"field", "filter", b"filter", "has_id", b"has_id", "has_vector", b"has_vector", "is_empty", b"is_empty", "is_null", b"is_null", "nested", b"nested"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["condition_one_of", b"condition_one_of"]) -> typing_extensions.Literal["field", "is_empty", "has_id", "filter", "is_null", "nested", "has_vector"] | None: ...

global___Condition = Condition

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

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

global___IsEmptyCondition = IsEmptyCondition

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

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

global___IsNullCondition = IsNullCondition

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

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

global___HasIdCondition = HasIdCondition

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

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

global___HasVectorCondition = HasVectorCondition

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

    KEY_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    key: builtins.str
    """Path to nested object"""
    @property
    def filter(self) -> global___Filter:
        """Filter condition"""
    def __init__(
        self,
        *,
        key: builtins.str = ...,
        filter: global___Filter | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["filter", b"filter"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["filter", b"filter", "key", b"key"]) -> None: ...

global___NestedCondition = NestedCondition

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

    KEY_FIELD_NUMBER: builtins.int
    MATCH_FIELD_NUMBER: builtins.int
    RANGE_FIELD_NUMBER: builtins.int
    GEO_BOUNDING_BOX_FIELD_NUMBER: builtins.int
    GEO_RADIUS_FIELD_NUMBER: builtins.int
    VALUES_COUNT_FIELD_NUMBER: builtins.int
    GEO_POLYGON_FIELD_NUMBER: builtins.int
    DATETIME_RANGE_FIELD_NUMBER: builtins.int
    IS_EMPTY_FIELD_NUMBER: builtins.int
    IS_NULL_FIELD_NUMBER: builtins.int
    key: builtins.str
    @property
    def match(self) -> global___Match:
        """Check if point has field with a given value"""
    @property
    def range(self) -> global___Range:
        """Check if points value lies in a given range"""
    @property
    def geo_bounding_box(self) -> global___GeoBoundingBox:
        """Check if points geolocation lies in a given area"""
    @property
    def geo_radius(self) -> global___GeoRadius:
        """Check if geo point is within a given radius"""
    @property
    def values_count(self) -> global___ValuesCount:
        """Check number of values for a specific field"""
    @property
    def geo_polygon(self) -> global___GeoPolygon:
        """Check if geo point is within a given polygon"""
    @property
    def datetime_range(self) -> global___DatetimeRange:
        """Check if datetime is within a given range"""
    is_empty: builtins.bool
    """Check if field is empty"""
    is_null: builtins.bool
    """Check if field is null"""
    def __init__(
        self,
        *,
        key: builtins.str = ...,
        match: global___Match | None = ...,
        range: global___Range | None = ...,
        geo_bounding_box: global___GeoBoundingBox | None = ...,
        geo_radius: global___GeoRadius | None = ...,
        values_count: global___ValuesCount | None = ...,
        geo_polygon: global___GeoPolygon | None = ...,
        datetime_range: global___DatetimeRange | None = ...,
        is_empty: builtins.bool | None = ...,
        is_null: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_is_empty", b"_is_empty", "_is_null", b"_is_null", "datetime_range", b"datetime_range", "geo_bounding_box", b"geo_bounding_box", "geo_polygon", b"geo_polygon", "geo_radius", b"geo_radius", "is_empty", b"is_empty", "is_null", b"is_null", "match", b"match", "range", b"range", "values_count", b"values_count"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_is_empty", b"_is_empty", "_is_null", b"_is_null", "datetime_range", b"datetime_range", "geo_bounding_box", b"geo_bounding_box", "geo_polygon", b"geo_polygon", "geo_radius", b"geo_radius", "is_empty", b"is_empty", "is_null", b"is_null", "key", b"key", "match", b"match", "range", b"range", "values_count", b"values_count"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_is_empty", b"_is_empty"]) -> typing_extensions.Literal["is_empty"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_is_null", b"_is_null"]) -> typing_extensions.Literal["is_null"] | None: ...

global___FieldCondition = FieldCondition

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

    KEYWORD_FIELD_NUMBER: builtins.int
    INTEGER_FIELD_NUMBER: builtins.int
    BOOLEAN_FIELD_NUMBER: builtins.int
    TEXT_FIELD_NUMBER: builtins.int
    KEYWORDS_FIELD_NUMBER: builtins.int
    INTEGERS_FIELD_NUMBER: builtins.int
    EXCEPT_INTEGERS_FIELD_NUMBER: builtins.int
    EXCEPT_KEYWORDS_FIELD_NUMBER: builtins.int
    PHRASE_FIELD_NUMBER: builtins.int
    TEXT_ANY_FIELD_NUMBER: builtins.int
    keyword: builtins.str
    """Match string keyword"""
    integer: builtins.int
    """Match integer"""
    boolean: builtins.bool
    """Match boolean"""
    text: builtins.str
    """Match text"""
    @property
    def keywords(self) -> global___RepeatedStrings:
        """Match multiple keywords"""
    @property
    def integers(self) -> global___RepeatedIntegers:
        """Match multiple integers"""
    @property
    def except_integers(self) -> global___RepeatedIntegers:
        """Match any other value except those integers"""
    @property
    def except_keywords(self) -> global___RepeatedStrings:
        """Match any other value except those keywords"""
    phrase: builtins.str
    """Match phrase text"""
    text_any: builtins.str
    """Match any word in the text"""
    def __init__(
        self,
        *,
        keyword: builtins.str = ...,
        integer: builtins.int = ...,
        boolean: builtins.bool = ...,
        text: builtins.str = ...,
        keywords: global___RepeatedStrings | None = ...,
        integers: global___RepeatedIntegers | None = ...,
        except_integers: global___RepeatedIntegers | None = ...,
        except_keywords: global___RepeatedStrings | None = ...,
        phrase: builtins.str = ...,
        text_any: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["boolean", b"boolean", "except_integers", b"except_integers", "except_keywords", b"except_keywords", "integer", b"integer", "integers", b"integers", "keyword", b"keyword", "keywords", b"keywords", "match_value", b"match_value", "phrase", b"phrase", "text", b"text", "text_any", b"text_any"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["boolean", b"boolean", "except_integers", b"except_integers", "except_keywords", b"except_keywords", "integer", b"integer", "integers", b"integers", "keyword", b"keyword", "keywords", b"keywords", "match_value", b"match_value", "phrase", b"phrase", "text", b"text", "text_any", b"text_any"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["match_value", b"match_value"]) -> typing_extensions.Literal["keyword", "integer", "boolean", "text", "keywords", "integers", "except_integers", "except_keywords", "phrase", "text_any"] | None: ...

global___Match = Match

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

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

global___RepeatedStrings = RepeatedStrings

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

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

global___RepeatedIntegers = RepeatedIntegers

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

    LT_FIELD_NUMBER: builtins.int
    GT_FIELD_NUMBER: builtins.int
    GTE_FIELD_NUMBER: builtins.int
    LTE_FIELD_NUMBER: builtins.int
    lt: builtins.float
    gt: builtins.float
    gte: builtins.float
    lte: builtins.float
    def __init__(
        self,
        *,
        lt: builtins.float | None = ...,
        gt: builtins.float | None = ...,
        gte: builtins.float | None = ...,
        lte: builtins.float | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_gt", b"_gt", "_gte", b"_gte", "_lt", b"_lt", "_lte", b"_lte", "gt", b"gt", "gte", b"gte", "lt", b"lt", "lte", b"lte"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_gt", b"_gt", "_gte", b"_gte", "_lt", b"_lt", "_lte", b"_lte", "gt", b"gt", "gte", b"gte", "lt", b"lt", "lte", b"lte"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_gt", b"_gt"]) -> typing_extensions.Literal["gt"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_gte", b"_gte"]) -> typing_extensions.Literal["gte"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_lt", b"_lt"]) -> typing_extensions.Literal["lt"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_lte", b"_lte"]) -> typing_extensions.Literal["lte"] | None: ...

global___Range = Range

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

    LT_FIELD_NUMBER: builtins.int
    GT_FIELD_NUMBER: builtins.int
    GTE_FIELD_NUMBER: builtins.int
    LTE_FIELD_NUMBER: builtins.int
    @property
    def lt(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    @property
    def gt(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    @property
    def gte(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    @property
    def lte(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
    def __init__(
        self,
        *,
        lt: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        gt: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        gte: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        lte: google.protobuf.timestamp_pb2.Timestamp | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_gt", b"_gt", "_gte", b"_gte", "_lt", b"_lt", "_lte", b"_lte", "gt", b"gt", "gte", b"gte", "lt", b"lt", "lte", b"lte"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_gt", b"_gt", "_gte", b"_gte", "_lt", b"_lt", "_lte", b"_lte", "gt", b"gt", "gte", b"gte", "lt", b"lt", "lte", b"lte"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_gt", b"_gt"]) -> typing_extensions.Literal["gt"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_gte", b"_gte"]) -> typing_extensions.Literal["gte"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_lt", b"_lt"]) -> typing_extensions.Literal["lt"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_lte", b"_lte"]) -> typing_extensions.Literal["lte"] | None: ...

global___DatetimeRange = DatetimeRange

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

    TOP_LEFT_FIELD_NUMBER: builtins.int
    BOTTOM_RIGHT_FIELD_NUMBER: builtins.int
    @property
    def top_left(self) -> global___GeoPoint:
        """north-west corner"""
    @property
    def bottom_right(self) -> global___GeoPoint:
        """south-east corner"""
    def __init__(
        self,
        *,
        top_left: global___GeoPoint | None = ...,
        bottom_right: global___GeoPoint | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["bottom_right", b"bottom_right", "top_left", b"top_left"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["bottom_right", b"bottom_right", "top_left", b"top_left"]) -> None: ...

global___GeoBoundingBox = GeoBoundingBox

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

    CENTER_FIELD_NUMBER: builtins.int
    RADIUS_FIELD_NUMBER: builtins.int
    @property
    def center(self) -> global___GeoPoint:
        """Center of the circle"""
    radius: builtins.float
    """In meters"""
    def __init__(
        self,
        *,
        center: global___GeoPoint | None = ...,
        radius: builtins.float = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["center", b"center"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["center", b"center", "radius", b"radius"]) -> None: ...

global___GeoRadius = GeoRadius

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

    POINTS_FIELD_NUMBER: builtins.int
    @property
    def points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GeoPoint]:
        """Ordered sequence of GeoPoints representing the line"""
    def __init__(
        self,
        *,
        points: collections.abc.Iterable[global___GeoPoint] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["points", b"points"]) -> None: ...

global___GeoLineString = GeoLineString

class GeoPolygon(google.protobuf.message.Message):
    """For a valid GeoPolygon, both the exterior and interior GeoLineStrings must
    consist of a minimum of 4 points.
    Additionally, the first and last points of each GeoLineString must be the same.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXTERIOR_FIELD_NUMBER: builtins.int
    INTERIORS_FIELD_NUMBER: builtins.int
    @property
    def exterior(self) -> global___GeoLineString:
        """The exterior line bounds the surface"""
    @property
    def interiors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GeoLineString]:
        """Interior lines (if present) bound holes within the surface"""
    def __init__(
        self,
        *,
        exterior: global___GeoLineString | None = ...,
        interiors: collections.abc.Iterable[global___GeoLineString] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["exterior", b"exterior"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["exterior", b"exterior", "interiors", b"interiors"]) -> None: ...

global___GeoPolygon = GeoPolygon

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

    LT_FIELD_NUMBER: builtins.int
    GT_FIELD_NUMBER: builtins.int
    GTE_FIELD_NUMBER: builtins.int
    LTE_FIELD_NUMBER: builtins.int
    lt: builtins.int
    gt: builtins.int
    gte: builtins.int
    lte: builtins.int
    def __init__(
        self,
        *,
        lt: builtins.int | None = ...,
        gt: builtins.int | None = ...,
        gte: builtins.int | None = ...,
        lte: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_gt", b"_gt", "_gte", b"_gte", "_lt", b"_lt", "_lte", b"_lte", "gt", b"gt", "gte", b"gte", "lt", b"lt", "lte", b"lte"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_gt", b"_gt", "_gte", b"_gte", "_lt", b"_lt", "_lte", b"_lte", "gt", b"gt", "gte", b"gte", "lt", b"lt", "lte", b"lte"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_gt", b"_gt"]) -> typing_extensions.Literal["gt"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_gte", b"_gte"]) -> typing_extensions.Literal["gte"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_lt", b"_lt"]) -> typing_extensions.Literal["lt"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_lte", b"_lte"]) -> typing_extensions.Literal["lte"] | None: ...

global___ValuesCount = ValuesCount
