dnd-kit-sortable-tree
Version:
[](https://www.npmjs.org/package/dnd-kit-sortable-tree) [](https://www.npmjs.org/package/dnd-kit-sortable-tree) [ • 1.44 kB
TypeScript
import React from 'react';
import { DndContext, DropAnimation, PointerSensorOptions } from '@dnd-kit/core';
import { UseSortableArguments } from '@dnd-kit/sortable';
import type { FlattenedItem, ItemChangedReason, TreeItemComponentType, TreeItems } from './types';
export declare type SortableTreeProps<TData extends Record<string, any>, TElement extends HTMLElement> = {
items: TreeItems<TData>;
onItemsChanged(items: TreeItems<TData>, reason: ItemChangedReason<TData>): void;
TreeItemComponent: TreeItemComponentType<TData, TElement>;
indentationWidth?: number;
indicator?: boolean;
pointerSensorOptions?: PointerSensorOptions;
disableSorting?: boolean;
dropAnimation?: DropAnimation | null;
dndContextProps?: React.ComponentProps<typeof DndContext>;
sortableProps?: Omit<UseSortableArguments, 'id'>;
keepGhostInPlace?: boolean;
canRootHaveChildren?: boolean | ((dragItem: FlattenedItem<TData>) => boolean);
};
export declare const dropAnimationDefaultConfig: DropAnimation;
export declare function SortableTree<TreeItemData extends Record<string, any>, TElement extends HTMLElement = HTMLDivElement>({ items, indicator, indentationWidth, onItemsChanged, TreeItemComponent, pointerSensorOptions, disableSorting, dropAnimation, dndContextProps, sortableProps, keepGhostInPlace, canRootHaveChildren, ...rest }: SortableTreeProps<TreeItemData, TElement>): JSX.Element;