"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 StatusBar
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.isStatusBarCustomItem = exports.isStatusBarLabelItem = exports.isStatusBarActionItem = exports.StatusBarLabelSide = exports.StatusBarSection = void 0;
/** Status bar Groups/Sections from Left to Right
 * @public
 */
var StatusBarSection;
(function (StatusBarSection) {
    /** area for tool assistance and messages */
    StatusBarSection[StatusBarSection["Message"] = 0] = "Message";
    /** area for tool assistance and messages */
    StatusBarSection[StatusBarSection["Left"] = 0] = "Left";
    /** items specific to stage/task */
    StatusBarSection[StatusBarSection["Stage"] = 1] = "Stage";
    /** items specific to stage/task */
    StatusBarSection[StatusBarSection["Center"] = 1] = "Center";
    /** Select scope and selection info */
    StatusBarSection[StatusBarSection["Selection"] = 2] = "Selection";
    /** Select scope and selection info */
    StatusBarSection[StatusBarSection["Right"] = 2] = "Right";
    /** items that only show based on context */
    StatusBarSection[StatusBarSection["Context"] = 3] = "Context";
})(StatusBarSection || (exports.StatusBarSection = StatusBarSection = {}));
/** Defines which side of Icon where label is placed
 * @public
 */
var StatusBarLabelSide;
(function (StatusBarLabelSide) {
    /** Label is placed left side of icon. This is the default if not specified */
    StatusBarLabelSide[StatusBarLabelSide["Left"] = 0] = "Left";
    /** Label is placed on right side of icon. */
    StatusBarLabelSide[StatusBarLabelSide["Right"] = 1] = "Right";
})(StatusBarLabelSide || (exports.StatusBarLabelSide = StatusBarLabelSide = {}));
/** StatusBarActionItem type guard.
 * @public
 */
function isStatusBarActionItem(item) {
    return "execute" in item;
}
exports.isStatusBarActionItem = isStatusBarActionItem;
/** StatusBarLabelItem type guard.
 * @public
 */
function isStatusBarLabelItem(item) {
    return !isStatusBarActionItem(item) && "label" in item;
}
exports.isStatusBarLabelItem = isStatusBarLabelItem;
/** StatusBarCustomItem type guard.
 * @public
 */
function isStatusBarCustomItem(item) {
    return "content" in item;
}
exports.isStatusBarCustomItem = isStatusBarCustomItem;
//# sourceMappingURL=StatusBarItem.js.map