import { EChartsOption } from 'echarts';
import { LineChart, BarChart, PieChart, ScatterChart, EffectScatterChart, RadarChart, HeatmapChart, FunnelChart, GaugeChart, MapChart, TreeChart, CandlestickChart, SunburstChart, GraphChart, SankeyChart, TreemapChart, ThemeRiverChart, ParallelChart, BoxplotChart } from 'echarts/charts';

export type EChartsModule = typeof LineChart | typeof BarChart | typeof PieChart | typeof ScatterChart | typeof EffectScatterChart | typeof RadarChart | typeof HeatmapChart | typeof FunnelChart | typeof GaugeChart | typeof MapChart | typeof TreeChart | typeof CandlestickChart | typeof SunburstChart | typeof GraphChart | typeof SankeyChart | typeof TreemapChart | typeof ThemeRiverChart | typeof ParallelChart | typeof BoxplotChart;
export interface ChartOption {
    use: () => Promise<EChartsModule[]>;
}
export type ChartOptionsConfig = Record<string, ChartOption>;
export type DashboardMetricTrend = {
    type: 'up' | 'down';
    value: number;
    color?: string;
};
export type DashboardMetric = {
    value: number;
    icon?: string;
    color?: string;
    unit?: string;
    trend?: DashboardMetricTrend;
    description?: string;
};
export interface ExtendedEChartsOption extends EChartsOption {
    chartType?: string;
    gridX?: number;
    gridY?: number;
    gridWidth?: number;
    gridHeight?: number;
    label?: string;
    tooltipType?: string;
    customTheme?: string;
    value?: number;
    icon?: string;
    color?: string;
    unit?: string;
    trend?: DashboardMetricTrend;
    description?: string;
}
//# sourceMappingURL=echarts.d.ts.map