from typing import Any

class BaseSpatialOperations:
    postgis: bool = ...
    spatialite: bool = ...
    mysql: bool = ...
    oracle: bool = ...
    spatial_version: Any = ...
    select: str = ...
    def select_extent(self) -> Any: ...
    geography: bool = ...
    geometry: bool = ...
    disallowed_aggregates: Any = ...
    geom_func_prefix: str = ...
    function_names: Any = ...
    unsupported_functions: Any = ...
    from_text: bool = ...
    def convert_extent(self, box: Any, srid: Any) -> None: ...
    def convert_extent3d(self, box: Any, srid: Any) -> None: ...
    def geo_quote_name(self, name: Any) -> Any: ...
    def geo_db_type(self, f: Any) -> None: ...
    def get_distance(self, f: Any, value: Any, lookup_type: Any) -> None: ...
    def get_geom_placeholder(self, f: Any, value: Any, compiler: Any) -> Any: ...
    def check_expression_support(self, expression: Any) -> None: ...
    def spatial_aggregate_name(self, agg_name: Any) -> None: ...
    def spatial_function_name(self, func_name: Any) -> Any: ...
    def geometry_columns(self) -> None: ...
    def spatial_ref_sys(self) -> None: ...
    distance_expr_for_lookup: Any = ...
    def get_db_converters(self, expression: Any) -> Any: ...
    def get_geometry_converter(self, expression: Any) -> None: ...
    def get_area_att_for_field(self, field: Any) -> Any: ...
    def get_distance_att_for_field(self, field: Any) -> Any: ...
