/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { DragClue, DropClue } from '@progress/kendo-react-data-tools'; import { ExtendedColumnProps } from '../GridColumn.js'; import * as React from 'react'; /** * @hidden */ export type handler = (prevIndex: number, nextIndex: number, nativeEvent: any) => void; /** * @hidden */ export declare class CommonDragLogic { refDragElementClue: React.RefObject; refDropElementClue: React.RefObject; columns: ExtendedColumnProps[]; reorderable: boolean; groupable: boolean; dir: string | undefined; private startColumn; private startGroup; private currentColumn; private currentGroup; private columnReorder; private groupReorder; private columnToGroup; private groupPanelDivElement; get dragClueRef(): React.RefObject; get dropClueRef(): React.RefObject; get getCurrentGroupsLength(): number; private get dragElementClue(); private get dropElementClue(); constructor(columnReorder: handler, groupReorder: handler, columnToGroup: handler); refGroupPanelDiv: (e: any) => void; pressHandler: (event: any, element: HTMLTableRowElement | HTMLDivElement) => void; dragHandler: (event: any, element: HTMLTableRowElement | HTMLDivElement) => void; releaseHandler: (event: any) => void; private getColumnIndex; private getEventTarget; private isTargetGroupingContainer; private getGroupIndex; private isValid; private updateDragElementClue; private updateDropElementClue; }