import { ChartColorPalette, ChartData, ChartType, Orientation } from "./types.js";
import * as react_jsx_runtime282 from "react/jsx-runtime";

//#region src/react/charts/base.d.ts
interface BaseChartProps {
  /** Chart data (Arrow Table or JSON array) - format is auto-detected */
  data: ChartData;
  /** Chart type */
  chartType: ChartType;
  /** X-axis field key (auto-detected from schema if not provided) */
  xKey?: string;
  /** Y-axis field key(s) (auto-detected from schema if not provided) */
  yKey?: string | string[];
  /** Chart orientation @default "vertical" */
  orientation?: Orientation;
  /** Chart height in pixels @default 300 */
  height?: number;
  /** Chart title */
  title?: string;
  /** Show legend @default true */
  showLegend?: boolean;
  /**
   * Color palette to use. Auto-selected based on chart type if not specified.
   * - "categorical": Distinct colors for different categories (bar, pie, line)
   * - "sequential": Gradient for magnitude (heatmap)
   * - "diverging": Two-tone for positive/negative (correlation)
   */
  colorPalette?: ChartColorPalette;
  /** Custom colors (overrides colorPalette) */
  colors?: string[];
  /** Show data point symbols (line/area charts) @default false */
  showSymbol?: boolean;
  /** Smooth line curves (line/area charts) @default true */
  smooth?: boolean;
  /** Stack series @default false */
  stacked?: boolean;
  /** Symbol size for scatter charts @default 8 */
  symbolSize?: number;
  /** Show area fill for radar charts @default true */
  showArea?: boolean;
  /** Inner radius for pie/donut (0-100) @default 0 */
  innerRadius?: number;
  /** Show labels on pie/donut slices @default true */
  showLabels?: boolean;
  /** Label position for pie/donut @default "outside" */
  labelPosition?: "outside" | "inside" | "center";
  /** Y-axis field key for heatmap (the row dimension) */
  yAxisKey?: string;
  /** Min value for heatmap color scale */
  min?: number;
  /** Max value for heatmap color scale */
  max?: number;
  /** Additional ECharts options to merge */
  options?: Record<string, unknown>;
  /** Additional CSS classes */
  className?: string;
}
/**
 * Base chart component that handles both Arrow and JSON data.
 * Renders using ECharts for consistent output across both formats.
 */
declare function BaseChart({
  data,
  chartType,
  xKey,
  yKey,
  orientation,
  height,
  title,
  showLegend,
  colorPalette,
  colors: customColors,
  showSymbol,
  smooth,
  stacked,
  symbolSize,
  showArea,
  innerRadius,
  showLabels,
  labelPosition,
  yAxisKey,
  min,
  max,
  options: customOptions,
  className
}: BaseChartProps): react_jsx_runtime282.JSX.Element;
//#endregion
export { BaseChart, BaseChartProps };
//# sourceMappingURL=base.d.ts.map