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
@@ -14,9 +14,39 @@ export declare function createTargetExtend<C extends ClassType>(cla: C): <E>(ext
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | cla | C | 扩展的目标,也用作 this 的类型 |
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
+ cla
36
+
37
+
38
+ </td><td>
39
+
40
+ C
41
+
42
+
43
+ </td><td>
44
+
45
+ 扩展的目标,也用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ </tbody></table>
20
50
 
21
51
  **Returns:**
22
52
 
@@ -9,18 +9,48 @@
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export declare function createTargetExtendWithInit<C extends ClassType>(cla: C): <E>(ext: E & ThisType<InstanceType<C> & E> & PrivateMemberOfExtendWithInit<C, any>) => E & ThisType<C & E>;
12
+ export declare function createTargetExtendWithInit<C extends ClassType>(cla: C): <E>(ext: E & ThisType<InstanceType<C> & E> & PrivateMemberOfExtendWithInit<C>) => E & ThisType<C & E>;
13
13
  ```
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | cla | C | 扩展的目标,也用作 this 的类型 |
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
+ cla
36
+
37
+
38
+ </td><td>
39
+
40
+ C
41
+
42
+
43
+ </td><td>
44
+
45
+ 扩展的目标,也用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ </tbody></table>
20
50
 
21
51
  **Returns:**
22
52
 
23
- &lt;E&gt;(ext: E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtendWithInit](./plugin-tls.privatememberofextendwithinit.md)<!-- -->&lt;C, any&gt;) =&gt; E &amp; ThisType&lt;C &amp; E&gt;
53
+ &lt;E&gt;(ext: E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtendWithInit](./plugin-tls.privatememberofextendwithinit.md)<!-- -->&lt;C&gt;) =&gt; E &amp; ThisType&lt;C &amp; E&gt;
24
54
 
25
55
  可以用于 扩展目标 的便利函数
26
56
 
@@ -14,9 +14,39 @@ export declare function createTargetMixin<T>(target: T): <M>(m: M & ThisType<T &
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | target | T | 混合的目标,用作 this 的类型 |
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
+ T
41
+
42
+
43
+ </td><td>
44
+
45
+ 混合的目标,用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ </tbody></table>
20
50
 
21
51
  **Returns:**
22
52
 
@@ -9,24 +9,94 @@
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export declare function createTierModeOptionsPluginHost<HOST, Options extends {}, Mode extends string | number = string>(): {
12
+ export declare function createTierModeOptionsPluginHost<HOST, P extends new (...args: any) => any, Options extends {}, Mode extends string | number = string>(ParentClass: P): {
13
13
  new (options: Options): {
14
- readonly modeOptions: TierModeOptions<Mode, Options>;
14
+ [x: string]: any;
15
+ get modeOptions(): TierModeOptions<Mode, Options>;
15
16
  _modeOptions: TierModeOptions<Mode, Options>;
16
- mode: Mode;
17
- readonly options: Options;
18
- readonly pluginManager: import("..").PluginManager<any, import("..").IPlugin<any, any>>;
19
- use<P extends import("..").IPlugin<HOST, any>>(plugin: P, ...options: import("..").FormatUsePluginParameters<P>): void | import("..").PluginCreatedReturnType<P>;
20
- destroy(): void;
17
+ get mode(): Mode;
18
+ set mode(value: Mode);
19
+ get options(): Options;
21
20
  };
22
21
  readonly modeOptions: TierModeOptions<string, Options>;
23
- readonly pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
24
- _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
22
+ get pluginManager(): import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
23
+ [x: string]: any;
24
+ readonly isDestroyed: boolean;
25
+ _isDestroyed: boolean;
26
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
27
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
28
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
29
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
30
+ cancelDisposeObj<T extends any>(obj: T): T;
31
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
32
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
33
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
34
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
35
+ cancelDispose<T extends any>(obj: T): T;
36
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
37
+ destroyThis(): void;
38
+ destroy(): true | undefined;
39
+ destroyAsync(): Promise<true | undefined>;
40
+ }) & P, import("..").IPlugin<HOST, any>>;
41
+ _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
42
+ [x: string]: any;
43
+ readonly isDestroyed: boolean;
44
+ _isDestroyed: boolean;
45
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
46
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
47
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
48
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
49
+ cancelDisposeObj<T extends any>(obj: T): T;
50
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
51
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
52
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
53
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
54
+ cancelDispose<T extends any>(obj: T): T;
55
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
56
+ destroyThis(): void;
57
+ destroy(): true | undefined;
58
+ destroyAsync(): Promise<true | undefined>;
59
+ }) & P, import("..").IPlugin<HOST, any>>;
25
60
  use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
26
- };
61
+ } & P;
27
62
  ```
63
+
64
+ ## Parameters
65
+
66
+ <table><thead><tr><th>
67
+
68
+ Parameter
69
+
70
+
71
+ </th><th>
72
+
73
+ Type
74
+
75
+
76
+ </th><th>
77
+
78
+ Description
79
+
80
+
81
+ </th></tr></thead>
82
+ <tbody><tr><td>
83
+
84
+ ParentClass
85
+
86
+
87
+ </td><td>
88
+
89
+ P
90
+
91
+
92
+ </td><td>
93
+
94
+
95
+ </td></tr>
96
+ </tbody></table>
97
+
28
98
  **Returns:**
29
99
 
30
- { new (options: Options): { readonly modeOptions: [TierModeOptions](./plugin-tls.tiermodeoptions.md)<!-- -->&lt;Mode, Options&gt;; \_modeOptions: [TierModeOptions](./plugin-tls.tiermodeoptions.md)<!-- -->&lt;Mode, Options&gt;; mode: Mode; readonly options: Options; readonly pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;any, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;any, any&gt;&gt;; use&lt;P extends import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;(plugin: P, ...options: import("..").[FormatUsePluginParameters](./plugin-tls.formatusepluginparameters.md)<!-- -->&lt;P&gt;): void \| import("..").[PluginCreatedReturnType](./plugin-tls.plugincreatedreturntype.md)<!-- -->&lt;P&gt;; destroy(): void; }; readonly modeOptions: [TierModeOptions](./plugin-tls.tiermodeoptions.md)<!-- -->&lt;string, Options&gt;; readonly pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; \_pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; use&lt;P\_1 extends import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;(plugin: P\_1, ...options: import("..").[FormatUsePluginParameters](./plugin-tls.formatusepluginparameters.md)<!-- -->&lt;P\_1&gt;): void \| ReturnType&lt;P\_1\["used"\]&gt;; }
100
+ { new (options: Options): { \[x: string\]: any; get modeOptions(): [TierModeOptions](./plugin-tls.tiermodeoptions.md)<!-- -->&lt;Mode, Options&gt;; \_modeOptions: [TierModeOptions](./plugin-tls.tiermodeoptions.md)<!-- -->&lt;Mode, Options&gt;; get mode(): Mode; set mode(value: Mode); get options(): Options; }; readonly modeOptions: [TierModeOptions](./plugin-tls.tiermodeoptions.md)<!-- -->&lt;string, Options&gt;; get pluginManager(): import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST &amp; (new (...args: any) =&gt; { \[x: string\]: any; readonly isDestroyed: boolean; \_isDestroyed: boolean; \_destroyers: import("@gby/destroyable").FunDestroyer\[\]; disposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDisposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; disposeObj&lt;T extends any&gt;(obj: T, sync?: boolean): T; cancelDisposeObj&lt;T extends any&gt;(obj: T): T; dispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; dispose&lt;T extends any&gt;(obj: T, asyncDestroy?: boolean): T; dispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T, asyncDestroy?: boolean): T; cancelDispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDispose&lt;T extends any&gt;(obj: T): T; cancelDispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T): T; destroyThis(): void; destroy(): true \| undefined; destroyAsync(): Promise&lt;true \| undefined&gt;; }) &amp; P, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; \_pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST &amp; (new (...args: any) =&gt; { \[x: string\]: any; readonly isDestroyed: boolean; \_isDestroyed: boolean; \_destroyers: import("@gby/destroyable").FunDestroyer\[\]; disposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDisposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; disposeObj&lt;T extends any&gt;(obj: T, sync?: boolean): T; cancelDisposeObj&lt;T extends any&gt;(obj: T): T; dispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; dispose&lt;T extends any&gt;(obj: T, asyncDestroy?: boolean): T; dispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T, asyncDestroy?: boolean): T; cancelDispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDispose&lt;T extends any&gt;(obj: T): T; cancelDispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T): T; destroyThis(): void; destroy(): true \| undefined; destroyAsync(): Promise&lt;true \| undefined&gt;; }) &amp; P, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; use&lt;P\_1 extends import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;(plugin: P\_1, ...options: import("..").[FormatUsePluginParameters](./plugin-tls.formatusepluginparameters.md)<!-- -->&lt;P\_1&gt;): void \| ReturnType&lt;P\_1\["used"\]&gt;; } &amp; P
31
101
 
