import { Host, h } from '@stencil/core';
/** Header piece of the `bs-toast` component. */
export class BsToastHeader {
  constructor() {
    this.variant = undefined;
  }
  /** Get icon based on variant */
  get icon() {
    const attributes = {
      class: 'bs-toast-header-icon'
    };
    switch (this.variant) {
      case 'warning':
        return h("bs-icon-warning", Object.assign({}, attributes));
      case 'positive':
        return h("bs-icon-thumbs-up-stroke", Object.assign({}, attributes));
      case 'negative':
        return h("bs-icon-warning", Object.assign({}, attributes));
      default:
        return h("bs-icon-circle-exclamation", Object.assign({}, attributes));
    }
  }
  render() {
    return (h(Host, { "data-variant": this.variant }, h("div", { class: "bs-toast-header", "data-variant": this.variant }, this.icon, h("h5", null, h("slot", null)))));
  }
  static get is() { return "bs-toast-header"; }
  static get originalStyleUrls() {
    return {
      "$": ["bs-toast-header.scss"]
    };
  }
  static get styleUrls() {
    return {
      "$": ["bs-toast-header.css"]
    };
  }
  static get properties() {
    return {
      "variant": {
        "type": "string",
        "mutable": false,
        "complexType": {
          "original": "'warning'|'positive'|'negative'",
          "resolved": "\"negative\" | \"positive\" | \"warning\"",
          "references": {}
        },
        "required": false,
        "optional": true,
        "docs": {
          "tags": [],
          "text": "Controls the color/icon of the toast header."
        },
        "attribute": "variant",
        "reflect": false
      }
    };
  }
}
//# sourceMappingURL=bs-toast-header.js.map
