| import { TimeUnit } from '../util/time.js'; | 
| import IntervalScale from './Interval.js'; | 
| import { TimeScaleTick } from '../util/types.js'; | 
| import { TimeAxisLabelFormatterOption } from '../coord/axisCommonTypes.js'; | 
| import { LocaleOption } from '../core/locale.js'; | 
| import Model from '../model/Model.js'; | 
| declare type TimeScaleSetting = { | 
|     locale: Model<LocaleOption>; | 
|     useUTC: boolean; | 
| }; | 
| declare class TimeScale extends IntervalScale<TimeScaleSetting> { | 
|     static type: string; | 
|     readonly type = "time"; | 
|     _approxInterval: number; | 
|     _minLevelUnit: TimeUnit; | 
|     constructor(settings?: TimeScaleSetting); | 
|     /** | 
|      * Get label is mainly for other components like dataZoom, tooltip. | 
|      */ | 
|     getLabel(tick: TimeScaleTick): string; | 
|     getFormattedLabel(tick: TimeScaleTick, idx: number, labelFormatter: TimeAxisLabelFormatterOption): string; | 
|     /** | 
|      * @override | 
|      */ | 
|     getTicks(): TimeScaleTick[]; | 
|     calcNiceExtent(opt?: { | 
|         splitNumber?: number; | 
|         fixMin?: boolean; | 
|         fixMax?: boolean; | 
|         minInterval?: number; | 
|         maxInterval?: number; | 
|     }): void; | 
|     calcNiceTicks(approxTickNum: number, minInterval: number, maxInterval: number): void; | 
|     parse(val: number | string | Date): number; | 
|     contain(val: number): boolean; | 
|     normalize(val: number): number; | 
|     scale(val: number): number; | 
| } | 
| export default TimeScale; |