import Scale from './Scale.js';
import IntervalScale from './Interval.js';
import SeriesData from '../data/SeriesData.js';
import { DimensionName, ScaleTick } from '../util/types.js';
declare type IPercentageScaleSetting = {
    baseDim?: string;
};
declare class PercentageScale extends Scale<IPercentageScaleSetting> {
    static type: string;
    readonly type = "percentage";
    private _originalScale;
    private _fixMin;
    private _fixMax;
    private _interval;
    private _niceExtent;
    private _baseDim;
    private _fromValue;
    constructor(setting?: IPercentageScaleSetting);
    /**
     * @param Whether expand the ticks to niced extent.
     */
    getTicks(expandToNicedExtent?: boolean): ScaleTick[];
    getFormattedLabel(tick: ScaleTick, baseValue?: number | string): string;
    setExtent(start: number, end: number): void;
    parsePercentageValue(value: number, baseValue: number | string): number;
    restorePercentageValue(value: number, baseValue: number | string): number;
    /**
     * @return {number} end
     */
    getExtent(): [number, number];
    unionExtent(extent: [number, number], baseValue: number | string): void;
    unionExtentFromData(data: SeriesData, dim: DimensionName, baseValue: number | string): void;
    calcNiceTicks: IntervalScale['calcNiceTicks'];
    /**
     * Update interval and extent of intervals for nice ticks
     * @param approxTickNum default 10 Given approx tick number
     */
    calcNiceExtent(opt: {
        splitNumber: number;
        fixMin?: boolean;
        fixMax?: boolean;
        minInterval?: number;
        maxInterval?: number;
    }): void;
    parse(val: any): number;
    contain(val: number, baseValue: string | number): boolean;
    normalize(val: number, baseValue: string | number): number;
    scale(val: number, baseValue: string | number): number;
    getMinorTicks: IntervalScale['getMinorTicks'];
    getLabel(data: ScaleTick, { baseValue }?: {
        baseValue?: number | string;
    }): string;
    getIsBaseTick(val: number): boolean;
}
export default PercentageScale;
