"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
* See LICENSE.md in the project root for license terms and full copyright notice.
*--------------------------------------------------------------------------------------------*/
/** @packageDocumentation
 * @module Utilities
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.UiShowHideManager = exports.UiShowHideSettingsProvider = void 0;
const InternalUiShowHideManager_1 = require("./InternalUiShowHideManager");
Object.defineProperty(exports, "UiShowHideSettingsProvider", { enumerable: true, get: function () { return InternalUiShowHideManager_1.UiShowHideSettingsProvider; } });
/** Maintains Ui Show/Hide state. The `Ui` includes widgets, panels and the status bar.
 * @public
 * @deprecated in 3.7. Use `UiFramework.visibility` property.
 */
class UiShowHideManager {
    /** Determines if the Ui is visible */
    static get isUiVisible() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.isUiVisible;
    }
    static set isUiVisible(visible) {
        InternalUiShowHideManager_1.InternalUiShowHideManager.isUiVisible = visible;
    }
    /** @internal */
    static setAutoHideUi(value) {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.setAutoHideUi(value);
    }
    /** @internal */
    static setUseProximityOpacity(value) {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.setUseProximityOpacity(value);
    }
    /** @internal */
    static setSnapWidgetOpacity(value) {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.setSnapWidgetOpacity(value);
    }
    /** Determines whether the `auto-hide Ui` feature is on. Defaults to false.
     * When true, the Ui automatically hides after a few seconds of inactivity.
     */
    static get autoHideUi() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.autoHideUi;
    }
    static set autoHideUi(autoHide) {
        InternalUiShowHideManager_1.InternalUiShowHideManager.autoHideUi = autoHide;
    }
    /** Determines whether the widget panels are shown and hidden. Defaults to false. */
    static get showHidePanels() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.showHidePanels;
    }
    static set showHidePanels(showHide) {
        InternalUiShowHideManager_1.InternalUiShowHideManager.showHidePanels = showHide;
    }
    /** Determines whether the status bar is shown and hidden. Defaults to false. */
    static get showHideFooter() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.showHideFooter;
    }
    static set showHideFooter(showHide) {
        InternalUiShowHideManager_1.InternalUiShowHideManager.showHideFooter = showHide;
    }
    /** Determines the amount of inactivity time before the Ui is hidden. Defaults to 3.5 seconds. */
    static get inactivityTime() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.inactivityTime;
    }
    static set inactivityTime(time) {
        InternalUiShowHideManager_1.InternalUiShowHideManager.inactivityTime = time;
    }
    /** Determines whether the proximity of the mouse should alter the opacity of a toolbar. Defaults to true. */
    static get useProximityOpacity() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.useProximityOpacity;
    }
    static set useProximityOpacity(value) {
        InternalUiShowHideManager_1.InternalUiShowHideManager.useProximityOpacity = value;
    }
    /** Determines whether the opacity of a toolbar should snap. Defaults to false. */
    static get snapWidgetOpacity() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.snapWidgetOpacity;
    }
    static set snapWidgetOpacity(value) {
        InternalUiShowHideManager_1.InternalUiShowHideManager.snapWidgetOpacity = value;
    }
    /** Handler for when a Frontstage is ready */
    static handleFrontstageReady() {
        // istanbul ignore next
        return InternalUiShowHideManager_1.InternalUiShowHideManager.handleFrontstageReady();
    }
    /** Handler for when the mouse moves over the content area */
    static handleContentMouseMove(_event) {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.handleContentMouseMove(_event);
    }
    /** Handler for when the mouse enters a widget */
    static handleWidgetMouseEnter(_event) {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.handleWidgetMouseEnter(_event);
    }
    /** Shows the Ui and resets the inactivity timer */
    static showUiAndResetTimer() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.showUiAndResetTimer();
    }
    /** Shows the Ui and cancels the inactivity timer */
    static showUiAndCancelTimer() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.showUiAndCancelTimer();
    }
    /** @internal */
    static terminate() {
        return InternalUiShowHideManager_1.InternalUiShowHideManager.terminate();
    }
}
exports.UiShowHideManager = UiShowHideManager;
//# sourceMappingURL=UiShowHideManager.js.map