32
102
 
@@ -9,22 +9,91 @@
9
9
  **Signature:**
10
10
 
11
11
  ```typescript
12
- export declare function createTierOptionsPluginHost<HOST, Options extends {}>(): {
12
+ export declare function createTierOptionsPluginHost<HOST, P extends new (...args: any) => any, Options extends {}>(ParentClass: P): {
13
13
  new (options: Options): {
14
- readonly defaultOptions: TierOptions<Options>;
14
+ [x: string]: any;
15
+ get defaultOptions(): TierOptions<Options>;
15
16
  _defaultOptions: TierOptions<Options>;
16
- readonly pluginManager: import("..").PluginManager<any, import("..").IPlugin<any, any>>;
17
- use<P extends import("..").IPlugin<HOST, any>>(plugin: P, ...options: import("..").FormatUsePluginParameters<P>): void | import("..").PluginCreatedReturnType<P>;
18
- destroy(): void;
19
17
  };
20
18
  readonly defaultOptions: TierOptions<Options>;
21
- readonly pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
22
- _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST, import("..").IPlugin<HOST, any>>;
19
+ get pluginManager(): import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
20
+ [x: string]: any;
21
+ readonly isDestroyed: boolean;
22
+ _isDestroyed: boolean;
23
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
24
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
25
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
26
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
27
+ cancelDisposeObj<T extends any>(obj: T): T;
28
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
29
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
30
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
31
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
32
+ cancelDispose<T extends any>(obj: T): T;
33
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
34
+ destroyThis(): void;
35
+ destroy(): true | undefined;
36
+ destroyAsync(): Promise<true | undefined>;
37
+ }) & P, import("..").IPlugin<HOST, any>>;
38
+ _pluginManager: import("..").PluginManager<typeof import("./PluginHost").PluginHost & HOST & (new (...args: any) => {
39
+ [x: string]: any;
40
+ readonly isDestroyed: boolean;
41
+ _isDestroyed: boolean;
42
+ _destroyers: import("@gby/destroyable").FunDestroyer[];
43
+ disposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
44
+ cancelDisposeFun<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
45
+ disposeObj<T extends any>(obj: T, sync?: boolean): T;
46
+ cancelDisposeObj<T extends any>(obj: T): T;
47
+ dispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
48
+ dispose<T extends any>(obj: T, asyncDestroy?: boolean): T;
49
+ dispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T, asyncDestroy?: boolean): T;
50
+ cancelDispose<T extends import("@gby/destroyable").FunDestroyer>(fun: T): T;
51
+ cancelDispose<T extends any>(obj: T): T;
52
+ cancelDispose<T extends any | import("@gby/destroyable").FunDestroyer>(objOrFun: T): T;
53
+ destroyThis(): void;
54
+ destroy(): true | undefined;
55
+ destroyAsync(): Promise<true | undefined>;
56
+ }) & P, import("..").IPlugin<HOST, any>>;
23
57
  use<P_1 extends import("..").IPlugin<HOST, any>>(plugin: P_1, ...options: import("..").FormatUsePluginParameters<P_1>): void | ReturnType<P_1["used"]>;
24
- };
58
+ } & P;
25
59
  ```
