"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 Item
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.CustomItemDef = void 0;
const ActionButtonItemDef_1 = require("./ActionButtonItemDef");
/* eslint-disable deprecation/deprecation */
/** An Item that renders a React component.
 * @public
 * @deprecated in 4.15.0. Use specific item type utilities instead, i.e. `ToolbarItemUtilities.createCustomItem`.
 */
class CustomItemDef extends ActionButtonItemDef_1.ActionButtonItemDef {
    constructor(props) {
        super(props);
        if (props.customId)
            this.customId = props.customId;
        else {
            CustomItemDef._sId++;
            this.customId = CustomItemDef.customIdPrefix + CustomItemDef._sId;
        }
        this.popupPanelNode = props.popupPanelNode;
    }
    get id() {
        return this.customId;
    }
}
exports.CustomItemDef = CustomItemDef;
CustomItemDef._sId = 0;
CustomItemDef.customIdPrefix = "Custom-";
//# sourceMappingURL=CustomItemDef.js.map