plugin-tls 1.1.1 → 2.0.0

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 (113) hide show
  1. package/dist/extend/extend.d.ts +2 -2
  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.map +1 -1
  10. package/dist/plugin-host/PluginHost.d.ts +53 -15
  11. package/dist/plugin-host/PluginHost.d.ts.map +1 -1
  12. package/dist/plugin-host/TierModeOptionsPluginHost.d.ts +45 -16
  13. package/dist/plugin-host/TierModeOptionsPluginHost.d.ts.map +1 -1
  14. package/dist/plugin-host/TierOptionsPluginHost.d.ts +43 -9
  15. package/dist/plugin-host/TierOptionsPluginHost.d.ts.map +1 -1
  16. package/doc/api/index.md +23 -3
  17. package/doc/api/plugin-tls.adddefaultoptions.md +49 -4
  18. package/doc/api/plugin-tls.addinstoptions.md +59 -5
  19. package/doc/api/plugin-tls.allfunctionapply.md +59 -5
  20. package/doc/api/plugin-tls.becomepluginhost_extends.md +37 -9
  21. package/doc/api/plugin-tls.becomepluginhost_proxy.md +31 -3
  22. package/doc/api/plugin-tls.classextenderprivatemember.md +64 -4
  23. package/doc/api/plugin-tls.classextenderprivatememberwithinit.md +43 -3
  24. package/doc/api/plugin-tls.classtype._new_.md +31 -3
  25. package/doc/api/plugin-tls.classtype.md +21 -3
  26. package/doc/api/plugin-tls.createcallerofprivatememberofextend.md +31 -3
  27. package/doc/api/plugin-tls.createextendtarget.md +33 -3
  28. package/doc/api/plugin-tls.createextendtargetwithinit.md +35 -5
  29. package/doc/api/plugin-tls.createmixintarget.md +31 -3
  30. package/doc/api/plugin-tls.createpluginhost.md +81 -9
  31. package/doc/api/plugin-tls.createpropertysetter.md +45 -4
  32. package/doc/api/plugin-tls.createtargetextend.md +33 -3
  33. package/doc/api/plugin-tls.createtargetextendwithinit.md +35 -5
  34. package/doc/api/plugin-tls.createtargetmixin.md +33 -3
  35. package/doc/api/plugin-tls.createtiermodeoptionspluginhost.md +81 -11
  36. package/doc/api/plugin-tls.createtieroptionspluginhost.md +78 -9
  37. package/doc/api/plugin-tls.defineextend.md +49 -4
  38. package/doc/api/plugin-tls.defineextendwithinit.md +49 -4
  39. package/doc/api/plugin-tls.definemixin.md +49 -4
  40. package/doc/api/plugin-tls.extendtarget.md +49 -4
  41. package/doc/api/plugin-tls.extendtargetwithinit.md +49 -4
  42. package/doc/api/plugin-tls.getpropertyvalue.md +45 -4
  43. package/doc/api/plugin-tls.getpropertyvaluebypath.md +45 -4
  44. package/doc/api/plugin-tls.gettargetproperties.md +45 -4
  45. package/doc/api/plugin-tls.idefaultoptionshost.md +41 -3
  46. package/doc/api/plugin-tls.iplugin.created.md +49 -4
  47. package/doc/api/plugin-tls.iplugin.destroyed.md +49 -4
  48. package/doc/api/plugin-tls.iplugin.md +45 -5
  49. package/doc/api/plugin-tls.iplugin.used.md +49 -4
  50. package/doc/api/plugin-tls.ipluginhost.md +23 -3
  51. package/doc/api/plugin-tls.ipluginhost.use.md +45 -4
  52. package/doc/api/plugin-tls.ipluginhostconstructor.md +23 -3
  53. package/doc/api/plugin-tls.ipluginhostconstructor.use.md +49 -4
  54. package/doc/api/plugin-tls.ipluginwithinit.inited.md +49 -4
  55. package/doc/api/plugin-tls.ipluginwithinit.md +23 -3
  56. package/doc/api/plugin-tls.itiermodeoptionshost.md +58 -4
  57. package/doc/api/plugin-tls.itieroptionshost.md +41 -3
  58. package/doc/api/plugin-tls.md +960 -92
  59. package/doc/api/plugin-tls.mergeproperties.md +45 -4
  60. package/doc/api/plugin-tls.mixin_4.md +49 -4
  61. package/doc/api/plugin-tls.mixintarget.md +49 -4
  62. package/doc/api/plugin-tls.modeoptions._constructor_.md +31 -3
  63. package/doc/api/plugin-tls.modeoptions._constructor__1.md +47 -4
  64. package/doc/api/plugin-tls.modeoptions.getfullmodeoption.md +31 -3
  65. package/doc/api/plugin-tls.modeoptions.getmodeoption.md +31 -3
  66. package/doc/api/plugin-tls.modeoptions.hasmode.md +31 -3
  67. package/doc/api/plugin-tls.modeoptions.md +347 -23
  68. package/doc/api/plugin-tls.modeoptions.setmodeoption.md +77 -6
  69. package/doc/api/plugin-tls.parsepropertypath.md +31 -3
  70. package/doc/api/{plugin-tls.pluginhost.destroy.md → plugin-tls.pluginhost.destroythis.md} +3 -3
  71. package/doc/api/plugin-tls.pluginhost.md +150 -11
  72. package/doc/api/plugin-tls.pluginhost.use.md +49 -4
  73. package/doc/api/plugin-tls.pluginmanager._constructor_.md +33 -3
  74. package/doc/api/plugin-tls.pluginmanager.created.md +33 -3
  75. package/doc/api/plugin-tls.pluginmanager.destroyed.md +33 -3
  76. package/doc/api/plugin-tls.pluginmanager.instuse.md +61 -5
  77. package/doc/api/plugin-tls.pluginmanager.md +187 -14
  78. package/doc/api/plugin-tls.pluginmanager.use.md +49 -4
  79. package/doc/api/plugin-tls.pluginmanagerwithinit.inited.md +33 -3
  80. package/doc/api/plugin-tls.pluginmanagerwithinit.md +31 -3
  81. package/doc/api/plugin-tls.privatememberofextend._constructor.md +31 -3
  82. package/doc/api/plugin-tls.privatememberofextend.md +34 -4
  83. package/doc/api/plugin-tls.privatememberofextendwithinit._init.md +31 -3
  84. package/doc/api/plugin-tls.privatememberofextendwithinit.md +23 -3
  85. package/doc/api/plugin-tls.setpropertyvalue.md +59 -5
  86. package/doc/api/plugin-tls.setpropertyvaluebypath.md +59 -5
  87. package/doc/api/plugin-tls.targetextend.md +49 -4
  88. package/doc/api/plugin-tls.targetextendwithinit.md +49 -4
  89. package/doc/api/plugin-tls.targetmixin.md +49 -4
  90. package/doc/api/plugin-tls.tiermodeoptions._constructor_.md +31 -3
  91. package/doc/api/plugin-tls.tiermodeoptions._constructor__1.md +63 -5
  92. package/doc/api/plugin-tls.tiermodeoptions.getfullmodeoption.md +31 -3
  93. package/doc/api/plugin-tls.tiermodeoptions.getmember.md +31 -3
  94. package/doc/api/plugin-tls.tiermodeoptions.getmodeoptionmanager.md +31 -3
  95. package/doc/api/plugin-tls.tiermodeoptions.getvalue.md +31 -3
  96. package/doc/api/plugin-tls.tiermodeoptions.hasmodeontier.md +31 -3
  97. package/doc/api/plugin-tls.tiermodeoptions.md +227 -17
  98. package/doc/api/plugin-tls.tiermodeoptionsdecorator.md +45 -4
  99. package/doc/api/plugin-tls.tiermodeoptionspluginhost._constructor_.md +31 -3
  100. package/doc/api/plugin-tls.tiermodeoptionspluginhost.md +152 -10
  101. package/doc/api/plugin-tls.tieroptions._constructor_.md +49 -4
  102. package/doc/api/plugin-tls.tieroptions.getmember.md +31 -3
  103. package/doc/api/plugin-tls.tieroptions.getvalue.md +31 -3
  104. package/doc/api/plugin-tls.tieroptions.md +209 -15
  105. package/doc/api/plugin-tls.tieroptionsdecorator.md +45 -4
  106. package/doc/api/plugin-tls.tieroptionspluginhost._constructor_.md +31 -3
  107. package/doc/api/plugin-tls.tieroptionspluginhost.md +116 -8
  108. package/package.json +29 -20
  109. package/dist/plugin-tls.d.ts +0 -1329
  110. package/dist/plugin-tls.iife.js +0 -1
  111. package/dist/plugin-tls.mjs +0 -1064
  112. package/dist/plugin-tls.umd.js +0 -1
  113. 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"}
