import { type VariantProps } from 'class-variance-authority'; import * as React from 'react'; import type { ChartDataPoint, ChartSeries } from '../../../../types/data.js'; import { sanitizeChartKey } from '../chart-data.js'; import { ChartLegend as WrapperChartLegend } from '../chart-legend.js'; declare const DEFAULT_CHART_COLORS: ("var(--chart-1)" | "var(--chart-2)" | "var(--chart-3)" | "var(--chart-4)" | "var(--chart-5)")[]; declare const lineChartVariants: (props?: ({ size?: "default" | "lg" | "sm" | "xl" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; export type { ChartDataPoint, ChartSeries }; export type LegendPosition = 'none' | 'top' | 'right'; export interface LineChartProps extends React.HTMLAttributes, VariantProps { /** Data points for the chart */ data: ChartDataPoint[]; /** Series configuration */ series: ChartSeries[]; /** Show Y-axis labels and grid lines */ showYAxis?: boolean; /** Show X-axis labels */ showXAxis?: boolean; /** Show horizontal grid lines */ showGrid?: boolean; /** Recharts interval strategy for X-axis tick labels */ xAxisInterval?: number | 'preserveStart' | 'preserveEnd' | 'preserveStartEnd' | 'equidistantPreserveStart'; /** Y-axis label (title) */ yAxisLabel?: string; /** X-axis label (title) */ xAxisLabel?: string; /** Legend position */ legendPosition?: LegendPosition; /** Custom Y-axis tick values */ yAxisTicks?: number[]; /** Format function for Y-axis values */ yAxisFormat?: (value: number) => string; /** Show area fill under lines */ showArea?: boolean; /** Stroke width for lines */ strokeWidth?: number; /** Show dots on data points */ showDots?: boolean; /** Data point marker treatment */ dotStyle?: 'solid' | 'ring' | 'palette'; /** Show labels at each data point */ showValueLabels?: boolean; /** Use the numeric value or category label for data labels */ valueLabelType?: 'value' | 'label'; /** Format numeric data labels */ valueLabelFormatter?: (value: number) => string | number; /** Curve type for lines */ curveType?: 'linear' | 'smooth' | 'step'; /** Show tooltip on hover */ showTooltip?: boolean; /** Accessible label for screen readers */ 'aria-label'?: string; } declare const sanitizeKey: typeof sanitizeChartKey; declare function LineChart({ data, series, showYAxis, showXAxis, showGrid, xAxisInterval, yAxisLabel, xAxisLabel, legendPosition, yAxisTicks, yAxisFormat, showArea, strokeWidth, showDots, dotStyle, showValueLabels, valueLabelType, valueLabelFormatter, curveType, showTooltip, size, className, 'aria-label': ariaLabel, ...props }: LineChartProps): React.JSX.Element; declare namespace LineChart { var displayName: string; } export { DEFAULT_CHART_COLORS, LineChart, lineChartVariants, sanitizeKey, WrapperChartLegend as ChartLegend, };