@adaptabletools/adaptable
Version:
Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements
55 lines (54 loc) • 1.64 kB
TypeScript
import { ChartModel } from 'ag-grid-enterprise';
import { AdaptableObject } from '../types';
import { BaseState } from './BaseState';
export declare const isExternalChartDefinition: (chartDefinition: ChartDefinition | ExternalChartDefinition) => chartDefinition is ExternalChartDefinition<unknown>;
export declare const isAgChartDefinition: (chartDefinition: ChartDefinition | ExternalChartDefinition) => chartDefinition is ChartDefinition;
/**
* Wraps external chart definitions
* Can be used to store charts in Adaptable State
*/
export interface ExternalChartDefinition<T = unknown> extends AdaptableObject {
/**
* The name needs to be unique.
*/
Name: string;
/**
* Chart configuration. It can store any information needed to create the chart.
*/
Data: T;
/**
* Used to specify if the chart is saved in state or transient state.
* @defaultValue true
*/
IsPersisted?: boolean;
}
/**
* Wraps an AG Grid Chart Model
*/
export interface ChartDefinition extends AdaptableObject {
/**
* Name of the Chart
*/
Name: string;
/**
* AG Grid Chart Model
*/
Model: ChartModel;
}
/**
* Persists AG Grid Charts in Adaptable State
*/
export interface ChartingState extends BaseState {
/**
* Wrappers around AG Grid Chart Models
*/
ChartDefinitions?: ChartDefinition[];
/**
* Definitions of External Charts
*/
ExternalChartDefinitions?: ExternalChartDefinition<unknown>[];
}
/**
* Aggregation function used in the Chart
*/
export type ChartingAggFunc = 'sum' | 'min' | 'max' | 'count' | 'avg' | 'first' | 'last';