@@ -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,GAAG,EAAE,QAAQ,IAAI,UAkBtF;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,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,13 @@ 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) => any, Plugin extends IPlugin<HOST, any> = IPlugin<HOST, any>>(ParentClass: P): {
94
+ new (...args: any): {
95
+ [x: string]: any;
94
96
  /**
95
97
  * 插件管理器 {@link CEarth.pluginManager}
96
98
  */
97
- readonly pluginManager: PluginManager<any, IPlugin<any, any>>;
99
+ get pluginManager(): PluginManager<any, IPlugin<any, any>>;
98
100
  /**
99
101
  /**
100
102
  * 实例的注册插件的方法
@@ -102,23 +104,59 @@ export declare function createPluginHost<HOST, Plugin extends IPlugin<HOST, any>
102
104
  * @param options
103
105
  * @returns
104
106
  */
105
- use<P extends Plugin>(plugin: P, ...options: FormatUsePluginParameters<P>): void | PluginCreatedReturnType<P>;
107
+ use<P_1 extends Plugin>(plugin: P_1, ...options: FormatUsePluginParameters<P_1>): PluginCreatedReturnType<P_1> | void;
106
108
  /**
107
109
  * 销毁实例
108
110
  * @returns
109
111
  */
110
- destroy(): void;
112
+ destroyThis(): any;
111
113
  };
112
114
  /**
113
115
  * PluginHost 的插件管理器
114
116
  */
115
- readonly pluginManager: PluginManager<typeof PluginHost & HOST, Plugin>;
116
- _pluginManager: PluginManager<typeof PluginHost & HOST, Plugin>;
117
+ get pluginManager(): PluginManager<typeof PluginHost & HOST & (new (...args: any) => {
118
+ [x: string]: any;
119
+ readonly isDestroyed: boolean;
120
+ _isDestroyed: boolean;
121
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
122
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
123
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
124
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
125
+ cancelDisposeObj<T extends any>(obj: T): T;
126
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
127
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
128
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
129
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
130
+ cancelDispose<T extends any>(obj: T): T;
131
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
132
+ destroyThis(): void;
133
+ destroy(): true | undefined;
134
+ destroyAsync(): Promise<true | undefined>;
135
+ }) & P, Plugin>;
136
+ _pluginManager: PluginManager<typeof PluginHost & HOST & (new (...args: any) => {
137
+ [x: string]: any;
138
+ readonly isDestroyed: boolean;
139
+ _isDestroyed: boolean;
140
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
141
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
142
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
143
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
144
+ cancelDisposeObj<T extends any>(obj: T): T;
145
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
146
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
147
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
148
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
149
+ cancelDispose<T extends any>(obj: T): T;
150
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
151
+ destroyThis(): void;
152
+ destroy(): true | undefined;
153
+ destroyAsync(): Promise<true | undefined>;
154
+ }) & P, Plugin>;
117
155
  /**
118
156
  * {@inheritDoc PluginManager.use}
119
157
  */
120
158
  use<P_1 extends Plugin>(plugin: P_1, ...options: FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
121
- };
159
+ } & P;
122
160
  /**
123
161
  * 将 HOST 变成插件宿主类型
124
162
  */
