import type { HTMLAttributes } from 'svelte/elements';
import type { CartesianDatum, ChartMargin, ChartSeries, ChartSlotClasses } from '../../internal/charts/types.js';
/**
* @summary A trend chart with the area under each line filled, for volume that adds up.
* @description Area chart for trends with volume emphasis — filled regions
* under each series, optionally stacked. Zero-dependency SVG on the design-
* token palette, responsive, dark-mode aware, with a screen-reader data-table
* fallback.
*
* @tag display
* @tag data
* @related LineChart
* @related BarChart
* @stability beta
*
* @example
* ```svelte
*
* ```
*/
export interface AreaChartProps extends Omit, 'children'> {
/** Ordered categories with per-series values. */
data: CartesianDatum[];
/** Series metadata (labels + colors); defaults to one per value column. */
series?: ChartSeries[];
/** Stack series cumulatively instead of overlaying them. @default false */
stacked?: boolean;
/** Opacity of the area fill (0–1). @default 0.2 (overlay) / 0.85 (stacked) */
fillOpacity?: number;
/** SVG height in px. @default 240 */
height?: number;
/** Fixed width in px; omit for responsive width. */
width?: number;
/** Plot margins; merged over the defaults. */
margin?: ChartMargin;
/** Format values for axis labels, tooltips, and the data table. */
formatValue?: (value: number) => string;
/** BCP-47 locale for the default number formatter. */
locale?: string;
/** Show the series legend (only renders with >1 series). @default true */
showLegend?: boolean;
/** Render horizontal gridlines. @default true */
showGrid?: boolean;
/** Accessible label; a summary is generated when omitted. */
ariaLabel?: string;
/** Extra classes merged onto the wrapper. */
class?: string;
/** Remove all default tv classes. */
unstyled?: boolean;
/** Per-slot class overrides. */
slotClasses?: ChartSlotClasses;
/** Apply a named preset registered on ``. */
preset?: string;
}
export { default as AreaChart } from './AreaChart.svelte';