import * as React from 'react';
import type { ChartState } from "../models/gridChartsIntegration.js";
export type GridChartsRendererProxyRendererCallback = (type: string, props: Record<string, any>, Component: React.ComponentType<any>) => React.ReactNode;
type GridChartsRendererProxyRenderer = React.ComponentType<{
  dimensions: ChartState['dimensions'];
  values: ChartState['values'];
  chartType: ChartState['type'];
  configuration: ChartState['configuration'];
  onRender?: GridChartsRendererProxyRendererCallback;
}>;
export interface GridChartsRendererProxyProps {
  /**
   * The unique identifier for the chart.
   */
  id: string;
  /**
   * The label for the chart.
   */
  label?: string;
  /**
   * The renderer component that will render the chart.
   */
  renderer: GridChartsRendererProxyRenderer;
  /**
   * Callback function called when the chart is about to be rendered.
   * Use this to check and modify the chart props before it is rendered.
   */
  onRender?: GridChartsRendererProxyRendererCallback;
}
declare function GridChartsRendererProxy(props: GridChartsRendererProxyProps): import("react/jsx-runtime").JSX.Element | null;
declare namespace GridChartsRendererProxy {
  var propTypes: any;
}
export { GridChartsRendererProxy };