@@ -157,14 +195,14 @@ export declare function becomePluginHost_Extends<HOST extends new (...args: any)
157
195
  /**
158
196
  * 插件管理器 {@link PluginHost.pluginManager}
159
197
  */
160
- readonly pluginManager: PluginManager<any & HOST, IPlugin<any & HOST, any>>;
198
+ get pluginManager(): PluginManager</*elided*/ any & HOST, IPlugin</*elided*/ any & HOST, any>>;
161
199
  /**
162
200
  * 实例的注册插件的方法
163
201
  * @param plugin
164
202
  * @param options
165
203
  * @returns
166
204
  */
167
- use<Plugin_1 extends IPlugin<any & HOST, any>>(plugin: Plugin_1, ...options: FormatUsePluginParameters<Plugin_1>): void | PluginCreatedReturnType<Plugin_1>;
205
+ use<Plugin extends IPlugin</*elided*/ any & HOST, any>>(plugin: Plugin, ...options: FormatUsePluginParameters<Plugin>): void | PluginCreatedReturnType<Plugin>;
168
206
  /**
169
207
  * 销毁实例
170
208
  * @returns
@@ -174,11 +212,11 @@ export declare function becomePluginHost_Extends<HOST extends new (...args: any)
174
212
  /**
175
213
  * 插件管理器
176
214
  */
