import type { TreeNode } from './Tree';
declare const helpers: {
    getNode<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"]): T | undefined;
    getParentNode<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"]): T | undefined;
    mapTree<T1 extends TreeNode = TreeNode, T2 extends TreeNode = T1>(nodes: T1[], fn: (node: T1, index: number, nodes: T1[]) => T2): T2[];
    forEachNode<T extends TreeNode = TreeNode>(nodes: T[], fn: (node: T, index: number, nodes: T[]) => void): void;
    mapNode<T1 extends TreeNode = TreeNode, T2 extends TreeNode = T1>(nodes: T1[], id: T1["id"], fn: (node: T1, index: number, array: T1[]) => T2): (T1 | T2)[];
    flatten<T extends TreeNode = TreeNode>(nodes: T[], ancestors?: T[]): (T & {
        ancestors?: T[];
    })[];
    getAncestors<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"], ancestors?: T[]): T[];
    appendTo<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"], newNodes: T[]): T[];
    expandTo<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"], collapseOthers?: boolean): T[];
    getFirstChildNode<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"]): T | undefined;
    getAdjacentNode<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"]): T | undefined;
    getNextNode<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"]): T | undefined;
    getDeepestNode<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"]): T | undefined;
    getPreviousNode<T extends TreeNode = TreeNode>(nodes: T[], id: T["id"]): T | undefined;
};
export default helpers;
//# sourceMappingURL=helpers.d.ts.map