/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ /** * Arguments for the [`rowReorder`](slug:api_grid_gridcomponent#toc-rowreorder) event * ([see example](slug:reordering_rows_grid)). */ export interface RowReorderEvent { /** * Represents the dragged rows and their data. */ draggedRows: DragRow[]; /** * Represents the row where dragged rows are dropped. */ dropTargetRow?: DragRow; /** * Represents the exact position of the dragged row compared to the drop target row. */ dropPosition: DropPosition; } /** * Represents a reorderable data row with an associated data item. */ export interface DragRow { /** * Represents the data item for the row. */ dataItem: any; /** * Represents the index of the data row. */ rowIndex: number; /** * Represents the HTML element for the row. */ element: HTMLElement; } /** * Represents the exact position of the dragged row compared to the drop target row. * * The possible values are: * * `before`—The row appears before the target row. * * `after`—The row appears after the target row. * * `forbidden`—You cannot drop the row here. */ export type DropPosition = 'before' | 'after' | 'forbidden';