177
- readonly pluginManager: PluginManager<any & HOST, IPlugin<any & HOST, any>>;
178
- _pluginManager: PluginManager<any & HOST, IPlugin<any & HOST, any>>;
215
+ get pluginManager(): PluginManager</*elided*/ any & HOST, IPlugin</*elided*/ any & HOST, any>>;
216
+ _pluginManager: PluginManager</*elided*/ any & HOST>;
179
217
  /**
180
218
  * {@inheritDoc PluginManager.use}
181
219
  */
182
- use<Plugin_2 extends IPlugin<any & HOST, any>>(plugin: Plugin_2, ...options: FormatUsePluginParameters<Plugin_2>): void | ReturnType<Plugin_2["used"]>;
220
+ use<Plugin extends IPlugin</*elided*/ any & HOST, any>>(plugin: Plugin, ...options: FormatUsePluginParameters<Plugin>): void | ReturnType<Plugin["used"]>;
183
221
  } & HOST;
184
222
  //# 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,33 +61,62 @@ 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) => any, Options extends {}, Mode extends string | number = string>(ParentClass: P): {
65
65
  new (options: Options): {
66
+ [x: string]: any;
66
67
  /**
67
68
  * 实例级的默认选项
68
69
  */
69
- readonly modeOptions: TierModeOptions<Mode, Options>;
70
+ get modeOptions(): TierModeOptions<Mode, Options>;
70
71
  _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;
72
+ get mode(): Mode;
73
+ set mode(value: Mode);
74
+ get options(): Options;
82
75
  };
83
76
  /**
84
77
  * 全局级别的默认选项
85
78
  */
86
79
  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>>;
80
+ get pluginManager(): import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
81
+ [x: string]: any;
82
+ readonly isDestroyed: boolean;
83
+ _isDestroyed: boolean;
84
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
85
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
86
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
87
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
88
+ cancelDisposeObj<T extends any>(obj: T): T;
89
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
90
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
91
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
92
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
93
+ cancelDispose<T extends any>(obj: T): T;
94
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
95
+ destroyThis(): void;
96
+ destroy(): true | undefined;
97
+ destroyAsync(): Promise<true | undefined>;
98
+ }) & P, import("..").IPlugin<HOST, any>>;
99
+ _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
100
+ [x: string]: any;
101
+ readonly isDestroyed: boolean;
102
+ _isDestroyed: boolean;
103
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
104
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
105
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
106
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
107
+ cancelDisposeObj<T extends any>(obj: T): T;
108
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
109
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
110
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
111
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
112
+ cancelDispose<T extends any>(obj: T): T;
113
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
114
+ destroyThis(): void;
115
+ destroy(): true | undefined;
116
+ destroyAsync(): Promise<true | undefined>;
117
+ }) & P, import("..").IPlugin<HOST, any>>;
89
118
  use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
