import { ApproxAxisLabelCount } from '../../../shared-logic/src/Component/types';
import { DataType } from '../Field/types';
import { QueryAttributes } from '../QueryAttributes/types';
import { FormattedResult } from '../Result/types';
import { GoalLine } from '../ScatterChartV2/types';
import { Tick } from './types';
declare type FormattingFunction = (_value: unknown, _nullValueAlias?: string) => string;
export interface GetNumericScaleAndTicksArgs {
    data: FormattedResult['contentMapped'];
    xKey: string | null;
    xScaleDataType: DataType;
    yKeys: string[];
    nullValue: string | undefined;
    approxYAxisLabelCount: ApproxAxisLabelCount;
    formattingFunctionX: FormattingFunction;
    formattingFunctionY: FormattingFunction;
    order: QueryAttributes.Order[];
    goalLines: GoalLine[];
    xAxisMin?: number | null;
    xAxisMax?: number | null;
    yAxisMin?: number | null;
    yAxisMax?: number | null;
}
export interface GetNumericScaleAndTicksReturn {
    x: {
        ticks: Array<Tick<Date | string | number>>;
        scale: {
            max: number | Date | null;
            min: number | Date | null;
            key: string | null;
            ordering: 'asc' | 'desc' | null;
            dataType: DataType;
        };
    };
    y: {
        ticks: Array<Tick<number>>;
        scale: {
            max: number;
            min: number;
            key: string | null;
            ordering: 'asc' | 'desc';
            dataType: 'number';
        };
    };
}
export declare const getNumericScaleAndTicks: ({ data, xKey, yKeys, xScaleDataType, nullValue, approxYAxisLabelCount, formattingFunctionX, formattingFunctionY, order, goalLines, xAxisMin, xAxisMax, yAxisMin, yAxisMax, }: GetNumericScaleAndTicksArgs) => GetNumericScaleAndTicksReturn;
export {};
