import { Host, h } from "@stencil/core";
export class EzpTextButton {
    constructor() {
        /**
         *
         * Properties
         *
         */
        /** Description... */
        this.blank = false;
        /** Description... */
        this.disabled = false;
        /** Description... */
        this.level = 'primary';
        /** Description... */
        this.small = false;
    }
    /**
     *
     * Render method
     *
     */
    render() {
        const TagType = this.type !== undefined ? 'button' : 'a';
        const attributes = this.type !== undefined
            ? {
                type: this.type,
                disabled: this.disabled,
            }
            : {
                href: this.href,
                target: this.blank ? '_blank' : '_self',
            };
        return (h(Host, { key: '24c7d7fe23395513fccfc8fc94fbc552a1763148', class: `${this.level}` }, h(TagType, Object.assign({ key: 'f983601cdd0b0312850826422a18bfaa3c16a87b', id: "button" }, attributes), h("ezp-label", { key: '63de52e9734a621baa3ec51c27429c049c7aab93', id: "label", weight: "heavy", text: this.label, level: this.small ? 'tertiary' : 'secondary' }))));
    }
    static get is() { return "ezp-text-button"; }
    static get encapsulation() { return "shadow"; }
    static get originalStyleUrls() {
        return {
            "$": ["ezp-text-button.scss"]
        };
    }
    static get styleUrls() {
        return {
            "$": ["ezp-text-button.css"]
        };
    }
    static get properties() {
        return {
            "blank": {
                "type": "boolean",
                "mutable": false,
                "complexType": {
                    "original": "boolean",
                    "resolved": "boolean",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "blank",
                "defaultValue": "false"
            },
            "disabled": {
                "type": "boolean",
                "mutable": false,
                "complexType": {
                    "original": "boolean",
                    "resolved": "boolean",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "disabled",
                "defaultValue": "false"
            },
            "href": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "string",
                    "resolved": "string",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "href"
            },
            "level": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "TextButtonLevelTypes",
                    "resolved": "\"primary\" | \"secondary\" | \"tertiary\"",
                    "references": {
                        "TextButtonLevelTypes": {
                            "location": "import",
                            "path": "../../shared/types",
                            "id": "src/shared/types.d.ts::TextButtonLevelTypes",
                            "referenceLocation": "TextButtonLevelTypes"
                        }
                    }
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "level",
                "defaultValue": "'primary'"
            },
            "label": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "string",
                    "resolved": "string",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "label"
            },
            "type": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "TextButtonTypeTypes",
                    "resolved": "\"button\"",
                    "references": {
                        "TextButtonTypeTypes": {
                            "location": "import",
                            "path": "../../shared/types",
                            "id": "src/shared/types.d.ts::TextButtonTypeTypes",
                            "referenceLocation": "TextButtonTypeTypes"
                        }
                    }
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "type"
            },
            "small": {
                "type": "boolean",
                "mutable": false,
                "complexType": {
                    "original": "boolean",
                    "resolved": "boolean",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "small",
                "defaultValue": "false"
            }
        };
    }
}
