import MetricBasePanelStyleService, { IMetricBasePanelStyle } from '../metric-panel/base';
import { ChartType } from '../../../../../constants/chart-style';
import { IMetricStyle, IMetricColor, EArrangement, ITitleIcon } from '../../../../../constants/metric-panel-style';
export interface IMetricPanelStyle extends IMetricBasePanelStyle {
    titleFontColor: string;
    metricStyles: IMetricStyle[];
    colors: IMetricColor[];
    arrangement: EArrangement;
    titleIcon: ITitleIcon;
}
export default abstract class MetricPanelStyleService extends MetricBasePanelStyleService<IMetricPanelStyle> {
    chartType: ChartType;
    titleFontColor: string;
    metricStyles: IMetricStyle[];
    colors: IMetricColor[];
    arrangement: EArrangement;
    titleIcon: ITitleIcon;
    get contextOption(): {
        currentBuckets: string[];
        currentMetrics: string[];
        metrics: string[];
        buckets: string[];
        metricDataConfigs: import("../../../../../constants/metric-panel-style").IDataConfig[];
        arrangement: EArrangement;
    };
    setMetricStyles(metricStyles: IMetricStyle[]): void;
    setTitleFontSize(titleFontSize: number): void;
    setTitleFontColor(titleFontColor: string): void;
    setColors(colors: IMetricColor[]): void;
    setCurrentMetrics(currentMetrics: string[]): void;
    setOptInit(width: number, height: number, titleFontSize: number, titleFontColor: string): void;
    setArrangement(arrangement: EArrangement): void;
    setTitleColor(titleIcon: ITitleIcon): void;
    calMetricStyles(currentMetrics: string[]): IMetricStyle[];
    constructor(option: IMetricPanelStyle);
}
