/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["exports","../chunks/_rollupPluginBabelHelpers","../chunks/tslib.es6","./Accessor","./maybe","./accessorSupport/defaultsStoreUtils","./accessorSupport/MultiOriginStore","./accessorSupport/PropertyOrigin","./accessorSupport/read","./accessorSupport/utils","./accessorSupport/decorators/subclass"],(function(t,e,r,i,o,s,n,u,c,a,l){"use strict";const p=t=>{let i=function(t){function r(...r){var i;i=t.call(this,...r)||this;const u=o.assumeNonNull(a.getProperties(e._assertThisInitialized(i))),c=u.store,l=new n;return u.store=l,s.setupConstructedDefaults(u,c,l),i}e._inheritsLoose(r,t);var i=r.prototype;return i.read=function(t,e){c.read(this,t,e)},i.getAtOrigin=function(t,e){const r=O(this),i=u.nameToId(e);if("string"==typeof t)return r.get(t,i);const o={};return t.forEach((t=>{o[t]=r.get(t,i)})),o},i.originOf=function(t){return u.idToName(this.originIdOf(t))},i.originIdOf=function(t){return O(this).originOf(t)},i.revert=function(t,e){const r=O(this),i=u.nameToId(e),o=a.getProperties(this);let s;s="string"==typeof t?"*"===t?r.keys(i):[t]:t,s.forEach((t=>{o.invalidate(t),r.revert(t,i),o.commit(t)}))},r}(t);return i=r.__decorate([l.subclass("esri.core.ReadOnlyMultiOriginJSONSupport")],i),i};function O(t){return a.getProperties(t).store}t.ReadOnlyMultiOriginJSONSupport=function(t){function r(){return t.apply(this,arguments)||this}return e._inheritsLoose(r,t),r}(p(i)),t.ReadOnlyMultiOriginJSONSupport=r.__decorate([l.subclass("esri.core.ReadOnlyMultiOriginJSONSupport")],t.ReadOnlyMultiOriginJSONSupport),t.ReadOnlyMultiOriginJSONMixin=p,Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
