import type { AgChartDataMapping, AgChartStyle, AgChartTheme, AgSectorLabel } from './shared/agChartShared'; import type { AgWidgetData, AgWidgetDataFormat } from './shared/agWidget'; /** * Donut series configuration. */ export interface AgDonutChartSeriesTheme { /** * Sector label configuration. */ sectorLabel?: AgSectorLabel; } export interface AgDonutChartOverrides { /** * Styling for the donut series. */ series?: AgDonutChartSeriesTheme; } /** * Theme configuration for donut chart. */ export interface AgDonutChartTheme extends AgChartTheme { /** * Donut-specific settings. */ donut?: AgDonutChartOverrides; } /** * Style configuration for donut chart. */ export type AgDonutChartStyle = AgChartStyle; /** * Format configuration for donut chart widget. */ export type AgDonutChartFormat = AgWidgetDataFormat; /** * Donut Chart widget configuration. * Displays data as proportional slices with a hollow center. * The center can be used for displaying summary information. * * @example * const chart: AgDonutChart = { * format: { * title: { text: 'Expense Breakdown', enabled: true }, * }, * dataMapping: { * categoryKey: [{ id: 'category' }], * valueKey: [{ id: 'amount', aggregation: 'sum' }] * } * }; */ export interface AgDonutChart extends AgWidgetData { /** * Widget type identifier. */ type: 'donut-chart'; }