import { OnInit, EventEmitter, SimpleChanges, ChangeDetectorRef } from '@angular/core';
import { EChartOption, ECharts } from 'echarts';
import { CommonService } from '../../service/common.service';
import { ChartOptionService } from '../../service/chart-option.service';
import { ChartResizeService } from '../../service/chart-resize.service';
import { NoiseCustomLineService } from './noise-custom-line.service';
import { NoiseCustomLineData } from './noise-custom-line-interface';
declare type tool = 'calculate' | 'brush' | 'brushEnlarge' | 'brushRestore';
export declare class NoiseCustomLineComponent implements OnInit {
    private commonService;
    private chartOptionService;
    private chartResizeService;
    private service;
    private cdr;
    constructor(commonService: CommonService, chartOptionService: ChartOptionService, chartResizeService: ChartResizeService, service: NoiseCustomLineService, cdr: ChangeDetectorRef);
    chartTitle: {
        show: boolean;
        label: string;
    };
    initOpts: {
        renderer: string;
        devicePixelRatio: number;
    };
    cardPadding: string;
    cardBgColor: string;
    chartTitleColor: string;
    chartBackgroundColor: string;
    chartColors: string[];
    chartTitles: {
        show: boolean;
        text: string;
    };
    chartLegend: {
        type: "scroll" | "plain";
        show: boolean;
        width: string;
        bottom: string;
        orient: string;
        itemGap: number;
        itemWidth: number;
        itemHeight: number;
        pageIconSize: any;
        pageTextStyle: {
            fontSize: any;
        };
        pageIcons: {
            horizontal: string[];
            pageIconColor: string;
        };
        textStyle: {
            fontSize: number;
            fontWeight: number;
            padding: number;
        };
    };
    chartGrid: EChartOption.Grid;
    chartxAxis: {
        name: string;
        type: string;
        boundaryGap: boolean;
        data: any;
        splitNumber: number;
        axisLine: {
            show: boolean;
            textStyle: {
                fontSize: string;
            };
            lineStyle: {
                opacity: number;
                color: string;
                width: number;
            };
        };
        axisTick: {
            show: boolean;
            length: number;
            lineStyle: {
                opacity: number;
                color: string;
                width: number;
            };
            alignWithLabel: boolean;
        };
        axisLabel: {
            show: boolean;
            color: string;
            rotate: number;
            formatter: any;
        };
        splitLine: {
            show: boolean;
        };
    }[];
    chartyAxis: {
        name: any;
        nameTextStyle: {
            fontSize: string;
            color: string;
        };
        type: string;
        nameGap: string;
        nameLocation: string;
        axisLine: {
            show: boolean;
            lineStyle: {
                opacity: number;
            };
        };
        axisTick: {
            show: boolean;
            length: number;
            lineStyle: {
                opacity: number;
            };
        };
        axisLabel: {
            show: boolean;
            rotate: number;
            color: string;
            fontSize: string;
        };
        splitLine: {
            show: boolean;
            lineStyle: {
                opacity: number;
            };
        };
        min: (value: any) => any;
    }[];
    chartSeries: EChartOption.Series;
    chartTooltip: {
        trigger: string;
        transitionDuration: number;
        appendToBody: boolean;
        confine: boolean;
        enterable: boolean;
        borderColor: string;
        borderWidth: number;
        backgroundColor: string;
        extraCssText: string;
        textStyle: {
            color: string;
            fontSize: string;
        };
        padding: number;
        formatter: any;
    };
    chartToolbox: {
        show: boolean;
        itemSize: number;
        showTitle: boolean;
        feature: {
            brush: {
                show: boolean;
                type: string[];
            };
        };
        iconStyle: {
            opacity: number;
        };
    };
    chartBrush: {
        xAxisIndex: string;
        brushLink: string;
        outOfBrush: {
            colorAlpha: number;
        };
        throttleType: string;
        throttleDelay: number;
    };
    chartOption: {
        backgroundColor: string;
        color: string[];
        title: {
            show: boolean;
            text: string;
        };
        tooltip: {
            trigger: string;
            transitionDuration: number;
            appendToBody: boolean;
            confine: boolean;
            enterable: boolean;
            borderColor: string;
            borderWidth: number;
            backgroundColor: string;
            extraCssText: string;
            textStyle: {
                color: string;
                fontSize: string;
            };
            padding: number;
            formatter: any;
        };
        legend: {
            type: "scroll" | "plain";
            show: boolean;
            width: string;
            bottom: string;
            orient: string;
            itemGap: number;
            itemWidth: number;
            itemHeight: number;
            pageIconSize: any;
            pageTextStyle: {
                fontSize: any;
            };
            pageIcons: {
                horizontal: string[];
                pageIconColor: string;
            };
            textStyle: {
                fontSize: number;
                fontWeight: number;
                padding: number;
            };
        };
        grid: EChartOption.Grid;
        xAxis: {
            name: string;
            type: string;
            boundaryGap: boolean;
            data: any;
            splitNumber: number;
            axisLine: {
                show: boolean;
                textStyle: {
                    fontSize: string;
                };
                lineStyle: {
                    opacity: number;
                    color: string;
                    width: number;
                };
            };
            axisTick: {
                show: boolean;
                length: number;
                lineStyle: {
                    opacity: number;
                    color: string;
                    width: number;
                };
                alignWithLabel: boolean;
            };
            axisLabel: {
                show: boolean;
                color: string;
                rotate: number;
                formatter: any;
            };
            splitLine: {
                show: boolean;
            };
        }[];
        yAxis: {
            name: any;
            nameTextStyle: {
                fontSize: string;
                color: string;
            };
            type: string;
            nameGap: string;
            nameLocation: string;
            axisLine: {
                show: boolean;
                lineStyle: {
                    opacity: number;
                };
            };
            axisTick: {
                show: boolean;
                length: number;
                lineStyle: {
                    opacity: number;
                };
            };
            axisLabel: {
                show: boolean;
                rotate: number;
                color: string;
                fontSize: string;
            };
            splitLine: {
                show: boolean;
                lineStyle: {
                    opacity: number;
                };
            };
            min: (value: any) => any;
        }[];
        series: EChartOption.Series;
        toolbox: {
            show: boolean;
            itemSize: number;
            showTitle: boolean;
            feature: {
                brush: {
                    show: boolean;
                    type: string[];
                };
            };
            iconStyle: {
                opacity: number;
            };
        };
        brush: {
            xAxisIndex: string;
            brushLink: string;
            outOfBrush: {
                colorAlpha: number;
            };
            throttleType: string;
            throttleDelay: number;
        };
    };
    bcacIsDarkMode: boolean;
    bcacDarkMode: boolean;
    bcacSmallMode: boolean | string;
    _bcacLegendShow: boolean;
    bcacLegendShow: boolean;
    legendPosition: string;
    bcacLegendPosition: string;
    bcacTitleSwitch: boolean | string;
    bcacTitle: string;
    bcacXaxisName: string;
    bcacYaxisName: string;
    bcacYnameGap: number;
    bcacColors: string[];
    bcacXAxisLabelRotate: number;
    bcacYAxisLabelRotate: number;
    bcacTooltipFormatter: any;
    toolboxList: any[];
    bcacToolboxList: tool[];
    receiveChartSeriesData: any;
    legendDataList: any;
    bcacChartData: NoiseCustomLineData;
    bcacLegendCheckedChange: EventEmitter<any>;
    legendChange(e: any): void;
    dataSourceSelectData: any[];
    bcacDataSourceList: any[];
    intervalDatas: any[];
    bcacInterValDatas: any[];
    _bcacChartLoading: boolean;
    bcacChartLoading: boolean;
    bcacDataSourceChange: EventEmitter<any>;
    bcacDataSourceSelectEmit: EventEmitter<any>;
    dataSourceChange(e: any): void;
    bcacGetChartInstance: EventEmitter<ECharts>;
    optionInstance: any;
    onOptionInit(ec: any): void;
    updateOption(): void;
    remove_duplicate(oldlist: any): any;
    axisScaleChange(e: number): void;
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    brush(e: any): void;
    bcacBrushSelected: EventEmitter<any>;
    isClearActive: boolean;
    brushMonitor(): void;
    bcacBrushEnlarge: EventEmitter<any>;
    brushEnlarge(e: any): void;
    bcacBrushRestore: EventEmitter<any>;
    brushRestore(e: any): void;
    bcacBrushCalculation: EventEmitter<any>;
    calculate(e: any): void;
}
export {};
