/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
/**
 * The props that the Gantt passes to the GanttRow component when creating it.
 */
export interface GanttRowProps {
    /**
     * The `data` object that represents the current row.
     */
    dataItem: any;
    /**
     * The event that is fired when the row is clicked.
     */
    onClick?: any;
    /**
     * The event that is fired when the row is double clicked.
     */
    onDoubleClick?: any;
    /**
     * The event that is fired when the row context menu is triggered.
     */
    onContextMenu?: any;
    /**
     * The name of the field which will provide a Boolean representation of the selected state of the item.
     */
    selectedField?: string;
    /**
     * Sets the height of the row.
     */
    rowHeight?: number;
    /**
     * A function for overriding the default rendering of the row.
     */
    render?: (row: React.ReactElement<HTMLTableRowElement>, props: GanttRowProps) => React.ReactNode;
    /**
     * An array of indexes of each parent and current item in the data tree.
     */
    level: number[];
    /**
     * Fires when a row is dragged.
     */
    onDrag?: (event: {
        nativeEvent: any;
        dragged: number[];
        draggedOver: number[] | null;
        draggedItem: any;
    }) => void;
    /**
     * Fires when a row is dragged and dropped.
     */
    onDrop?: (event: {
        nativeEvent: any;
        dragged: number[];
        draggedOver: number[] | null;
        draggedItem: any;
    }) => void;
    /**
     * The expanded state of the row. Useful for applying `aria-expanded` accessibility attribute.
     */
    expanded: boolean;
    /**
     * The index of the row. Useful for applying `aria-rowindex` accessibility attribute.
     */
    rowIndex: number;
    /**
     * @hidden
     */
    children: React.ReactNode;
    /**
     * @hidden
     */
    levels: number[][];
    /**
     * @hidden
     */
    isAltRow?: boolean;
    /**
     * The index to be applied to the `aria-rowindex` attribute.
     */
    ariaRowIndex?: number;
    /**
     * The count of items on current level, applied to the `aria-setsize` attribute.
     */
    ariaSetSize?: number;
    /**
     * The index of the item on current level, applied to the `aria-posinset` attribute.
     */
    ariaPosInSet?: number;
    /**
     * Indicates if the row is selected.
     */
    isSelected: boolean;
}
