72553d6dc7a92862eb4690899c28279416c5e9d9053deb5de6dde27b8721d6b82e0b583736ec659325324b36e19c3c7cb1d14a9fd872f7dbc8dd1955fca57d 1.3 KB

12345678910111213141516171819202122232425262728
  1. import DataZoomView from './DataZoomView.js';
  2. import InsideZoomModel from './InsideZoomModel.js';
  3. import GlobalModel from '../../model/Global.js';
  4. import ExtensionAPI from '../../core/ExtensionAPI.js';
  5. import RoamController, { RoamEventParams } from '../helper/RoamController.js';
  6. import { DataZoomCoordSysMainType, DataZoomReferCoordSysInfo } from './helper.js';
  7. declare class InsideZoomView extends DataZoomView {
  8. static type: string;
  9. type: string;
  10. /**
  11. * 'throttle' is used in this.dispatchAction, so we save range
  12. * to avoid missing some 'pan' info.
  13. */
  14. range: number[];
  15. render(dataZoomModel: InsideZoomModel, ecModel: GlobalModel, api: ExtensionAPI): void;
  16. dispose(): void;
  17. private _clear;
  18. }
  19. interface DataZoomGetRangeHandler<T extends RoamEventParams['zoom'] | RoamEventParams['scrollMove'] | RoamEventParams['pan']> {
  20. (coordSysInfo: DataZoomReferCoordSysInfo, coordSysMainType: DataZoomCoordSysMainType, controller: RoamController, e: T): [number, number];
  21. }
  22. declare const getRangeHandlers: {
  23. pan: DataZoomGetRangeHandler<RoamEventParams['pan']>;
  24. zoom: DataZoomGetRangeHandler<RoamEventParams['zoom']>;
  25. scrollMove: DataZoomGetRangeHandler<RoamEventParams['scrollMove']>;
  26. } & ThisType<InsideZoomView>;
  27. export declare type DataZoomGetRangeHandlers = typeof getRangeHandlers;
  28. export default InsideZoomView;