"""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 (
    Datetime,
    Ge as GeValidator,
    HasColumns,
    Index,
    NonEmpty,
    NonNaN,
    Validated,
)

class OpeningRangeConfig(MakeableModel[pd.DataFrame]):
    minutes: int
    def __init__(self, *, minutes: int = 30) -> None: ...

class _OpeningRangeConfigurable:
    Config: type[OpeningRangeConfig]
    def __call__(
        self,
        data: Validated[
            pd.DataFrame,
            HasColumns[Literal["high", "low", "close"]],
            Index[Datetime],
            GeValidator[Literal["high", "low"]],
            NonNaN,
            NonEmpty,
        ],
        *,
        minutes: int = 30,
        session_start: str = "09:30",
    ) -> pd.DataFrame: ...

type opening_range = _OpeningRangeConfigurable
