import type { AgChartDataMapping, AgChartMarker, AgChartStyle, AgChartTheme, AgSeriesLabel } from './shared/agChartShared'; import type { AgWidgetData, AgWidgetDataFormat } from './shared/agWidget'; /** * Line series configuration. */ export interface AgLineChartSeriesConfig { /** * Marker configuration for data points. */ marker?: AgChartMarker; /** * Series label configuration. */ label?: AgSeriesLabel; } export interface AgLineChartOverrides { /** * Series configuration. */ series?: AgLineChartSeriesConfig; } /** * Theme configuration for line chart. */ export interface AgLineChartTheme extends AgChartTheme { /** * Line-specific settings. */ line?: AgLineChartOverrides; } /** * Style configuration for line chart. */ export type AgLineChartStyle = AgChartStyle; /** * Format configuration for line chart. */ export type AgLineChartFormat = AgWidgetDataFormat; /** * Line Chart widget configuration. * Displays data as connected lines showing trends over categories. * * @example * const chart: AgLineChart = { * format: { * title: { text: 'Sales Trend', enabled: true }, * style: { * theme: { * line: { series: { marker: { enabled: true, shape: 'circle' } } } * } * } * }, * dataMapping: { * categoryKey: [{ id: 'month' }], * valueKey: [{ id: 'sales', aggregation: 'sum' }] * } * }; */ export interface AgLineChart extends AgWidgetData { /** * Widget type identifier. */ type: 'line-chart'; }