import { SlickEvent, SlickEventHandler, SlickRange, type SlickEventData, type SlickGrid } from '../core/index.js'; import type { CellRangeSelectorOption, CellSelectionMode, DragPosition, DragRange, DragRowMove, GridOption, MouseOffsetViewport, OnScrollEventArgs } from '../interfaces/index.js'; import { SlickCellRangeDecorator } from './index.js'; export declare class SlickCellRangeSelector { readonly pluginName = "CellRangeSelector"; onBeforeCellRangeSelected: SlickEvent<{ row: number; cell: number; }>; onCellRangeSelecting: SlickEvent<{ range: SlickRange; selectionMode: string; allowAutoEdit: boolean; }>; onCellRangeSelected: SlickEvent<{ range: SlickRange; selectionMode: string; allowAutoEdit: boolean; }>; protected _activeCanvas: HTMLElement; protected _options: CellRangeSelectorOption; protected _currentlySelectedRange: DragRange | null; protected _previousSelectedRange: DragRange | null; protected _canvas: HTMLElement | null; protected _decorator: SlickCellRangeDecorator; protected _dragging: boolean; protected _eventHandler: SlickEventHandler; protected _grid: SlickGrid; protected _gridOptions: GridOption; protected _gridUid: string; protected _dragReplaceHandleCell: { row: number; cell: number; } | null; protected _selectionMode: CellSelectionMode; protected _dragReplaceHandleActive: boolean; protected _columnOffset: number; protected _rowOffset: number; protected _isRightCanvas: boolean; protected _isBottomCanvas: boolean; protected _activeViewport: HTMLElement; protected _autoScrollTimerId?: any; protected _draggingMouseOffset: MouseOffsetViewport; protected _moveDistanceForOneCell: { x: number; y: number; }; protected _xDelayForNextCell: number; protected _yDelayForNextCell: number; protected _viewportHeight: number; protected _viewportWidth: number; protected _isRowMoveRegistered: boolean; protected _scrollLeft: number; protected _scrollTop: number; protected _defaults: CellRangeSelectorOption; constructor(options?: Partial); get addonOptions(): CellRangeSelectorOption; get eventHandler(): SlickEventHandler; /** Getter for the grid uid */ get gridUid(): string; get gridUidSelector(): string; init(grid: SlickGrid): void; destroy(): void; /** Dispose the plugin. */ dispose(): void; getCellDecorator(): SlickCellRangeDecorator; getCurrentRange(): DragRange | null; getMouseOffsetViewport(e: MouseEvent | TouchEvent, dd: DragPosition): MouseOffsetViewport; stopIntervalTimer(): void; protected handleDrag(evt: SlickEventData, dd: DragRowMove): void; protected handleDragOutsideViewport(): void; protected handleDragToNewPosition(xNeedUpdate: boolean, yNeedUpdate: boolean): void; protected handleDragTo(e: { pageX: number; pageY: number; }, dd: DragPosition): void; protected handleDragEnd(e: any, dd: DragRowMove): void; protected handleDragInit(e: SlickEventData, dd: DragRowMove): void; protected handleDragStart(e: SlickEventData, dd: DragRowMove): HTMLDivElement | undefined; protected handleScroll(_e: SlickEventData, args: OnScrollEventArgs): void; } //# sourceMappingURL=slickCellRangeSelector.d.ts.map