from typing import Union

def between(bin: str, min: int, max: int) -> tuple: ...
def equals(bin: str, val: Union[str, int]) -> tuple: ...

def geo_within_geojson_region(bin: str, shape: str, index_type = ...) -> tuple: ...
def geo_within_radius(bin: str, long: float, lat: float, radius_meters: float, index_type = ...) -> tuple: ...
def geo_contains_geojson_point(bin: str, point: str, index_type = ...) -> tuple: ...
def geo_contains_point(bin: str, long: float, lat: float, index_type = ...) -> tuple: ...

def contains(bin: str, index_type, val = Union[str, int]) -> tuple: ...
def range(bin: str, index_type, min: int, max: int) -> tuple: ...
