import type { PrimaryKeyType } from '../../../../../../cn-ai-table/view/utils/primary-key';
import type { UseDragAndDropReturn } from './types';
/**
 * useDragAndDrop Hook 配置选项
 */
export interface UseDragAndDropOptions {
    /** 拖拽激活距离，默认 5px */
    activationDistance?: number;
}
/**
 * 拖拽功能 Hook
 * 封装行拖拽和列拖拽的通用逻辑
 */
export declare const useDragAndDrop: (options?: UseDragAndDropOptions) => UseDragAndDropReturn;
/**
 * 列拖拽排序（兼容包装器）
 *
 * 内部委托 sortColumns，返回 `Array | null` 保持旧调用方式。
 * 新代码推荐直接使用 `sortColumns` 获取带失败原因的 Result。
 */
export declare const handleColumnDragSort: (columnOrder: Array<string | number>, activeId: string | number, overId: string | number, pinnedColumnIds?: Array<string | number>) => Array<string | number> | null;
/**
 * 行拖拽排序（兼容包装器）
 *
 * 内部委托 sortRows（使用 getRowKeyStrict，不做 index 兜底）。
 * 新代码推荐直接使用 `sortRows`。
 */
export declare const handleRowDragSort: <T extends Record<string, any>>(data: T[], activeId: string | number, overId: string | number, primaryKey?: PrimaryKeyType) => T[] | null;
