import { type ChartKitThemeContextValue } from "../../theme";
import type { LineChartProps, LineChartSelectionModel } from "./types";
import { type LineChartInteractionPoint } from "./interaction";
export declare const useChartModel: <TData extends Record<string, unknown>>({ data, xKey, yKey, yKeys, series, width, height, theme, preset, decimation, curve, connectNulls, area, areaFill, showDots, dots, selectedIndex, activeDot, crosshair, tooltip, referenceBands, referenceLines, showHorizontalGridLines, showVerticalGridLines, legend, labelStrategy, labelRotation, labelMinGap, edgeLabelPolicy, yDomain, yAxisLabelWidth, formatXLabel, formatYLabel, chartKitTheme, dataIndexOffset, selectionPointer, stableYAxisData }: LineChartProps<TData> & {
    chartKitTheme: ChartKitThemeContextValue;
    dataIndexOffset?: number;
    selectionPointer?: {
        index: number;
        x: number;
        y: number;
    } | undefined;
    stableYAxisData?: TData[] | undefined;
}) => {
    boxes: import("../../../core/index").ChartBoxes;
    geometries: {
        style: {
            strokeWidth: number;
            strokeStyle: import("./options").ResolvedLineChartStrokeStyle;
            dot: import("./options").ResolvedLineChartDotConfig;
            color: string;
            areaFill: import("./options").ResolvedLineChartAreaFillConfig;
            threshold: import("./options").ResolvedLineChartThresholdStyle | undefined;
        };
        geometry: import("../../../core/index").LineSeriesGeometry<TData>;
    }[];
    interactionPoints: LineChartInteractionPoint<TData>[];
    legendModel: {
        config: import("./types").ResolvedLineChartLegendConfig;
        renderProps: {
            x: number;
            y: number;
            width: number;
            height: number;
            position: import("./types").LineChartLegendPosition;
            align: import("./types").LineChartLegendAlign;
            theme: import("../../theme").ResolvedCartesianChartTheme;
            items: ({
                labelColor: string;
                labelGap: number;
                paddingHorizontal: number;
                paddingVertical: number;
                strokeDasharray: readonly number[] | undefined;
                strokeLinecap: import("./options").LineChartStrokeLinecap;
                strokeOpacity: number;
                strokeWidth: number;
                fontFamily: string;
                index: number;
                key: string;
                label: string;
                color: string;
                x: number;
                y: number;
                width: number;
                height: number;
                contentX: number;
                contentY: number;
                contentWidth: number;
                contentHeight: number;
                markerSize: number;
                marker: import("./types").LineChartLegendMarker;
                fontSize: number;
            } | {
                labelColor: string;
                labelGap: number;
                paddingHorizontal: number;
                paddingVertical: number;
                strokeDasharray: readonly number[] | undefined;
                strokeLinecap: import("./options").LineChartStrokeLinecap;
                strokeOpacity: number;
                strokeWidth: number;
                fontFamily?: never;
                index: number;
                key: string;
                label: string;
                color: string;
                x: number;
                y: number;
                width: number;
                height: number;
                contentX: number;
                contentY: number;
                contentWidth: number;
                contentHeight: number;
                markerSize: number;
                marker: import("./types").LineChartLegendMarker;
                fontSize: number;
            })[];
        };
    } | undefined;
    referenceBandModels: import("./references").LineChartReferenceBandModel[];
    referenceLineModels: import("./references").LineChartReferenceLineModel[];
    resolvedTheme: import("../../theme").ResolvedCartesianChartTheme;
    showHorizontalGridLines: boolean;
    showVerticalGridLines: boolean;
    crosshairConfig: import("./options").ResolvedLineChartCrosshairConfig;
    selectionModel: LineChartSelectionModel<TData> | undefined;
    xLabelLayout: import("./xLabels").XLabelLayout;
    yScale: import("../../../core/index").LinearScale;
    yTicks: number[];
    formatYLabel: (value: number) => string;
};
export type LineChartModel<TData extends Record<string, unknown>> = ReturnType<typeof useChartModel<TData>>;
//# sourceMappingURL=useChartModel.d.ts.map