"""Auto-generated type stubs for @configurable decorators.

This file is automatically generated by scripts/generate_stubs.py.
Do not edit manually - changes will be overwritten.
"""

from hipr.config import MakeableModel
import pandas as pd
from pdval import Finite, NonEmpty, Validated

class MacdConfig(MakeableModel[pd.DataFrame]):
    fast_period: int
    slow_period: int
    signal_period: int
    def __init__(
        self, *, fast_period: int = 12, slow_period: int = 26, signal_period: int = 9
    ) -> None: ...

class _MacdConfigurable:
    Config: type[MacdConfig]
    def __call__(
        self,
        data: Validated[pd.Series, Finite, NonEmpty],
        *,
        fast_period: int = 12,
        slow_period: int = 26,
        signal_period: int = 9,
    ) -> pd.DataFrame: ...

type macd = _MacdConfigurable
