import { IIndicatorCountResponse, IIndicatorData } from '../models/indicatorCountResponse';
interface IBasePieChart {
    title: string;
    graphType: string;
    graph_data?: IIndicatorCountResponse['data'] & {
        count: number;
    };
    tooltip?: string;
    _id: string;
    info: string;
}
export declare class ChartService {
    filter: {
        state?: string;
        district?: string;
        block?: string;
        gramPanchayat?: string;
        village?: string;
    };
    generatedChart: any;
    paiLegendStatus: boolean;
    paiLegendData: any;
    originalData: any;
    secondaryData: IIndicatorCountResponse['data'];
    bar: IBasePieChart;
    constructor();
    makeConcentricPieChart(basePie: IBasePieChart, secondaryPie: IIndicatorCountResponse['data'], generatedChart?: any, chartId?: any): any;
    makePieChart(indicator: IBasePieChart, secondaryData?: any, chartId?: any, generatedChart?: any, fullscreen?: boolean): any;
    legendClickCallback(event: any): void;
    /**
     * This function is supposed to be called only when the base pie chart is created atleast once.
     * For the only Example: When user want to see only base pie chart after seeing the secondary/s
     * and base data.
     */
    showOnlyBasePieChart(generatedChart?: any): any;
    makeBarGraph(indicator: any, generatedChart?: any, chartId?: any, showDefaultLegends?: boolean): any;
    createStackedBarChart(baseIndicator: IBasePieChart, secondaryIndicator: IIndicatorData, generatedChart?: any, chartId?: any): any;
    createStackedGroupBarChart(baseIndicator: IBasePieChart, secondaryIndicator: IIndicatorData, generatedChart?: any, chartId?: any): any;
    makeVerticalBar(indicator: any, generatedChart?: any, chartId?: any): any;
    onlyUnique(value: any, index: any, self: any): boolean;
    getData(barData: any, type: any, id: any, across: string, stacked: boolean, indicator: any): any[];
    handlePieChartColor(length: any): string[];
}
export {};
