import{defaultConverter as t,notEqual as e}from"../reactive-element.js";
/**
 * @license
 * Copyright 2017 Google LLC
 * SPDX-License-Identifier: BSD-3-Clause
 */const o={attribute:!0,type:String,converter:t,reflect:!1,hasChanged:e},r=(t=o,e,a)=>{const{kind:s,metadata:i}=a;let c=globalThis.litPropertyMetadata.get(i);if(void 0===c&&globalThis.litPropertyMetadata.set(i,c=new Map),c.set(a.name,t),"accessor"===s){const{name:o}=a;return{set(a){const s=e.get.call(this);e.set.call(this,a),this.requestUpdate(o,s,t)},init(e){return void 0!==e&&this.P(o,void 0,t),e}}}if("setter"===s){const{name:o}=a;return function(a){const s=this[o];e.call(this,a),this.requestUpdate(o,s,t)}}throw Error("Unsupported decorator location: "+s)};function n(t){return(e,o)=>"object"==typeof o?r(t,e,o):((t,e,o)=>{const a=e.hasOwnProperty(o);return e.constructor.createProperty(o,a?{...t,wrapped:!0}:t),a?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}export{n as property,r as standardProperty};