60
+
61
+ ## Parameters
62
+
63
+ <table><thead><tr><th>
64
+
65
+ Parameter
66
+
67
+
68
+ </th><th>
69
+
70
+ Type
71
+
72
+
73
+ </th><th>
74
+
75
+ Description
76
+
77
+
78
+ </th></tr></thead>
79
+ <tbody><tr><td>
80
+
81
+ ParentClass
82
+
83
+
84
+ </td><td>
85
+
86
+ P
87
+
88
+
89
+ </td><td>
90
+
91
+
92
+ </td></tr>
93
+ </tbody></table>
94
+
26
95
  **Returns:**
27
96
 
28
- { new (options: Options): { readonly defaultOptions: [TierOptions](./plugin-tls.tieroptions.md)<!-- -->&lt;Options&gt;; \_defaultOptions: [TierOptions](./plugin-tls.tieroptions.md)<!-- -->&lt;Options&gt;; readonly pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;any, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;any, any&gt;&gt;; use&lt;P extends import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;(plugin: P, ...options: import("..").[FormatUsePluginParameters](./plugin-tls.formatusepluginparameters.md)<!-- -->&lt;P&gt;): void \| import("..").[PluginCreatedReturnType](./plugin-tls.plugincreatedreturntype.md)<!-- -->&lt;P&gt;; destroy(): void; }; readonly defaultOptions: [TierOptions](./plugin-tls.tieroptions.md)<!-- -->&lt;Options&gt;; readonly pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; \_pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; use&lt;P\_1 extends import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;(plugin: P\_1, ...options: import("..").[FormatUsePluginParameters](./plugin-tls.formatusepluginparameters.md)<!-- -->&lt;P\_1&gt;): void \| ReturnType&lt;P\_1\["used"\]&gt;; }
97
+ { new (options: Options): { \[x: string\]: any; get defaultOptions(): [TierOptions](./plugin-tls.tieroptions.md)<!-- -->&lt;Options&gt;; \_defaultOptions: [TierOptions](./plugin-tls.tieroptions.md)<!-- -->&lt;Options&gt;; }; readonly defaultOptions: [TierOptions](./plugin-tls.tieroptions.md)<!-- -->&lt;Options&gt;; get pluginManager(): import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST &amp; (new (...args: any) =&gt; { \[x: string\]: any; readonly isDestroyed: boolean; \_isDestroyed: boolean; \_destroyers: import("@gby/destroyable").FunDestroyer\[\]; disposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDisposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; disposeObj&lt;T extends any&gt;(obj: T, sync?: boolean): T; cancelDisposeObj&lt;T extends any&gt;(obj: T): T; dispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; dispose&lt;T extends any&gt;(obj: T, asyncDestroy?: boolean): T; dispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T, asyncDestroy?: boolean): T; cancelDispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDispose&lt;T extends any&gt;(obj: T): T; cancelDispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T): T; destroyThis(): void; destroy(): true \| undefined; destroyAsync(): Promise&lt;true \| undefined&gt;; }) &amp; P, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; \_pluginManager: import("..").[PluginManager](./plugin-tls.pluginmanager.md)<!-- -->&lt;typeof import("./PluginHost").[PluginHost](./plugin-tls.pluginhost.md) &amp; HOST &amp; (new (...args: any) =&gt; { \[x: string\]: any; readonly isDestroyed: boolean; \_isDestroyed: boolean; \_destroyers: import("@gby/destroyable").FunDestroyer\[\]; disposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDisposeFun&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; disposeObj&lt;T extends any&gt;(obj: T, sync?: boolean): T; cancelDisposeObj&lt;T extends any&gt;(obj: T): T; dispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; dispose&lt;T extends any&gt;(obj: T, asyncDestroy?: boolean): T; dispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T, asyncDestroy?: boolean): T; cancelDispose&lt;T extends import("@gby/destroyable").FunDestroyer&gt;(fun: T): T; cancelDispose&lt;T extends any&gt;(obj: T): T; cancelDispose&lt;T extends any \| import("@gby/destroyable").FunDestroyer&gt;(objOrFun: T): T; destroyThis(): void; destroy(): true \| undefined; destroyAsync(): Promise&lt;true \| undefined&gt;; }) &amp; P, import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;; use&lt;P\_1 extends import("..").[IPlugin](./plugin-tls.iplugin.md)<!-- -->&lt;HOST, any&gt;&gt;(plugin: P\_1, ...options: import("..").[FormatUsePluginParameters](./plugin-tls.formatusepluginparameters.md)<!-- -->&lt;P\_1&gt;): void \| ReturnType&lt;P\_1\["used"\]&gt;; } &amp; P
29
98
 
