//#region src/types/BarChartMetrics.d.ts interface BarChartMetrics { [group: string]: { [item: string]: number; }; } //#endregion //#region src/types/ChartOptions.d.ts interface ChartOptions { width?: number; height?: number; margin?: { top?: number; right?: number; bottom?: number; left?: number; }; colors?: string[]; fontFamily?: string; fontSize?: number; title?: string; yAxisLabel?: string; legendTitle?: string; showValues?: boolean; formatValue?: (value: number) => string; decimalPlaces?: number; } //#endregion //#region src/types/BarChartOptions.d.ts interface BarChartOptions extends ChartOptions { barPadding?: number; barGroupPadding?: number; maxValue?: number; } //#endregion //#region src/bar-chart.d.ts /** * Generates an SVG bar chart from given metrics * @param metrics - The data for the bar chart * @param options - Optional configuration for the chart * @returns SVG string representing the bar chart */ declare const generateBarChart: (metrics: BarChartMetrics, options?: Partial) => string; //#endregion //#region src/types/LineChartMetrics.d.ts interface LineChartMetrics { [series: string]: { [x: string | number]: number; }; } //#endregion //#region src/types/LineChartOptions.d.ts interface LineChartOptions extends ChartOptions { lineWidth?: number; pointRadius?: number; showPoints?: boolean; areaFill?: boolean; areaOpacity?: number; curveSmoothing?: boolean; maxValue?: number; minValue?: number; } //#endregion //#region src/line-chart.d.ts /** * Generates an SVG line chart from given metrics * @param metrics - The data for the line chart (series -> x -> y) * @param options - Optional configuration for the chart * @returns SVG string representing the line chart */ declare const generateLineChart: (metrics: LineChartMetrics, options?: Partial) => string; //#endregion //#region src/types/PieChartMetrics.d.ts interface PieChartMetrics { [segment: string]: number; } //#endregion //#region src/types/PieChartOptions.d.ts interface PieChartOptions extends ChartOptions { doughnut?: boolean; doughnutRatio?: number; // Ratio of inner circle to outer circle for doughnut charts startAngle?: number; // Starting angle in degrees showPercentages?: boolean; // Whether to show percentages on slices } //#endregion //#region src/pie-chart.d.ts /** * Generates an SVG pie chart from given metrics * @param metrics - The data for the pie chart * @param options - Optional configuration for the chart * @returns SVG string representing the pie chart */ declare const generatePieChart: (metrics: PieChartMetrics, options?: Partial) => string; /** * Generates an SVG doughnut chart from given metrics * This is a convenience function that sets the doughnut option to true * @param metrics - The data for the doughnut chart * @param options - Optional configuration for the chart * @returns SVG string representing the doughnut chart */ declare const generateDoughnutChart: (metrics: PieChartMetrics, options?: Partial) => string; //#endregion export { BarChartMetrics, BarChartOptions, PieChartMetrics, PieChartOptions, generateBarChart, generateDoughnutChart, generateLineChart, generatePieChart };