"""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 typing import Literal

from hipr.config import MakeableModel
import pandas as pd
from pdval import Ge as ColsGe, HasColumns, NonNegative, Validated

class ChurnFactorConfig(MakeableModel[pd.DataFrame]):
    epsilon: float
    def __init__(self, *, epsilon: float = 1e-09) -> None: ...

class _ChurnFactorConfigurable:
    Config: type[ChurnFactorConfig]
    def __call__(
        self,
        data: Validated[
            pd.DataFrame,
            HasColumns[Literal["high", "low", "volume"]],
            ColsGe[Literal["high", "low"]],
            NonNegative,
        ],
        *,
        epsilon: float = 1e-09,
        fill_strategy: str = "zero",
        fill_value: float | None = None,
    ) -> pd.DataFrame: ...

type churn_factor = _ChurnFactorConfigurable
