import * as am5 from '@amcharts/amcharts5';
import { DataItem, Legend } from '@amcharts/amcharts5';
import { AxisRenderer, CategoryAxis, ColumnSeries, DateAxis, IDateAxisDataItem, LineSeries, StepLineSeries, ValueAxis } from '@amcharts/amcharts5/xy';
import { OnDestroy } from '@angular/core';
import { ThemeModel, ThemeService } from '@engie-group/ngx-gem-spaas';
import { Am5AxisConfig, Am5DateRangeConfig, Am5PieContainer, Am5RootConfig, Am5SeriesConfig, Am5XyContainer } from "../_models/am5.model";
import * as i0 from "@angular/core";
export declare class Am5Service implements OnDestroy {
    private themeService;
    private theme;
    private onDestroy$;
    constructor(themeService: ThemeService);
    ngOnDestroy(): void;
    private onNewTheme;
    getTheme(): ThemeModel | null;
    createXyChart(chartDiv: string | HTMLElement, config?: Am5RootConfig): Am5XyContainer;
    createLegend(am5Container: Am5XyContainer | Am5PieContainer, withLegend: boolean | undefined, legendWithoutValueLabels: boolean | undefined): void;
    destroyChart(am5Container: Am5XyContainer | Am5PieContainer | undefined): void;
    addCategoryAxis(am5XyContainer: Am5XyContainer, categoryField: string, config: Am5AxisConfig): CategoryAxis<AxisRenderer>;
    addDateAxis(am5XyContainer: Am5XyContainer, config: Am5AxisConfig, baseInterval?: am5.time.ITimeInterval): DateAxis<AxisRenderer>;
    addValueAxis(am5XyContainer: Am5XyContainer, config: Am5AxisConfig): ValueAxis<AxisRenderer>;
    private createAxisTooltip;
    private setGenericAxisProps;
    private setAxisTitle;
    updateAxisTitle(axis: CategoryAxis<AxisRenderer> | DateAxis<AxisRenderer> | ValueAxis<AxisRenderer>, newTitle: string): void;
    addSeries(am5XyContainer: Am5XyContainer, xAxis: DateAxis<AxisRenderer> | ValueAxis<AxisRenderer> | CategoryAxis<AxisRenderer>, yAxis: DateAxis<AxisRenderer> | ValueAxis<AxisRenderer> | CategoryAxis<AxisRenderer>, config: Am5SeriesConfig): LineSeries | ColumnSeries | StepLineSeries;
    private setSeriesStrokeAndFill;
    setDataForAll(am5XyContainer: Am5XyContainer, data: object[], axes?: (DateAxis<AxisRenderer> | ValueAxis<AxisRenderer> | CategoryAxis<AxisRenderer>)[]): void;
    setDataForSeries(series: LineSeries | StepLineSeries | ColumnSeries, data: object[]): void;
    setDataForLegend(am5XyContainer: Am5XyContainer): void;
    getLegend(am5XyContainer: Am5XyContainer): Legend | undefined;
    addDateRange(dateAxis: DateAxis<AxisRenderer>, config: Am5DateRangeConfig): DataItem<IDateAxisDataItem>;
    static ɵfac: i0.ɵɵFactoryDeclaration<Am5Service, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<Am5Service>;
}
