import * as Redux from 'redux';
import { AdaptableState } from '../../../types';
import { ChartDefinition, ChartingState, ExternalChartDefinition } from '../../AdaptableState/ChartingState';
/**
 * @ReduxAction Set AG Grid Charting Models
 */
export declare const SET_CHARTING_CHARTS = "SET_CHARTING_CHARTS";
/**
 * @ReduxAction Charting Module is ready
 */
export declare const CHARTING_READY = "CHARTING_READY";
/**
 * @ReduxAction Edit chart definition
 */
export declare const CHARTING_EDIT_CHART = "CHARTING_EDIT_CHART";
/**
 * @ReduxAction Add chart definition
 */
export declare const CHARTING_ADD_CHART = "CHARTING_ADD_CHART";
/**
 * @ReduxAction Deelte chart definition
 */
export declare const CHARTING_DELETE_CHART = "CHARTING_DELETE_CHART";
/**
 * @ReduxAction Edit chart definition
 */
export declare const CHARTING_EDIT_EXTERNAL_CHART = "CHARTING_EDIT_EXTERNAL_CHART";
/**
 * @ReduxAction Add chart definition
 */
export declare const CHARTING_ADD_EXTERNAL_CHART = "CHARTING_ADD_EXTERNAL_CHART";
/**
 * @ReduxAction Deelte chart definition
 */
export declare const CHARTING_DELETE_EXTERNAL_CHART = "CHARTING_DELETE_EXTERNAL_CHART";
export interface ChartingSetChartModelsAction extends Redux.Action {
    charts: ChartDefinition[];
}
export interface ChartingReadyAction extends Redux.Action {
    chartingState: ChartingState;
}
export interface ChartingEditChartAction extends Redux.Action {
    chartDefinition: ChartDefinition;
}
export interface ChartingAddChartAction extends Redux.Action {
    chartDefinition: ChartDefinition;
}
export interface ChartingDeleteChartAction extends Redux.Action {
    chartDefinition: ChartDefinition;
}
export interface ChartingEditExternalChartAction extends Redux.Action {
    chartDefinition: ExternalChartDefinition;
}
export interface ChartingAddExternalChartAction extends Redux.Action {
    chartDefinition: ExternalChartDefinition;
}
export interface ChartingDeleteExternalChartAction extends Redux.Action {
    chartDefinition: ExternalChartDefinition;
}
export declare const ChartingSetChartModels: (charts: ChartDefinition[]) => ChartingSetChartModelsAction;
export declare const ChartingReady: (chartingState: ChartingState) => ChartingReadyAction;
export declare const ChartingEditChart: (chartDefinition: ChartDefinition) => ChartingEditChartAction;
export declare const ChartingAddChart: (chartDefinition: ChartDefinition) => ChartingAddChartAction;
export declare const ChartingDeleteChart: (chartDefinition: ChartDefinition) => ChartingDeleteChartAction;
export declare const ChartingEditExternalChart: (chartDefinition: ExternalChartDefinition) => ChartingEditExternalChartAction;
export declare const ChartingAddExternalChart: (chartDefinition: ExternalChartDefinition) => ChartingAddExternalChartAction;
export declare const ChartingDeleteExternalChart: (chartDefinition: ExternalChartDefinition) => ChartingDeleteExternalChartAction;
export declare const initialState: ChartingState;
export declare const ChartingGetChartModels: (state: AdaptableState) => ChartDefinition[];
export declare const ChartingGetExternalChartDefinitions: (state: AdaptableState) => ExternalChartDefinition[];
export declare const ChartingReducer: Redux.Reducer<ChartingState>;
