from typing_extensions import Self

from sympy.core import AtomicExpr

class BaseScalar(AtomicExpr):
    def __new__(cls, index, system, pretty_str=..., latex_str=...) -> Self: ...

    is_commutative = ...
    is_symbol = ...
    @property
    def free_symbols(self) -> set[Self]: ...

    _diff_wrt = ...
    precedence = ...
    @property
    def system(self): ...
