| import GlobalModel from '../../model/Global.js'; | 
| import SeriesModel from '../../model/Series.js'; | 
| import ExtensionAPI from '../../core/ExtensionAPI.js'; | 
| import DataZoomModel from './DataZoomModel.js'; | 
| import { AxisBaseModel } from '../../coord/AxisBaseModel.js'; | 
| import { DataZoomAxisDimension } from './helper.js'; | 
| interface MinMaxSpan { | 
|     minSpan: number; | 
|     maxSpan: number; | 
|     minValueSpan: number; | 
|     maxValueSpan: number; | 
| } | 
| /** | 
|  * Operate single axis. | 
|  * One axis can only operated by one axis operator. | 
|  * Different dataZoomModels may be defined to operate the same axis. | 
|  * (i.e. 'inside' data zoom and 'slider' data zoom components) | 
|  * So dataZoomModels share one axisProxy in that case. | 
|  */ | 
| declare class AxisProxy { | 
|     ecModel: GlobalModel; | 
|     private _dimName; | 
|     private _axisIndex; | 
|     private _valueWindow; | 
|     private _percentWindow; | 
|     private _dataExtent; | 
|     private _minMaxSpan; | 
|     private _dataZoomModel; | 
|     constructor(dimName: DataZoomAxisDimension, axisIndex: number, dataZoomModel: DataZoomModel, ecModel: GlobalModel); | 
|     /** | 
|      * Whether the axisProxy is hosted by dataZoomModel. | 
|      */ | 
|     hostedBy(dataZoomModel: DataZoomModel): boolean; | 
|     /** | 
|      * @return Value can only be NaN or finite value. | 
|      */ | 
|     getDataValueWindow(): [number, number]; | 
|     /** | 
|      * @return {Array.<number>} | 
|      */ | 
|     getDataPercentWindow(): [number, number]; | 
|     getTargetSeriesModels(): SeriesModel<import("../../util/types").SeriesOption<unknown, import("../../util/types").DefaultStatesMixin>>[]; | 
|     getAxisModel(): AxisBaseModel; | 
|     getMinMaxSpan(): MinMaxSpan; | 
|     /** | 
|      * Only calculate by given range and this._dataExtent, do not change anything. | 
|      */ | 
|     calculateDataWindow(opt?: { | 
|         start?: number; | 
|         end?: number; | 
|         startValue?: number | string | Date; | 
|         endValue?: number | string | Date; | 
|     }): { | 
|         valueWindow: [number, number]; | 
|         percentWindow: [number, number]; | 
|     }; | 
|     /** | 
|      * Notice: reset should not be called before series.restoreData() is called, | 
|      * so it is recommended to be called in "process stage" but not "model init | 
|      * stage". | 
|      */ | 
|     reset(dataZoomModel: DataZoomModel): void; | 
|     filterData(dataZoomModel: DataZoomModel, api: ExtensionAPI): void; | 
|     private _updateMinMaxSpan; | 
|     private _setAxisModel; | 
| } | 
| export default AxisProxy; |