import { EChartsOption } from 'echarts'; import { ChartMedia, ChartMode } from '../tokens/chart'; import { ChartConfig, ChartPoint, ChartRow, ChartState } from './types'; export interface ChartBaseProps { data: readonly ChartRow[]; /** Defaults to the surrounding MUI theme's palette mode. */ mode?: ChartMode; /** `export` renders SVG, static and non-interactive, for PDF capture. */ media?: ChartMedia; height?: number | string; /** * Only conditions the component cannot observe. Emptiness is derived from * `data`, so it is deliberately not expressible here. */ state?: ChartState; onPointClick?: (point: ChartPoint) => void; /** Last-resort hook for options the config schema does not model. */ transformOption?: (option: EChartsOption) => EChartsOption; /** Accessible name. Falls back to the config title. */ label?: string; /** * Overlays decal textures on every mark as a second identity channel beyond * hue. Off by default — see `ChartConfig.decals`. * * Exists as a prop as well as a config field because the tier-2 adapters * (`BarChart` and friends) build their own config and never expose one. When * both are given, this wins, so a caller can flip it per render without * rewriting a persisted config. */ decals?: boolean; } export interface ChartProps extends ChartBaseProps { config: ChartConfig; } export declare function Chart({ config, data, mode, media, height, state, onPointClick, transformOption, label, decals, }: ChartProps): import("react").JSX.Element;