from datetime import datetime

class IsFullMoon:
    ASTRONOMICAL_EPOCH: float
    ELONGE: float
    ELONGP: float
    ECCENT: float
    SUNSMAX: float
    SUNANGSIZ: float
    MMLONG: float
    MMLONGP: float
    MLNODE: float
    MINC: float
    MECC: float
    MANGSIZ: float
    MSMAX: float
    MPARALLAX: float
    SYNMONTH: float
    def __init__(self) -> None: ...
    def set_date_now(self) -> None: ...
    def set_date_timestamp(self, ts: int) -> None: ...
    def set_date_datetime(self, datetime: datetime) -> None: ...
    def set_date_string(self, datestring: str, format: str = '%Y-%m-%d') -> None: ...
    def is_full_moon(self, ts: int | None = None) -> bool: ...
    def julian_time(self, time: int) -> float: ...
    def julian_day_to_seconds(self, julian_day: float) -> float: ...
    def julian_date(self, td: float) -> float: ...
    def to_radian(self, degrees: float) -> float: ...
    def to_degree(self, radians: float) -> float: ...
    def dsin(self, angle: float) -> float: ...
    def dcos(self, angle: float) -> float: ...
    def fix_angle(self, angle: float) -> float: ...
    def kepler(self, m: float, ecc: float) -> float: ...
    def get_phase(self, time: int) -> dict[str, float]: ...
    def true_phase(self, k: int, phase: float) -> float: ...
    def phase_list(self, date: float) -> list[float]: ...
