import type { AxisID, DomainWithMetadata, DynamicContext, NormalisedNumberAxisOptions } from 'ag-charts-core';
import type { FormatterParams } from 'ag-charts-types';
import type { ChartRegistry } from '../../module/moduleContext';
import { LinearScale } from '../../scale/linearScale';
import type { LogScale } from '../../scale/logScale';
import type { FormatDatumParams } from '../chartAxis';
import type { AxisTickFormatParams } from './axis';
import { CartesianAxis } from './cartesianAxis';
export declare class NumberAxis<TOptions extends NormalisedNumberAxisOptions = NormalisedNumberAxisOptions> extends CartesianAxis<LinearScale | LogScale, number, TOptions> {
    static readonly className: string;
    static readonly type: string;
    constructor(moduleCtx: DynamicContext<ChartRegistry>, id: AxisID, scale: LinearScale | LogScale | undefined, options: TOptions);
    hasDefinedDomain(): boolean;
    protected getLabelFormat(): string | undefined;
    normaliseDataDomain(d: DomainWithMetadata<number>): {
        domain: number[];
        clipped: boolean;
    };
    getDomainExtentsNice(): [boolean, boolean];
    protected getVisibleDomain(domain: number[]): [number, number];
    tickFormatParams(domain: number[], _ticks: number[], fractionDigits?: number): AxisTickFormatParams;
    datumFormatParams(value: any, params: FormatDatumParams, fractionDigits?: number): FormatterParams<any>;
}