90
- };
119
+ } & P;
91
120
  /**
92
121
  * 使 HOST 变成 层级选项的宿主类型
93
122
  */
@@ -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,25 +50,59 @@ 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) => any, Options extends {}>(ParentClass: P): {
54
54
  new (options: Options): {
55
+ [x: string]: any;
55
56
  /**
56
57
  * 实例级的默认选项
57
58
  */
58
- readonly defaultOptions: TierOptions<Options>;
59
+ get defaultOptions(): TierOptions<Options>;
59
60
  _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;
63
61
  };
64
62
  /**
65
63
  * 全局级别的默认选项
66
64
  */
67
65
  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>>;
66
+ get pluginManager(): import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
67
+ [x: string]: any;
68
+ readonly isDestroyed: boolean;
69
+ _isDestroyed: boolean;
70
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
71
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
72
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
73
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
74
+ cancelDisposeObj<T extends any>(obj: T): T;
75
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
76
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
77
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
78
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
79
+ cancelDispose<T extends any>(obj: T): T;
80
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
81
+ destroyThis(): void;
82
+ destroy(): true | undefined;
83
+ destroyAsync(): Promise<true | undefined>;
84
+ }) & P, import("..").IPlugin<HOST, any>>;
85
+ _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
86
+ [x: string]: any;
87
+ readonly isDestroyed: boolean;
88
+ _isDestroyed: boolean;
89
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
90
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
91
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
92
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
93
+ cancelDisposeObj<T extends any>(obj: T): T;
94
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
95
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
96
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
97
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
98
+ cancelDispose<T extends any>(obj: T): T;
99
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
100
+ destroyThis(): void;
101
+ destroy(): true | undefined;
102
+ destroyAsync(): Promise<true | undefined>;
103
+ }) & P, import("..").IPlugin<HOST, any>>;
70
104
  use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
71
- };
105
+ } & P;
72
106
  /**
73
107
  * 使 HOST 变成 层级选项的宿主类型
74
108
  */
@@ -79,5 +113,5 @@ export type BecomeTierOptionsHost<HOST extends new (...args: any) => any, Option
79
113
  * @param context
80
114
  * @returns
81
115
  */
82
- export declare function becomeTierOptionsHost<HOST extends new (...args: any) => any, Options extends {} = any>(host: HOST, option?: Options): BecomeTierOptionsHost<HOST, any>;
116
+ export declare function becomeTierOptionsHost<HOST extends new (...args: any) => any, Options extends {} = any>(host: HOST, option?: Options): BecomeTierOptionsHost<HOST>;
83
117
  //# 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,GAAG,EAAE,OAAO,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC;kBAoB/F,OAAO;;QAX5B;;WAEG;;yBAOe,WAAW,CAAC,OAAO,CAAC;;IAftC;;OAEG;;;;;;;;;8CArCyD,CAAC;;;mDAgB5D,CAAC;kGAIF,CAAC;;;;;;;;;;;;;;;8CApB2D,CAAC;;;mDAgB5D,CAAC;kGAIF,CAAC;;;;;;;;;MAqCJ;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,GAoBjH,qBAAqB,CAAC,IAAI,CAAC,CAC3C"}
package/doc/api/index.md CHANGED
@@ -6,7 +6,27 @@
6
6
 
7
7
  ## Packages
8
8
 
9
- | Package | Description |
10
- | --- | --- |
11
- | [plugin-tls](./plugin-tls.md) | 插件系统 |
9
+ <table><thead><tr><th>
10
+
11
+ Package
12
+
13
+
14
+ </th><th>
15
+
16
+ Description
17
+
18
+
19
+ </th></tr></thead>
20
+ <tbody><tr><td>
21
+
22
+ [plugin-tls](./plugin-tls.md)
23
+
24
+
25
+ </td><td>
26
+
27
+ 插件系统
28
+
29
+
30
+ </td></tr>
31
+ </tbody></table>
12
32
 