30
99
 
@@ -14,10 +14,55 @@ export declare function defineExtend<C extends ClassType, E>(cla: C, ext: E & Th
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | cla | C | 扩展的目标,用作 this 的类型 |
20
- | ext | E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtend](./plugin-tls.privatememberofextend.md)<!-- -->&lt;C&gt; | 描述扩展内容的对象,会自动更改其this的类型 |
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
+ cla
36
+
37
+
38
+ </td><td>
39
+
40
+ C
41
+
42
+
43
+ </td><td>
44
+
45
+ 扩展的目标,用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ <tr><td>
50
+
51
+ ext
52
+
53
+
54
+ </td><td>
55
+
56
+ E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtend](./plugin-tls.privatememberofextend.md)<!-- -->&lt;C&gt;
57
+
58
+
59
+ </td><td>
60
+
61
+ 描述扩展内容的对象,会自动更改其this的类型
62
+
63
+
64
+ </td></tr>
65
+ </tbody></table>
21
66
 
22
67
  **Returns:**
23
68
 
@@ -14,10 +14,55 @@ export declare function defineExtendWithInit<C extends ClassType, E>(cla: C, ext
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | cla | C | 扩展的目标,用作 this 的类型 |
20
- | ext | E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtendWithInit](./plugin-tls.privatememberofextendwithinit.md)<!-- -->&lt;C&gt; | 描述扩展内容的对象,会自动更改其this的类型 |
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
+ cla
36
+
37
+
38
+ </td><td>
39
+
40
+ C
41
+
42
+
43
+ </td><td>
44
+
45
+ 扩展的目标,用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ <tr><td>
50
+
51
+ ext
52
+
53
+
54
+ </td><td>
55
+
56
+ E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtendWithInit](./plugin-tls.privatememberofextendwithinit.md)<!-- -->&lt;C&gt;
57
+
58
+
59
+ </td><td>
60
+
61
+ 描述扩展内容的对象,会自动更改其this的类型
62
+
63
+
64
+ </td></tr>
65
+ </tbody></table>
21
66
 
