@itwin/presentation-frontend
Version:
Frontend of iModel.js Presentation library
61 lines • 2.53 kB
TypeScript
/** @packageDocumentation
* @module UnifiedSelection
*/
import { Id64String } from "@itwin/core-bentley";
import { IModelConnection } from "@itwin/core-frontend";
import { KeySet } from "@itwin/presentation-common";
/**
* A set of model, subcategory and element ids that can be used for specifying
* viewport hilite.
*
* @public
* @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `HiliteSet` from [@itwin/unified-selection](https://github.com/iTwin/presentation/blob/master/packages/unified-selection/README.md#hilite-sets) package instead.
*/
export interface HiliteSet {
models?: Id64String[];
subCategories?: Id64String[];
elements?: Id64String[];
}
/**
* Properties for creating a `HiliteSetProvider` instance.
* @public
* @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `HiliteSetProvider` from [@itwin/unified-selection](https://github.com/iTwin/presentation/blob/master/packages/unified-selection/README.md#hilite-sets) package instead.
*/
export interface HiliteSetProviderProps {
imodel: IModelConnection;
}
/**
* Presentation-based provider which uses presentation ruleset to determine
* what `HiliteSet` should be hilited in the graphics viewport based on the
* supplied `KeySet`.
*
* @public
* @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `HiliteSetProvider` from [@itwin/unified-selection](https://github.com/iTwin/presentation/blob/master/packages/unified-selection/README.md#hilite-sets) package instead.
*/
export declare class HiliteSetProvider {
private _imodel;
private _cache;
private constructor();
/**
* Create a hilite set provider for the specified iModel.
*/
static create(props: HiliteSetProviderProps): HiliteSetProvider;
/**
* Get hilite set for instances and/or nodes whose keys are specified in the
* given KeySet.
*
* Note: The provider caches result of the last request, so subsequent requests
* for the same input doesn't cost.
*/
getHiliteSet(selection: Readonly<KeySet>): Promise<HiliteSet>;
/**
* Get hilite set iterator for provided keys. It loads content in batches and
* yields hilite set created from each batch after it is loaded.
*/
getHiliteSetIterator(selection: Readonly<KeySet>): AsyncIterableIterator<HiliteSet>;
private createHiliteSetIterator;
private createHiliteSet;
private getContentOptions;
private handleTransientKeys;
}
//# sourceMappingURL=HiliteSetProvider.d.ts.map