import { Host, h } from "@stencil/core";
export class EzpIconButton {
    constructor() {
        /**
         *
         * Properties
         *
         */
        /** Description... */
        this.blank = false;
        /** Description... */
        this.disabled = false;
        /** Description... */
        this.level = 'primary';
    }
    /**
     *
     * 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: 'f4e0663dbec2f04d7b52ee40a4cf17186673b037', class: `${this.level}` }, h(TagType, Object.assign({ key: 'ca1c301b57c96814eaa14f51c09c4843e5ea3c59', id: "button" }, attributes), h("ezp-icon", { key: '3e9ff37bf5fc19a25f76ed80935649bb37388bcf', name: this.icon }))));
    }
    static get is() { return "ezp-icon-button"; }
    static get encapsulation() { return "shadow"; }
    static get originalStyleUrls() {
        return {
            "$": ["ezp-icon-button.scss"]
        };
    }
    static get styleUrls() {
        return {
            "$": ["ezp-icon-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"
            },
            "icon": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "IconNameTypes",
                    "resolved": "\"account\" | \"checkmark\" | \"checkmark-alt\" | \"close\" | \"color\" | \"copies\" | \"dark\" | \"drag-drop\" | \"duplex\" | \"exclamation-mark\" | \"expand\" | \"height\" | \"help\" | \"light\" | \"logo\" | \"logout\" | \"menu\" | \"minus\" | \"orientation\" | \"paper_range\" | \"plus\" | \"printer\" | \"quality\" | \"question-mark\" | \"size\" | \"system\" | \"trays\" | \"width\"",
                    "references": {
                        "IconNameTypes": {
                            "location": "import",
                            "path": "../../shared/types",
                            "id": "src/shared/types.d.ts::IconNameTypes",
                            "referenceLocation": "IconNameTypes"
                        }
                    }
                },
                "required": true,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "icon"
            },
            "level": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "IconButtonLevelTypes",
                    "resolved": "\"primary\" | \"quaternary\" | \"secondary\" | \"tertiary\"",
                    "references": {
                        "IconButtonLevelTypes": {
                            "location": "import",
                            "path": "../../shared/types",
                            "id": "src/shared/types.d.ts::IconButtonLevelTypes",
                            "referenceLocation": "IconButtonLevelTypes"
                        }
                    }
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "level",
                "defaultValue": "'primary'"
            },
            "type": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "IconButtonTypeTypes",
                    "resolved": "\"button\"",
                    "references": {
                        "IconButtonTypeTypes": {
                            "location": "import",
                            "path": "../../shared/types",
                            "id": "src/shared/types.d.ts::IconButtonTypeTypes",
                            "referenceLocation": "IconButtonTypeTypes"
                        }
                    }
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Description..."
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "type"
            }
        };
    }
}
