import { CartesianChartProps } from '../internal/components/cartesian-chart/interfaces'; export declare type ChartDataTypes = number | string | Date; export declare type SeriesType = 'line' | 'bar'; export declare type ScaleType = 'linear' | 'log' | 'time' | 'categorical'; export declare type ScaleRange = [number, number]; export interface InternalChartSeries { index: number; color: string; series: MixedLineBarChartProps.ChartSeries; } export interface MixedLineBarChartProps extends CartesianChartProps> { /** * Array that represents the source of data for the displayed chart. * Each element can represent a line series, bar series, or a threshold, and can have the following properties: * * * `title` (string): A human-readable title for this series * * `type` (string): Series type (`"line"`, `"bar"`, or `"threshold"`) * * `data` (Array): An array of data points, represented as objects with `x` and `y` properties * * `color` (string): (Optional) A color hex value for this series. When assigned, it takes priority over the automatically assigned color * * `valueFormatter` (Function): (Optional) A function that formats data values before rendering in the UI, For example, in the details popover. */ series: ReadonlyArray>; /** * When set to `true`, bars in the same data point are stacked instead of grouped next to each other. */ stackedBars?: boolean; /** * When set to `true`, the x and y axes are flipped, which causes any bars to be rendered horizontally instead of vertically. * This can only be used when the chart consists exclusively of bar series. */ horizontalBars?: boolean; /** * When set to `true`, adds a visual emphasis on the zero baseline axis. * See the usage guidelines for more details. */ emphasizeBaselineAxis?: boolean; } export declare namespace MixedLineBarChartProps { export interface Datum { x: T; y: number; } interface IDataSeries { type: 'line' | 'bar' | 'threshold'; title: string; color?: string; data: T extends unknown ? ReadonlyArray> : ReadonlyArray>; valueFormatter?: T extends unknown ? CartesianChartProps.ValueFormatter : CartesianChartProps.ValueFormatter; } export interface BarDataSeries extends IDataSeries { type: 'bar'; } export interface LineDataSeries extends IDataSeries { type: 'line'; } export interface ThresholdSeries extends Omit, 'data' | 'valueFormatter'> { type: 'threshold'; y: number; valueFormatter?: CartesianChartProps.TickFormatter; } export type DataSeries = LineDataSeries | BarDataSeries; export type ChartSeries = DataSeries | ThresholdSeries; export type FilterChangeDetail = CartesianChartProps.FilterChangeDetail>; export type HighlightChangeDetail = CartesianChartProps.HighlightChangeDetail>; export type TickFormatter = CartesianChartProps.TickFormatter; export type ValueFormatter = CartesianChartProps.ValueFormatter; export type I18nStrings = CartesianChartProps.I18nStrings; export {}; } //# sourceMappingURL=interfaces.d.ts.map