"""planegcs — Python bindings for FreeCAD's PlaneGCS 2D geometric constraint solver."""

from planegcs._planegcs import (
    Algorithm,
    DebugMode,
    InternalAlignmentType,
    SketchSolver,
    SolveStatus,
)
from planegcs.sketch import (
    ArcId,
    ArcInfo,
    CircleId,
    CircleInfo,
    ConstraintInfo,
    ConstraintTag,
    CurveId,
    Diagnosis,
    EllipseId,
    EllipseInfo,
    EntityInfo,
    EntityType,
    LineId,
    LineInfo,
    ParamId,
    PointId,
    PointInfo,
    Sketch,
)

__all__ = [
    "ArcId",
    "ArcInfo",
    "Algorithm",
    "CircleId",
    "CircleInfo",
    "ConstraintInfo",
    "ConstraintTag",
    "CurveId",
    "DebugMode",
    "Diagnosis",
    "EllipseId",
    "EllipseInfo",
    "EntityInfo",
    "EntityType",
    "InternalAlignmentType",
    "LineId",
    "LineInfo",
    "ParamId",
    "PointId",
    "PointInfo",
    "Sketch",
    "SketchSolver",
    "SolveStatus",
]
