import { html } from "lit";
import { property } from "lit/decorators.js";
import { customElement } from "../../decorator.js";
import "../poi-button-aton/poi-button-aton.js";
import "../../icons/icon-beacon-general-east.js";
import { ObcPoiBase } from "../building-blocks/poi/poi-base.js";
import { ObcPoiObjectAtonType, ObcPoiObjectAtonStyle } from "../poi-object-aton/poi-object-aton.js";
import { ObcPoiObjectAtonState } from "../poi-object-aton/poi-object-aton.js";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __decorateClass = (decorators, target, key, kind) => {
  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
  for (var i = decorators.length - 1, decorator; i >= 0; i--)
    if (decorator = decorators[i])
      result = (kind ? decorator(target, key, result) : decorator(result)) || result;
  if (kind && result) __defProp(target, key, result);
  return result;
};
let ObcPoiAton = class extends ObcPoiBase {
  constructor() {
    super(...arguments);
    this.atonType = ObcPoiObjectAtonType.AtoN;
    this.atonStyle = ObcPoiObjectAtonStyle.Regular;
    this.atonState = null;
    this.atonInteractive = false;
  }
  getVisualNodes() {
    return this.queryVisualNodes("obc-poi", "obc-poi-button-aton");
  }
  renderButtonSlot() {
    return html`
      <obc-poi-button-aton
        slot="button"
        .relativeDirection=${this.relativeDirection}
        .selected=${this.selected}
        .hasHeader=${this.hasHeader}
        .headerContent=${this.headerContent}
        .state=${this.resolvedPoiState}
        .value=${this.value}
        .overlapOpaque=${this.overlapOpaque}
        .type=${this.buttonType}
        .data=${this.data}
        .atonType=${this.atonType}
        .atonStyle=${this.atonStyle}
        .atonState=${this.atonState}
        .atonInteractive=${this.atonInteractive}
      >
        <slot><obi-beacon-general-east></obi-beacon-general-east></slot>
      </obc-poi-button-aton>
    `;
  }
};
ObcPoiAton.styles = ObcPoiBase.styles;
__decorateClass([
  property({ type: String, attribute: "aton-type" })
], ObcPoiAton.prototype, "atonType", 2);
__decorateClass([
  property({ type: String, attribute: "aton-style" })
], ObcPoiAton.prototype, "atonStyle", 2);
__decorateClass([
  property({ type: String, attribute: "aton-state" })
], ObcPoiAton.prototype, "atonState", 2);
__decorateClass([
  property({ type: Boolean, attribute: "aton-interactive" })
], ObcPoiAton.prototype, "atonInteractive", 2);
ObcPoiAton = __decorateClass([
  customElement("obc-poi-aton")
], ObcPoiAton);
export {
  ObcPoiAton,
  ObcPoiObjectAtonState,
  ObcPoiObjectAtonStyle,
  ObcPoiObjectAtonType
};
//# sourceMappingURL=poi-aton.js.map
