from __future__ import annotations
from typing import Protocol, runtime_checkable

from zempy.zosapi.editors.protocols.i_solve_data import ISolveData

@runtime_checkable
class ISolvePosition(ISolveData, Protocol):
    """Protocol for ISolvePosition (refactored to inherit ISolveData; unique fields only)."""
    @property
    def FromSurface(self) -> int: ...
    @FromSurface.setter
    def FromSurface(self, value: int) -> None: ...
    @property
    def Length(self) -> float: ...
    @Length.setter
    def Length(self, value: float) -> None: ...
    @property
    def Documentation(self) -> str: ...
    @property
    def set(self) -> str: ...
    @property
    def by(self) -> str: ...