22
67
  **Returns:**
23
68
 
@@ -14,10 +14,55 @@ export declare function defineMixin<T, M>(target: T, mixin: M & ThisType<T & M>)
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | target | T | 混合的目标,用作 this 的类型 |
20
- | mixin | M &amp; ThisType&lt;T &amp; M&gt; | 混合对象,会自动更改其this的类型 |
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
+ T
41
+
42
+
43
+ </td><td>
44
+
45
+ 混合的目标,用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ <tr><td>
50
+
51
+ mixin
52
+
53
+
54
+ </td><td>
55
+
56
+ M &amp; ThisType&lt;T &amp; M&gt;
57
+
58
+
59
+ </td><td>
60
+
61
+ 混合对象,会自动更改其this的类型
62
+
63
+
64
+ </td></tr>
65
+ </tbody></table>
21
66
 
22
67
  **Returns:**
23
68
 
@@ -14,10 +14,55 @@ export declare function extendTarget<C extends ClassType, E>(cla: C, ext: E & Th
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | cla | C | 扩展的目标,也用作 this 的类型 |
20
- | ext | E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtend](./plugin-tls.privatememberofextend.md)<!-- -->&lt;C&gt; | 扩展对象,会自动更改其this的类型 |
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
+ cla
36
+
37
+
38
+ </td><td>
39
+
40
+ C
41
+
42
+
43
+ </td><td>
44
+
45
+ 扩展的目标,也用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ <tr><td>
50
+
51
+ ext
52
+
53
+
54
+ </td><td>
55
+
56
+ E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtend](./plugin-tls.privatememberofextend.md)<!-- -->&lt;C&gt;
57
+
58
+
59
+ </td><td>
60
+
61
+ 扩展对象,会自动更改其this的类型
62
+
63
+
64
+ </td></tr>
65
+ </tbody></table>
21
66
 
22
67
  **Returns:**
23
68
 
@@ -14,10 +14,55 @@ export declare function extendTargetWithInit<C extends ClassType, E>(cla: C, ext
14
14
 
15
15
  ## Parameters
16
16
 
17
- | Parameter | Type | Description |
18
- | --- | --- | --- |
19
- | cla | C | 扩展的目标,也用作 this 的类型 |
20
- | ext | E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtendWithInit](./plugin-tls.privatememberofextendwithinit.md)<!-- -->&lt;C&gt; | 扩展对象,会自动更改其this的类型 |
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
+ cla
36
+
37
+
38
+ </td><td>
39
+
40
+ C
41
+
42
+
43
+ </td><td>
44
+
45
+ 扩展的目标,也用作 this 的类型
46
+
47
+
48
+ </td></tr>
49
+ <tr><td>
50
+
51
+ ext
52
+
53
+
54
+ </td><td>
55
+
56
+ E &amp; ThisType&lt;InstanceType&lt;C&gt; &amp; E&gt; &amp; [PrivateMemberOfExtendWithInit](./plugin-tls.privatememberofextendwithinit.md)<!-- -->&lt;C&gt;
57
+
58
+
59
+ </td><td>
60
+
61
+ 扩展对象,会自动更改其this的类型
62
+
63
+
64
+ </td></tr>
65
+ </tbody></table>
21
66
 
22
67
  **Returns:**
23
68