/**
 * Core types for clay's chart library.
 *
 * Two layers consume these:
 *
 * 1. The high-level chart components (`<BarChart>`, `<LineChart>`, `<PieChart>`) — single-call
 *    convenience renderers with sensible defaults.
 * 2. The artifact-side `ChartConfig` (in `@/components/artifacts/types`) — wire-protocol shape
 *    that drives the artifact renderer. `artifacts/types` re-exports `ChartSeries` and
 *    `ChartVariant` from here so both layers share one canonical type.
 */
/**
 * A single series in a multi-series chart. Used by `<LineChart>` and `<BarChart>`.
 */
interface ChartSeries {
    /** Must match a property name on every row in the chart's `data`. The value at this property
     * is plotted (coerced to number if necessary). */
    key: string;
    /** Human-readable name shown in legend + tooltip. Defaults to `key` if missing, but always
     * pass a label for clarity. */
    label: string;
}
/**
 * Variant discriminator — used by code that selects a chart type at runtime (the artifact
 * renderer, for example). Each variant maps to a dedicated high-level component.
 */
type ChartVariant = "LINE" | "BAR" | "PIE";

export type { ChartSeries as C, ChartVariant as a };
