@omujs/omu 0.9.10 → 0.9.26

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 (458) hide show
  1. package/CHANGELOG.md +146 -0
  2. package/README.md +0 -1
  3. package/dist/dts/address.d.ts +4 -4
  4. package/dist/dts/api/asset/extension.d.ts +25 -0
  5. package/dist/dts/api/asset/index.d.ts +2 -0
  6. package/dist/dts/api/dashboard/extension.d.ts +186 -0
  7. package/dist/dts/api/dashboard/handler.d.ts +21 -0
  8. package/dist/dts/api/dashboard/index.d.ts +3 -0
  9. package/dist/dts/api/dashboard/packets.d.ts +73 -0
  10. package/dist/dts/api/endpoint/endpoint.d.ts +32 -0
  11. package/dist/dts/api/endpoint/extension.d.ts +23 -0
  12. package/dist/dts/api/endpoint/index.d.ts +2 -0
  13. package/dist/dts/api/endpoint/packets.d.ts +51 -0
  14. package/dist/dts/api/extension-registry.d.ts +8 -0
  15. package/dist/dts/api/extension.d.ts +11 -0
  16. package/dist/dts/api/http/extension.d.ts +174 -0
  17. package/dist/dts/api/http/index.d.ts +1 -0
  18. package/dist/dts/api/i18n/extension.d.ts +22 -0
  19. package/dist/dts/api/i18n/index.d.ts +1 -0
  20. package/dist/dts/api/index.d.ts +2 -0
  21. package/dist/dts/api/logger/extension.d.ts +25 -0
  22. package/dist/dts/api/logger/index.d.ts +1 -0
  23. package/dist/dts/api/logger/packets.d.ts +18 -0
  24. package/dist/dts/api/permission/extension.d.ts +18 -0
  25. package/dist/dts/api/permission/index.d.ts +1 -0
  26. package/dist/dts/api/permission/permission.d.ts +25 -0
  27. package/dist/dts/api/plugin/extension.d.ts +43 -0
  28. package/dist/dts/api/plugin/index.d.ts +2 -0
  29. package/dist/dts/api/plugin/package-info.d.ts +84 -0
  30. package/dist/dts/api/registry/extension.d.ts +26 -0
  31. package/dist/dts/api/registry/index.d.ts +2 -0
  32. package/dist/dts/api/registry/packets.d.ts +20 -0
  33. package/dist/dts/api/registry/registry.d.ts +44 -0
  34. package/dist/dts/api/server/extension.d.ts +47 -0
  35. package/dist/dts/api/server/index.d.ts +1 -0
  36. package/dist/dts/api/session/extension.d.ts +51 -0
  37. package/dist/dts/api/session/index.d.ts +1 -0
  38. package/dist/dts/api/signal/extension.d.ts +22 -0
  39. package/dist/dts/api/signal/index.d.ts +1 -0
  40. package/dist/dts/api/signal/packets.d.ts +21 -0
  41. package/dist/dts/api/signal/signal.d.ts +33 -0
  42. package/dist/dts/api/table/extension.d.ts +29 -0
  43. package/dist/dts/api/table/index.d.ts +2 -0
  44. package/dist/dts/api/table/packets.d.ts +65 -0
  45. package/dist/dts/api/table/table.d.ts +76 -0
  46. package/dist/dts/app.d.ts +44 -37
  47. package/dist/dts/const.d.ts +0 -1
  48. package/dist/dts/errors.d.ts +18 -13
  49. package/dist/dts/event/index.d.ts +6 -0
  50. package/dist/dts/helper.d.ts +13 -0
  51. package/dist/dts/identifier.d.ts +45 -39
  52. package/dist/dts/index.d.ts +37 -7
  53. package/dist/dts/localization/index.d.ts +2 -3
  54. package/dist/dts/localization/locale.d.ts +732 -733
  55. package/dist/dts/localization/localization.d.ts +3 -6
  56. package/dist/dts/lock.d.ts +6 -0
  57. package/dist/dts/network/connection.d.ts +13 -13
  58. package/dist/dts/network/encryption.d.ts +38 -0
  59. package/dist/dts/network/frame-transport.d.ts +22 -0
  60. package/dist/dts/network/index.d.ts +5 -4
  61. package/dist/dts/network/network.d.ts +52 -51
  62. package/dist/dts/network/packet/index.d.ts +2 -3
  63. package/dist/dts/network/packet/packet-types.d.ts +73 -52
  64. package/dist/dts/network/packet/packet.d.ts +26 -22
  65. package/dist/dts/network/websocket-transport.d.ts +24 -0
  66. package/dist/dts/omu.d.ts +60 -49
  67. package/dist/dts/serialize/bytebuffer.d.ts +71 -0
  68. package/dist/dts/serialize/index.d.ts +2 -0
  69. package/dist/dts/serialize/serializer.d.ts +38 -0
  70. package/dist/dts/token.d.ts +11 -10
  71. package/dist/dts/version.d.ts +1 -2
  72. package/dist/esm/address.js +4 -2
  73. package/dist/esm/api/asset/extension.js +877 -0
  74. package/dist/esm/api/asset/index.js +875 -0
  75. package/dist/esm/api/dashboard/extension.js +1281 -0
  76. package/dist/esm/api/dashboard/handler.js +4 -0
  77. package/dist/esm/api/dashboard/index.js +1279 -0
  78. package/dist/esm/api/dashboard/packets.js +413 -0
  79. package/dist/esm/api/endpoint/endpoint.js +380 -0
  80. package/dist/esm/api/endpoint/extension.js +1087 -0
  81. package/dist/esm/api/endpoint/index.js +380 -0
  82. package/dist/esm/api/endpoint/packets.js +790 -0
  83. package/dist/esm/api/extension-registry.js +23 -0
  84. package/dist/esm/api/extension.js +275 -0
  85. package/dist/esm/api/http/extension.js +1426 -0
  86. package/dist/esm/api/http/index.js +1312 -0
  87. package/dist/esm/api/i18n/extension.js +1237 -0
  88. package/dist/esm/api/i18n/index.js +1235 -0
  89. package/dist/esm/api/index.js +292 -0
  90. package/dist/esm/api/logger/extension.js +847 -0
  91. package/dist/esm/api/logger/index.js +843 -0
  92. package/dist/esm/api/logger/packets.js +664 -0
  93. package/dist/esm/api/permission/extension.js +529 -0
  94. package/dist/esm/api/permission/index.js +291 -0
  95. package/dist/esm/api/permission/permission.js +291 -0
  96. package/dist/esm/api/plugin/extension.js +528 -0
  97. package/dist/esm/api/plugin/index.js +526 -0
  98. package/dist/esm/api/plugin/package-info.js +4 -0
  99. package/dist/esm/api/registry/extension.js +1170 -0
  100. package/dist/esm/api/registry/index.js +1169 -0
  101. package/dist/esm/api/registry/packets.js +685 -0
  102. package/dist/esm/api/registry/registry.js +380 -0
  103. package/dist/esm/api/server/extension.js +2009 -0
  104. package/dist/esm/api/server/index.js +1987 -0
  105. package/dist/esm/api/session/extension.js +2111 -0
  106. package/dist/esm/api/session/index.js +2111 -0
  107. package/dist/esm/api/signal/extension.js +1022 -0
  108. package/dist/esm/api/signal/index.js +376 -0
  109. package/dist/esm/api/signal/packets.js +681 -0
  110. package/dist/esm/api/signal/signal.js +376 -0
  111. package/dist/esm/api/table/extension.js +1544 -0
  112. package/dist/esm/api/table/index.js +1543 -0
  113. package/dist/esm/api/table/packets.js +895 -0
  114. package/dist/esm/api/table/table.js +380 -0
  115. package/dist/esm/app.js +259 -40
  116. package/dist/esm/const.js +11 -3
  117. package/dist/esm/errors.js +533 -40
  118. package/dist/esm/event/index.js +22 -0
  119. package/dist/esm/helper.js +15 -0
  120. package/dist/esm/identifier.js +244 -139
  121. package/dist/esm/index.js +4837 -6
  122. package/dist/esm/localization/index.js +742 -2
  123. package/dist/esm/localization/locale.js +741 -735
  124. package/dist/esm/localization/localization.js +4 -2
  125. package/dist/esm/lock.js +46 -0
  126. package/dist/esm/network/connection.js +288 -27
  127. package/dist/esm/network/encryption.js +977 -0
  128. package/dist/esm/network/frame-transport.js +525 -0
  129. package/dist/esm/network/index.js +1614 -2
  130. package/dist/esm/network/network.js +1337 -195
  131. package/dist/esm/network/packet/index.js +482 -2
  132. package/dist/esm/network/packet/packet-types.js +478 -80
  133. package/dist/esm/network/packet/packet.js +125 -16
  134. package/dist/esm/network/websocket-transport.js +487 -0
  135. package/dist/esm/omu.js +4621 -91
  136. package/dist/esm/serialize/bytebuffer.js +378 -0
  137. package/dist/esm/serialize/index.js +465 -0
  138. package/dist/esm/serialize/serializer.js +97 -0
  139. package/dist/esm/token.js +42 -18
  140. package/dist/esm/version.js +9 -2
  141. package/package.json +26 -33
  142. package/src/address.ts +1 -0
  143. package/src/api/asset/extension.ts +159 -0
  144. package/src/api/asset/index.ts +6 -0
  145. package/src/api/dashboard/extension.ts +614 -0
  146. package/src/api/dashboard/handler.ts +23 -0
  147. package/src/api/dashboard/index.ts +36 -0
  148. package/src/api/dashboard/packets.ts +126 -0
  149. package/src/api/endpoint/endpoint.ts +56 -0
  150. package/src/api/endpoint/extension.ts +133 -0
  151. package/src/api/endpoint/index.ts +3 -0
  152. package/src/api/endpoint/packets.ts +176 -0
  153. package/src/api/extension-registry.ts +17 -0
  154. package/src/{extension → api}/extension.ts +3 -4
  155. package/src/api/http/extension.ts +752 -0
  156. package/src/api/http/index.ts +2 -0
  157. package/src/{extension/i18n/i18n-extension.ts → api/i18n/extension.ts} +9 -10
  158. package/src/api/i18n/index.ts +2 -0
  159. package/src/{extension/logger/logger-extension.ts → api/logger/extension.ts} +16 -17
  160. package/src/api/logger/index.ts +4 -0
  161. package/src/{extension → api}/logger/packets.ts +3 -3
  162. package/src/{extension/permission/permission-extension.ts → api/permission/extension.ts} +24 -23
  163. package/src/api/permission/index.ts +2 -0
  164. package/src/{extension → api}/permission/permission.ts +8 -11
  165. package/src/{extension/plugin/plugin-extension.ts → api/plugin/extension.ts} +32 -19
  166. package/src/api/plugin/index.ts +3 -0
  167. package/src/{extension/registry/registry-extension.ts → api/registry/extension.ts} +76 -47
  168. package/src/api/registry/index.ts +3 -0
  169. package/src/api/registry/packets.ts +64 -0
  170. package/src/api/registry/registry.ts +73 -0
  171. package/src/api/server/extension.ts +126 -0
  172. package/src/api/server/index.ts +11 -0
  173. package/src/api/session/extension.ts +196 -0
  174. package/src/api/session/index.ts +7 -0
  175. package/src/{extension/signal/signal-extension.ts → api/signal/extension.ts} +42 -35
  176. package/src/api/signal/index.ts +1 -0
  177. package/src/api/signal/packets.ts +61 -0
  178. package/src/api/signal/signal.ts +67 -0
  179. package/src/{extension/table/table-extension.ts → api/table/extension.ts} +111 -154
  180. package/src/api/table/index.ts +3 -0
  181. package/src/{extension → api}/table/packets.ts +28 -27
  182. package/src/{extension → api}/table/table.ts +24 -18
  183. package/src/app.ts +43 -25
  184. package/src/const.ts +2 -2
  185. package/src/errors.ts +12 -0
  186. package/src/helper.ts +16 -0
  187. package/src/identifier.ts +59 -4
  188. package/src/index.ts +86 -5
  189. package/src/localization/index.ts +2 -2
  190. package/src/lock.ts +43 -0
  191. package/src/network/connection.ts +7 -5
  192. package/src/network/encryption.ts +221 -0
  193. package/src/network/frame-transport.ts +186 -0
  194. package/src/network/index.ts +4 -1
  195. package/src/network/network.ts +138 -90
  196. package/src/network/packet/index.ts +3 -2
  197. package/src/network/packet/packet-types.ts +79 -36
  198. package/src/network/packet/packet.ts +20 -11
  199. package/src/network/websocket-transport.ts +123 -0
  200. package/src/omu.ts +56 -30
  201. package/src/serialize/bytebuffer.ts +424 -0
  202. package/src/serialize/index.ts +2 -0
  203. package/src/serialize/serializer.ts +149 -0
  204. package/src/token.ts +28 -14
  205. package/src/version.ts +1 -1
  206. package/tsconfig.json +8 -2
  207. package/tsconfig.tsbuildinfo +1 -0
  208. package/LICENSE +0 -21
  209. package/dist/dts/address.d.ts.map +0 -1
  210. package/dist/dts/app.d.ts.map +0 -1
  211. package/dist/dts/bytebuffer.d.ts +0 -49
  212. package/dist/dts/bytebuffer.d.ts.map +0 -1
  213. package/dist/dts/client.d.ts +0 -48
  214. package/dist/dts/client.d.ts.map +0 -1
  215. package/dist/dts/const.d.ts.map +0 -1
  216. package/dist/dts/errors.d.ts.map +0 -1
  217. package/dist/dts/event-emitter.d.ts +0 -7
  218. package/dist/dts/event-emitter.d.ts.map +0 -1
  219. package/dist/dts/extension/asset/asset-extension.d.ts +0 -24
  220. package/dist/dts/extension/asset/asset-extension.d.ts.map +0 -1
  221. package/dist/dts/extension/asset/index.d.ts +0 -2
  222. package/dist/dts/extension/asset/index.d.ts.map +0 -1
  223. package/dist/dts/extension/dashboard/dashboard-extension.d.ts +0 -29
  224. package/dist/dts/extension/dashboard/dashboard-extension.d.ts.map +0 -1
  225. package/dist/dts/extension/dashboard/dashboard.d.ts +0 -10
  226. package/dist/dts/extension/dashboard/dashboard.d.ts.map +0 -1
  227. package/dist/dts/extension/dashboard/index.d.ts +0 -3
  228. package/dist/dts/extension/dashboard/index.d.ts.map +0 -1
  229. package/dist/dts/extension/dashboard/packets.d.ts +0 -41
  230. package/dist/dts/extension/dashboard/packets.d.ts.map +0 -1
  231. package/dist/dts/extension/endpoint/endpoint-extension.d.ts +0 -16
  232. package/dist/dts/extension/endpoint/endpoint-extension.d.ts.map +0 -1
  233. package/dist/dts/extension/endpoint/endpoint.d.ts +0 -22
  234. package/dist/dts/extension/endpoint/endpoint.d.ts.map +0 -1
  235. package/dist/dts/extension/endpoint/index.d.ts +0 -3
  236. package/dist/dts/extension/endpoint/index.d.ts.map +0 -1
  237. package/dist/dts/extension/endpoint/packets.d.ts +0 -24
  238. package/dist/dts/extension/endpoint/packets.d.ts.map +0 -1
  239. package/dist/dts/extension/extension-registry.d.ts +0 -12
  240. package/dist/dts/extension/extension-registry.d.ts.map +0 -1
  241. package/dist/dts/extension/extension.d.ts +0 -13
  242. package/dist/dts/extension/extension.d.ts.map +0 -1
  243. package/dist/dts/extension/i18n/i18n-extension.d.ts +0 -21
  244. package/dist/dts/extension/i18n/i18n-extension.d.ts.map +0 -1
  245. package/dist/dts/extension/i18n/index.d.ts +0 -2
  246. package/dist/dts/extension/i18n/index.d.ts.map +0 -1
  247. package/dist/dts/extension/index.d.ts +0 -3
  248. package/dist/dts/extension/index.d.ts.map +0 -1
  249. package/dist/dts/extension/logger/index.d.ts +0 -2
  250. package/dist/dts/extension/logger/index.d.ts.map +0 -1
  251. package/dist/dts/extension/logger/logger-extension.d.ts +0 -25
  252. package/dist/dts/extension/logger/logger-extension.d.ts.map +0 -1
  253. package/dist/dts/extension/logger/packets.d.ts +0 -19
  254. package/dist/dts/extension/logger/packets.d.ts.map +0 -1
  255. package/dist/dts/extension/permission/index.d.ts +0 -3
  256. package/dist/dts/extension/permission/index.d.ts.map +0 -1
  257. package/dist/dts/extension/permission/permission-extension.d.ts +0 -18
  258. package/dist/dts/extension/permission/permission-extension.d.ts.map +0 -1
  259. package/dist/dts/extension/permission/permission.d.ts +0 -28
  260. package/dist/dts/extension/permission/permission.d.ts.map +0 -1
  261. package/dist/dts/extension/plugin/index.d.ts +0 -2
  262. package/dist/dts/extension/plugin/index.d.ts.map +0 -1
  263. package/dist/dts/extension/plugin/package-info.d.ts +0 -85
  264. package/dist/dts/extension/plugin/package-info.d.ts.map +0 -1
  265. package/dist/dts/extension/plugin/plugin-extension.d.ts +0 -34
  266. package/dist/dts/extension/plugin/plugin-extension.d.ts.map +0 -1
  267. package/dist/dts/extension/registry/index.d.ts +0 -3
  268. package/dist/dts/extension/registry/index.d.ts.map +0 -1
  269. package/dist/dts/extension/registry/packets.d.ts +0 -17
  270. package/dist/dts/extension/registry/packets.d.ts.map +0 -1
  271. package/dist/dts/extension/registry/registry-extension.d.ts +0 -19
  272. package/dist/dts/extension/registry/registry-extension.d.ts.map +0 -1
  273. package/dist/dts/extension/registry/registry.d.ts +0 -40
  274. package/dist/dts/extension/registry/registry.d.ts.map +0 -1
  275. package/dist/dts/extension/server/index.d.ts +0 -2
  276. package/dist/dts/extension/server/index.d.ts.map +0 -1
  277. package/dist/dts/extension/server/server-extension.d.ts +0 -41
  278. package/dist/dts/extension/server/server-extension.d.ts.map +0 -1
  279. package/dist/dts/extension/signal/index.d.ts +0 -3
  280. package/dist/dts/extension/signal/index.d.ts.map +0 -1
  281. package/dist/dts/extension/signal/packets.d.ts +0 -17
  282. package/dist/dts/extension/signal/packets.d.ts.map +0 -1
  283. package/dist/dts/extension/signal/signal-extension.d.ts +0 -18
  284. package/dist/dts/extension/signal/signal-extension.d.ts.map +0 -1
  285. package/dist/dts/extension/signal/signal.d.ts +0 -33
  286. package/dist/dts/extension/signal/signal.d.ts.map +0 -1
  287. package/dist/dts/extension/table/index.d.ts +0 -3
  288. package/dist/dts/extension/table/index.d.ts.map +0 -1
  289. package/dist/dts/extension/table/packets.d.ts +0 -66
  290. package/dist/dts/extension/table/packets.d.ts.map +0 -1
  291. package/dist/dts/extension/table/table-extension.d.ts +0 -31
  292. package/dist/dts/extension/table/table-extension.d.ts.map +0 -1
  293. package/dist/dts/extension/table/table.d.ts +0 -79
  294. package/dist/dts/extension/table/table.d.ts.map +0 -1
  295. package/dist/dts/identifier.d.ts.map +0 -1
  296. package/dist/dts/index.d.ts.map +0 -1
  297. package/dist/dts/interface.d.ts +0 -7
  298. package/dist/dts/interface.d.ts.map +0 -1
  299. package/dist/dts/localization/index.d.ts.map +0 -1
  300. package/dist/dts/localization/locale.d.ts.map +0 -1
  301. package/dist/dts/localization/localization.d.ts.map +0 -1
  302. package/dist/dts/model.d.ts +0 -5
  303. package/dist/dts/model.d.ts.map +0 -1
  304. package/dist/dts/network/connection.d.ts.map +0 -1
  305. package/dist/dts/network/index.d.ts.map +0 -1
  306. package/dist/dts/network/network.d.ts.map +0 -1
  307. package/dist/dts/network/packet/index.d.ts.map +0 -1
  308. package/dist/dts/network/packet/packet-types.d.ts.map +0 -1
  309. package/dist/dts/network/packet/packet.d.ts.map +0 -1
  310. package/dist/dts/network/websocket-connection.d.ts +0 -20
  311. package/dist/dts/network/websocket-connection.d.ts.map +0 -1
  312. package/dist/dts/omu.d.ts.map +0 -1
  313. package/dist/dts/serializer.d.ts +0 -22
  314. package/dist/dts/serializer.d.ts.map +0 -1
  315. package/dist/dts/token.d.ts.map +0 -1
  316. package/dist/dts/version.d.ts.map +0 -1
  317. package/dist/esm/address.js.map +0 -1
  318. package/dist/esm/app.js.map +0 -1
  319. package/dist/esm/bytebuffer.js +0 -191
  320. package/dist/esm/bytebuffer.js.map +0 -1
  321. package/dist/esm/client.js +0 -2
  322. package/dist/esm/client.js.map +0 -1
  323. package/dist/esm/const.js.map +0 -1
  324. package/dist/esm/errors.js.map +0 -1
  325. package/dist/esm/event-emitter.js +0 -15
  326. package/dist/esm/event-emitter.js.map +0 -1
  327. package/dist/esm/extension/asset/asset-extension.js +0 -104
  328. package/dist/esm/extension/asset/asset-extension.js.map +0 -1
  329. package/dist/esm/extension/asset/index.js +0 -2
  330. package/dist/esm/extension/asset/index.js.map +0 -1
  331. package/dist/esm/extension/dashboard/dashboard-extension.js +0 -186
  332. package/dist/esm/extension/dashboard/dashboard-extension.js.map +0 -1
  333. package/dist/esm/extension/dashboard/dashboard.js +0 -2
  334. package/dist/esm/extension/dashboard/dashboard.js.map +0 -1
  335. package/dist/esm/extension/dashboard/index.js +0 -2
  336. package/dist/esm/extension/dashboard/index.js.map +0 -1
  337. package/dist/esm/extension/dashboard/packets.js +0 -96
  338. package/dist/esm/extension/dashboard/packets.js.map +0 -1
  339. package/dist/esm/extension/endpoint/endpoint-extension.js +0 -86
  340. package/dist/esm/extension/endpoint/endpoint-extension.js.map +0 -1
  341. package/dist/esm/extension/endpoint/endpoint.js +0 -22
  342. package/dist/esm/extension/endpoint/endpoint.js.map +0 -1
  343. package/dist/esm/extension/endpoint/index.js +0 -2
  344. package/dist/esm/extension/endpoint/index.js.map +0 -1
  345. package/dist/esm/extension/endpoint/packets.js +0 -77
  346. package/dist/esm/extension/endpoint/packets.js.map +0 -1
  347. package/dist/esm/extension/extension-registry.js +0 -34
  348. package/dist/esm/extension/extension-registry.js.map +0 -1
  349. package/dist/esm/extension/extension.js +0 -16
  350. package/dist/esm/extension/extension.js.map +0 -1
  351. package/dist/esm/extension/i18n/i18n-extension.js +0 -68
  352. package/dist/esm/extension/i18n/i18n-extension.js.map +0 -1
  353. package/dist/esm/extension/i18n/index.js +0 -2
  354. package/dist/esm/extension/i18n/index.js.map +0 -1
  355. package/dist/esm/extension/index.js +0 -3
  356. package/dist/esm/extension/index.js.map +0 -1
  357. package/dist/esm/extension/logger/index.js +0 -2
  358. package/dist/esm/extension/logger/index.js.map +0 -1
  359. package/dist/esm/extension/logger/logger-extension.js +0 -60
  360. package/dist/esm/extension/logger/logger-extension.js.map +0 -1
  361. package/dist/esm/extension/logger/packets.js +0 -33
  362. package/dist/esm/extension/logger/packets.js.map +0 -1
  363. package/dist/esm/extension/permission/index.js +0 -3
  364. package/dist/esm/extension/permission/index.js.map +0 -1
  365. package/dist/esm/extension/permission/permission-extension.js +0 -74
  366. package/dist/esm/extension/permission/permission-extension.js.map +0 -1
  367. package/dist/esm/extension/permission/permission.js +0 -28
  368. package/dist/esm/extension/permission/permission.js.map +0 -1
  369. package/dist/esm/extension/plugin/index.js +0 -2
  370. package/dist/esm/extension/plugin/index.js.map +0 -1
  371. package/dist/esm/extension/plugin/package-info.js +0 -2
  372. package/dist/esm/extension/plugin/package-info.js.map +0 -1
  373. package/dist/esm/extension/plugin/plugin-extension.js +0 -63
  374. package/dist/esm/extension/plugin/plugin-extension.js.map +0 -1
  375. package/dist/esm/extension/registry/index.js +0 -3
  376. package/dist/esm/extension/registry/index.js.map +0 -1
  377. package/dist/esm/extension/registry/packets.js +0 -48
  378. package/dist/esm/extension/registry/packets.js.map +0 -1
  379. package/dist/esm/extension/registry/registry-extension.js +0 -134
  380. package/dist/esm/extension/registry/registry-extension.js.map +0 -1
  381. package/dist/esm/extension/registry/registry.js +0 -55
  382. package/dist/esm/extension/registry/registry.js.map +0 -1
  383. package/dist/esm/extension/server/index.js +0 -2
  384. package/dist/esm/extension/server/index.js.map +0 -1
  385. package/dist/esm/extension/server/server-extension.js +0 -145
  386. package/dist/esm/extension/server/server-extension.js.map +0 -1
  387. package/dist/esm/extension/signal/index.js +0 -3
  388. package/dist/esm/extension/signal/index.js.map +0 -1
  389. package/dist/esm/extension/signal/packets.js +0 -44
  390. package/dist/esm/extension/signal/packets.js.map +0 -1
  391. package/dist/esm/extension/signal/signal-extension.js +0 -95
  392. package/dist/esm/extension/signal/signal-extension.js.map +0 -1
  393. package/dist/esm/extension/signal/signal.js +0 -53
  394. package/dist/esm/extension/signal/signal.js.map +0 -1
  395. package/dist/esm/extension/table/index.js +0 -3
  396. package/dist/esm/extension/table/index.js.map +0 -1
  397. package/dist/esm/extension/table/packets.js +0 -252
  398. package/dist/esm/extension/table/packets.js.map +0 -1
  399. package/dist/esm/extension/table/table-extension.js +0 -454
  400. package/dist/esm/extension/table/table-extension.js.map +0 -1
  401. package/dist/esm/extension/table/table.js +0 -20
  402. package/dist/esm/extension/table/table.js.map +0 -1
  403. package/dist/esm/identifier.js.map +0 -1
  404. package/dist/esm/index.js.map +0 -1
  405. package/dist/esm/interface.js +0 -2
  406. package/dist/esm/interface.js.map +0 -1
  407. package/dist/esm/localization/index.js.map +0 -1
  408. package/dist/esm/localization/locale.js.map +0 -1
  409. package/dist/esm/localization/localization.js.map +0 -1
  410. package/dist/esm/model.js +0 -2
  411. package/dist/esm/model.js.map +0 -1
  412. package/dist/esm/network/connection.js.map +0 -1
  413. package/dist/esm/network/index.js.map +0 -1
  414. package/dist/esm/network/network.js.map +0 -1
  415. package/dist/esm/network/packet/index.js.map +0 -1
  416. package/dist/esm/network/packet/packet-types.js.map +0 -1
  417. package/dist/esm/network/packet/packet.js.map +0 -1
  418. package/dist/esm/network/websocket-connection.js +0 -95
  419. package/dist/esm/network/websocket-connection.js.map +0 -1
  420. package/dist/esm/omu.js.map +0 -1
  421. package/dist/esm/serializer.js +0 -55
  422. package/dist/esm/serializer.js.map +0 -1
  423. package/dist/esm/token.js.map +0 -1
  424. package/dist/esm/version.js.map +0 -1
  425. package/eslint.config.js +0 -6
  426. package/src/bytebuffer.ts +0 -222
  427. package/src/client.ts +0 -53
  428. package/src/extension/asset/asset-extension.ts +0 -148
  429. package/src/extension/asset/index.ts +0 -6
  430. package/src/extension/dashboard/dashboard-extension.ts +0 -238
  431. package/src/extension/dashboard/dashboard.ts +0 -11
  432. package/src/extension/dashboard/index.ts +0 -9
  433. package/src/extension/dashboard/packets.ts +0 -98
  434. package/src/extension/endpoint/endpoint-extension.ts +0 -125
  435. package/src/extension/endpoint/endpoint.ts +0 -58
  436. package/src/extension/endpoint/index.ts +0 -3
  437. package/src/extension/endpoint/packets.ts +0 -78
  438. package/src/extension/extension-registry.ts +0 -39
  439. package/src/extension/i18n/index.ts +0 -2
  440. package/src/extension/logger/index.ts +0 -5
  441. package/src/extension/permission/index.ts +0 -3
  442. package/src/extension/plugin/index.ts +0 -4
  443. package/src/extension/registry/index.ts +0 -3
  444. package/src/extension/registry/packets.ts +0 -50
  445. package/src/extension/registry/registry.ts +0 -98
  446. package/src/extension/server/index.ts +0 -6
  447. package/src/extension/server/server-extension.ts +0 -180
  448. package/src/extension/signal/index.ts +0 -3
  449. package/src/extension/signal/packets.ts +0 -46
  450. package/src/extension/signal/signal.ts +0 -89
  451. package/src/extension/table/index.ts +0 -3
  452. package/src/interface.ts +0 -8
  453. package/src/model.ts +0 -4
  454. package/src/network/websocket-connection.ts +0 -109
  455. package/src/serializer.ts +0 -89
  456. /package/src/{extension → api}/index.ts +0 -0
  457. /package/src/{extension → api}/plugin/package-info.ts +0 -0
  458. /package/src/{event-emitter.ts → event/index.ts} +0 -0
