import { LinearScale, LogScale, SymlogScale } from '@visactor/vscale'; type IRange = { max?: number; min?: number; }; export declare class LinearAxisScale { protected _extend: { [key: string]: number; }; _scale: LinearScale | LogScale | SymlogScale; _scales: (LinearScale | LogScale | SymlogScale)[]; nice: boolean; zero: boolean; domain: Required; expand?: IRange; forceTickCount?: number; tickCount?: number; niceType?: 'tickCountFirst' | 'accurateFirst'; type?: 'linear' | 'time' | 'log' | 'symlog'; constructor(type?: 'linear' | 'time' | 'log' | 'symlog'); setExtraAttrFromSpec(nice: boolean, zero: boolean, range: Required, expand?: IRange, base?: number, constant?: number): void; transformScaleDomain(): void; setScaleNice(): void; setLogScaleNice(): void; setLinearScaleNice(): void; dataToPosition(values: any[]): number; valueToPosition(value: any): number; computeLinearDomain(data: { min: number; max: number; }[]): number[]; protected expandDomain(domain: number[]): void; protected niceDomain(domain: number[]): number[]; protected niceMinMax(): void; protected includeZero(domain: number[]): void; setExtendDomain(key: string, value: number | undefined): void; protected extendDomain(domain: number[]): void; protected setDomainMinMax(domain: number[]): void; setZero(zero: boolean): void; updateScaleDomain(): void; computeDomain(data: { min: number; max: number; }[]): number[]; protected updateScaleDomainByModel(domain?: number[]): void; updateRange(newRange: [number, number]): void; } export {};