import pandas as pd
from _typeshed import Incomplete
from typing import Any

class HtmlReportBuilder:
    title: Incomplete
    theme: Incomplete
    sections: Incomplete
    custom_css: Incomplete
    custom_scripts: Incomplete
    chart_count: int
    def __init__(self, title: str = 'HTML 报告', theme: str = 'light') -> None: ...
    def add_custom_css(self, css: str) -> HtmlReportBuilder: ...
    def add_custom_script(self, script: str) -> HtmlReportBuilder: ...
    def add_header(self, params: dict[str, str], subtitle: str = None) -> HtmlReportBuilder: ...
    def add_metrics(self, metrics: list[dict[str, Any]], title: str = '核心绩效指标') -> HtmlReportBuilder: ...
    def add_chart_tab(self, name: str, chart_html: str, icon: str = 'bi-graph-up', active: bool = False) -> HtmlReportBuilder: ...
    def add_charts_section(self, title: str = '可视化分析') -> HtmlReportBuilder: ...
    def add_table(self, df: pd.DataFrame, title: str = '数据表', max_rows: int = None, style: str = 'Table Grid') -> HtmlReportBuilder: ...
    def add_section(self, title: str, content: str, icon: str = 'bi-file-text') -> HtmlReportBuilder: ...
    def add_footer(self, text: str = None) -> HtmlReportBuilder: ...
    def render(self) -> str: ...
    def save(self, file_path: str) -> str: ...