@@ -0,0 +1,174 @@
1
+ import { Identifier } from "../../identifier";
2
+ import { Omu } from "../../omu";
3
+ import { JsonType } from "../../serialize";
4
+ import { Extension, ExtensionType } from "../extension";
5
+ export declare const HTTP_EXTENSION_TYPE: ExtensionType<HttpExtension>;
6
+ export declare const HTTP_REQUEST_PERMISSION_ID: Identifier;
7
+ type RequestHandle = {
8
+ id: string;
9
+ };
10
+ declare class DataChunk<T extends JsonType> {
11
+ readonly meta: T;
12
+ readonly body: Uint8Array;
13
+ constructor(meta: T, body: Uint8Array);
14
+ static serialize<T extends JsonType>(data: DataChunk<T>): Uint8Array;
15
+ static deserialize<T extends JsonType>(data: Uint8Array): DataChunk<T>;
16
+ }
17
+ type HttpResponse = RequestHandle & {
18
+ header: Record<string, string>;
19
+ status: number;
20
+ statusText: string;
21
+ url: string;
22
+ history: HttpResponse[];
23
+ redirected: boolean;
24
+ };
25
+ type WSData = string | ArrayBufferLike | Blob | ArrayBufferView;
26
+ export declare const WSMsgType: {
27
+ readonly CONTINUATION: 0x0;
28
+ readonly TEXT: 0x1;
29
+ readonly BINARY: 0x2;
30
+ readonly PING: 0x9;
31
+ readonly PONG: 0xA;
32
+ readonly CLOSE: 0x8;
33
+ };
34
+ export declare const WSCloseCode: {
35
+ readonly OK: 1000;
36
+ readonly GOING_AWAY: 1001;
37
+ readonly PROTOCOL_ERROR: 1002;
38
+ readonly UNSUPPORTED_DATA: 1003;
39
+ readonly ABNORMAL_CLOSURE: 1006;
40
+ readonly INVALID_TEXT: 1007;
41
+ readonly POLICY_VIOLATION: 1008;
42
+ readonly MESSAGE_TOO_BIG: 1009;
43
+ readonly MANDATORY_EXTENSION: 1010;
44
+ readonly INTERNAL_ERROR: 1011;
45
+ readonly SERVICE_RESTART: 1012;
46
+ readonly TRY_AGAIN_LATER: 1013;
47
+ readonly BAD_GATEWAY: 1014;
48
+ };
49
+ type WebSocketOpen = RequestHandle & {
50
+ url: string;
51
+ protocol?: string | null;
52
+ };
53
+ type WebSocketClose = RequestHandle & {
54
+ code?: number;
55
+ reason?: string | null;
56
+ };
57
+ type WebSocketHandle = {
58
+ ws: OmuWS;
59
+ open: (response: WebSocketOpen) => void;
60
+ dispatch: (data: DataChunk<WSDataMeta>) => void;
61
+ close: (response: WebSocketClose) => void;
62
+ error: (response: WebSocketError) => void;
63
+ };
64
+ type WSDataMeta = {
65
+ id: string;
66
+ type: typeof WSMsgType.TEXT | typeof WSMsgType.BINARY | typeof WSMsgType.PING | typeof WSMsgType.PONG;
67
+ };
68
+ type WebSocketError = RequestHandle & {
69
+ type: "ConnectionRefused";
70
+ reason?: string | null;
71
+ };
72
+ export declare class HttpExtension implements Extension {
73
+ private readonly omu;
74
+ readonly type: ExtensionType<Extension>;
75
+ private requestCount;
76
+ private readonly httpHandles;
77
+ private readonly wsHandles;
78
+ private readonly wsSendQueue;
79
+ private wsSendWaitResolve;
80
+ constructor(omu: Omu);
81
+ private wsSendLoop;
82
+ private generateHeaders;
83
+ private generateId;
84
+ request(input: string | URL | globalThis.Request, init?: RequestInit): Promise<{
85
+ response: HttpResponse;
86
+ stream: ReadableStream;
87
+ }>;
88
+ fetch(input: string | URL | globalThis.Request, init?: RequestInit): Promise<OmuResponse>;
89
+ ws(input: string | URL | globalThis.Request, options?: {
90
+ method?: string;
91
+ autoclose?: boolean;
92
+ autoping?: boolean;
93
+ params?: Record<string, string>;
94
+ headers?: Record<string, string>;
95
+ }): Promise<OmuWS>;
96
+ }
97
+ declare class OmuResponse implements Response {
98
+ readonly headers: Headers;
99
+ readonly ok: boolean;
100
+ readonly redirected: boolean;
101
+ readonly status: number;
102
+ readonly statusText: string;
103
+ readonly type: ResponseType;
104
+ readonly url: string;
105
+ readonly body: ReadableStream<Uint8Array<ArrayBuffer>> | null;
106
+ readonly bodyUsed: boolean;
107
+ constructor(headers: Headers, ok: boolean, redirected: boolean, status: number, statusText: string, type: ResponseType, url: string, body: ReadableStream<Uint8Array<ArrayBuffer>> | null, bodyUsed: boolean);
108
+ clone(): OmuResponse;
109
+ arrayBuffer(): Promise<ArrayBuffer>;
110
+ blob(): Promise<Blob>;
111
+ bytes(): Promise<Uint8Array<ArrayBuffer>>;
112
+ formData(): Promise<FormData>;
113
+ json(): Promise<any>;
114
+ text(): Promise<string>;
115
+ }
116
+ type EventListenerMap<T> = { [K in keyof T] : ((event: T[K]) => unknown)[] };
117
+ export type WSMsg = {
118
+ type: "open";
119
+ data: WebSocketOpen;
120
+ } | {
121
+ type: "error";
122
+ data: WebSocketError;
123
+ } | {
124
+ type: "text";
125
+ data: string;
126
+ } | {
127
+ type: "binary";
128
+ data: Uint8Array;
129
+ } | {
130
+ type: "close";
131
+ data: WebSocketClose;
132
+ };
133
+ export declare class OmuWS {
134
+ protected readonly omu: Omu;
135
+ protected readonly id: Identifier;
136
+ protected readonly addQueue: (data: WSData) => void;
137
+ protected readonly dispose: () => void;
138
+ protected readonly receiveQueue: WSMsg[];
139
+ private receiveResolve;
140
+ private status;
141
+ constructor(omu: Omu, id: Identifier, addQueue: (data: WSData) => void, dispose: () => void, receiveQueue?: WSMsg[], receiveResolve?: (() => void) | undefined, status?: "connecting" | "open" | "closed");
142
+ static create(omu: Omu, id: Identifier, addQueue: (data: WSData) => void, dispose: () => void): WebSocketHandle;
143
+ send(data: WSData): void;
144
+ close(code?: number, reason?: string): void;
145
+ receive(): Promise<WSMsg>;
146
+ protocol: string;
147
+ url: string;
148
+ }
149
+ export declare class OmuWebSocket implements WebSocket {
150
+ protected readonly ws: OmuWS;
151
+ private readonly eventListeners;
152
+ CONNECTING: 0;
153
+ OPEN: 1;
154
+ CLOSING: 2;
155
+ CLOSED: 3;
156
+ binaryType: BinaryType;
157
+ bufferedAmount: number;
158
+ extensions: string;
159
+ onclose: ((this: WebSocket, ev: CloseEvent) => any) | null;
160
+ onerror: ((this: WebSocket, ev: Event) => any) | null;
161
+ onmessage: ((this: WebSocket, ev: MessageEvent) => any) | null;
162
+ onopen: ((this: WebSocket, ev: Event) => any) | null;
163
+ protocol: string;
164
+ readyState: 0 | 2 | 1 | 3;
165
+ url: string;
166
+ constructor(ws: OmuWS, eventListeners?: EventListenerMap<WebSocketEventMap>);
167
+ private receiveLoop;
168
+ dispatchEvent(event: Event): boolean;
169
+ send(data: string | ArrayBufferLike | Blob | ArrayBufferView): void;
170
+ close(code?: number, reason?: string): void;
171
+ addEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any): void;
172
+ removeEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any): void;
173
+ }
174
+ export {};
@@ -0,0 +1 @@
1
+ export { HTTP_REQUEST_PERMISSION_ID, OmuWS, type WSMsg } from "./extension";
@@ -0,0 +1,22 @@
1
+ import { Identifier } from "../../identifier";
2
+ import type { Locale } from "../../localization/locale.js";
3
+ import type { LocalizedText } from "../../localization/localization.js";
4
+ import { Omu } from "../../omu";
5
+ import type { Extension } from "../extension.js";
6
+ import { ExtensionType } from "../extension.js";
7
+ import { type Registry } from "../registry";
8
+ export declare const I18N_EXTENSION_TYPE: ExtensionType<I18nExtension>;
9
+ export declare const I18N_SET_LOCALES_PERMISSION_ID: Identifier;
10
+ export declare const I18N_GET_LOCALES_PERMISSION_ID: Identifier;
11
+ export declare class I18nExtension implements Extension {
12
+ private readonly omu;
13
+ readonly type: ExtensionType<I18nExtension>;
14
+ readonly localesRegistry: Registry<Locale[]>;
15
+ private locales?;
16
+ defaultLocales?: Locale[];
17
+ constructor(omu: Omu);
18
+ getLocales(): readonly Locale[];
19
+ translate(localizedText: LocalizedText): string;
20
+ selectBestTranslation(locales: readonly Locale[], localizedText: LocalizedText): string | undefined;
21
+ setLocale(locale: Locale[]): Promise<void>;
22
+ }
@@ -0,0 +1 @@
1
+ export { I18N_GET_LOCALES_PERMISSION_ID, I18N_SET_LOCALES_PERMISSION_ID } from "./extension.js";
@@ -0,0 +1,2 @@
1
+ export { ExtensionRegistry } from "./extension-registry.js";
2
+ export { Extension, ExtensionType } from "./extension.js";
@@ -0,0 +1,25 @@
1
+ import type { Unlisten } from "../../event";
2
+ import { Identifier } from "../../identifier";
3
+ import { PacketType } from "../../network/packet/packet.js";
4
+ import { Omu } from "../../omu";
5
+ import { ExtensionType } from "../extension.js";
6
+ import type { LogMessage } from "./packets.js";
7
+ import { LogPacket } from "./packets.js";
8
+ export declare const LOGGER_EXTENSION_TYPE: ExtensionType<LoggerExtension>;
9
+ export declare const LOGGER_LOG_PERMISSION_ID: Identifier;
10
+ export declare const LOGGER_LOG_PACKET: PacketType<LogPacket>;
11
+ export declare const LOGGER_LISTEN_PACKET: PacketType<Identifier>;
12
+ type LogListener = (message: LogMessage) => void;
13
+ export declare class LoggerExtension {
14
+ private readonly omu;
15
+ readonly type: ExtensionType<LoggerExtension>;
16
+ private readonly listeners;
17
+ constructor(omu: Omu);
18
+ log(message: LogMessage): void;
19
+ error(text: string): void;
20
+ warning(text: string): void;
21
+ info(text: string): void;
22
+ debug(text: string): void;
23
+ listen(id: Identifier, listener: LogListener): Unlisten;
24
+ }
25
+ export {};
@@ -0,0 +1 @@
1
+ export { LOGGER_LOG_PERMISSION_ID } from "./extension.js";
@@ -0,0 +1,18 @@
1
+ import { Identifier } from "../../identifier";
2
+ export declare enum LogType {
3
+ ERROR = "error",
4
+ WARNING = "warning",
5
+ INFO = "info",
6
+ DEBUG = "debug"
7
+ }
8
+ export type LogMessage = {
9
+ type: LogType;
10
+ text: string;
11
+ };
12
+ export declare class LogPacket {
13
+ readonly id: Identifier;
14
+ readonly message: LogMessage;
15
+ constructor(id: Identifier, message: LogMessage);
16
+ static serialize(item: LogPacket): Uint8Array;
17
+ static deserialize(item: Uint8Array): LogPacket;
18
+ }
@@ -0,0 +1,18 @@
1
+ import { Identifier, IntoId } from "../../identifier";
2
+ import { Omu } from "../../omu";
3
+ import { ExtensionType } from "../extension.js";
4
+ import { PermissionType } from "./permission.js";
5
+ export declare const PERMISSION_EXTENSION_TYPE: ExtensionType<PermissionExtension>;
6
+ export declare class PermissionExtension {
7
+ private readonly omu;
8
+ readonly type: ExtensionType<PermissionExtension>;
9
+ private permissions;
10
+ private readonly registeredPermissions;
11
+ private readonly requiredPermissions;
12
+ constructor(omu: Omu);
13
+ private onTask;
14
+ register(permission: PermissionType): void;
15
+ require(...permissionIds: IntoId[]): void;
16
+ request(...permissionIds: Identifier[]): Promise<void>;
17
+ has(permissionIdentifier: Identifier): boolean;
18
+ }
@@ -0,0 +1 @@
1
+ export { PermissionType, type PermissionLevel, type PermissionMetadata } from "./permission.js";
@@ -0,0 +1,25 @@
1
+ import { Identifier, IntoId } from "../../identifier";
2
+ import type { LocalizedText } from "../../localization/localization.js";
3
+ export type PermissionLevel = "low" | "medium" | "high";
4
+ export type PermissionMetadata = {
5
+ name: LocalizedText;
6
+ note?: LocalizedText;
7
+ level: PermissionLevel;
8
+ };
9
+ export type PermissionTypeJson = {
10
+ id: string;
11
+ metadata: PermissionMetadata;
12
+ };
13
+ export declare class PermissionType {
14
+ readonly id: Identifier;
15
+ readonly metadata: PermissionMetadata;
16
+ constructor(options: {
17
+ id: Identifier;
18
+ metadata: PermissionMetadata;
19
+ });
20
+ static create(identifier: IntoId, { metadata }: {
21
+ metadata: PermissionMetadata;
22
+ }): PermissionType;
23
+ static serialize(data: PermissionType): PermissionTypeJson;
24
+ static deserialize(json: PermissionTypeJson): PermissionType;
25
+ }
@@ -0,0 +1,43 @@
1
+ import { Identifier } from "../../identifier";
2
+ import { Omu } from "../../omu";
3
+ import { ExtensionType } from "../extension.js";
4
+ import { Table } from "../table/table.js";
5
+ export declare const PLUGIN_EXTENSION_TYPE: ExtensionType<PluginExtension>;
6
+ export declare class PluginExtension {
7
+ private readonly omu;
8
+ readonly type: ExtensionType<PluginExtension>;
9
+ private readonly requiredPlugins;
10
+ constructor(omu: Omu);
11
+ getAllowedPackages(): Table<PluginPackageInfo>;
12
+ reload(options: ReloadOptions): void;
13
+ private onTask;
14
+ require(plugins: Record<string, string | null>): void;
15
+ }
16
+ export declare class PluginPackageInfo {
17
+ package: string;
18
+ version: string;
19
+ constructor(_package: string, version: string);
20
+ static serialize(data: PluginPackageInfo): {
21
+ package: string;
22
+ version: string;
23
+ };
24
+ static deserialize(data: {
25
+ package: string;
26
+ version: string;
27
+ }): PluginPackageInfo;
28
+ static fromJson(json: {
29
+ package: string;
30
+ version: string;
31
+ }): PluginPackageInfo;
32
+ toJson(): {
33
+ package: string;
34
+ version: string;
35
+ };
36
+ key(): string;
37
+ }
38
+ export declare const PLUGIN_READ_PACKAGE_PERMISSION_ID: Identifier;
39
+ export declare const PLUGIN_MANAGE_PACKAGE_PERMISSION_ID: Identifier;
40
+ type ReloadOptions = {
41
+ packages: string[] | null;
42
+ };
43
+ export {};
@@ -0,0 +1,2 @@
1
+ export { PLUGIN_MANAGE_PACKAGE_PERMISSION_ID, PLUGIN_READ_PACKAGE_PERMISSION_ID, PluginPackageInfo } from "./extension.js";
2
+ export type { PackageInfo } from "./package-info.js";
@@ -0,0 +1,84 @@
1
+ export type Downloads = {
2
+ last_day: number;
3
+ last_month: number;
4
+ last_week: number;
5
+ };
6
+ export type ProjectUrls = {
7
+ "Bug Reports": string;
8
+ "Funding": string;
9
+ "Homepage": string;
10
+ "Say Thanks!": string;
11
+ "Source": string;
12
+ };
13
+ export type Info = {
14
+ author: string;
15
+ author_email: string;
16
+ bugtrack_url: string | null;
17
+ classifiers: string[];
18
+ description: string;
19
+ description_content_type: "text/markdown";
20
+ docs_url: string | null;
21
+ download_url: string;
22
+ downloads: Downloads;
23
+ home_page: string;
24
+ keywords: string;
25
+ license: string;
26
+ maintainer: string;
27
+ maintainer_email: string;
28
+ name: string;
29
+ package_url: string;
30
+ platform: unknown;
31
+ project_url: string;
32
+ project_urls: ProjectUrls;
33
+ release_url: string;
34
+ requires_dist: string[];
35
+ requires_python: string;
36
+ summary: string;
37
+ version: string;
38
+ yanked: boolean;
39
+ yanked_reason: string | null;
40
+ };
41
+ export type Digests = {
42
+ blake2b_256: string;
43
+ md5: string;
44
+ sha256: string;
45
+ };
46
+ export type ReleasesItem = {
47
+ comment_text: string;
48
+ digests: Digests;
49
+ downloads: string;
50
+ filename: string;
51
+ has_sig: boolean;
52
+ md5_digest: string;
53
+ packagetype: string;
54
+ python_version: string;
55
+ requires_python: string | null;
56
+ size: number;
57
+ upload_time: string;
58
+ upload_time_iso_8601: string;
59
+ url: string;
60
+ yanked: boolean;
61
+ yanked_reason: string | null;
62
+ };
63
+ export type Releases = {
64
+ [key: string]: ReleasesItem[];
65
+ };
66
+ export type Urls = ReleasesItem[];
67
+ export type VulnerabilitiesItem = {
68
+ aliases: string[];
69
+ details: string;
70
+ summary: string;
71
+ fixed_in: string[];
72
+ id: string;
73
+ link: string;
74
+ source: string;
75
+ withdrawn: string | null;
76
+ };
77
+ export type Vulnerabilities = VulnerabilitiesItem[];
78
+ export type PackageInfo = {
79
+ info: Info;
80
+ last_serial: number;
81
+ releases: Releases;
82
+ urls: Urls;
83
+ vulnerabilities: Vulnerabilities;
84
+ };
@@ -0,0 +1,26 @@
1
+ import { Identifier } from "../../identifier";
2
+ import { Omu } from "../../omu";
3
+ import { JsonType, Serializer } from "../../serialize";
4
+ import { type Extension, ExtensionType } from "../extension.js";
5
+ import { type Registry, RegistryType } from "./registry.js";
6
+ export declare class RegistryExtension implements Extension {
7
+ private readonly omu;
8
+ readonly type: ExtensionType<RegistryExtension>;
9
+ private readonly registries;
10
+ constructor(omu: Omu);
11
+ private createRegistry;
12
+ get<T>(registryType: RegistryType<T>): Registry<T>;
13
+ json<
14
+ T,
15
+ D extends JsonType = JsonType
16
+ >(name: string, options: {
17
+ default: T;
18
+ serializer?: Serializer<T, D>;
19
+ }): Registry<T>;
20
+ serialized<T>(name: string, options: {
21
+ default: T;
22
+ serializer: Serializer<T, Uint8Array>;
23
+ }): Registry<T>;
24
+ }
25
+ export declare const REGISTRY_EXTENSION_TYPE: ExtensionType<RegistryExtension>;
26
+ export declare const REGISTRY_PERMISSION_ID: Identifier;
@@ -0,0 +1,2 @@
1
+ export { REGISTRY_PERMISSION_ID } from "./extension.js";
2
+ export { RegistryType, type Registry, type RegistryPermissions } from "./registry.js";
@@ -0,0 +1,20 @@
1
+ import { Identifier } from "../../identifier";
2
+ import { RegistryPermissions, RegistryPermissionsJSON } from "./registry";
3
+ export declare class RegistryPacket {
4
+ readonly id: Identifier;
5
+ readonly value: Uint8Array | null;
6
+ constructor(id: Identifier, value: Uint8Array | null);
7
+ static serialize(packet: RegistryPacket): Uint8Array;
8
+ static deserialize(data: Uint8Array): RegistryPacket;
9
+ }
10
+ export interface RegisterPacketJSON {
11
+ id: string;
12
+ permissions: RegistryPermissionsJSON;
13
+ }
14
+ export declare class RegisterPacket {
15
+ readonly id: Identifier;
16
+ readonly permissions: RegistryPermissions;
17
+ constructor(id: Identifier, permissions: RegistryPermissions);
18
+ static serialize(packet: RegisterPacket): RegisterPacketJSON;
19
+ static deserialize(data: RegisterPacketJSON): RegisterPacket;
20
+ }
@@ -0,0 +1,44 @@
1
+ import type { Unlisten } from "../../event";
2
+ import { Identifier, IntoId } from "../../identifier";
3
+ import type { JsonType, Serializable } from "../../serialize";
4
+ export interface RegistryPermissionsJSON {
5
+ all?: string;
6
+ read?: string;
7
+ write?: string;
8
+ }
9
+ export interface RegistryPermissions {
10
+ all?: IntoId;
11
+ read?: IntoId;
12
+ write?: IntoId;
13
+ }
14
+ export declare class RegistryType<T> {
15
+ readonly id: Identifier;
16
+ readonly defaultValue: T;
17
+ readonly serializer: Serializable<T, Uint8Array>;
18
+ readonly permissions: RegistryPermissions;
19
+ constructor(id: Identifier, defaultValue: T, serializer: Serializable<T, Uint8Array>, permissions: RegistryPermissions);
20
+ static createJson<
21
+ T,
22
+ D extends JsonType = JsonType
23
+ >(identifier: IntoId, { name, defaultValue, permissions, serializer }: {
24
+ name: string;
25
+ defaultValue: T;
26
+ permissions?: RegistryPermissions;
27
+ serializer?: Serializable<T, D>;
28
+ }): RegistryType<T>;
29
+ static createSerialized<T>(identifier: IntoId, { name, defaultValue, serializer, permissions }: {
30
+ name: string;
31
+ defaultValue: T;
32
+ serializer: Serializable<T, Uint8Array>;
33
+ permissions?: RegistryPermissions;
34
+ }): RegistryType<T>;
35
+ }
36
+ export interface Registry<T> {
37
+ readonly type: RegistryType<T>;
38
+ readonly value: T;
39
+ get(): Promise<T>;
40
+ set(value: T): Promise<void>;
41
+ update(fn: (value: T) => PromiseLike<T> | T): Promise<T>;
42
+ modify(fn: (value: T) => PromiseLike<T> | T): Promise<T>;
43
+ listen(fn: (value: T) => void): Unlisten;
44
+ }
@@ -0,0 +1,47 @@
1
+ import { App, AppJson } from "../../app.js";
2
+ import { Identifier, IdentifierMap } from "../../identifier";
3
+ import { Omu } from "../../omu.js";
4
+ import { ExtensionType, type Extension } from "../extension.js";
5
+ import { Registry, RegistryType } from "../registry";
6
+ import { type Table } from "../table";
7
+ export declare const SERVER_EXTENSION_TYPE: ExtensionType<ServerExtension>;
8
+ export interface AppIndexEntry {
9
+ url: string;
10
+ added_at: string;
11
+ }
12
+ export interface AppIndex {
13
+ indexes: Record<string, AppIndexEntry>;
14
+ }
15
+ export declare const SERVER_APPS_READ_PERMISSION_ID: Identifier;
16
+ export declare const SERVER_APPS_WRITE_PERMISSION_ID: Identifier;
17
+ export declare const SERVER_INDEX_READ_PERMISSION_ID: Identifier;
18
+ export declare const SERVER_INDEX_REGISTRY_TYPE: RegistryType<AppIndex>;
19
+ export declare const SERVER_SHUTDOWN_PERMISSION_ID: Identifier;
20
+ export declare const TRUSTED_ORIGINS_GET_PERMISSION_ID: Identifier;
21
+ export declare const TRUSTED_ORIGINS_SET_PERMISSION_ID: Identifier;
22
+ export declare class ServerExtension implements Extension {
23
+ private readonly omu;
24
+ readonly type: ExtensionType<ServerExtension>;
25
+ readonly apps: Table<App>;
26
+ readonly index: Registry<AppIndex>;
27
+ readonly trustedHosts: Registry<Record<string, string>>;
28
+ constructor(omu: Omu);
29
+ shutdown(restart?: boolean): Promise<boolean>;
30
+ }
31
+ export declare class SessionObserver {
32
+ readonly onConnectCallbacks: Array<(app: App) => Promise<void> | void>;
33
+ readonly onDisconnectCallbacks: Array<(app: App) => Promise<void> | void>;
34
+ constructor(onConnectCallbacks: Array<(app: App) => Promise<void> | void>, onDisconnectCallbacks: Array<(app: App) => Promise<void> | void>);
35
+ onConnect(callback: (app: App) => Promise<void> | void): void;
36
+ onDisconnect(callback: (app: App) => Promise<void> | void): void;
37
+ }
38
+ export interface AppIndexRegistryJSON {
39
+ id: string;
40
+ apps: Record<string, AppJson>;
41
+ }
42
+ export declare class AppIndexRegistry {
43
+ id: Identifier;
44
+ apps: IdentifierMap<App>;
45
+ constructor(id: Identifier, apps: IdentifierMap<App>);
46
+ static fromJSON(json: AppIndexRegistryJSON): AppIndexRegistry;
47
+ }
@@ -0,0 +1 @@
1
+ export { AppIndexRegistry, SERVER_APPS_READ_PERMISSION_ID, SERVER_SHUTDOWN_PERMISSION_ID, TRUSTED_ORIGINS_GET_PERMISSION_ID, TRUSTED_ORIGINS_SET_PERMISSION_ID, type AppIndex, type AppIndexEntry, type AppIndexRegistryJSON } from "./extension.js";
@@ -0,0 +1,51 @@
1
+ import { App } from "../../app";
2
+ import { Identifier, IntoId } from "../../identifier";
3
+ import { Omu } from "../../omu";
4
+ import { Extension, ExtensionType } from "../extension";
5
+ import { SessionObserver } from "../server/extension";
6
+ import { Table } from "../table";
7
+ export declare const SESSION_EXTENSION_TYPE: ExtensionType<SessionExtension>;
8
+ export declare const SESSIONS_READ_PERMISSION_ID: Identifier;
9
+ export type RequestRemoteAppResponse = {
10
+ type: "success";
11
+ token: string;
12
+ lan_ip: string;
13
+ } | {
14
+ type: "error";
15
+ message: string;
16
+ };
17
+ export declare const REMOTE_APP_REQUEST_PERMISSION_ID: Identifier;
18
+ export type GenerateTokenResponse = {
19
+ type: "success";
20
+ token: string;
21
+ } | {
22
+ type: "error";
23
+ message: string;
24
+ };
25
+ export declare const GENERATE_TOKEN_PERMISSION_ID: Identifier;
26
+ export declare class SessionExtension implements Extension {
27
+ private readonly omu;
28
+ readonly type: ExtensionType<SessionExtension>;
29
+ readonly sessions: Table<App>;
30
+ private readonly sessionObservers;
31
+ private readonly requiredApps;
32
+ constructor(omu: Omu);
33
+ has(id: IntoId): Promise<boolean>;
34
+ observe(appId: IntoId, { onConnect, onDisconnect }: {
35
+ onConnect(app: App): void;
36
+ onDisconnect(app: App): void;
37
+ }): SessionObserver;
38
+ private handleSessionConnect;
39
+ private handleSessionDisconnect;
40
+ require(...appIds: IntoId[]): void;
41
+ private onTask;
42
+ private onReady;
43
+ requestRemoteApp(options: {
44
+ app: App;
45
+ permissions: IntoId[];
46
+ }): Promise<RequestRemoteAppResponse>;
47
+ generateToken(options: {
48
+ app: App;
49
+ permissions: IntoId[];
50
+ }): Promise<GenerateTokenResponse>;
51
+ }
@@ -0,0 +1 @@
1
+ export { GENERATE_TOKEN_PERMISSION_ID, REMOTE_APP_REQUEST_PERMISSION_ID, SESSION_EXTENSION_TYPE, SessionExtension, SESSIONS_READ_PERMISSION_ID, type RequestRemoteAppResponse } from "./extension";
@@ -0,0 +1,22 @@
1
+ import { Omu } from "../../omu";
2
+ import { JsonType, Serializable } from "../../serialize";
3
+ import { ExtensionType, type Extension } from "../extension.js";
4
+ import { SignalType, type Signal } from "./signal.js";
5
+ export declare const SIGNAL_EXTENSION_TYPE: ExtensionType<SignalExtension>;
6
+ export declare class SignalExtension implements Extension {
7
+ private readonly omu;
8
+ readonly type: ExtensionType<SignalExtension>;
9
+ private readonly signals;
10
+ constructor(omu: Omu);
11
+ private createSignal;
12
+ json<
13
+ T,
14
+ D extends JsonType = JsonType
15
+ >(name: string, options?: {
16
+ serializer?: Serializable<T, D>;
17
+ }): Signal<T>;
18
+ serialized<T>(name: string, options: {
19
+ serializer: Serializable<T, Uint8Array>;
20
+ }): Signal<T>;
21
+ get<T>(signalType: SignalType<T>): Signal<T>;
22
+ }
@@ -0,0 +1 @@
1
+ export { SignalPermissions, SignalType, type Signal } from "./signal.js";