@itwin/presentation-components
Version:
React components based on iTwin.js Presentation library
54 lines • 2.33 kB
TypeScript
/** @packageDocumentation
* @module Tree
*/
import { ActiveMatchInfo, ITreeDataProvider, TreeNodeItem } from "@itwin/components-react";
import { IModelConnection } from "@itwin/core-frontend";
import { HierarchyRequestOptions, InstanceFilterDefinition, NodeKey, NodePathElement } from "@itwin/presentation-common";
import { IPresentationDataProvider } from "../common/IPresentationDataProvider.js";
/**
* Presentation tree data provider.
* @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 interface IPresentationTreeDataProvider extends ITreeDataProvider, IPresentationDataProvider {
/**
* Returns a [NodeKey]($presentation-common) from given [TreeNodeItem]($components-react).
*
* @deprecated in 4.0. Use [[isPresentationTreeNodeItem]] and [[PresentationTreeNodeItem.key]] to get [NodeKey]($presentation-common).
*/
getNodeKey(node: TreeNodeItem): NodeKey;
/**
* Returns filtered node paths.
*/
getFilteredNodePaths(filter: string): Promise<NodePathElement[]>;
/**
* Creates options for nodes request.
*/
createRequestOptions(parentKey?: NodeKey, instanceFilter?: InstanceFilterDefinition): HierarchyRequestOptions<IModelConnection, NodeKey>;
}
/**
* Filtered presentation tree data provider.
* @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 interface IFilteredPresentationTreeDataProvider extends IPresentationTreeDataProvider {
/**
* Applied filter.
*/
filter: string;
/**
* Returns active match for given index.
*/
getActiveMatch(index: number): ActiveMatchInfo | undefined;
/**
* Counts all filter matches.
*/
countFilteringResults(nodePaths: ReadonlyArray<Readonly<NodePathElement>>): number;
/**
* Checks whether node matches applied filter or not.
*/
nodeMatchesFilter(node: TreeNodeItem): boolean;
}
//# sourceMappingURL=IPresentationTreeDataProvider.d.ts.map