/**
 * This file is part of the NocoBase (R) project.
 * Copyright (c) 2020-2024 NocoBase Co., Ltd.
 * Authors: NocoBase Team.
 *
 * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
 * For more information, please refer to: https://www.nocobase.com/agreement.
 */
import type { SyntheticListenerMap } from '@dnd-kit/core/dist/hooks/utilities';
import type { DraggableAttributes } from '@dnd-kit/core';
import React from 'react';
type DragSortRowContextValue = {
    attributes?: DraggableAttributes;
    listeners?: SyntheticListenerMap;
    setActivatorNodeRef?: (node: HTMLElement | null) => void;
};
export declare const DragSortRowContext: React.Context<DragSortRowContextValue>;
/**
 * Activator handle that initiates a row drag. Reads `attributes` / `listeners`
 * / `setActivatorNodeRef` from the surrounding `DragSortRowContext` provided
 * by `SortableRow`, so the handle can sit anywhere within the row's cells
 * (typically a dedicated first column).
 */
export declare const SortHandle: React.FC<{
    id?: string | number;
    style?: React.CSSProperties;
}>;
/**
 * Drop-in replacement for antd Table's `<tr>` body row that wires `useSortable`
 * keyed by the `data-row-key` attribute antd injects. Pass via
 * `Table.components.body.row` and wrap the `<tbody>` with `DndContext` +
 * `SortableContext`. The `DragSortRowContext` it provides lets `SortHandle`
 * be placed anywhere inside the row, not just on the row itself.
 */
export declare const SortableRow: React.FC<{
    rowIndex?: number;
    className?: string;
    [key: string]: any;
}>;
export {};
