UNPKG

ag-grid-community

Version:

Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components

293 lines (292 loc) 7.83 kB
export declare enum ChartType { Column = "column", GroupedColumn = "groupedColumn", StackedColumn = "stackedColumn", NormalizedColumn = "normalizedColumn", Bar = "bar", GroupedBar = "groupedBar", StackedBar = "stackedBar", NormalizedBar = "normalizedBar", Line = "line", Scatter = "scatter", Bubble = "bubble", Pie = "pie", Doughnut = "doughnut", Area = "area", StackedArea = "stackedArea", NormalizedArea = "normalizedArea", Histogram = "histogram" } export declare type ChartMenuOptions = 'chartSettings' | 'chartData' | 'chartFormat' | 'chartLink' | 'chartUnlink' | 'chartDownload'; export interface SeriesOptions { fill: FillOptions; stroke: StrokeOptions; highlightStyle: HighlightOptions; listeners?: { [key in string]: Function; }; } export interface ChartTooltip { enabled?: boolean; class?: string; tracking?: boolean; delay?: number; } export interface ChartOptions<T extends SeriesOptions> { document?: Document; seriesDefaults: T; width?: number; height?: number; padding: PaddingOptions; background: BackgroundOptions; title: CaptionOptions; subtitle: CaptionOptions; navigator: NavigatorOptions; legend: LegendOptions; tooltipClass?: string; tooltipTracking?: boolean; tooltip?: ChartTooltip; listeners?: { [key in string]: Function; }; } export interface PaddingOptions { top: number; right: number; bottom: number; left: number; } export interface BackgroundOptions { fill: string; visible: boolean; } export interface FontOptions { fontStyle: FontStyle; fontWeight: FontWeight; fontSize: number; fontFamily: string; color: string; } export declare type FontStyle = 'normal' | 'italic' | 'oblique'; export declare type FontWeight = 'normal' | 'bold' | 'bolder' | 'lighter' | '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900'; export interface CaptionOptions extends FontOptions { enabled: boolean; text?: string; } export interface LegendOptions { enabled: boolean; position: LegendPosition; spacing: number; item: LegendItemOptions; } export declare enum LegendPosition { Top = "top", Right = "right", Bottom = "bottom", Left = "left" } export interface LegendItemOptions { label: LegendLabelOptions; marker: LegendMarkerOptions; paddingX: number; paddingY: number; } export interface LegendLabelOptions extends FontOptions { } export interface NavigatorOptions { enabled: boolean; height: number; min: number; max: number; mask: NavigatorMaskOptions; minHandle: NavigatorHandleOptions; maxHandle: NavigatorHandleOptions; } export interface NavigatorMaskOptions { fill: string; stroke: string; strokeWidth: number; fillOpacity: number; } export interface NavigatorHandleOptions { fill: string; stroke: string; strokeWidth: number; width: number; height: number; gripLineGap: number; gripLineLength: number; } export declare type MarkerShape = 'circle' | 'cross' | 'diamond' | 'plus' | 'square' | 'triangle'; export interface LegendMarkerOptions { shape: MarkerShape; size: number; padding: number; strokeWidth: number; } export interface CartesianChartOptions<T extends SeriesOptions> extends ChartOptions<T> { xAxis: AxisOptions; yAxis: AxisOptions; navigator: NavigatorOptions; } export interface PolarChartOptions<T extends SeriesOptions> extends ChartOptions<T> { } export interface AxisOptions { type?: AxisType; title: CaptionOptions; line: AxisLineOptions; tick: AxisTickOptions; label: AxisLabelOptions; gridStyle: GridStyle[]; } export declare type AxisType = 'category' | 'number' | 'time'; export interface AxisLineOptions { width: number; color: string; } export interface AxisTickOptions { width: number; size: number; color: string; } declare type AxisLabelFormatter = (params: { value: any; index: number; fractionDigits?: number; formatter?: (x: any) => string; }) => string; export interface AxisLabelOptions extends FontOptions { padding: number; rotation: number; format?: string; formatter?: AxisLabelFormatter; } export interface GridStyle { stroke: string; lineDash?: number[]; } export interface HighlightOptions { fill: string; stroke?: string; } export interface FillOptions { colors: string[]; opacity: number; } export interface StrokeOptions { colors: string[]; opacity: number; width: number; } export interface DropShadowOptions { enabled: boolean; color: string; xOffset: number; yOffset: number; blur: number; } export interface SeriesLabelOptions extends FontOptions { enabled: boolean; } interface TooltipRendererResult { content: string; title?: string; } export interface TooltipOptions<TParams> { enabled: boolean; renderer?: (params: TParams) => string | TooltipRendererResult; } export interface TooltipRendererParams { datum: any; title?: string; color: string; } export interface CartesianTooltipRendererParams extends TooltipRendererParams { xKey: string; xValue: any; xName: string; yKey: string; yValue: any; yName: string; } export interface BarSeriesOptions extends SeriesOptions { shadow: DropShadowOptions; label: BarSeriesLabelOptions; tooltip: TooltipOptions<BarTooltipRendererParams>; lineDash: number[]; lineDashOffset: number; } export interface HistogramSeriesOptions extends BarSeriesOptions { binCount?: number; } export interface BarSeriesLabelOptions extends SeriesLabelOptions { formatter?: (params: { value: number; }) => string; } export interface BarTooltipRendererParams extends CartesianTooltipRendererParams { } export interface LineSeriesOptions extends SeriesOptions { marker: MarkerOptions; tooltip: TooltipOptions<LineTooltipRendererParams>; lineDash: number[]; lineDashOffset: number; } export interface MarkerOptions { enabled: boolean; shape: MarkerShape; size: number; strokeWidth: number; formatter?: Function; } export interface LineTooltipRendererParams extends CartesianTooltipRendererParams { } export interface ScatterSeriesOptions extends SeriesOptions { marker: ScatterMarkerOptions; tooltip: TooltipOptions<ScatterTooltipRendererParams>; paired: boolean; } export interface ScatterMarkerOptions extends MarkerOptions { maxSize?: number; } export interface ScatterTooltipRendererParams extends CartesianTooltipRendererParams { sizeKey?: string; sizeName?: string; labelKey?: string; labelName?: string; } export interface AreaSeriesOptions extends SeriesOptions { marker: MarkerOptions; shadow: DropShadowOptions; tooltip: TooltipOptions<AreaTooltipRendererParams>; lineDash: number[]; lineDashOffset: number; } export interface AreaTooltipRendererParams extends CartesianTooltipRendererParams { } export interface PieSeriesOptions extends SeriesOptions { title: CaptionOptions; label: PieSeriesLabelOptions; callout: PieSeriesCalloutOptions; shadow: DropShadowOptions; tooltip: TooltipOptions<PieTooltipRendererParams>; lineDash: number[]; lineDashOffset: number; } export interface PieSeriesLabelOptions extends SeriesLabelOptions { minAngle: number; offset: number; } export interface PieSeriesCalloutOptions { length: number; strokeWidth: number; colors: string[]; } export interface PieTooltipRendererParams extends TooltipRendererParams { angleKey: string; angleValue: any; angleName?: string; labelKey?: string; labelName?: string; } export {};