// #region Imports
import { Appearanceable } from '../../../Behaviors/Appearanceable';
import { Disableable } from '../../../Behaviors/Disableable';
import { Themeable } from '../../../Behaviors/Themeable';
import { Variantable } from '../../../Behaviors/Variantable';
import { CustomElement } from '../../Abstracts/CustomElement';
// #endregion
/**
 * SemanticElement - Abstract base class for HTML semantic element wrappers.
 *
 * @description
 * Provides the shared foundation for all Mosaik components that wrap native HTML semantic elements
 * such as `<ol>`, `<ul>`, `<li>`, `<blockquote>`, `<abbr>`, `<address>`, `<cite>`, `<mark>`,
 * `<time>`, and others. This abstract class bundles the common behaviors — {@link Themeable},
 * {@link Appearanceable}, {@link Variantable}, and {@link Disableable} — so that every semantic
 * component inherits a consistent baseline without duplicating the mixin chain.
 *
 * @name SemanticElement
 * @category Abstract Elements
 *
 * @abstract
 * @public
 */
export class SemanticElement extends Themeable(Appearanceable(Variantable(Disableable(CustomElement)))) {
    // #region Ctor
    /**
     * Constructs a new instance of the `SemanticElement` class.
     *
     * @public
     */
    constructor() {
        super();
    }
}
//# sourceMappingURL=SemanticElement.js.map