from typing import Any, Optional

from django import forms as forms

class GeometryField(forms.Field):
    widget: Any = ...
    geom_type: str = ...
    default_error_messages: Any = ...
    srid: Any = ...
    def __init__(self, *, srid: Optional[Any] = ..., geom_type: Optional[Any] = ..., **kwargs: Any) -> None: ...
    def to_python(self, value: Any): ...
    def clean(self, value: Any): ...
    def has_changed(self, initial: Any, data: Any): ...

class GeometryCollectionField(GeometryField):
    geom_type: str = ...

class PointField(GeometryField):
    geom_type: str = ...

class MultiPointField(GeometryField):
    geom_type: str = ...

class LineStringField(GeometryField):
    geom_type: str = ...

class MultiLineStringField(GeometryField):
    geom_type: str = ...

class PolygonField(GeometryField):
    geom_type: str = ...

class MultiPolygonField(GeometryField):
    geom_type: str = ...
