import { ChartModel, ChartRef } from 'ag-grid-enterprise';
import { ChartingApi } from '../ChartingApi';
import { ApiBase } from './ApiBase';
import { ChartContainer, ChartDefinition } from '../../types';
import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
import { ExternalChartDefinition } from '../../AdaptableState/ChartingState';
export declare class ChartingApiImpl extends ApiBase implements ChartingApi {
    constructor(_adaptable: IAdaptable);
    isChartingEnabled(): boolean;
    getCurrentChartModels(): ChartModel[];
    getChartRef(chartId: string): ChartRef;
    saveCurrentCharts(): void;
    getPersistedCharts(): ChartModel[];
    getChartDefinitions(): ChartDefinition[];
    getChartDefinitionByUuid(uuid: string): ChartDefinition;
    getChartDefinitionByName(name: string): ChartDefinition | undefined;
    showPersistedCharts(): ChartRef[];
    showChartDefinition(chartDefiniton: ChartDefinition, container?: HTMLElement | string): ChartRef;
    showChartDefinitionOnce(chartDefinition: ChartDefinition, container?: HTMLElement): ChartRef;
    closeChartDefinition(chartDefinition: ChartDefinition): void;
    editChartDefinition(editedChartDefinition: ChartDefinition): void;
    updateAgChart(chartDefinition: ChartDefinition): void;
    addChartDefinition(chart: ChartDefinition): void;
    getChartingOpenState(): {
        charts: {
            chartDefinition: ChartDefinition;
            isOpen: boolean;
            containerName: string;
        }[];
    };
    getOpenChartContainer(chartDefinition: ChartDefinition): ChartContainer | null;
    setChartReadOnly(chartDefinition: ChartDefinition): void;
    setChartEditable(chartDefinition: ChartDefinition): void;
    addExternalChartDefinition(chartDefinition: ExternalChartDefinition, options: {
        saveChartBehaviour: 'auto' | 'manual';
    }): void;
    editExternalChartDefinition(chartDefinition: ExternalChartDefinition): void;
    deleteExternalChartDefinition(chartDefinition: ExternalChartDefinition): void;
    getExternalChartDefinitions(): ExternalChartDefinition<unknown>[];
    getExternalChartDefinitionByName(name: string): ExternalChartDefinition | undefined;
}