@@ -14,10 +14,55 @@ export declare function addDefaultOptions<Options>(options: Options, name?: Opti
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | options | Options | 选项内容 |
20
- | name | Optional&lt;string&gt; | _(Optional)_ |
17
+ <table><thead><tr><th>
18
+
19
+ Parameter
20
+
21
+
22
+ </th><th>
23
+
24
+ Type
25
+
26
+
27
+ </th><th>
28
+
29
+ Description
30
+
31
+
32
+ </th></tr></thead>
33
+ <tbody><tr><td>
34
+
35
+ options
36
+
37
+
38
+ </td><td>
39
+
40
+ Options
41
+
42
+
43
+ </td><td>
44
+
45
+ 选项内容
46
+
47
+
48
+ </td></tr>
49
+ <tr><td>
50
+
51
+ name
52
+
53
+
54
+ </td><td>
55
+
56
+ Optional&lt;string&gt;
57
+
58
+
59
+ </td><td>
60
+
61
+ _(Optional)_
62
+
63
+
64
+ </td></tr>
65
+ </tbody></table>
21
66
 
22
67
  **Returns:**
23
68
 
@@ -14,11 +14,65 @@ export declare function addInstOptions<Clas extends new (...args: any) => any>(t
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | target | Clas | |
20
- | propertyKey | string | |
21
- | descriptor | PropertyDescriptor | |
17
+ <table><thead><tr><th>
18
+
19
+ Parameter
20
+
21
+
22
+ </th><th>
23
+
24
+ Type
25
+
26
+
27
+ </th><th>
28
+
29
+ Description
30
+
31
+
32
+ </th></tr></thead>
33
+ <tbody><tr><td>
34
+
35
+ target
36
+
37
+
38
+ </td><td>
39
+
40
+ Clas
41
+
42
+
43
+ </td><td>
44
+
45
+
46
+ </td></tr>
47
+ <tr><td>
48
+
49
+ propertyKey
50
+
51
+
52
+ </td><td>
53
+
54
+ string
55
+
56
+
57
+ </td><td>
58
+
59
+
60
+ </td></tr>
61
+ <tr><td>
62
+
63
+ descriptor
64
+
65
+
66
+ </td><td>
67
+
68
+ PropertyDescriptor
69
+
70
+
71
+ </td><td>
72
+
73
+
74
+ </td></tr>
75
+ </tbody></table>
22
76
 
23
77
  **Returns:**
24
78
 
@@ -14,11 +14,65 @@ export declare function allFunctionApply<T, A extends any[], R>(funArr: ((this:
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | funArr | ((this: T, ...args: A) =&gt; void)\[\] | |
20
- | thisArg | T | |
21
- | args | A | |
17
+ <table><thead><tr><th>
18
+
19
+ Parameter
20
+
21
+
22
+ </th><th>
23
+
24
+ Type
25
+
26
+
27
+ </th><th>
28
+
29
+ Description
30
+
31
+
32
+ </th></tr></thead>
33
+ <tbody><tr><td>
34
+
35
+ funArr
36
+
37
+
38
+ </td><td>
39
+
40
+ ((this: T, ...args: A) =&gt; void)\[\]
41
+
42
+
43
+ </td><td>
44
+
45
+
46
+ </td></tr>
47
+ <tr><td>
48
+
49
+ thisArg
50
+
51
+
52
+ </td><td>
53
+
54
+ T
55
+
56
+
57
+ </td><td>
58
+
59
+
60
+ </td></tr>
61
+ <tr><td>
62
+
63
+ args
64
+
65
+
66
+ </td><td>
67
+
68
+ A
69
+
70
+
71
+ </td><td>
72
+
73
+
74
+ </td></tr>
75
+ </tbody></table>
22
76
 
23
77
  **Returns:**
24
78