import{InitializableBase as e}from"./support/InitializableBase.js";import{generateUuid as i}from"./utilities/uuid.js";export{i as generateId};export class EntityBase extends e{get id(){return this._id||(this._id=i()),this._id}get itemType(){return this._itemType}_id;constructor(e){super(e),e&&(this._id=e.id)}toItemUri(){return`item://${encodeURIComponent(this.itemType)}/${encodeURIComponent(this.id)}`}_getSerializableProperties(){return{...super._getSerializableProperties(),id:{serializeModes:["initial","project"],deserialize:!1}}}}