import { ComponentType } from 'react'; type ChartRenderer = "svg" | "canvas"; /** Inputs a spec compiler hands to a registered chart type's `fromSpec` mapper. */ type ChartSpecInput = { /** Panel `props`, after spec-level normalization. */ props: Record; /** Object-shaped panel data (e.g. `{ nodes, links }`); `{}` for row data. */ data: Record; /** Row-shaped panel data; `[]` for object data. */ rows: Record[]; }; type ChartTypeRegistration = { type: string; Chart: ComponentType>; defaultRenderer?: ChartRenderer; /** * Map a panel spec to `Chart` props. When omitted, spec compilers merge * object data, the first row, and panel props. */ fromSpec?: (input: ChartSpecInput) => Record; }; declare function registerChartType(registration: ChartTypeRegistration): void; declare function getChartType(type: string): ChartTypeRegistration | undefined; declare function listChartTypes(): string[]; declare function clearChartTypes(): void; declare function registerBuiltinChartTypes(): void; export { type ChartRenderer, type ChartSpecInput, type ChartTypeRegistration, clearChartTypes, getChartType, listChartTypes, registerBuiltinChartTypes, registerChartType };