plugin-tls 1.1.1 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/dist/extend/extend.d.ts +8 -8
  2. package/dist/extend/extend.d.ts.map +1 -1
  3. package/dist/extend/mixin.d.ts.map +1 -1
  4. package/dist/index.js +1038 -0
  5. package/dist/index.umd.cjs +1 -0
  6. package/dist/options-manager/ModeOptions.d.ts.map +1 -1
  7. package/dist/options-manager/OptionsManager.d.ts.map +1 -1
  8. package/dist/options-manager/TierOptions.d.ts.map +1 -1
  9. package/dist/options-manager/defaultOptions.d.ts +2 -2
  10. package/dist/options-manager/defaultOptions.d.ts.map +1 -1
  11. package/dist/plugin-host/PluginHost.d.ts +97 -20
  12. package/dist/plugin-host/PluginHost.d.ts.map +1 -1
  13. package/dist/plugin-host/TierModeOptionsPluginHost.d.ts +83 -18
  14. package/dist/plugin-host/TierModeOptionsPluginHost.d.ts.map +1 -1
  15. package/dist/plugin-host/TierOptionsPluginHost.d.ts +80 -10
  16. package/dist/plugin-host/TierOptionsPluginHost.d.ts.map +1 -1
  17. package/dist/plugin-manager/PluginManager.d.ts +1 -1
  18. package/dist/plugin-manager/PluginManager.d.ts.map +1 -1
  19. package/doc/api/index.md +23 -3
  20. package/doc/api/plugin-tls.adddefaultoptions.md +51 -6
  21. package/doc/api/plugin-tls.addinstoptions.md +60 -6
  22. package/doc/api/plugin-tls.allfunctionapply.md +59 -5
  23. package/doc/api/plugin-tls.becomepluginhost.md +1 -1
  24. package/doc/api/plugin-tls.becomepluginhost_extends.md +45 -11
  25. package/doc/api/plugin-tls.becomepluginhost_proxy.md +32 -4
  26. package/doc/api/plugin-tls.becometiermodeoptionshost.md +1 -1
  27. package/doc/api/plugin-tls.becometieroptionshost.md +1 -1
  28. package/doc/api/plugin-tls.classextender.md +1 -1
  29. package/doc/api/plugin-tls.classextenderprivatemember.md +65 -5
  30. package/doc/api/plugin-tls.classextenderprivatememberwithinit.md +44 -4
  31. package/doc/api/plugin-tls.classextenderwithinit.md +1 -1
  32. package/doc/api/plugin-tls.classtype._new_.md +31 -3
  33. package/doc/api/plugin-tls.classtype.md +21 -3
  34. package/doc/api/plugin-tls.createcallerofprivatememberofextend.md +31 -3
  35. package/doc/api/plugin-tls.createextendtarget.md +33 -3
  36. package/doc/api/plugin-tls.createextendtargetwithinit.md +35 -5
  37. package/doc/api/plugin-tls.createmixintarget.md +31 -3
  38. package/doc/api/plugin-tls.createpluginhost.md +114 -9
  39. package/doc/api/plugin-tls.createpropertysetter.md +45 -4
  40. package/doc/api/plugin-tls.createtargetextend.md +33 -3
  41. package/doc/api/plugin-tls.createtargetextendwithinit.md +35 -5
  42. package/doc/api/plugin-tls.createtargetmixin.md +33 -3
  43. package/doc/api/plugin-tls.createtiermodeoptionspluginhost.md +117 -11
  44. package/doc/api/plugin-tls.createtieroptionspluginhost.md +114 -9
  45. package/doc/api/plugin-tls.defineextend.md +49 -4
  46. package/doc/api/plugin-tls.defineextendwithinit.md +49 -4
  47. package/doc/api/plugin-tls.definemixin.md +49 -4
  48. package/doc/api/plugin-tls.extendtarget.md +49 -4
  49. package/doc/api/plugin-tls.extendtargetwithinit.md +49 -4
  50. package/doc/api/plugin-tls.getpropertyvalue.md +45 -4
  51. package/doc/api/plugin-tls.getpropertyvaluebypath.md +45 -4
  52. package/doc/api/plugin-tls.gettargetproperties.md +45 -4
  53. package/doc/api/plugin-tls.hostinst.md +1 -1
  54. package/doc/api/plugin-tls.idefaultoptionshost.md +41 -3
  55. package/doc/api/plugin-tls.iplugin.created.md +49 -4
  56. package/doc/api/plugin-tls.iplugin.destroyed.md +49 -4
  57. package/doc/api/plugin-tls.iplugin.md +45 -5
  58. package/doc/api/plugin-tls.iplugin.used.md +49 -4
  59. package/doc/api/plugin-tls.ipluginhost.md +23 -3
  60. package/doc/api/plugin-tls.ipluginhost.use.md +45 -4
  61. package/doc/api/plugin-tls.ipluginhostconstructor.md +23 -3
  62. package/doc/api/plugin-tls.ipluginhostconstructor.use.md +49 -4
  63. package/doc/api/plugin-tls.ipluginwithinit.inited.md +49 -4
  64. package/doc/api/plugin-tls.ipluginwithinit.md +23 -3
  65. package/doc/api/plugin-tls.itiermodeoptionshost.md +58 -4
  66. package/doc/api/plugin-tls.itieroptionshost.md +41 -3
  67. package/doc/api/plugin-tls.md +960 -92
  68. package/doc/api/plugin-tls.mergeproperties.md +45 -4
  69. package/doc/api/plugin-tls.mixin_4.md +49 -4
  70. package/doc/api/plugin-tls.mixintarget.md +49 -4
  71. package/doc/api/plugin-tls.modeoptions._constructor_.md +31 -3
  72. package/doc/api/plugin-tls.modeoptions._constructor__1.md +47 -4
  73. package/doc/api/plugin-tls.modeoptions.getfullmodeoption.md +31 -3
  74. package/doc/api/plugin-tls.modeoptions.getmodeoption.md +31 -3
  75. package/doc/api/plugin-tls.modeoptions.hasmode.md +31 -3
  76. package/doc/api/plugin-tls.modeoptions.md +347 -23
  77. package/doc/api/plugin-tls.modeoptions.setmodeoption.md +77 -6
  78. package/doc/api/plugin-tls.parsepropertypath.md +31 -3
  79. package/doc/api/{plugin-tls.pluginhost.destroy.md → plugin-tls.pluginhost.destroythis.md} +3 -3
  80. package/doc/api/plugin-tls.pluginhost.md +150 -11
  81. package/doc/api/plugin-tls.pluginhost.use.md +49 -4
  82. package/doc/api/plugin-tls.pluginmanager._constructor_.md +33 -3
  83. package/doc/api/plugin-tls.pluginmanager.created.md +33 -3
  84. package/doc/api/plugin-tls.pluginmanager.destroyed.md +33 -3
  85. package/doc/api/plugin-tls.pluginmanager.instuse.md +61 -5
  86. package/doc/api/plugin-tls.pluginmanager.md +187 -14
  87. package/doc/api/plugin-tls.pluginmanager.use.md +49 -4
  88. package/doc/api/plugin-tls.pluginmanagerwithinit.inited.md +33 -3
  89. package/doc/api/plugin-tls.pluginmanagerwithinit.md +31 -3
  90. package/doc/api/plugin-tls.privatememberofextend._constructor.md +31 -3
  91. package/doc/api/plugin-tls.privatememberofextend.md +35 -5
  92. package/doc/api/plugin-tls.privatememberofextendwithinit._init.md +31 -3
  93. package/doc/api/plugin-tls.privatememberofextendwithinit.md +24 -4
  94. package/doc/api/plugin-tls.setpropertyvalue.md +59 -5
  95. package/doc/api/plugin-tls.setpropertyvaluebypath.md +59 -5
  96. package/doc/api/plugin-tls.targetextend.md +49 -4
  97. package/doc/api/plugin-tls.targetextendwithinit.md +49 -4
  98. package/doc/api/plugin-tls.targetmixin.md +49 -4
  99. package/doc/api/plugin-tls.tiermodeoptions._constructor_.md +31 -3
  100. package/doc/api/plugin-tls.tiermodeoptions._constructor__1.md +63 -5
  101. package/doc/api/plugin-tls.tiermodeoptions.getfullmodeoption.md +31 -3
  102. package/doc/api/plugin-tls.tiermodeoptions.getmember.md +31 -3
  103. package/doc/api/plugin-tls.tiermodeoptions.getmodeoptionmanager.md +31 -3
  104. package/doc/api/plugin-tls.tiermodeoptions.getvalue.md +31 -3
  105. package/doc/api/plugin-tls.tiermodeoptions.hasmodeontier.md +31 -3
  106. package/doc/api/plugin-tls.tiermodeoptions.md +227 -17
  107. package/doc/api/plugin-tls.tiermodeoptionsdecorator.md +45 -4
  108. package/doc/api/plugin-tls.tiermodeoptionspluginhost._constructor_.md +31 -3
  109. package/doc/api/plugin-tls.tiermodeoptionspluginhost.md +152 -10
  110. package/doc/api/plugin-tls.tieroptions._constructor_.md +49 -4
  111. package/doc/api/plugin-tls.tieroptions.getmember.md +31 -3
  112. package/doc/api/plugin-tls.tieroptions.getvalue.md +31 -3
  113. package/doc/api/plugin-tls.tieroptions.md +209 -15
  114. package/doc/api/plugin-tls.tieroptionsdecorator.md +45 -4
  115. package/doc/api/plugin-tls.tieroptionspluginhost._constructor_.md +31 -3
  116. package/doc/api/plugin-tls.tieroptionspluginhost.md +116 -8
  117. package/package.json +29 -20
  118. package/dist/plugin-tls.d.ts +0 -1329
  119. package/dist/plugin-tls.iife.js +0 -1
  120. package/dist/plugin-tls.mjs +0 -1064
  121. package/dist/plugin-tls.umd.js +0 -1
  122. package/dist/tsdoc-metadata.json +0 -11
