/**
 * @file ChartLegend.tsx
 * @output Renders a legend — discrete swatches or continuous gradient bar
 * @position Child of Chart or standalone
 *
 * Two modes:
 * - Discrete: pass `items` — renders color swatches with labels
 * - Gradient: pass `gradient` + `domain` — renders a continuous color bar with tick labels
 *
 * The `gradient` prop accepts the output of useChartColors().sequential/diverging directly.
 */
export interface ChartLegendItem {
    label: string;
    color: string;
}
export interface ChartLegendProps {
    /** Discrete legend items — color swatches with labels */
    items?: ChartLegendItem[];
    /**
     * Continuous gradient — array of hex colors from low to high.
     * Pass the output of useChartColors().sequential.blue(5) or diverging directly.
     */
    gradient?: string[];
    /** Numeric domain for the gradient [min, max]. Required when gradient is set. */
    domain?: [number, number];
    /** Label for the gradient legend */
    label?: string;
    /** Number of tick labels on the gradient bar (default: 3) */
    ticks?: number;
    /** Custom tick formatter */
    tickFormat?: (value: number) => string;
}
/**
 * Chart legend — discrete swatches or continuous gradient.
 *
 * @example
 * ```
 * <ChartLegend items={[
 *   {label: 'Revenue', color: colors[0]},
 *   {label: 'Expenses', color: colors[1]},
 * ]} />
 * <ChartLegend
 *   gradient={useChartColors().sequential.blue(5)}
 *   domain={[0, 100]}
 *   label="Temperature"
 * />
 * <ChartLegend
 *   gradient={useChartColors().diverging.coldHot(7)}
 *   domain={[-50, 50]}
 *   label="Change %"
 * />
 * ```
 */
export declare function ChartLegend({ items, gradient, domain, label, ticks, tickFormat, }: ChartLegendProps): import("react").JSX.Element | null;
//# sourceMappingURL=ChartLegend.d.ts.map