import type { Datum } from "../shared/datumTypes";
import type { StreamXYFrameProps } from "../../stream/types";
import type { LegendPosition } from "../shared/hooks";
import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
import { type TooltipProp } from "../../Tooltip/Tooltip";
export interface MinimapConfig {
    /** Height of the minimap overview (default: 60) */
    height?: number;
    /** Margin for the minimap chart */
    margin?: {
        top?: number;
        right?: number;
        bottom?: number;
        left?: number;
    };
    /** Line style override for the minimap */
    lineStyle?: (d: Datum) => Datum;
    /** Show axes in minimap (default: false) */
    showAxes?: boolean;
    /** Background color for minimap */
    background?: string;
    /** Brush direction: "x" (default) or "y" */
    brushDirection?: "x" | "y";
}
export interface MinimapChartProps<TDatum extends Datum = Datum> extends Omit<BaseChartProps, "onClick" | "onObservation" | "selection" | "linkedHover">, AxisConfig {
    /** Array of data points or line objects with coordinates */
    data: TDatum[];
    /** X accessor (default: "x") */
    xAccessor?: ChartAccessor<TDatum, number>;
    /** Y accessor (default: "y") */
    yAccessor?: ChartAccessor<TDatum, number>;
    /** Group data into multiple lines */
    lineBy?: ChartAccessor<TDatum, string>;
    /** Field containing coordinate arrays in line objects (default: "coordinates") */
    lineDataAccessor?: string;
    /** Color-by field or function */
    colorBy?: ChartAccessor<TDatum, string>;
    /** Color scheme (default: "category10") */
    colorScheme?: string | string[];
    /** Curve type (default: "linear") */
    curve?: "linear" | "monotoneX" | "monotoneY" | "step" | "stepAfter" | "stepBefore" | "basis" | "cardinal" | "catmullRom";
    /** Line stroke width (default: 2) */
    lineWidth?: number;
    /** Fill area under lines */
    fillArea?: boolean;
    /** Area opacity when fillArea is true (default: 0.3) */
    areaOpacity?: number;
    /** Show points on lines */
    showPoints?: boolean;
    /** Point radius (default: 3) */
    pointRadius?: number;
    /** Enable hover (default: true) */
    enableHover?: boolean;
    /** Show grid (default: false) */
    showGrid?: boolean;
    /** Show legend */
    showLegend?: boolean;
    /** Legend position */
    legendPosition?: LegendPosition;
    /** Tooltip config */
    tooltip?: TooltipProp;
    /** Minimap configuration */
    minimap?: MinimapConfig;
    /** Show minimap above the main chart (default: false — below) */
    renderBefore?: boolean;
    /** Callback when brush extent changes */
    onBrush?: (extent: [number, number] | null) => void;
    /** Controlled brush extent */
    brushExtent?: [number, number];
    /** Additional StreamXYFrame props */
    frameProps?: Partial<Omit<StreamXYFrameProps, "chartType" | "data" | "size">>;
}
export declare function MinimapChart<TDatum extends Datum = Datum>(props: MinimapChartProps<TDatum>): import("react/jsx-runtime").JSX.Element;
export declare namespace MinimapChart {
    var displayName: string;
}