@@ -0,0 +1 @@
1
+ (function(s,d){typeof exports=="object"&&typeof module<"u"?d(exports,require("deepmerge-ts"),require("@gby/destroyable")):typeof define=="function"&&define.amd?define(["exports","deepmerge-ts","@gby/destroyable"],d):(s=typeof globalThis<"u"?globalThis:s||self,d(s.PluginTls={},s.deepmergeTs,s.destroyable))})(this,(function(s,d,N){"use strict";function g(n,...t){for(const e of t){const i=Object.getOwnPropertyDescriptors(e);Object.defineProperties(n,i)}return n}function D(n,t){return t}function W(){return function(t,e){return e}}function j(n,t){return g(n,t),t}function A(n){return function(e){return g(n,e),e}}function l(n,t){return g(n,t),n}function S(n){return function(e){return g(n,e),n}}function C(n,t){return t}function h(n,t){g(n.prototype,t);const e=t._constructor;typeof e=="function"&&(n._constructors??(n._constructors=[])).push(e);const i=t._destroy;return typeof i=="function"&&(n._destroys??(n._destroys=[])).push(i),t}function k(n){return function(e){return h(n,e),e}}function T(n,t){return h(n,t),n}function q(n){return function(e){return h(n,e),n}}function m(n,t,e){for(const i of n)i.apply(t,e)}function z(n){return{constructed:function(t,e){m(n._constructors??[],t,e)},initialized:function(t,e){m(n._inits??[],t,e)},destroyed:function(t,e){m(n._destroys??[],t,e)}}}function B(n,t){return t}function _(n,t){h(n,t);const e=t._init;return typeof e=="function"&&(n._inits??(n._inits=[])).push(e),t}function $(n){return function(e){return _(n,e),e}}function K(n,t){return _(n,t),n}function R(n){return function(e){return _(n,e),n}}class f{host;pluginOptsMap=new Map;plugins=[];constructor(t){t&&(this.host=t)}use(t,...e){const{pluginOptsMap:i,plugins:r,host:o}=this;if(!r.includes(t))return r.push(t),i.set(t,e[0]),t.used(o,e[0])}created(t){const{plugins:e,pluginOptsMap:i}=this;for(const r of e){const o=i.get(r);r.created?.(t,o)}}destroyed(t){const{plugins:e,pluginOptsMap:i}=this;for(const r of e){const o=i.get(r);r.destroyed?.(t,o)}}instUse(t,e,...i){if(!this.pluginOptsMap.has(e))return this.use(e,...i),e.created?.(t,...i)}}class G extends f{inited(t){const{plugins:e,pluginOptsMap:i}=this;for(const r of e){const o=i.get(r);r.inited?.(t,o)}}}function J(n,t){const e=t??"defaultOptions",i=`_${e}`;return function(o){const u=l(o,{get[e](){return n}});T(u,{get[e](){return this[i]||(this[i]=structuredClone(u.defaultOptions))}})}}function L(n,t,e){const i=`_${t}`;return T(n,{get[t](){return this[i]||(this[i]=structuredClone(n[t]))}}),e}function b(n){const t=n.split(".");return t[0]===""&&t.shift(),t}function y(n,t){for(const e of t)if(n=n[e],n==null)return;return n}function Q(n,t){return y(n,b(t))}function x(n,t,e){const i=t.pop(),r=t.length;let o=0;for(;o<r;){const u=n[t[o]];if(u==null)break;n=u,o++}t=t.slice(o);for(const u of t)n=n[u]={};return n[i]=e,n}function X(n,t,e){return x(n,b(t),e)}const w={UndefinedAndNull:function(t){return t==null},Undefined:function(t){return t===void 0},Null:function(t){return t===null}};class V{freezeMember=!0;fullOption=new Proxy(this,{get:function(t,e,i){const r=t.plainFullOption[e];return t.freezeMember?Object.freeze(r):r},set:function(t,e,i,r){return t.setMember(e,i,!1),!0},has:function(t,e){return e in t.plainFullOption},getOwnPropertyDescriptor:function(t,e){return Object.getOwnPropertyDescriptor(t.plainFullOption,e)},ownKeys:function(t){return Reflect.ownKeys(t.plainFullOption)},deleteProperty:function(t,e){return t.setMember(e,void 0),!0},defineProperty:function(t,e,i){return Object.defineProperty(t.option,e,i),!0}});setOption(t,e){const i=e?d.deepmergeInto(this.option,t):Object.assign(this.option,t);return this.updateFullOption(),i}get undefinedValue(){return this._undefinedValue}set undefinedValue(t){this._undefinedValue=t,this.isUndefined=w[t]||w.UndefinedAndNull}_undefinedValue="UndefinedAndNull";isUndefined=w.UndefinedAndNull;getMember(t){return this.option[t]}setMember(t,e,i){const r=this.option;if(e===void 0)delete r[t];else{const o=r[t];i&&o&&typeof o=="object"?d.deepmergeInto(o,e):r[t]=e}this.updateFullOption()}getValue(t){return y(this.option,t)}setValue(t,e,i){const r=this.option;let o;i&&(o=y(r,t))&&typeof o=="object"?d.deepmergeInto(o,e):x(this.option,t,e),this.updateFullOption()}}class c extends V{constructor(t,e){super(),t&&(this.option=t),e&&(this.extends=e)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}_extends=null;option={};get plainFullOption(){let t=this._plainFullOption;if(t)return t;const{extends:e,option:i}=this;if(t=i,e){const r=e.plainFullOption;t=d.deepmerge(r,i)}return this._plainFullOption=t}_plainFullOption=null;updateFullOption(){this._plainFullOption=null}getMember(t){const e=this.option[t];if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getMember(t)}getValue(t){const e=super.getValue(t);if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getValue(t)}}function Y(n,t){const{name:e}=t,i=`_${e}`;return{get:function(){return this[i]||(this[i]=new c(void 0,this.constructor[e]))}}}class E extends V{constructor(t,e){super(),e&&this.setModeOption(t,e),this.mode=t}modes={};get mode(){return this._mode||(this.mode=this.modeNames[0])}set mode(t){this._mode=t,this.hasMode(t)||this.setModeOption(t,{}),this.updateFullOption()}_mode;get modeNames(){return this._modeNames||(this._modeNames=this.getModeNames())}_modeNames=null;getModeNames(){return Object.keys(this.modes)}hasMode(t){return!!this.modes[t]}get optionManager(){return this.modes[this.mode]}get option(){return this.optionManager.option}get plainFullOption(){return this._plainFullOption??(this._plainFullOption=this.getFullModeOption(this.mode))}_plainFullOption=null;updateFullOption(){this._plainFullOption=null,this._modeNames=null}getModeOption(t){return this.modes[t].option}getFullModeOption(t){return this.modes[t]?.plainFullOption}setModeOption(t,e,i,r){const{modes:o}=this,u=o[t]||(o[t]=new c);if(u.setOption(e,i),r){const a=o[r];a&&(u.extends=a)}return this.updateFullOption(),u}}class p extends E{constructor(t,e,i){super(t,e),i&&(this.extends=i)}get extends(){return this._extends}set extends(t){this._extends=t,this.updateFullOption()}_extends=null;getFullModeOption(t){const{modes:e,extends:i}=this,r=e[t]?.plainFullOption;if(i){const o=i.getFullModeOption(t);return r?d.deepmerge(o,r):o}return r}getModeNames(){const{modes:t,extends:e}=this,i=Object.keys(t);if(!e)return i;const r=e.getModeNames();return[...new Set([...i,...r])]}hasModeOnTier(t){if(this.hasMode(t))return!0;const e=this.extends;return e?e.hasModeOnTier(t):!1}get optionManager(){return this.getModeOptionManager(this.mode)}getModeOptionManager(t){const e=this.modes[t];return e||(this.extends?.getModeOptionManager(t)?this.setModeOption(t,{}):null)}getMember(t){const e=this.optionManager.getMember(t);if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getMember(t)}getValue(t){const e=this.optionManager.getValue(t);if(!this.isUndefined(e))return e;const i=this.extends;if(i)return i.getValue(t)}}function Z(n,t){const{name:e}=t,i=`_${e}`;return{get:function(){return this[i]||(this[i]=new p(this.constructor[e].mode,void 0,this.constructor[e]))}}}class F extends N.WebDestroyable{static get pluginManager(){let t=this._pluginManager;return t||(t=this._pluginManager=new f(this)),t}static _pluginManager;get pluginManager(){return this.constructor.pluginManager}static use(t,...e){return this.pluginManager.use(t,...e)}use(t,...e){return this.pluginManager.instUse(this,t,...e)}destroyThis(){return this.pluginManager.destroyed(this),super.destroyThis()}}function H(n){const t=N.createDestroyableSubClass(n);return class extends t{static get pluginManager(){let i=this._pluginManager;return i||(i=this._pluginManager=new f(this)),i}static _pluginManager;get pluginManager(){return this.constructor.pluginManager}static use(i,...r){return this.pluginManager.use(i,...r)}use(i,...r){return this.pluginManager.instUse(this,i,...r)}destroyThis(){return this.pluginManager.destroyed(this),super.destroyThis()}}}function U(n){const t=l(n,{get pluginManager(){let e=this._pluginManager;return e||(e=this._pluginManager=new f(this)),e},use(e,i){return this.pluginManager.use(e,i)}});return l(t.prototype,{get pluginManager(){return this.constructor.pluginManager},use(e,i){return this.pluginManager.instUse(this,e,i)},destroy(){return this.pluginManager.destroyed(this)}}),n}function tt(n){const t=U(n);return new Proxy(n,{construct:function(e,i,r){const o=new e(...i);return t.pluginManager.created(this),o}})}function et(n){return class extends n{static get pluginManager(){let e=this._pluginManager;return e||(e=this._pluginManager=new f(this)),e}static _pluginManager;get pluginManager(){return this.constructor.pluginManager}static use(e,...i){return this.pluginManager.use(e,...i)}constructor(...e){super(...e),this.pluginManager.created(this)}use(e,...i){return this.pluginManager.instUse(this,e,...i)}destroy(){return this.pluginManager.destroyed(this)}}}class nt extends F{static defaultOptions=new c;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new c(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(t){super(),this.defaultOptions.option=t}}function it(n){const t=H(n);return class extends t{static defaultOptions=new c;get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new c(void 0,this.constructor.defaultOptions))}_defaultOptions;constructor(i){super(),this.defaultOptions.option=i}}}function st(n,t){const e=l(n,{defaultOptions:new c(t)});return l(e.prototype,{get defaultOptions(){return this._defaultOptions||(this._defaultOptions=new c(void 0,this.constructor.defaultOptions))}}),n}const O="common";class rt extends F{static modeOptions=new p(O);get modeOptions(){return this._modeOptions||(this._modeOptions=new p(O,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(t){this.modeOptions.mode=t}get options(){return this.modeOptions.plainFullOption}constructor(t){super(),this.modeOptions.setOption(t)}}function ot(n){const t=H(n);return class extends t{static modeOptions=new p(O);get modeOptions(){return this._modeOptions||(this._modeOptions=new p(O,void 0,this.constructor.modeOptions))}_modeOptions;get mode(){return this.modeOptions.mode}set mode(i){this.modeOptions.mode=i}get options(){return this.modeOptions.plainFullOption}constructor(i){super(),this.modeOptions.setOption(i)}}}function ut(n,t,e){const i=l(n,{modeOptions:new p(t,e)});return l(i.prototype,{get modeOptions(){return this._modeOptions||(this._modeOptions=new p(t,void 0,this.constructor.modeOptions))},get mode(){return this.modeOptions.mode},set mode(r){this.modeOptions.mode=r},get options(){return this.modeOptions.fullOption}}),n}function v(n,t){const e=[{target:n,props:t}];let i;for(;i=e.shift();){const{target:r,props:o}=i;for(const[u,a]of Object.entries(o)){if(a!=null&&typeof a=="object"&&(!a.constructor||a.constructor===Object)){e.push({target:r[u],props:a});continue}r[u]=a}}return n}function I(n,t){const e={},i=[{target:n,props:t,targetProps:e}];let r;for(;r=i.shift();){const{target:o,props:u,targetProps:a}=r;for(const[P,M]of Object.entries(u)){if(M!=null&&typeof M=="object"&&(!M.constructor||M.constructor===Object)){i.push({target:o[P],props:M,targetProps:a[P]={}});continue}a[P]=o[P]}}return e}function at(n,t){const e=I(n,t);function i(){v(n,t)}function r(){v(n,e)}return{set:i,unset:r}}s.ModeOptions=E,s.PluginHost=F,s.PluginManager=f,s.PluginManagerWithInit=G,s.TierModeOptions=p,s.TierModeOptionsPluginHost=rt,s.TierOptions=c,s.TierOptionsPluginHost=nt,s.addDefaultOptions=J,s.addInstOptions=L,s.allFunctionApply=m,s.becomePluginHost=U,s.becomePluginHost_Extends=et,s.becomePluginHost_Proxy=tt,s.becomeTierModeOptionsHost=ut,s.becomeTierOptionsHost=st,s.commonModeName=O,s.createCallerOfPrivateMemberOfExtend=z,s.createDefineMixin=W,s.createExtendTarget=q,s.createExtendTargetWithInit=R,s.createMixinTarget=S,s.createPluginHost=H,s.createPropertySetter=at,s.createTargetExtend=k,s.createTargetExtendWithInit=$,s.createTargetMixin=A,s.createTierModeOptionsPluginHost=ot,s.createTierOptionsPluginHost=it,s.defineExtend=C,s.defineExtendWithInit=B,s.defineMixin=D,s.extendTarget=T,s.extendTargetWithInit=K,s.getPropertyValue=y,s.getPropertyValueByPath=Q,s.getTargetProperties=I,s.mergeProperties=v,s.mixin=g,s.mixinTarget=l,s.parsePropertyPath=b,s.setPropertyValue=x,s.setPropertyValueByPath=X,s.targetExtend=h,s.targetExtendWithInit=_,s.targetMixin=j,s.tierModeOptionsDecorator=Z,s.tierOptionsDecorator=Y,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})}));
@@ -1 +1 @@
1
- {"version":3,"file":"ModeOptions.d.ts","sourceRoot":"","sources":["../../src/options-manager/ModeOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAC/C,OAAQ,EAAC,WAAW,EAAC,MAAM,eAAe,CAAA;AAG1C;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAC,MAAM,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,MAAM,CAAC;gBAEtG,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM;IASxC;;OAEG;IACH,KAAK,oCAA0C;IAE/C;;OAEG;IACH,IAAI,IAAI,IAAG,IAAI,CAEd;IACD,IAAI,IAAI,CAAC,KAAK,EAHH,IAGG,EAMb;IACD,SAAS,CAAC,KAAK,CAAC,EAAC,IAAI,CAAC;IAGtB;;OAEG;IACH,IAAI,SAAS,WAEZ;IAED,SAAS,CAAC,UAAU,EAAC,IAAI,EAAE,GAAG,IAAI,CAAQ;IAG1C;;;OAGG;IACH,YAAY;IAKZ;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAC,MAAM,GAAG,MAAM;IAM5B;;OAEG;IACH,IAAI,aAAa,IAAG,WAAW,CAAC,MAAM,CAAC,CAEtC;IAID;;OAEG;IACH,IAAI,MAAM,WAET;IAED,IAAI,eAAe,WAElB;IAED,SAAS,CAAC,gBAAgB,EAAC,MAAM,GAAC,IAAI,CAAQ;IAG9C;;OAEG;IACH,gBAAgB;IAOhB;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAC,IAAI,GAAE,MAAM,GAAC,IAAI;IAIpC;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAC,IAAI,GAAE,MAAM,GAAC,IAAI;IAKxC;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,CAAC,EAAC,OAAO,EAAC,MAAM,CAAC,EAAC,IAAI;CAiBnE"}
1
+ {"version":3,"file":"ModeOptions.d.ts","sourceRoot":"","sources":["../../src/options-manager/ModeOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAC/C,OAAQ,EAAC,WAAW,EAAC,MAAM,eAAe,CAAA;AAG1C;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAC,MAAM,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,MAAM,CAAC;gBAEtG,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM;IASxC;;OAEG;IACH,KAAK,EAAS,MAAM,CAAC,IAAI,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/C;;OAEG;IACH,IAAI,IAAI,IAAG,IAAI,CAEd;IACD,IAAI,IAAI,CAAC,KAAK,EAHH,IAGG,EAMb;IACD,SAAS,CAAC,KAAK,CAAC,EAAC,IAAI,CAAC;IAGtB;;OAEG;IACH,IAAI,SAAS,WAEZ;IAED,SAAS,CAAC,UAAU,EAAC,IAAI,EAAE,GAAG,IAAI,CAAQ;IAG1C;;;OAGG;IACH,YAAY,IAC0B,IAAI,EAAE;IAI5C;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAC,MAAM,GAAG,MAAM;IAM5B;;OAEG;IACH,IAAI,aAAa,IAAG,WAAW,CAAC,MAAM,CAAC,CAEtC;IAID;;OAEG;IACH,IAAI,MAAM,WAET;IAED,IAAI,eAAe,WAElB;IAED,SAAS,CAAC,gBAAgB,EAAC,MAAM,GAAC,IAAI,CAAQ;IAG9C;;OAEG;IACH,gBAAgB;IAOhB;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAC,IAAI,GAAE,MAAM,GAAC,IAAI;IAIpC;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAC,IAAI,GAAE,MAAM,GAAC,IAAI;IAKxC;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,CAAC,EAAC,OAAO,EAAC,MAAM,CAAC,EAAC,IAAI;CAiBnE"}
@@ -1 +1 @@
1
- {"version":3,"file":"OptionsManager.d.ts","sourceRoot":"","sources":["../../src/options-manager/OptionsManager.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,oBAAY,oBAAoB;IAC5B;;OAEG;IACH,gBAAgB,qBAAqB;IACrC;;OAEG;IACH,SAAS,cAAc;IACvB;;OAEG;IACH,IAAI,SAAS;CAEhB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;8BACuB,GAAG;uBAGV,GAAG;kBAGR,GAAG;CAGxC,CAAA;AAID;;GAEG;AACH,8BAAsB,cAAc,CAAC,MAAM,SAAS,EAAE,GAAG,GAAG;IAGxD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,YAAY,UAAQ;IAEpB;;;;;OAKG;IACH,UAAU,SAiCc;IAGxB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,gBAAgB,IAAI,IAAI;IAEjC;;;;;;OAMG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAQxC;;OAEG;IACH,IAAI,cAAc,yBAEjB;IACD,IAAI,cAAc,CAAC,KAAK,sBAAA,EAGvB;IAED,SAAS,CAAC,eAAe,uBAAyC;IAElE;;OAEG;IACH,WAAW,0BAAmC;IAG9C;;;;OAIG;IACH,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI;IAI7E;;;;;OAKG;IACH,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,OAAO;IAiBxF;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAG;IAIjC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,OAAO;CAW1D"}
1
+ {"version":3,"file":"OptionsManager.d.ts","sourceRoot":"","sources":["../../src/options-manager/OptionsManager.ts"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,oBAAY,oBAAoB;IAC5B;;OAEG;IACH,gBAAgB,qBAAqB;IACrC;;OAEG;IACH,SAAS,cAAc;IACvB;;OAEG;IACH,IAAI,SAAS;CAEhB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;8BACuB,GAAG;uBAGV,GAAG;kBAGR,GAAG;CAGxC,CAAA;AAID;;GAEG;AACH,8BAAsB,cAAc,CAAC,MAAM,SAAS,EAAE,GAAG,GAAG;IAGxD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,YAAY,UAAQ;IAEpB;;;;;OAKG;IACH,UAAU,EAiCO,MAAM,CAAC;IAGxB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,gBAAgB,IAAI,IAAI;IAEjC;;;;;;OAMG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAQxC;;OAEG;IACH,IAAI,cAAc,yBAEjB;IACD,IAAI,cAAc,CAAC,KAAK,sBAAA,EAGvB;IAED,SAAS,CAAC,eAAe,uBAAyC;IAElE;;OAEG;IACH,WAAW,UApHmC,GAAG,aAoHH;IAG9C;;;;OAIG;IACH,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI;IAI7E;;;;;OAKG;IACH,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,OAAO;IAiBxF;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAG;IAIjC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,OAAO;CAW1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"TierOptions.d.ts","sourceRoot":"","sources":["../../src/options-manager/TierOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAI/C,qBAAa,WAAW,CAAC,MAAM,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,MAAM,CAAC;gBAChE,MAAM,CAAC,EAAC,MAAM,EAAC,MAAM,CAAC,EAAC,WAAW,CAAC,MAAM,CAAC;IAStD;;OAEG;IACH,IAAI,OAAO,+BAEV;IACD,IAAI,OAAO,CAAC,KAAK,4BAAA,EAGhB;IACD,SAAS,CAAC,QAAQ,EAAC,WAAW,CAAC,MAAM,CAAC,GAAC,IAAI,CAAQ;IAEnD;;OAEG;IACH,MAAM,SAAgB;IAGtB;;;;OAIG;IACH,IAAI,eAAe,IAAG,MAAM,CAW3B;IACD,SAAS,CAAC,gBAAgB,EAAC,MAAM,GAAC,IAAI,CAAQ;IAG9C;;OAEG;IACH,gBAAgB;IAMhB;;;;OAIG;IACM,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAC,GAAG,GAAE,MAAM,CAAC,GAAG,CAAC,GAAC,SAAS,GAAC,IAAI;IAWhF;;;;OAIG;IACM,QAAQ,CAAC,QAAQ,EAAC,MAAM,EAAE,GAAE,GAAG;CAU3C;AASD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAC,KAAK,EAC3C,KAAK,EAAE,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,EAC/C,OAAO,EAAC,6BAA6B,CAAC,IAAI,EAAC,KAAK,CAAC,GACjD,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,CAS3C"}
1
+ {"version":3,"file":"TierOptions.d.ts","sourceRoot":"","sources":["../../src/options-manager/TierOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAI/C,qBAAa,WAAW,CAAC,MAAM,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,MAAM,CAAC;gBAChE,MAAM,CAAC,EAAC,MAAM,EAAC,MAAM,CAAC,EAAC,WAAW,CAAC,MAAM,CAAC;IAStD;;OAEG;IACH,IAAI,OAAO,+BAEV;IACD,IAAI,OAAO,CAAC,KAAK,4BAAA,EAGhB;IACD,SAAS,CAAC,QAAQ,EAAC,WAAW,CAAC,MAAM,CAAC,GAAC,IAAI,CAAQ;IAEnD;;OAEG;IACH,MAAM,EAAS,MAAM,CAAC;IAGtB;;;;OAIG;IACH,IAAI,eAAe,IAAG,MAAM,CAW3B;IACD,SAAS,CAAC,gBAAgB,EAAC,MAAM,GAAC,IAAI,CAAQ;IAG9C;;OAEG;IACH,gBAAgB;IAMhB;;;;OAIG;IACM,SAAS,CAAC,GAAG,SAAS,MAAM,MAAM,EAAE,GAAG,EAAC,GAAG,GAAE,MAAM,CAAC,GAAG,CAAC,GAAC,SAAS,GAAC,IAAI;IAWhF;;;;OAIG;IACM,QAAQ,CAAC,QAAQ,EAAC,MAAM,EAAE,GAAE,GAAG;CAU3C;AASD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAC,KAAK,EAC3C,KAAK,EAAE,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,EAC/C,OAAO,EAAC,6BAA6B,CAAC,IAAI,EAAC,KAAK,CAAC,GACjD,4BAA4B,CAAC,IAAI,EAAC,KAAK,CAAC,CAS3C"}
@@ -20,7 +20,7 @@ export interface IIDefaultOptionsHostConstructor<Options> {
20
20
  * @param options - 选项内容
21
21
  * @returns
22
22
  */
23
- export declare function addDefaultOptions<Options>(options: Options, name?: Optional<string>): <Clas extends new (...args: any) => any>(target: Clas) => void;
23
+ export declare function addDefaultOptions<Options>(options: Options, name?: Optional<string>): <Clas extends new (...args: any) => Object>(target: Clas) => void;
24
24
  /**
25
25
  * 创建增加带有选项机制的装饰器
26
26
  *
@@ -30,5 +30,5 @@ export declare function addDefaultOptions<Options>(options: Options, name?: Opti
30
30
  * @param options - 选项内容
31
31
  * @returns
32
32
  */
33
- export declare function addInstOptions<Clas extends new (...args: any) => any>(target: Clas, propertyKey: string, descriptor: PropertyDescriptor): PropertyDescriptor;
33
+ export declare function addInstOptions<Clas extends new (...args: any) => Object>(target: Clas, propertyKey: string, descriptor: PropertyDescriptor): PropertyDescriptor;
34
34
  //# sourceMappingURL=defaultOptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultOptions.d.ts","sourceRoot":"","sources":["../../src/options-manager/defaultOptions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,UAAU,CAAA;AAItC;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,OAAO;IACxC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B,CAAC,OAAO;IACpD,IAAI,cAAc,IAAI,OAAO,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,+BAGtB,GAAG,KAAK,GAAG,wBAkBxE;AAKD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,sBAYvI"}
1
+ {"version":3,"file":"defaultOptions.d.ts","sourceRoot":"","sources":["../../src/options-manager/defaultOptions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,UAAU,CAAA;AAItC;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,OAAO;IACxC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B,CAAC,OAAO;IACpD,IAAI,cAAc,IAAI,OAAO,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,IAGjD,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,QAAQ,IAAI,UAmBzF;AAKD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,sBAa1I"}
@@ -1,6 +1,7 @@
1
1
  import { PluginManager } from "../plugin-manager/PluginManager";
2
2
  import type { IPlugin, PluginCreatedReturnType, PluginUseReturnType, GetNormalizePluginOptions, FormatUsePluginParameters } from "../plugin-manager/PluginManager";
3
3
  import type { ReplaceConstructorReturn } from "../extend/mixin";
4
+ import { WebDestroyable } from "@gby/destroyable";
4
5
  /**
5
6
  * 插件宿主的接口
6
7
  *
@@ -44,7 +45,7 @@ export interface IPluginHostConstructor<HostClassType, Plugin extends IPlugin<Ho
44
45
  * 之所以没写在该类中的函数中,是因为 `this.pluginManager.created(this)` 通常会在构建函数执行的最后时才调用;
45
46
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
46
47
  */
47
- export declare class PluginHost<Plugin extends IPlugin<typeof PluginHost, any> = IPlugin<typeof PluginHost, any>> {
48
+ export declare class PluginHost<Plugin extends IPlugin<typeof PluginHost, any> = IPlugin<typeof PluginHost, any>> extends WebDestroyable {
48
49
  /**
49
50
  * 插件管理器
50
51
  */
@@ -75,7 +76,7 @@ export declare class PluginHost<Plugin extends IPlugin<typeof PluginHost, any> =
75
76
  * 销毁实例
76
77
  * @returns
77
78
  */
78
- destroy(): void;
79
+ destroyThis(): void;
79
80
  }
80
81
  /**
81
82
  * 创建插件的缩主类
@@ -89,12 +90,12 @@ export declare class PluginHost<Plugin extends IPlugin<typeof PluginHost, any> =
89
90
  * 如果像下面写在该类的构建函数中,然后子类通过 `super()` 来调用,这样就会导致 `this.pluginManager.created(this)` 不是在最后的执行;
90
91
  * @returns
91
92
  */
92
- export declare function createPluginHost<HOST, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>>(): {
93
- new (): {
93
+ export declare function createPluginHost<HOST, P extends new (...args: any) => Object, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>>(ParentClass: P): {
94
+ new (...args: any): {
94
95
  /**
95
96
  * 插件管理器 {@link CEarth.pluginManager}
96
97
  */
97
- readonly pluginManager: PluginManager<any, IPlugin<any, any>>;
98
+ get pluginManager(): PluginManager<any, IPlugin<any, any>>;
98
99
  /**
99
100
  /**
100
101
  * 实例的注册插件的方法
@@ -102,27 +103,97 @@ export declare function createPluginHost<HOST, Plugin extends IPlugin<HOST, any>
102
103
  * @param options
103
104
  * @returns
104
105
  */
105
- use<P extends Plugin>(plugin: P, ...options: FormatUsePluginParameters<P>): void | PluginCreatedReturnType<P>;
106
+ use<P_1 extends Plugin>(plugin: P_1, ...options: FormatUsePluginParameters<P_1>): PluginCreatedReturnType<P_1> | void;
106
107
  /**
107
108
  * 销毁实例
108
109
  * @returns
109
110
  */
110
- destroy(): void;
111
+ destroyThis(): void;
112
+ readonly isDestroyed: boolean;
113
+ _isDestroyed: boolean;
114
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
115
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
116
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
117
+ disposeObj<T extends unknown>(obj: T, sync?: boolean): T;
118
+ cancelDisposeObj<T extends unknown>(obj: T): T;
119
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
120
+ dispose<T extends unknown>(obj: T, asyncDestroy?: boolean): T;
121
+ dispose<T extends unknown>(objOrFun: T, asyncDestroy?: boolean): T;
122
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
123
+ cancelDispose<T extends unknown>(obj: T): T;
124
+ cancelDispose<T extends unknown>(objOrFun: T): T;
125
+ destroy(): true | undefined;
126
+ destroyAsync(): Promise<true | undefined>;
127
+ constructor: Function;
128
+ toString: (() => string) & (() => string);
129
+ toLocaleString: (() => string) & (() => string);
130
+ valueOf: (() => Object) & (() => Object);
131
+ hasOwnProperty: ((v: PropertyKey) => boolean) & ((v: PropertyKey) => boolean);
132
+ isPrototypeOf: ((v: Object) => boolean) & ((v: Object) => boolean);
133
+ propertyIsEnumerable: ((v: PropertyKey) => boolean) & ((v: PropertyKey) => boolean);
111
134
  };
112
135
  /**
113
136
  * PluginHost 的插件管理器
114
137
  */
115
- readonly pluginManager: PluginManager<typeof PluginHost & HOST, Plugin>;
116
- _pluginManager: PluginManager<typeof PluginHost & HOST, Plugin>;
138
+ get pluginManager(): PluginManager<typeof PluginHost & HOST & (new (...args: any) => {
139
+ readonly isDestroyed: boolean;
140
+ _isDestroyed: boolean;
141
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
142
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
143
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
144
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
145
+ cancelDisposeObj<T extends any>(obj: T): T;
146
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
147
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
148
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
149
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
150
+ cancelDispose<T extends any>(obj: T): T;
151
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
152
+ destroyThis(): void;
153
+ destroy(): true | undefined;
154
+ destroyAsync(): Promise<true | undefined>;
155
+ constructor: Function;
156
+ toString(): string;
157
+ toLocaleString(): string;
158
+ valueOf(): Object;
159
+ hasOwnProperty(v: PropertyKey): boolean;
160
+ isPrototypeOf(v: Object): boolean;
161
+ propertyIsEnumerable(v: PropertyKey): boolean;
162
+ }) & P, Plugin>;
163
+ _pluginManager: PluginManager<typeof PluginHost & HOST & (new (...args: any) => {
164
+ readonly isDestroyed: boolean;
165
+ _isDestroyed: boolean;
166
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
167
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
168
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
169
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
170
+ cancelDisposeObj<T extends any>(obj: T): T;
171
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
172
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
173
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
174
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
175
+ cancelDispose<T extends any>(obj: T): T;
176
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
177
+ destroyThis(): void;
178
+ destroy(): true | undefined;
179
+ destroyAsync(): Promise<true | undefined>;
180
+ constructor: Function;
181
+ toString(): string;
182
+ toLocaleString(): string;
183
+ valueOf(): Object;
184
+ hasOwnProperty(v: PropertyKey): boolean;
185
+ isPrototypeOf(v: Object): boolean;
186
+ propertyIsEnumerable(v: PropertyKey): boolean;
187
+ }) & P, Plugin>;
117
188
  /**
118
189
  * {@inheritDoc PluginManager.use}
119
190
  */
120
191
  use<P_1 extends Plugin>(plugin: P_1, ...options: FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
121
- };
192
+ } & P;
122
193
  /**
123
194
  * 将 HOST 变成插件宿主类型
124
195
  */
125
- export type BecomePluginHost<HOST extends new (...args: any) => any, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>> = HOST & IPluginHostConstructor<HOST & IPluginHostConstructor<HOST, Plugin>, Plugin> & ReplaceConstructorReturn<HOST, InstanceType<HOST> & IPluginHost<HOST & IPluginHostConstructor<HOST & IPluginHostConstructor<HOST, Plugin>, Plugin>>>;
196
+ export type BecomePluginHost<HOST extends new (...args: any) => Object, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>> = HOST & IPluginHostConstructor<HOST & IPluginHostConstructor<HOST, Plugin>, Plugin> & ReplaceConstructorReturn<HOST, InstanceType<HOST> & IPluginHost<HOST & IPluginHostConstructor<HOST & IPluginHostConstructor<HOST, Plugin>, Plugin>>>;
126
197
  /**
127
198
  * 变成插件宿主
128
199
  * @remarks
@@ -136,7 +207,7 @@ export type BecomePluginHost<HOST extends new (...args: any) => any, Plugin exte
136
207
  * @param context
137
208
  * @returns
138
209
  */
139
- export declare function becomePluginHost<HOST extends new (...args: any) => any, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>>(target: HOST): BecomePluginHost<HOST, Plugin>;
210
+ export declare function becomePluginHost<HOST extends new (...args: any) => Object, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>>(target: HOST): BecomePluginHost<HOST, Plugin>;
140
211
  /**
141
212
  * 变成插件宿主
142
213
  * @remarks
@@ -145,40 +216,46 @@ export declare function becomePluginHost<HOST extends new (...args: any) => any,
145
216
  * @param context
146
217
  * @returns
147
218
  */
148
- export declare function becomePluginHost_Proxy<HOST extends new (...args: any) => any, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>>(target: HOST): HOST;
219
+ export declare function becomePluginHost_Proxy<HOST extends new (...args: any) => Object, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>>(target: HOST): HOST;
149
220
  /**
150
221
  * 插件缩主类的装饰器(继承版)
151
222
  * @remarks
152
223
  * 通过继承实现
153
224
  */
154
- export declare function becomePluginHost_Extends<HOST extends new (...args: any) => any>(target: HOST): {
225
+ export declare function becomePluginHost_Extends<HOST extends new (...args: any) => Object>(target: HOST): {
155
226
  new (...args: any): {
156
- [x: string]: any;
157
227
  /**
158
228
  * 插件管理器 {@link PluginHost.pluginManager}
159
229
  */
160
- readonly pluginManager: PluginManager<any & HOST, IPlugin<any & HOST, any>>;
230
+ get pluginManager(): PluginManager</*elided*/ any & HOST, IPlugin</*elided*/ any & HOST, any>>;
161
231
  /**
162
232
  * 实例的注册插件的方法
163
233
  * @param plugin
164
234
  * @param options
165
235
  * @returns
166
236
  */
167
- use<Plugin_1 extends IPlugin<any & HOST, any>>(plugin: Plugin_1, ...options: FormatUsePluginParameters<Plugin_1>): void | PluginCreatedReturnType<Plugin_1>;
237
+ use<Plugin extends IPlugin</*elided*/ any & HOST, any>>(plugin: Plugin, ...options: FormatUsePluginParameters<Plugin>): void | PluginCreatedReturnType<Plugin>;
168
238
  /**
169
239
  * 销毁实例
170
240
  * @returns
171
241
  */
172
242
  destroy(): void;
243
+ constructor: Function;
244
+ toString(): string;
245
+ toLocaleString(): string;
246
+ valueOf(): Object;
247
+ hasOwnProperty(v: PropertyKey): boolean;
248
+ isPrototypeOf(v: Object): boolean;
249
+ propertyIsEnumerable(v: PropertyKey): boolean;
173
250
  };
174
251
  /**
175
252
  * 插件管理器
176
253
  */
177
- readonly pluginManager: PluginManager<any & HOST, IPlugin<any & HOST, any>>;
178
- _pluginManager: PluginManager<any & HOST, IPlugin<any & HOST, any>>;
254
+ get pluginManager(): PluginManager</*elided*/ any & HOST, IPlugin</*elided*/ any & HOST, any>>;
255
+ _pluginManager: PluginManager</*elided*/ any & HOST>;
179
256
  /**
180
257
  * {@inheritDoc PluginManager.use}
181
258
  */
182
- use<Plugin_2 extends IPlugin<any & HOST, any>>(plugin: Plugin_2, ...options: FormatUsePluginParameters<Plugin_2>): void | ReturnType<Plugin_2["used"]>;
259
+ use<Plugin extends IPlugin</*elided*/ any & HOST, any>>(plugin: Plugin, ...options: FormatUsePluginParameters<Plugin>): void | ReturnType<Plugin["used"]>;
183
260
  } & HOST;
184
261
  //# sourceMappingURL=PluginHost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-host/PluginHost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-host/PluginHost.ts"],"names":[],"mappings":"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"}
@@ -61,42 +61,107 @@ export declare class TierModeOptionsPluginHost<Options extends {} = any, Mode ex
61
61
  *
62
62
  * @returns
63
63
  */
64
- export declare function createTierModeOptionsPluginHost<HOST, Options extends {}, Mode extends string | number = string>(): {
64
+ export declare function createTierModeOptionsPluginHost<HOST, P extends new (...args: any) => Object, Options extends {}, Mode extends string | number = string>(ParentClass: P): {
65
65
  new (options: Options): {
66
66
  /**
67
67
  * 实例级的默认选项
68
68
  */
69
- readonly modeOptions: TierModeOptions<Mode, Options>;
69
+ get modeOptions(): TierModeOptions<Mode, Options>;
70
70
  _modeOptions: TierModeOptions<Mode, Options>;
71
- mode: Mode;
72
- readonly options: Options;
73
- /**
74
- * 使 host 变成 层级选项的宿主类型
75
- * @param host
76
- * @param context
77
- * @returns
78
- */
79
- readonly pluginManager: import("..").PluginManager<any, import("..").IPlugin<any, any>>;
80
- use<P extends import("..").IPlugin<HOST, any>>(plugin: P, ...options: import("..").FormatUsePluginParameters<P>): void | import("..").PluginCreatedReturnType<P>;
81
- destroy(): void;
71
+ get mode(): Mode;
72
+ set mode(value: Mode);
73
+ get options(): Options;
74
+ get pluginManager(): import("..").PluginManager<any, import("..").IPlugin<any, any>>;
75
+ use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | import("..").PluginCreatedReturnType<P_1>;
76
+ destroyThis(): void;
77
+ readonly isDestroyed: boolean;
78
+ _isDestroyed: boolean;
79
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
80
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
81
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
82
+ disposeObj<T extends unknown>(obj: T, sync?: boolean): T;
83
+ cancelDisposeObj<T extends unknown>(obj: T): T;
84
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
85
+ dispose<T extends unknown>(obj: T, asyncDestroy?: boolean): T;
86
+ dispose<T extends unknown>(objOrFun: T, asyncDestroy?: boolean): T;
87
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
88
+ cancelDispose<T extends unknown>(obj: T): T;
89
+ cancelDispose<T extends unknown>(objOrFun: T): T;
90
+ destroy(): true | undefined;
91
+ destroyAsync(): Promise<true | undefined>;
92
+ constructor: Function;
93
+ toString: (() => string) & (() => string);
94
+ toLocaleString: (() => string) & (() => string);
95
+ valueOf: (() => Object) & (() => Object);
96
+ hasOwnProperty: ((v: PropertyKey) => boolean) & ((v: PropertyKey) => boolean);
97
+ isPrototypeOf: ((v: Object) => boolean) & ((v: Object) => boolean);
98
+ propertyIsEnumerable: ((v: PropertyKey) => boolean) & ((v: PropertyKey) => boolean);
82
99
  };
83
100
  /**
84
101
  * 全局级别的默认选项
85
102
  */
86
103
  readonly modeOptions: TierModeOptions<string, Options>;
87
- readonly pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
88
- _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
104
+ get pluginManager(): import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
105
+ readonly isDestroyed: boolean;
106
+ _isDestroyed: boolean;
107
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
108
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
109
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
110
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
111
+ cancelDisposeObj<T extends any>(obj: T): T;
112
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
113
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
114
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
115
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
116
+ cancelDispose<T extends any>(obj: T): T;
117
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
118
+ destroyThis(): void;
119
+ destroy(): true | undefined;
120
+ destroyAsync(): Promise<true | undefined>;
121
+ constructor: Function;
122
+ toString(): string;
123
+ toLocaleString(): string;
124
+ valueOf(): Object;
125
+ hasOwnProperty(v: PropertyKey): boolean;
126
+ isPrototypeOf(v: Object): boolean;
127
+ propertyIsEnumerable(v: PropertyKey): boolean;
128
+ }) & P, import("..").IPlugin<HOST, any>>;
129
+ _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
130
+ readonly isDestroyed: boolean;
131
+ _isDestroyed: boolean;
132
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
133
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
134
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
135
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
136
+ cancelDisposeObj<T extends any>(obj: T): T;
137
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
138
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
139
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
140
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
141
+ cancelDispose<T extends any>(obj: T): T;
142
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
143
+ destroyThis(): void;
144
+ destroy(): true | undefined;
145
+ destroyAsync(): Promise<true | undefined>;
146
+ constructor: Function;
147
+ toString(): string;
148
+ toLocaleString(): string;
149
+ valueOf(): Object;
150
+ hasOwnProperty(v: PropertyKey): boolean;
151
+ isPrototypeOf(v: Object): boolean;
152
+ propertyIsEnumerable(v: PropertyKey): boolean;
153
+ }) & P, import("..").IPlugin<HOST, any>>;
89
154
  use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
90
- };
155
+ } & P;
91
156
  /**
92
157
  * 使 HOST 变成 层级选项的宿主类型
93
158
  */
94
- export type BecomeTierModeOptionsHost<HOST extends new (...args: any) => any, Options extends {} = any, Mode extends string | number = string> = HOST & ITierModeOptionsHostConstructor<Options, Mode> & ReplaceConstructorReturn<HOST, InstanceType<HOST> & ITierModeOptionsHost<Options, Mode>>;
159
+ export type BecomeTierModeOptionsHost<HOST extends new (...args: any) => Object, Options extends {} = any, Mode extends string | number = string> = HOST & ITierModeOptionsHostConstructor<Options, Mode> & ReplaceConstructorReturn<HOST, InstanceType<HOST> & ITierModeOptionsHost<Options, Mode>>;
95
160
  /**
96
161
  * 使 host 变成 层级选项的宿主类型
97
162
  * @param host
98
163
  * @param context
99
164
  * @returns
100
165
  */
101
- export declare function becomeTierModeOptionsHost<HOST extends new (...args: any) => any, Mode extends string | number, Options extends {}>(host: HOST, mode: Mode, options?: Options): BecomeTierModeOptionsHost<HOST, Options, Mode>;
166
+ export declare function becomeTierModeOptionsHost<HOST extends new (...args: any) => Object, Mode extends string | number, Options extends {}>(host: HOST, mode: Mode, options?: Options): BecomeTierModeOptionsHost<HOST, Options, Mode>;
102
167
  //# sourceMappingURL=TierModeOptionsPluginHost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TierModeOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-host/TierModeOptionsPluginHost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TierModeOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-host/TierModeOptionsPluginHost.ts"],"names":[],"mappings":"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"}
@@ -50,34 +50,104 @@ export declare class TierOptionsPluginHost<Options extends {} = any> extends Plu
50
50
  *
51
51
  * @returns
52
52
  */
53
- export declare function createTierOptionsPluginHost<HOST, Options extends {}>(): {
53
+ export declare function createTierOptionsPluginHost<HOST, P extends new (...args: any) => Object, Options extends {}>(ParentClass: P): {
54
54
  new (options: Options): {
55
55
  /**
56
56
  * 实例级的默认选项
57
57
  */
58
- readonly defaultOptions: TierOptions<Options>;
58
+ get defaultOptions(): TierOptions<Options>;
59
59
  _defaultOptions: TierOptions<Options>;
60
- readonly pluginManager: import("..").PluginManager<any, import("..").IPlugin<any, any>>;
61
- use<P extends import("..").IPlugin<HOST, any>>(plugin: P, ...options: import("..").FormatUsePluginParameters<P>): void | import("..").PluginCreatedReturnType<P>;
62
- destroy(): void;
60
+ get pluginManager(): import("..").PluginManager<any, import("..").IPlugin<any, any>>;
61
+ use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | import("..").PluginCreatedReturnType<P_1>;
62
+ destroyThis(): void;
63
+ readonly isDestroyed: boolean;
64
+ _isDestroyed: boolean;
65
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
66
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
67
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
68
+ disposeObj<T extends unknown>(obj: T, sync?: boolean): T;
69
+ cancelDisposeObj<T extends unknown>(obj: T): T;
70
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
71
+ dispose<T extends unknown>(obj: T, asyncDestroy?: boolean): T;
72
+ dispose<T extends unknown>(objOrFun: T, asyncDestroy?: boolean): T;
73
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
74
+ cancelDispose<T extends unknown>(obj: T): T;
75
+ cancelDispose<T extends unknown>(objOrFun: T): T;
76
+ destroy(): true | undefined;
77
+ destroyAsync(): Promise<true | undefined>;
78
+ constructor: Function;
79
+ toString: (() => string) & (() => string);
80
+ toLocaleString: (() => string) & (() => string);
81
+ valueOf: (() => Object) & (() => Object);
82
+ hasOwnProperty: ((v: PropertyKey) => boolean) & ((v: PropertyKey) => boolean);
83
+ isPrototypeOf: ((v: Object) => boolean) & ((v: Object) => boolean);
84
+ propertyIsEnumerable: ((v: PropertyKey) => boolean) & ((v: PropertyKey) => boolean);
63
85
  };
64
86
  /**
65
87
  * 全局级别的默认选项
66
88
  */
67
89
  readonly defaultOptions: TierOptions<Options>;
68
- readonly pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
69
- _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
90
+ get pluginManager(): import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
91
+ readonly isDestroyed: boolean;
92
+ _isDestroyed: boolean;
93
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
94
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
95
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
96
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
97
+ cancelDisposeObj<T extends any>(obj: T): T;
98
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
99
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
100
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
101
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
102
+ cancelDispose<T extends any>(obj: T): T;
103
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
104
+ destroyThis(): void;
105
+ destroy(): true | undefined;
106
+ destroyAsync(): Promise<true | undefined>;
107
+ constructor: Function;
108
+ toString(): string;
109
+ toLocaleString(): string;
110
+ valueOf(): Object;
111
+ hasOwnProperty(v: PropertyKey): boolean;
112
+ isPrototypeOf(v: Object): boolean;
113
+ propertyIsEnumerable(v: PropertyKey): boolean;
114
+ }) & P, import("..").IPlugin<HOST, any>>;
115
+ _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
116
+ readonly isDestroyed: boolean;
117
+ _isDestroyed: boolean;
118
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
119
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
120
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
121
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
122
+ cancelDisposeObj<T extends any>(obj: T): T;
123
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
124
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
125
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
126
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
127
+ cancelDispose<T extends any>(obj: T): T;
128
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
129
+ destroyThis(): void;
130
+ destroy(): true | undefined;
131
+ destroyAsync(): Promise<true | undefined>;
132
+ constructor: Function;
133
+ toString(): string;
134
+ toLocaleString(): string;
135
+ valueOf(): Object;
136
+ hasOwnProperty(v: PropertyKey): boolean;
137
+ isPrototypeOf(v: Object): boolean;
138
+ propertyIsEnumerable(v: PropertyKey): boolean;
139
+ }) & P, import("..").IPlugin<HOST, any>>;
70
140
  use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
71
- };
141
+ } & P;
72
142
  /**
73
143
  * 使 HOST 变成 层级选项的宿主类型
74
144
  */
75
- export type BecomeTierOptionsHost<HOST extends new (...args: any) => any, Options extends {} = any> = HOST & ITierOptionsHostConstructor<Options> & ReplaceConstructorReturn<HOST, InstanceType<HOST> & ITierOptionsHost<Options>>;
145
+ export type BecomeTierOptionsHost<HOST extends new (...args: any) => Object, Options extends {} = any> = HOST & ITierOptionsHostConstructor<Options> & ReplaceConstructorReturn<HOST, InstanceType<HOST> & ITierOptionsHost<Options>>;
76
146
  /**
77
147
  * 使 host 变成 层级选项的宿主类型
78
148
  * @param host
79
149
  * @param context
80
150
  * @returns
81
151
  */
82
- export declare function becomeTierOptionsHost<HOST extends new (...args: any) => any, Options extends {} = any>(host: HOST, option?: Options): BecomeTierOptionsHost<HOST, any>;
152
+ export declare function becomeTierOptionsHost<HOST extends new (...args: any) => Object, Options extends {} = any>(host: HOST, option?: Options): BecomeTierOptionsHost<HOST>;
83
153
  //# sourceMappingURL=TierOptionsPluginHost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TierOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-host/TierOptionsPluginHost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,UAAU,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAG,WAAW,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,EAAE,KAAK,wBAAwB,EAAe,MAAM,iBAAiB,CAAC;AAI7E;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG;IACxD,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG;IACnE,IAAI,cAAc,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;CAC5C;AAID;;GAEG;AACH,MAAM,MAAM,sBAAsB,CAAC,aAAa,SAAS,iCAAiC,CAAC,GAAG,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,WAAW,CAAC,aAAa,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAEpL;;GAEG;AACH,MAAM,MAAM,iCAAiC,CAAC,aAAa,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,sBAAsB,CAAC,aAAa,CAAC,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;AAItK;;;;;;;;GAQG;AACH,qBAAa,qBAAqB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,UAAU;IAC7E;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,cAAc,mBAA0B;IAGxD;;OAEG;IACH,IAAI,cAAc,yBAKjB;IACD,SAAS,CAAC,eAAe,EAAG,WAAW,CAAC,OAAO,CAAC,CAAC;gBAErC,OAAO,EAAE,OAAO;CAI7B;AAGD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,OAAO,SAAS,EAAE;kBAoB3C,OAAO;QAX5B;;WAEG;;yBAOe,YAAY,OAAO,CAAC;;;;;IAftC;;OAEG;;;;;EAoBN;AAGD;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,GAAG,wBAAwB,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAInO;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,CAAC,EAAC,OAAO,oCAqBjI"}
1
+ {"version":3,"file":"TierOptionsPluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-host/TierOptionsPluginHost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,UAAU,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAG,WAAW,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,EAAE,KAAK,wBAAwB,EAAe,MAAM,iBAAiB,CAAC;AAI7E;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG;IACxD,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG;IACnE,IAAI,cAAc,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;CAC5C;AAID;;GAEG;AACH,MAAM,MAAM,sBAAsB,CAAC,aAAa,SAAS,iCAAiC,CAAC,GAAG,CAAC,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,WAAW,CAAC,aAAa,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAEpL;;GAEG;AACH,MAAM,MAAM,iCAAiC,CAAC,aAAa,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,sBAAsB,CAAC,aAAa,CAAC,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;AAItK;;;;;;;;GAQG;AACH,qBAAa,qBAAqB,CAAC,OAAO,SAAS,EAAE,GAAG,GAAG,CAAE,SAAQ,UAAU;IAC7E;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,cAAc,mBAA0B;IAGxD;;OAEG;IACH,IAAI,cAAc,yBAKjB;IACD,SAAS,CAAC,eAAe,EAAG,WAAW,CAAC,OAAO,CAAC,CAAC;gBAErC,OAAO,EAAE,OAAO;CAI7B;AAGD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAC,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,OAAO,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC;kBAoBlG,OAAO;QAX5B;;WAEG;;yBAOe,WAAW,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;IAftC;;OAEG;;;;;;;;8CArCiC,CAAC;;;mDAa8F,CAAC;kGAK7G,CAAC;;;;;;;;;;;;;;;;;;;;;8CAlBY,CAAC;;;mDAa8F,CAAC;kGAK7G,CAAC;;;;;;;;;;;;;;;;MAuC3B;AAGD;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,IAAI,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,GAAG,wBAAwB,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;AAItO;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,EAAE,OAAO,SAAS,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,CAAC,EAAC,OAAO,GAoBpH,qBAAqB,CAAC,IAAI,CAAC,CAC3C"}
@@ -2,7 +2,7 @@ import { AnyFunction } from "type-tls";
2
2
  /**
3
3
  * 插件宿主的实例类型
4
4
  */
5
- export type HostInst<H> = H extends new (...args: any) => any ? InstanceType<H> : H;
5
+ export type HostInst<H> = H extends new (...args: any) => Object ? InstanceType<H> : H;
6
6
  /**
7
7
  * 格式化 use 方法的参数列表
8
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PluginManager.d.ts","sourceRoot":"","sources":["../../src/plugin-manager/PluginManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PluginManager.d.ts","sourceRoot":"","sources":["../../src/plugin-manager/PluginManager.ts"],"names":[],"mappings":"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"}