import type { FlattenedItem, TreeItem, TreeItems } from './types'; import { UniqueIdentifier } from '@dnd-kit/core'; export declare const iOS: boolean; export declare function getProjection(items: FlattenedItem[], activeId: UniqueIdentifier | null, overId: UniqueIdentifier | null, dragOffset: number, indentationWidth: number, keepGhostInPlace: boolean, canRootHaveChildren?: boolean | ((dragItem: FlattenedItem) => boolean)): { depth: number; parentId: UniqueIdentifier | null; parent: FlattenedItem | null; isLast: boolean; } | null; export declare function flattenTree>(items: TreeItems): FlattenedItem[]; export declare function buildTree>(flattenedItems: FlattenedItem[]): TreeItems; export declare function findItem(items: TreeItem[], itemId: UniqueIdentifier): TreeItem | undefined; export declare function findItemDeep>(items: TreeItems, itemId: UniqueIdentifier): TreeItem | undefined; export declare function removeItem>(items: TreeItems, id: string): TreeItem[]; export declare function setProperty, T extends keyof TreeItem>(items: TreeItems, id: string, property: T, setter: (value: TreeItem[T]) => TreeItem[T]): TreeItem[]; export declare function getChildCount>(items: TreeItems, id: UniqueIdentifier): number; export declare function removeChildrenOf(items: FlattenedItem[], ids: UniqueIdentifier[]): FlattenedItem[]; export declare function getIsOverParent(parent: FlattenedItem | null, overId: UniqueIdentifier): boolean;