import type { ContinuousDomain } from "@visx/scale";
import type { ScaleContinuousNumeric } from "d3-scale";
import type { ValueFormatter } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase/visualizations/shared/types/format";
import type { TextWidthMeasurer } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase/visualizations/shared/types/measure-text";
import type { ContinuousScaleType, Range } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase/visualizations/shared/types/scale";
import type { ChartFont } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase/visualizations/shared/types/style";
import type { SeriesData, StackOffset } from "../types";
export declare const createXScale: (domain: ContinuousDomain, range: Range, type: ContinuousScaleType | undefined, isExactRange: boolean) => ScaleContinuousNumeric<number, number, never>;
export declare const getChartScales: <TDatum>(seriesData: SeriesData<TDatum>[], innerHeight: number, innerWidth: number, additionalXValues: number[], xScaleType: ContinuousScaleType, stackOffset: StackOffset, rangeOverride?: Range) => {
    yDomain: import("@visx/scale").StringLike[];
    xDomain: import("@metabase/embedding-sdk-react/dist/frontend/src/metabase/visualizations/shared/types/scale").ContinuousDomain;
    yScale: import("@visx/vendor/d3-scale").ScaleBand<import("@visx/scale").StringLike>;
    xScale: ScaleContinuousNumeric<number, number, never>;
};
export declare const addScalePadding: (scale: ScaleContinuousNumeric<number, number, never>, paddingStart?: number, paddingEnd?: number) => ScaleContinuousNumeric<number, number, never>;
export declare const addSideSpacingForTicksAndLabels: (xScale: ScaleContinuousNumeric<number, number, never>, measureTextWidth: TextWidthMeasurer, tickFont: ChartFont, tickFormatter: ValueFormatter, labelFont: ChartFont, labelFormatter: ValueFormatter, shouldShowLabels?: boolean) => ScaleContinuousNumeric<number, number, never>;
