import { type NumberValue } from '@mui/x-charts-vendor/d3-scale';
import { type ScaleName } from "../../../../models/index.mjs";
import { type ChartsXAxisProps, type ChartsAxisProps, type ChartsYAxisProps, type AxisId, type DefaultedXAxis, type DefaultedYAxis, type DefaultedAxis, type D3Scale } from "../../../../models/axis.mjs";
import { type ChartSeriesType } from "../../../../models/seriesType/config.mjs";
import type { ChartDrawingArea } from "../../../../hooks/index.mjs";
import { type ChartSeriesConfig } from "../../corePlugins/useChartSeriesConfig/index.mjs";
import { type ComputedAxisConfig } from "./useChartCartesianAxis.types.mjs";
import { type ProcessedSeries } from "../../corePlugins/useChartSeries/useChartSeries.types.mjs";
import { type ZoomData } from "./zoom.types.mjs";
export declare function resolveAxisSize(axis: DefaultedAxis<ScaleName, any, Readonly<ChartsAxisProps>>, autoSizes: Record<AxisId, number> | undefined, direction: 'x' | 'y'): number;
export type ComputeResult<T extends ChartsAxisProps> = {
  axis: ComputedAxisConfig<T>;
  axisIds: AxisId[];
};
type ComputeCommonParams<SeriesType extends ChartSeriesType = ChartSeriesType> = {
  scales: Record<AxisId, D3Scale>;
  drawingArea: ChartDrawingArea;
  formattedSeries: ProcessedSeries<SeriesType>;
  seriesConfig: ChartSeriesConfig<SeriesType>;
  zoomMap?: Map<AxisId, ZoomData>;
  domains: Record<AxisId, {
    domain: ReadonlyArray<string | NumberValue>;
    tickNumber?: number;
  }>;
  autoSizes?: Record<AxisId, number>;
  axesGap?: number;
};
export declare function computeAxisValue<SeriesType extends ChartSeriesType>(options: ComputeCommonParams<SeriesType> & {
  axis?: DefaultedYAxis[];
  axisDirection: 'y';
}): ComputeResult<ChartsYAxisProps>;
export declare function computeAxisValue<SeriesType extends ChartSeriesType>(options: ComputeCommonParams<SeriesType> & {
  axis?: DefaultedXAxis[];
  axisDirection: 'x';
}): ComputeResult<ChartsXAxisProps>;
export {};