@mui/x-tree-view
Version:
The community edition of the MUI X Tree View components.
53 lines • 1.69 kB
TypeScript
import { TreeViewItemId, TreeViewSelectionPropagation } from "../models/index.js";
/**
* Applies the selection propagation rules to the selected items.
* The value is only computed during the first render, any update of the parameters will be ignored.
*
* Uncontrolled example:
* ```tsx
* const defaultSelectedItems = useApplyPropagationToSelectedItemsOnMount({
* items: props.items,
* selectionPropagation: props.selectionPropagation,
* selectedItems: ['10', '11', '13', '14'],
* });
*
* return (
* <RichTreeView
* items={props.items}
* selectionPropagation={props.selectionPropagation}
* defaultSelectedItems={defaultSelectedItems}
* />
* );
* ```
*
* Controlled example:
* ```tsx
* const initialSelectedItems = useApplyPropagationToSelectedItemsOnMount({
* items: props.items,
* selectionPropagation: props.selectionPropagation,
* selectedItems: ['10', '11', '13', '14'],
* });
*
* const [selectedItems, setSelectedItems] = React.useState(initialSelectedItems);
*
* return (
* <RichTreeView
* items={props.items}
* selectionPropagation={props.selectionPropagation}
* selectedItems={selectedItems}
* onSelectedItemsChange={setSelectedItems}
* />
* );
* ```
*/
export declare function useApplyPropagationToSelectedItemsOnMount(parameters: UseApplyPropagationToDefaultSelectedItemsParameters<any>): string[];
interface UseApplyPropagationToDefaultSelectedItemsParameters<R extends {
children?: R[];
}> {
items: R[];
getItemId?: (item: R) => TreeViewItemId;
getItemChildren?: (item: R) => R[] | undefined;
selectedItems: string[];
selectionPropagation: TreeViewSelectionPropagation;
}
export {};