| import Scale from './Scale.js'; | 
| import { ScaleTick, Dictionary } from '../util/types.js'; | 
| declare class IntervalScale<SETTING extends Dictionary<unknown> = Dictionary<unknown>> extends Scale<SETTING> { | 
|     static type: string; | 
|     type: string; | 
|     protected _interval: number; | 
|     protected _niceExtent: [number, number]; | 
|     private _intervalPrecision; | 
|     parse(val: number): number; | 
|     contain(val: number): boolean; | 
|     normalize(val: number): number; | 
|     scale(val: number): number; | 
|     setExtent(start: number | string, end: number | string): void; | 
|     unionExtent(other: [number, number]): void; | 
|     getInterval(): number; | 
|     setInterval(interval: number): void; | 
|     /** | 
|      * @param expandToNicedExtent Whether expand the ticks to niced extent. | 
|      */ | 
|     getTicks(expandToNicedExtent?: boolean): ScaleTick[]; | 
|     getMinorTicks(splitNumber: number): number[][]; | 
|     /** | 
|      * @param opt.precision If 'auto', use nice presision. | 
|      * @param opt.pad returns 1.50 but not 1.5 if precision is 2. | 
|      */ | 
|     getLabel(data: ScaleTick, opt?: { | 
|         precision?: 'auto' | number; | 
|         pad?: boolean; | 
|     }): string; | 
|     /** | 
|      * @param splitNumber By default `5`. | 
|      */ | 
|     calcNiceTicks(splitNumber?: number, minInterval?: number, maxInterval?: number): void; | 
|     calcNiceExtent(opt: { | 
|         splitNumber: number; | 
|         fixMin?: boolean; | 
|         fixMax?: boolean; | 
|         minInterval?: number; | 
|         maxInterval?: number; | 
|     }): void; | 
|     setNiceExtent(min: number, max: number): void; | 
| } | 
| export default IntervalScale; |