dnd-kit-tree
Version:
A sortable tree component for React
18 lines (17 loc) • 1.37 kB
TypeScript
import type { UniqueIdentifier } from "@dnd-kit/core";
import type { TreeItem, TreeItems, FlattenedItem } from "./types";
export declare const isSafari: boolean;
export declare function getProjection(items: FlattenedItem<unknown>[], activeId: UniqueIdentifier, overId: UniqueIdentifier, dragOffset: number, indentationWidth: number, depthLimit?: number): {
depth: number;
maxDepth: number;
minDepth: number;
parentId: UniqueIdentifier | null;
};
export declare function flattenTree<T>(items: TreeItems<T>): FlattenedItem<T>[];
export declare function buildTree(flattenedItems: FlattenedItem<unknown>[]): TreeItems<unknown>;
export declare function findItem(items: TreeItem[], itemId: UniqueIdentifier): TreeItem | undefined;
export declare function findItemDeep(items: TreeItems<unknown>, itemId: UniqueIdentifier): TreeItem | undefined;
export declare function removeItem(items: TreeItems<unknown>, id: UniqueIdentifier): TreeItem<unknown>[];
export declare function setProperty<T extends keyof TreeItem>(items: TreeItems<unknown>, id: UniqueIdentifier, property: T, setter: (value: TreeItem[T]) => TreeItem[T]): TreeItem<unknown>[];
export declare function getChildCount(items: TreeItems<unknown>, id: UniqueIdentifier): number;
export declare function removeChildrenOf(items: FlattenedItem<unknown>[], ids: UniqueIdentifier[]): FlattenedItem<unknown>[];