UNPKG

@itwin/presentation-components

Version:

React components based on iTwin.js Presentation library

41 lines 2.09 kB
/** @packageDocumentation * @module Tree */ import { ReactElement } from "react"; import { AbstractTreeNodeLoaderWithProvider, ControlledTreeProps, TreeEventHandler, TreeRendererProps } from "@itwin/components-react"; import { IPresentationTreeDataProvider } from "../IPresentationTreeDataProvider.js"; import { UsePresentationTreeStateResult } from "./UsePresentationTreeState.js"; /** * Props for [[PresentationTree]] component. * * @public * @deprecated in 5.7. All tree-related APIs have been deprecated in favor of the new generation hierarchy * building APIs (see https://github.com/iTwin/presentation/blob/33e79ee8d77f30580a9bab81a72884bda008db25/README.md#the-packages). */ export type PresentationTreeProps<TEventHandler extends TreeEventHandler> = Omit<ControlledTreeProps, "model" | "nodeLoader" | "eventsHandler" | "onItemsRendered" | "nodeHighlightingProps" | "treeRenderer"> & { state: UsePresentationTreeStateResult<TEventHandler>; treeRenderer?: (props: TreeRendererProps & { nodeLoader: AbstractTreeNodeLoaderWithProvider<IPresentationTreeDataProvider>; }) => ReactElement; }; /** * Component that provides a convenient API for using [[usePresentationTreeState]] hook with [ControlledTree]($components-react). * * Usage example: * ```tsx * function Tree(props) { * const state = usePresentationTreeState({ imodel: props.imodel, ruleset: TREE_RULESET, pagingSize: PAGING_SIZE }); * if (!state) { * return null; * } * * return <PresentationTree state={state} width={200} height={400} selectionMode={SelectionMode.Single} />; * } * ``` * * @public * @deprecated in 5.7. All tree-related APIs have been deprecated in favor of the new generation hierarchy * building APIs (see https://github.com/iTwin/presentation/blob/33e79ee8d77f30580a9bab81a72884bda008db25/README.md#the-packages). */ export declare function PresentationTree<TEventHandler extends TreeEventHandler>({ state, ...props }: PresentationTreeProps<TEventHandler>): import("react/jsx-runtime.js").JSX.Element; //# sourceMappingURL=PresentationTree.d.ts.map