import { type VariantProps } from 'class-variance-authority';
import { type ChartDataPoint, type ChartSeries } from '@/components/molecules/charts/LineChart';
declare const metricCardVariants: (props?: ({
    size?: "sm" | "md" | "lg" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface MetricCardProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof metricCardVariants> {
    /** The primary metric value to display */
    value: number;
    /** Title displayed above the metric */
    title?: string;
    /** Description text (e.g., "vs last month") */
    description?: string;
    /** Change value (auto-calculated if omitted but data provided) */
    change?: number;
    /** Explicit override for change value */
    changeOverride?: number;
    /** Sentiment for change indicator color */
    changeSentiment?: 'positive' | 'negative' | 'neutral';
    /** Chart data points */
    data?: ChartDataPoint[];
    /** Chart series configuration */
    series?: ChartSeries[];
    /** Type of chart to display */
    chartType?: 'line' | 'bar' | 'area';
    /** Stroke width for line/area charts */
    strokeWidth?: number;
    /** Show area fill under lines (for line/area charts) */
    showArea?: boolean;
    /** Show dots on data points (for line charts) */
    showDots?: boolean;
    /** Curve type for line/area charts */
    curveType?: 'linear' | 'smooth';
    /** Custom formatter for the value */
    valueFormatter?: (n: number) => string;
    /** Custom formatter for the change indicator */
    changeFormatter?: (n: number) => string;
}
declare function MetricCard({ value, title, description, change, changeOverride, changeSentiment, data, series, chartType, strokeWidth, showArea, showDots, curveType, valueFormatter, changeFormatter, size, className, ...props }: MetricCardProps): import("react/jsx-runtime").JSX.Element;
declare namespace MetricCard {
    var displayName: string;
}
export { MetricCard, metricCardVariants };
