import type { AxisID, DomainWithMetadata, DynamicContext, NormalisedNumberAxisOptions } from 'ag-charts-core';
import type { AgNumericValue, 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, AgNumericValue, 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<AgNumericValue>): {
        domain: (number | bigint)[];
        clipped: boolean;
    };
    getDomainExtentsNice(): [boolean, boolean];
    protected getVisibleDomain(domain: AgNumericValue[]): [number, number];
    tickFormatParams(domain: AgNumericValue[], _ticks: AgNumericValue[], fractionDigits?: number): AxisTickFormatParams;
    datumFormatParams(value: any, params: FormatDatumParams, fractionDigits?: number): FormatterParams<any>;
}
