/** @packageDocumentation * @module Widget */ import "./VisibilityWidget.scss"; import * as React from "react"; import { BeUiEvent } from "@bentley/bentleyjs-core"; import { IModelConnection, Viewport } from "@bentley/imodeljs-frontend"; import { SelectionMode } from "@bentley/ui-components"; import { ConfigurableCreateInfo } from "../configurableui/ConfigurableUiControl"; import { ClassGroupingOption } from "../imodel-components/Common"; import { ModelsTreeSelectionPredicate } from "../imodel-components/models-tree/ModelsVisibilityHandler"; import { WidgetControl } from "../widgets/WidgetControl"; /** * Types of hierarchies displayed in the `VisibilityComponent` * @public @deprecated */ export declare enum VisibilityComponentHierarchy { Models = "models", Categories = "categories", SpatialContainment = "spatial-containment" } /** * Data structure that describes visibility component configuration * @beta @deprecated */ export interface VisibilityComponentConfig { modelsTree?: { selectionMode?: SelectionMode; selectionPredicate?: ModelsTreeSelectionPredicate; enableElementsClassGrouping?: ClassGroupingOption; enableHierarchyAutoUpdate?: boolean; }; spatialContainmentTree?: { enableElementsClassGrouping?: ClassGroupingOption; }; } /** * Props for `VisibilityComponent` * @beta @deprecated */ export interface VisibilityComponentProps { /** iModel whose data should be displayed in the component */ iModelConnection: IModelConnection; /** Viewport to use for controlling display */ activeViewport?: Viewport; /** `React.Ref` to the root HTML element */ activeTreeRef?: React.Ref; /** Start pre-loading specified hierarchies as soon as user picks one for display. */ enableHierarchiesPreloading?: VisibilityComponentHierarchy[]; /** Configuration parameters */ config?: VisibilityComponentConfig; } interface VisibilityTreeState { activeTree: VisibilityComponentHierarchy; showOptions: boolean; showSearchBox: boolean; viewport?: Viewport; showAll: BeUiEvent; hideAll: BeUiEvent; } /** VisibilityComponent React component. * @beta @deprecated */ export declare class VisibilityComponent extends React.Component { private _optionsElement; constructor(props: any); componentDidMount(): Promise; /** Remove listeners */ componentWillUnmount(): void; private _onViewportChangedHandler; private _onShowOptions; private _onCloseOptions; private _onShowTree; private _onSetEnableAll; private _onClearAll; private _onToggleSearchBox; private shouldEnablePreloading; private _renderModelsTree; private _renderSpatialTree; private _renderCategoriesTree; private _renderTree; render(): JSX.Element; } /** VisibilityComponent that is connected to the IModelConnection property in the Redux store. The application must set up the Redux store and include the FrameworkReducer. * @beta @deprecated */ export declare const IModelConnectedVisibilityComponent: import("react-redux").ConnectedComponent; /** VisibilityWidget React component. * @beta @deprecated */ export declare class VisibilityWidget extends WidgetControl { private _activeTreeRef; private _maintainScrollPosition?; static get iconSpec(): string; static get label(): string; constructor(info: ConfigurableCreateInfo, options: any); saveTransientState(): void; restoreTransientState(): boolean; } export {}; //# sourceMappingURL=VisibilityWidget.d.ts.map