import type { BaseTableAPI } from '../../ts-types/base-table'; import type { ICellAxisOption } from '../../ts-types/component/axis'; import { LineAxis, type LineAxisAttributes } from './../../vrender'; import type { IOrientType } from '../../ts-types/component/util'; import { BandAxisScale } from './band-scale'; import { DataView } from '@visactor/vdataset'; import { LinearAxisScale } from './linear-scale'; import type { TableTheme } from '../../themes/theme-define'; export interface ICartesianAxis { new (option: ICellAxisOption, width: number, height: number, bodyChartCellPadding: [number, number, number, number], table: BaseTableAPI): CartesianAxis; } export declare class CartesianAxis { width: number; height: number; x: number; y: number; table: BaseTableAPI; option: ICellAxisOption; orient: IOrientType; visible: boolean; type: 'linear' | 'band' | 'point' | 'time' | 'log' | 'symlog'; inverse: boolean; data?: any[]; tickData: DataView; scale: BandAxisScale | LinearAxisScale; component: LineAxis; bodyChartCellPadding: [number, number, number, number]; constructor(option: ICellAxisOption, width: number, height: number, bodyChartCellPadding: [number, number, number, number], table: BaseTableAPI); initScale(): void; initData(): void; computeData(): void; initEvent(): void; createComponent(): void; resize(width: number, height: number): void; overlap(): void; getLayoutRect(): { width: number; height: number; }; getUpdateAttribute(): LineAxisAttributes; getLabelItems(length: number): any[]; updateScaleRange(): void; setLayoutStartPosition(pos: any): { x: any; y: any; }; private _getTitleLimit; getScale(): import("@visactor/vscale").BandScale | import("@visactor/vscale").LinearScale | import("@visactor/vscale").LogScale | import("@visactor/vscale").SymlogScale; getDomainSpec(): Required<{ max?: number; min?: number; }>; } export declare function getTableAxisTheme(orient: IOrientType, theme: TableTheme): any;