@procore/core-react
Version:
React library of Procore Design Guidelines
21 lines (20 loc) • 1 kB
TypeScript
import type { LevelWise, Node, UseTreeProps } from './Tree.types';
export declare function useTree<T extends Node = Node>({ rootNodes, expanded, selected, selectionLimit, onSelect, multiple, autoExpandParent, getChildren, getParentId, onCollapse, onExpand, }: UseTreeProps<T>): {
nodes: (T & LevelWise & {
items?: ((T & LevelWise) | (T & LevelWise & any))[] | undefined;
})[];
isExpanded: (node: T) => boolean;
isSelected: (node: T) => boolean;
isLoading: (node: T) => boolean;
highlightedNode: T & LevelWise & {
items?: ((T & LevelWise) | (T & LevelWise & any))[] | undefined;
};
isHighlighted: (node: T) => boolean;
highlight: (node: T) => void;
handleSelection: (node: T) => void;
handleExpansion: (node: T) => void;
setSelected: (newCollection: Set<T["id"]>) => void;
setExpanded: (newCollection: Set<T["id"]>) => void;
isFileLimitReached: boolean;
listNavigation: import("../_hooks/ListNavigation").ListNavigationApi;
};