import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
import { S as StyledHost } from './styled-host.js';
import { d as defineCustomElement$1 } from './internal-button2.js';

const JustifiButton = /*@__PURE__*/ proxyCustomElement(class JustifiButton extends HTMLElement {
    constructor(registerHost) {
        super();
        if (registerHost !== false) {
            this.__registerHost();
        }
        this.__attachShadow();
        this.variant = 'primary';
        this.type = 'button';
    }
    render() {
        return (h(StyledHost, { key: '241fe8903788f0442b42bf5a6835d152d1944967' }, h("internal-button", { key: '7c13bd1fa53cf9faae26e521af5a40a08659fe92', text: this.text, variant: this.variant, isLoading: this.isLoading, clickHandler: this.clickHandler, type: this.type, disabled: this.disabled, class: this.class, customStyle: this.customStyle, hidden: this.hidden })));
    }
}, [257, "justifi-button", {
        "text": [1],
        "variant": [1],
        "isLoading": [4, "is-loading"],
        "clickHandler": [16],
        "disabled": [4],
        "type": [1],
        "class": [1],
        "customStyle": [1, "custom-style"],
        "hidden": [4]
    }]);
function defineCustomElement() {
    if (typeof customElements === "undefined") {
        return;
    }
    const components = ["justifi-button", "internal-button"];
    components.forEach(tagName => { switch (tagName) {
        case "justifi-button":
            if (!customElements.get(tagName)) {
                customElements.define(tagName, JustifiButton);
            }
            break;
        case "internal-button":
            if (!customElements.get(tagName)) {
                defineCustomElement$1();
            }
            break;
    } });
}
defineCustomElement();

export { JustifiButton as J, defineCustomElement as d };
