import { Collection, CollectionStateBase, DisabledBehavior, Expandable, Key, MultipleSelection, Node } from '@react-types/shared'; import { SelectionManager } from '../selection/SelectionManager'; export interface TreeProps extends CollectionStateBase, Expandable, MultipleSelection { /** Whether `disabledKeys` applies to all interactions, or only selection. */ disabledBehavior?: DisabledBehavior; } export interface TreeState { /** A collection of items in the tree. */ readonly collection: Collection>; /** A set of keys for items that are disabled. */ readonly disabledKeys: Set; /** A set of keys for items that are expanded. */ readonly expandedKeys: Set; /** Toggles the expanded state for an item by its key. */ toggleKey(key: Key): void; /** Replaces the set of expanded keys. */ setExpandedKeys(keys: Set): void; /** A selection manager to read and update multiple selection state. */ readonly selectionManager: SelectionManager; } /** * Provides state management for tree-like components. Handles building a collection * of items from props, item expanded state, and manages multiple selection state. */ export declare function useTreeState(props: TreeProps): TreeState;