import pandas as pd
from yfinance import utils as utils
from yfinance.data import YfData as YfData
from yfinance.exceptions import YFDataException as YFDataException

class FundsData:
    def __init__(self, data: YfData, symbol: str, proxy=...) -> None: ...
    def quote_type(self) -> str: ...
    @property
    def description(self) -> str: ...
    @property
    def fund_overview(self) -> dict[str, str | None]: ...
    @property
    def fund_operations(self) -> pd.DataFrame: ...
    @property
    def asset_classes(self) -> dict[str, float]: ...
    @property
    def top_holdings(self) -> pd.DataFrame: ...
    @property
    def equity_holdings(self) -> pd.DataFrame: ...
    @property
    def bond_holdings(self) -> pd.DataFrame: ...
    @property
    def bond_ratings(self) -> dict[str, float]: ...
    @property
    def sector_weightings(self) -> dict[str, float]: ...
