from polars import DataFrame, Series

__all__ = [
    "download",
    "qdf",
]

class download:
    __all__ = [
        "download_jpmaqs_indicators_as_df",
    ]

    @staticmethod
    def download_jpmaqs_indicators_as_df(*args, **kwargs) -> DataFrame: ...

class qdf:
    __all__ = [
        "load_qdf",
        "load_qdf_from_download_bank",
        "reduce_dataframe",
        "update_dataframe",
        "pivot_dataframe_by_ticker",
    ]

    @staticmethod
    def load_qdf(*args, **kwargs) -> DataFrame: ...
    @staticmethod
    def load_qdf_from_download_bank(*args, **kwargs) -> DataFrame: ...
    @staticmethod
    def reduce_dataframe(*args, **kwargs) -> DataFrame: ...
    @staticmethod
    def update_dataframe(*args, **kwargs) -> DataFrame: ...
    @staticmethod
    def pivot_dataframe_by_ticker(*args, **kwargs) -> DataFrame: ...

class panel:
    __all__ = [
        "historic_vol",
        "get_bdates_from_col_hv",
        "get_period_indices_hv",
        "linear_composite",
    ]

    @staticmethod
    def historic_vol(*args, **kwargs) -> DataFrame: ...
    @staticmethod
    def get_bdates_from_col_hv(*args, **kwargs) -> Series: ...
    @staticmethod
    def get_period_indices_hv(*args, **kwargs) -> Series: ...
    @staticmethod
    def linear_composite(*args, **kwargs) -> DataFrame: ...

class utils:
    __all__ = ["get_bdates_series_default"]
    @staticmethod
    def get_bdates_series_default(*args, **kwargs) -> Series: ...
