/*---------------------------------------------------------------------------------------------
 * 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
 */
import { StatusBarLabelSide } from "./StatusBarItem";
/** Utility functions for creating and maintaining StatusBar items.
 * @public
 */
export var StatusBarItemUtilities;
(function (StatusBarItemUtilities) {
    /** Creates a StatusBar item to perform an action.
     * @beta
     */
    function createActionItem(id, section, itemPriority, icon, tooltip, execute, overrides) {
        return {
            id,
            section,
            itemPriority,
            icon,
            tooltip,
            execute,
            ...overrides,
        };
    }
    StatusBarItemUtilities.createActionItem = createActionItem;
    /** Creates a StatusBar item to display a label.
     * @beta
     */
    function createLabelItem(id, section, itemPriority, icon, label, labelSide = StatusBarLabelSide.Right, overrides) {
        return {
            id,
            section,
            itemPriority,
            icon,
            label,
            labelSide,
            ...overrides,
        };
    }
    StatusBarItemUtilities.createLabelItem = createLabelItem;
    /** Creates a StatusBar item to display a custom content.
     * @beta
     */
    function createCustomItem(id, section, itemPriority, content, overrides) {
        return {
            id,
            section,
            itemPriority,
            content,
            ...overrides,
        };
    }
    StatusBarItemUtilities.createCustomItem = createCustomItem;
})(StatusBarItemUtilities || (StatusBarItemUtilities = {}));
//# sourceMappingURL=StatusBarItemUtilities.js.map