import { SlickEvent, SlickEventData, SlickEventHandler, SlickRange } from '../core/index.js'; import type { SlickDataView } from '../core/slickDataview.js'; import type { SlickGrid } from '../core/slickGrid.js'; import type { GridOption, HybridSelectionModelOption, SelectionModel } from '../index.js'; import type { CustomDataView, OnActiveCellChangedEventArgs } from '../interfaces/index.js'; import { SlickCellRangeSelector } from './slickCellRangeSelector.js'; export declare class SlickHybridSelectionModel implements SelectionModel { readonly pluginName = "HybridSelectionModel"; onSelectedRangesChanged: SlickEvent; protected _cachedPageRowCount: number; protected _dataView?: CustomDataView | SlickDataView; protected _grid: SlickGrid; protected _eventHandler: SlickEventHandler; protected _prevSelectedRow?: number; protected _prevKeyDown: string; protected _ranges: SlickRange[]; protected _selector?: SlickCellRangeSelector; protected _isRowMoveManagerHandler: any; protected _activeSelectionIsRow: boolean; protected _options: HybridSelectionModelOption; protected _defaults: HybridSelectionModelOption; constructor(options?: Partial); get eventHandler(): SlickEventHandler; get gridOptions(): GridOption; set activeSelectionIsRow(value: boolean); init(grid: SlickGrid): void; destroy(): void; dispose(): void; getOptions(): HybridSelectionModelOption; setOptions(options: Partial): void; removeInvalidRanges(ranges: SlickRange[]): SlickRange[]; rangesAreEqual(range1: SlickRange[], range2: SlickRange[]): boolean; protected rangesToRows(ranges: SlickRange[]): number[]; protected rowsToRanges(rows: number[]): SlickRange[]; protected getRowsRange(from: number, to: number): number[]; getCellRangeSelector(): SlickCellRangeSelector | undefined; getSelectedRanges(): SlickRange[]; getSelectedRows(): number[]; setSelectedRows(rows: number[]): void; /** Provide a way to force a recalculation of page row count (for example on grid resize) */ resetPageRowCount(): void; setSelectedRanges(ranges: SlickRange[], caller?: string, selectionMode?: string): void; currentSelectionModeIsRow(): boolean; refreshSelections(): void; rowSelectionModelIsActive(data: OnActiveCellChangedEventArgs): boolean; protected handleActiveCellChange(_e: SlickEventData, args: OnActiveCellChangedEventArgs): void; protected isKeyAllowed(key: string, isShiftKeyPressed?: boolean): boolean; protected handleKeyDown(e: SlickEventData): void; protected handleClick(e: SlickEventData): boolean | void; /** is the column a column Row Move OR Select Row Move */ isHandlerColumn(columnIndex: number): boolean; protected handleBeforeCellRangeSelected(e: SlickEventData, cell: { row: number; cell: number; }): boolean | void; protected handleCellRangeSelected(_e: SlickEventData, args: { range: SlickRange; selectionMode: string; allowAutoEdit?: boolean; caller: 'onCellRangeSelecting' | 'onCellRangeSelected'; }): boolean; } //# sourceMappingURL=slickHybridSelectionModel.d.ts.map