import { L10n } from '@syncfusion/ej2-base';
/**
 * Base class for ribbon groups with common functionality
 * @private
 */
var RibbonGroupBase = /** @class */ (function () {
    /**
     * Constructor for RibbonGroupBase
     * @param {DocumentEditorContainer} container - DocumentEditorContainer instance
     */
    function RibbonGroupBase(container) {
        this.container = container;
        this.isRtl = this.container.enableRtl || false;
        this.localObj = new L10n('documenteditorcontainer', this.container.defaultLocale, this.container.locale);
        this.ribbonId = this.container.element.id + '_ribbon';
    }
    Object.defineProperty(RibbonGroupBase.prototype, "documentEditor", {
        /**
         * Gets the DocumentEditor from container
         * @returns {DocumentEditor} - DocumentEditor instance
         */
        get: function () {
            return this.container.documentEditor;
        },
        enumerable: true,
        configurable: true
    });
    /**
     * Default implementation for updating selection
     * @returns {void}
     * @private
     */
    RibbonGroupBase.prototype.updateSelection = function () {
        // Default implementation - can be overridden by derived classes
    };
    /**
     * Default implementation for wiring events
     * @returns {void}
     * @private
     */
    RibbonGroupBase.prototype.wireEvents = function () {
        // Default implementation - can be overridden by derived classes
    };
    /**
     * Default implementation for destroying event handlers
     * @returns {void}
     * @private
     */
    RibbonGroupBase.prototype.destroy = function () {
        // Default implementation - can be overridden by derived classes
    };
    return RibbonGroupBase;
}());
export { RibbonGroupBase };
