import { Id, Obj } from '../types'; import { NodeType, SortInfo } from '../components/tree'; import { BezierFunc } from './bezier'; import { Customizable, DragDropEvents, Sensors } from '@dnd-kit/abstract'; /** * 默认提供给@dnd-kit的sensors属性 */ export declare const defaultSensors: Customizable; /** * 组件通用的onDragEnd方法 * @param e 事件 * @param items 传入需要排序的数组 * @param primaryKey 索引用的主键,默认为`id` * @return 返回新的数组,但如果顺序未改变,会得到null */ export declare function onDndDragEnd({ operation }: Parameters['dragend']>[0], items: T[]): T[] | null; export declare function onDndDragEnd({ operation }: Parameters['dragend']>[0], items: T[], primaryKey?: keyof T): T[] | null; export declare function arrayMove(array: T[], from: number, to: number): T[]; /** * 组件通用的onSort方法,注意:该方法会原地修改{@link treeNodes} * @param info 信息 * @param treeNodes 树节点 * @param primaryKey 索引用的主键,默认为`id` */ export declare function onTreeNodeSort, V extends Id = Id>(info: SortInfo, treeNodes: N[], primaryKey?: string): N[]; export declare function edgeBounce(value: number, { allowEdgeBounce, min, max, bounceElementTranslate, bounceDragDistance, bezierFn }: { allowEdgeBounce: boolean; min: number; max: number; bounceElementTranslate: number; bounceDragDistance: number; bezierFn?: BezierFunc; }): number;