@moqtap/codec 0.2.3 → 0.4.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 (313) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +100 -99
  3. package/dist/{chunk-RZHAPEXO.js → chunk-2A57DRXV.js} +36 -10
  4. package/dist/{chunk-73MWUKSJ.js → chunk-2UTVXWFF.js} +190 -102
  5. package/dist/{chunk-JTVCOMBI.cjs → chunk-3XKO6PCR.cjs} +290 -183
  6. package/dist/{chunk-ACQ4CUJP.cjs → chunk-4BDEU3D4.cjs} +237 -158
  7. package/dist/{chunk-4N4INRE7.cjs → chunk-4HBKHNU2.cjs} +144 -110
  8. package/dist/{chunk-2ZT6CVSE.js → chunk-4IVZZOY3.js} +269 -162
  9. package/dist/{chunk-GLBQDG4L.cjs → chunk-5O764MBD.cjs} +508 -117
  10. package/dist/chunk-7KBAWOBA.js +1212 -0
  11. package/dist/{chunk-JSQM2MG3.js → chunk-7QOPNSDF.js} +44 -12
  12. package/dist/{chunk-SYHW3FLI.cjs → chunk-7RE6KSIY.cjs} +28 -8
  13. package/dist/{chunk-YG5KJESI.js → chunk-AY6IAHUM.js} +28 -8
  14. package/dist/{chunk-EFM5T7OM.js → chunk-BLQDWOSG.js} +36 -10
  15. package/dist/{chunk-UYXTY6ZQ.cjs → chunk-E65QKRSN.cjs} +20 -12
  16. package/dist/{chunk-BISI45MN.cjs → chunk-EAHE3IOG.cjs} +44 -12
  17. package/dist/{chunk-PZBPH2D7.js → chunk-GCBFHZW6.js} +216 -137
  18. package/dist/{chunk-GXEW4COZ.cjs → chunk-H5NSL4MO.cjs} +36 -10
  19. package/dist/chunk-HZHSO7EW.cjs +1212 -0
  20. package/dist/{chunk-KZCYQ7ED.cjs → chunk-IILNSDEQ.cjs} +69 -41
  21. package/dist/{chunk-4XYGE53S.cjs → chunk-J3XCPBW3.cjs} +36 -10
  22. package/dist/{chunk-6AEHWULA.cjs → chunk-JKOEJZ5B.cjs} +28 -8
  23. package/dist/{chunk-RUPCJTC3.cjs → chunk-JL3NEW3O.cjs} +23 -1
  24. package/dist/{chunk-G7GI7LJA.js → chunk-LORZMJJB.js} +36 -10
  25. package/dist/{chunk-DUBCL3WF.cjs → chunk-LV5C6MEC.cjs} +36 -10
  26. package/dist/{chunk-ENURAVHI.cjs → chunk-MYXAD5JC.cjs} +44 -12
  27. package/dist/{chunk-FXZ2MYKJ.js → chunk-MZ7HUCGJ.js} +20 -12
  28. package/dist/{chunk-S74DWJE2.cjs → chunk-OKG2HT25.cjs} +277 -88
  29. package/dist/{chunk-BGWGVINJ.cjs → chunk-PKEOQSSZ.cjs} +144 -110
  30. package/dist/{chunk-2GODRVT5.js → chunk-Q46ZURKX.js} +325 -48
  31. package/dist/{chunk-UR6JKS56.js → chunk-Q7IGWV3P.js} +41 -9
  32. package/dist/{chunk-XSNX2IUJ.js → chunk-RW4UG7CN.js} +121 -87
  33. package/dist/{chunk-DWK5ZQZ4.js → chunk-RZTLQAKF.js} +28 -8
  34. package/dist/{chunk-UNS34PTA.cjs → chunk-S6IPIN66.cjs} +44 -12
  35. package/dist/{chunk-YIG2C3LF.cjs → chunk-SDWRXXOO.cjs} +214 -126
  36. package/dist/{chunk-CEH7ESNC.js → chunk-SHMA4PBY.js} +121 -87
  37. package/dist/{chunk-MC7W6PMI.js → chunk-U3ZVLT5L.js} +483 -135
  38. package/dist/{chunk-VJUUZ4W2.cjs → chunk-UJU63EFY.cjs} +374 -97
  39. package/dist/{chunk-7L43FE6P.js → chunk-VOU7PNHI.js} +23 -1
  40. package/dist/{chunk-E6E3NQYU.js → chunk-WRHGCVYN.js} +44 -12
  41. package/dist/{chunk-FPISPJ5N.cjs → chunk-XNWYLVGU.cjs} +529 -181
  42. package/dist/{chunk-U3IPZYPX.js → chunk-XS77RBY7.js} +228 -39
  43. package/dist/{chunk-JGG7CMSZ.cjs → chunk-XZE5R57R.cjs} +144 -110
  44. package/dist/{chunk-77MNXX3M.js → chunk-Y6KCSM3V.js} +121 -87
  45. package/dist/{chunk-TLYNOOQP.cjs → chunk-YTPZZI2M.cjs} +41 -9
  46. package/dist/{chunk-7DUBLRXC.js → chunk-YWRCSQBA.js} +44 -12
  47. package/dist/{chunk-MRJWLGYH.js → chunk-Z3VKP3PJ.js} +69 -41
  48. package/dist/{chunk-E6P74GDT.js → chunk-Z6U26IRI.js} +464 -73
  49. package/dist/{codec-FvGCxIhr.d.ts → codec-25u4_1HS.d.ts} +4 -4
  50. package/dist/{codec-DRcsBCsb.d.ts → codec-3Ppy_5Gd.d.ts} +4 -4
  51. package/dist/{codec-BdVMRMOI.d.ts → codec-BB0U8MF2.d.cts} +4 -4
  52. package/dist/{codec-B2cH-f5V.d.cts → codec-BHHfBTnV.d.ts} +4 -4
  53. package/dist/{codec-B5K73Bdj.d.ts → codec-BN6jk0Td.d.cts} +4 -4
  54. package/dist/{codec-R8GrCPt2.d.ts → codec-BU0gaSZm.d.ts} +4 -4
  55. package/dist/{codec-Bq-tLtfP.d.ts → codec-C-Yk2RNa.d.ts} +4 -4
  56. package/dist/codec-CFWQY9Lj.d.cts +18 -0
  57. package/dist/{codec-CPlK3Pi5.d.ts → codec-COy4uuPO.d.cts} +4 -4
  58. package/dist/codec-CewFCsEy.d.ts +18 -0
  59. package/dist/{codec-KXHvXZVb.d.cts → codec-Ck7ZwFF1.d.cts} +4 -4
  60. package/dist/{codec-DZhZSIii.d.cts → codec-D2QVSH9D.d.ts} +4 -4
  61. package/dist/{codec-BwFgpeQu.d.ts → codec-DDUBJGn0.d.cts} +4 -4
  62. package/dist/{codec-BFeliJFc.d.ts → codec-DNfml-se.d.ts} +4 -4
  63. package/dist/{codec-C4n1PS09.d.cts → codec-DoOGjjDq.d.cts} +4 -4
  64. package/dist/{codec-Bap882Fh.d.cts → codec-J7ekOSMc.d.ts} +4 -4
  65. package/dist/{codec-SKBeHQk7.d.ts → codec-R9TJCq-E.d.cts} +4 -4
  66. package/dist/{codec-DNUIgLqc.d.cts → codec-ZwV-Njt6.d.ts} +4 -4
  67. package/dist/{codec-HgBgHkFI.d.cts → codec-j819z_hL.d.cts} +4 -4
  68. package/dist/{codec-DY4QH364.d.cts → codec-w8z2j_uo.d.cts} +4 -4
  69. package/dist/{codec-CPvPq0sb.d.cts → codec-wtt6WF1K.d.ts} +4 -4
  70. package/dist/{codec-BUMjz0J4.d.cts → codec-z6_2PSzi.d.cts} +4 -4
  71. package/dist/{draft7-session.cjs → draft07-session.cjs} +2 -2
  72. package/dist/draft07-session.d.cts +8 -0
  73. package/dist/draft07-session.d.ts +8 -0
  74. package/dist/{draft7-session.js → draft07-session.js} +1 -1
  75. package/dist/draft07.cjs +129 -0
  76. package/dist/draft07.d.cts +67 -0
  77. package/dist/draft07.d.ts +67 -0
  78. package/dist/draft07.js +129 -0
  79. package/dist/draft08-session.cjs +6 -0
  80. package/dist/draft08-session.d.cts +8 -0
  81. package/dist/draft08-session.d.ts +8 -0
  82. package/dist/{draft8-session.js → draft08-session.js} +1 -1
  83. package/dist/draft08.cjs +119 -0
  84. package/dist/{draft8.d.cts → draft08.d.cts} +15 -13
  85. package/dist/{draft8.d.ts → draft08.d.ts} +15 -13
  86. package/dist/{draft8.js → draft08.js} +7 -4
  87. package/dist/draft09-session.cjs +6 -0
  88. package/dist/draft09-session.d.cts +8 -0
  89. package/dist/draft09-session.d.ts +8 -0
  90. package/dist/{draft9-session.js → draft09-session.js} +1 -1
  91. package/dist/draft09.cjs +119 -0
  92. package/dist/{draft9.d.cts → draft09.d.cts} +15 -13
  93. package/dist/{draft9.d.ts → draft09.d.ts} +15 -13
  94. package/dist/{draft9.js → draft09.js} +7 -4
  95. package/dist/draft10-session.cjs +2 -2
  96. package/dist/draft10-session.d.cts +6 -6
  97. package/dist/draft10-session.d.ts +6 -6
  98. package/dist/draft10-session.js +1 -1
  99. package/dist/draft10.cjs +8 -5
  100. package/dist/draft10.d.cts +14 -12
  101. package/dist/draft10.d.ts +14 -12
  102. package/dist/draft10.js +16 -13
  103. package/dist/draft11-session.cjs +2 -2
  104. package/dist/draft11-session.d.cts +6 -6
  105. package/dist/draft11-session.d.ts +6 -6
  106. package/dist/draft11-session.js +1 -1
  107. package/dist/draft11.cjs +8 -5
  108. package/dist/draft11.d.cts +14 -12
  109. package/dist/draft11.d.ts +14 -12
  110. package/dist/draft11.js +16 -13
  111. package/dist/draft12-session.cjs +2 -2
  112. package/dist/draft12-session.d.cts +6 -6
  113. package/dist/draft12-session.d.ts +6 -6
  114. package/dist/draft12-session.js +1 -1
  115. package/dist/draft12.cjs +8 -5
  116. package/dist/draft12.d.cts +16 -14
  117. package/dist/draft12.d.ts +16 -14
  118. package/dist/draft12.js +16 -13
  119. package/dist/draft13-session.cjs +2 -2
  120. package/dist/draft13-session.d.cts +6 -6
  121. package/dist/draft13-session.d.ts +6 -6
  122. package/dist/draft13-session.js +1 -1
  123. package/dist/draft13.cjs +8 -5
  124. package/dist/draft13.d.cts +16 -14
  125. package/dist/draft13.d.ts +16 -14
  126. package/dist/draft13.js +16 -13
  127. package/dist/draft14-session.cjs +2 -2
  128. package/dist/draft14-session.d.cts +6 -6
  129. package/dist/draft14-session.d.ts +6 -6
  130. package/dist/draft14-session.js +1 -1
  131. package/dist/draft14.cjs +14 -5
  132. package/dist/draft14.d.cts +14 -12
  133. package/dist/draft14.d.ts +14 -12
  134. package/dist/draft14.js +13 -4
  135. package/dist/draft15-session.cjs +2 -2
  136. package/dist/draft15-session.d.cts +6 -6
  137. package/dist/draft15-session.d.ts +6 -6
  138. package/dist/draft15-session.js +1 -1
  139. package/dist/draft15.cjs +8 -5
  140. package/dist/draft15.d.cts +14 -12
  141. package/dist/draft15.d.ts +14 -12
  142. package/dist/draft15.js +16 -13
  143. package/dist/draft16-session.cjs +2 -2
  144. package/dist/draft16-session.d.cts +6 -6
  145. package/dist/draft16-session.d.ts +6 -6
  146. package/dist/draft16-session.js +1 -1
  147. package/dist/draft16.cjs +8 -5
  148. package/dist/draft16.d.cts +14 -12
  149. package/dist/draft16.d.ts +14 -12
  150. package/dist/draft16.js +16 -13
  151. package/dist/draft17-session.cjs +2 -2
  152. package/dist/draft17-session.d.cts +7 -7
  153. package/dist/draft17-session.d.ts +7 -7
  154. package/dist/draft17-session.js +1 -1
  155. package/dist/draft17.cjs +8 -5
  156. package/dist/draft17.d.cts +11 -9
  157. package/dist/draft17.d.ts +11 -9
  158. package/dist/draft17.js +16 -13
  159. package/dist/index.cjs +52 -74
  160. package/dist/index.d.cts +41 -60
  161. package/dist/index.d.ts +41 -60
  162. package/dist/index.js +40 -62
  163. package/dist/{session-types-CJIFbTPd.d.ts → session-types-C7UONex5.d.cts} +28 -27
  164. package/dist/{session-types-Cbq8IGCP.d.cts → session-types-X-IYEGoG.d.ts} +28 -27
  165. package/dist/session.cjs +46 -13
  166. package/dist/session.d.cts +29 -11
  167. package/dist/session.d.ts +29 -11
  168. package/dist/session.js +46 -13
  169. package/dist/{types-DxSFvL2b.d.cts → types--Q7_DcvP.d.cts} +43 -39
  170. package/dist/{types-DxSFvL2b.d.ts → types--Q7_DcvP.d.ts} +43 -39
  171. package/dist/{types-B0FT5Qs2.d.cts → types-0IWbU9Z_.d.cts} +36 -36
  172. package/dist/{types-B0FT5Qs2.d.ts → types-0IWbU9Z_.d.ts} +36 -36
  173. package/dist/{types-gQsr0AAA.d.cts → types-B3g5G9KP.d.cts} +36 -36
  174. package/dist/{types-gQsr0AAA.d.ts → types-B3g5G9KP.d.ts} +36 -36
  175. package/dist/{types-Pme7sua0.d.cts → types-BFpFNM_m.d.cts} +57 -32
  176. package/dist/{types-Pme7sua0.d.ts → types-BFpFNM_m.d.ts} +57 -32
  177. package/dist/{types-8gUGeMgs.d.cts → types-Br7fm2mf.d.cts} +48 -26
  178. package/dist/{types-8gUGeMgs.d.ts → types-Br7fm2mf.d.ts} +48 -26
  179. package/dist/{types-BeAVNU-F.d.cts → types-C2qKTRR_.d.cts} +50 -45
  180. package/dist/{types-BeAVNU-F.d.ts → types-C2qKTRR_.d.ts} +50 -45
  181. package/dist/{types-DKpsfD3i.d.cts → types-DEaypVsD.d.cts} +115 -55
  182. package/dist/{types-DKpsfD3i.d.ts → types-DEaypVsD.d.ts} +115 -55
  183. package/dist/types-Dl4IaAHR.d.cts +282 -0
  184. package/dist/types-Dl4IaAHR.d.ts +282 -0
  185. package/dist/{types-CDa7F5ct.d.cts → types-DrQpTW1G.d.cts} +58 -50
  186. package/dist/{types-CDa7F5ct.d.ts → types-DrQpTW1G.d.ts} +58 -50
  187. package/dist/types-DuIO7cWK.d.cts +25 -0
  188. package/dist/types-DuIO7cWK.d.ts +25 -0
  189. package/dist/{types-B9A2g05r.d.cts → types-DuxfOYiO.d.cts} +47 -31
  190. package/dist/{types-B9A2g05r.d.ts → types-DuxfOYiO.d.ts} +47 -31
  191. package/dist/{types-D1dI_oTX.d.cts → types-jV1yDDBA.d.cts} +36 -36
  192. package/dist/{types-D1dI_oTX.d.ts → types-jV1yDDBA.d.ts} +36 -36
  193. package/package.json +192 -192
  194. package/src/core/buffer-reader.ts +130 -130
  195. package/src/core/buffer-writer.ts +100 -100
  196. package/src/core/errors.ts +1 -1
  197. package/src/core/hex.ts +21 -21
  198. package/src/core/session-types.ts +61 -59
  199. package/src/core/types.ts +18 -361
  200. package/src/drafts/draft07/codec.ts +1058 -938
  201. package/src/drafts/draft07/data-streams.ts +240 -240
  202. package/src/drafts/draft07/index.ts +124 -89
  203. package/src/drafts/draft07/messages.ts +76 -42
  204. package/src/drafts/draft07/rules.ts +107 -101
  205. package/src/drafts/draft07/session-fsm.ts +315 -287
  206. package/src/drafts/draft07/session.ts +8 -6
  207. package/src/drafts/draft07/types.ts +406 -72
  208. package/src/drafts/draft07/varint.ts +51 -51
  209. package/src/drafts/draft08/codec.ts +985 -953
  210. package/src/drafts/draft08/data-streams.ts +363 -359
  211. package/src/drafts/draft08/index.ts +10 -9
  212. package/src/drafts/draft08/messages.ts +59 -59
  213. package/src/drafts/draft08/rules.ts +73 -73
  214. package/src/drafts/draft08/session-fsm.ts +335 -303
  215. package/src/drafts/draft08/session.ts +6 -7
  216. package/src/drafts/draft08/types.ts +380 -384
  217. package/src/drafts/draft09/codec.ts +977 -945
  218. package/src/drafts/draft09/data-streams.ts +336 -332
  219. package/src/drafts/draft09/index.ts +10 -9
  220. package/src/drafts/draft09/messages.ts +59 -59
  221. package/src/drafts/draft09/rules.ts +73 -73
  222. package/src/drafts/draft09/session-fsm.ts +335 -303
  223. package/src/drafts/draft09/session.ts +6 -7
  224. package/src/drafts/draft09/types.ts +380 -384
  225. package/src/drafts/draft10/codec.ts +977 -945
  226. package/src/drafts/draft10/data-streams.ts +336 -332
  227. package/src/drafts/draft10/index.ts +10 -9
  228. package/src/drafts/draft10/messages.ts +59 -59
  229. package/src/drafts/draft10/rules.ts +73 -73
  230. package/src/drafts/draft10/session-fsm.ts +335 -303
  231. package/src/drafts/draft10/session.ts +6 -7
  232. package/src/drafts/draft10/types.ts +380 -384
  233. package/src/drafts/draft11/codec.ts +1054 -988
  234. package/src/drafts/draft11/data-streams.ts +316 -269
  235. package/src/drafts/draft11/index.ts +10 -9
  236. package/src/drafts/draft11/messages.ts +60 -59
  237. package/src/drafts/draft11/rules.ts +73 -73
  238. package/src/drafts/draft11/session-fsm.ts +359 -333
  239. package/src/drafts/draft11/session.ts +6 -7
  240. package/src/drafts/draft11/types.ts +385 -381
  241. package/src/drafts/draft12/codec.ts +1178 -1122
  242. package/src/drafts/draft12/data-streams.ts +324 -275
  243. package/src/drafts/draft12/index.ts +10 -9
  244. package/src/drafts/draft12/messages.ts +67 -66
  245. package/src/drafts/draft12/rules.ts +79 -79
  246. package/src/drafts/draft12/session-fsm.ts +384 -358
  247. package/src/drafts/draft12/session.ts +6 -7
  248. package/src/drafts/draft12/types.ts +424 -419
  249. package/src/drafts/draft13/codec.ts +1296 -1206
  250. package/src/drafts/draft13/data-streams.ts +326 -275
  251. package/src/drafts/draft13/index.ts +10 -9
  252. package/src/drafts/draft13/messages.ts +73 -68
  253. package/src/drafts/draft13/rules.ts +81 -81
  254. package/src/drafts/draft13/session-fsm.ts +392 -366
  255. package/src/drafts/draft13/session.ts +6 -7
  256. package/src/drafts/draft13/types.ts +447 -438
  257. package/src/drafts/draft14/codec.ts +1347 -1043
  258. package/src/drafts/draft14/data-streams.ts +831 -813
  259. package/src/drafts/draft14/index.ts +17 -9
  260. package/src/drafts/draft14/messages.ts +65 -65
  261. package/src/drafts/draft14/rules.ts +81 -81
  262. package/src/drafts/draft14/session-fsm.ts +415 -405
  263. package/src/drafts/draft14/session.ts +6 -7
  264. package/src/drafts/draft14/types.ts +451 -381
  265. package/src/drafts/draft15/codec.ts +1138 -978
  266. package/src/drafts/draft15/data-streams.ts +842 -794
  267. package/src/drafts/draft15/index.ts +10 -9
  268. package/src/drafts/draft15/messages.ts +54 -53
  269. package/src/drafts/draft15/rules.ts +67 -67
  270. package/src/drafts/draft15/session-fsm.ts +319 -299
  271. package/src/drafts/draft15/session.ts +6 -7
  272. package/src/drafts/draft15/types.ts +357 -339
  273. package/src/drafts/draft16/codec.ts +1242 -966
  274. package/src/drafts/draft16/data-streams.ts +835 -789
  275. package/src/drafts/draft16/index.ts +10 -9
  276. package/src/drafts/draft16/messages.ts +56 -55
  277. package/src/drafts/draft16/rules.ts +69 -69
  278. package/src/drafts/draft16/session-fsm.ts +319 -299
  279. package/src/drafts/draft16/session.ts +6 -7
  280. package/src/drafts/draft16/types.ts +386 -357
  281. package/src/drafts/draft17/codec.ts +1209 -971
  282. package/src/drafts/draft17/data-streams.ts +969 -758
  283. package/src/drafts/draft17/index.ts +9 -7
  284. package/src/drafts/draft17/messages.ts +43 -42
  285. package/src/drafts/draft17/rules.ts +58 -58
  286. package/src/drafts/draft17/session-fsm.ts +248 -216
  287. package/src/drafts/draft17/session.ts +5 -5
  288. package/src/drafts/draft17/types.ts +337 -313
  289. package/src/index.ts +85 -274
  290. package/src/session.ts +63 -25
  291. package/dist/chunk-FZDIEHQL.cjs +0 -1042
  292. package/dist/chunk-HDWJ2GDE.js +0 -24
  293. package/dist/chunk-KNDYS3DK.cjs +0 -24
  294. package/dist/chunk-N2KBF5Q2.js +0 -1042
  295. package/dist/draft7-session.d.cts +0 -7
  296. package/dist/draft7-session.d.ts +0 -7
  297. package/dist/draft7.cjs +0 -72
  298. package/dist/draft7.d.cts +0 -148
  299. package/dist/draft7.d.ts +0 -148
  300. package/dist/draft7.js +0 -72
  301. package/dist/draft8-session.cjs +0 -6
  302. package/dist/draft8-session.d.cts +0 -8
  303. package/dist/draft8-session.d.ts +0 -8
  304. package/dist/draft8.cjs +0 -116
  305. package/dist/draft9-session.cjs +0 -6
  306. package/dist/draft9-session.d.cts +0 -8
  307. package/dist/draft9-session.d.ts +0 -8
  308. package/dist/draft9.cjs +0 -116
  309. package/dist/types-QNXoxC9Y.d.cts +0 -236
  310. package/dist/types-QNXoxC9Y.d.ts +0 -236
  311. package/src/drafts/draft07/announce-fsm.ts +0 -2
  312. package/src/drafts/draft07/parameters.ts +0 -12
  313. package/src/drafts/draft07/subscription-fsm.ts +0 -3
@@ -5,44 +5,48 @@ interface UnknownParam {
5
5
  }
6
6
  interface AuthorizationToken {
7
7
  readonly alias_type: bigint;
8
- readonly token_type: bigint;
9
- readonly token_value: string;
8
+ readonly token_alias?: bigint;
9
+ readonly token_type?: bigint;
10
+ readonly token_value?: string;
10
11
  }
11
12
  interface Draft13SetupParams {
12
13
  path?: string;
13
14
  max_request_id?: bigint;
15
+ authorization_token?: AuthorizationToken;
16
+ max_auth_token_cache_size?: bigint;
14
17
  unknown?: UnknownParam[];
15
18
  }
16
19
  interface Draft13Params {
17
- authorization_token?: AuthorizationToken;
18
20
  delivery_timeout?: bigint;
21
+ authorization_token?: AuthorizationToken;
22
+ max_cache_duration?: bigint;
19
23
  unknown?: UnknownParam[];
20
24
  }
21
25
  interface LargestLocation {
22
26
  readonly group: bigint;
23
27
  readonly object: bigint;
24
28
  }
25
- type Draft13MessageType = "client_setup" | "server_setup" | "subscribe" | "subscribe_ok" | "subscribe_error" | "subscribe_update" | "subscribe_done" | "unsubscribe" | "announce" | "announce_ok" | "announce_error" | "unannounce" | "announce_cancel" | "subscribe_namespace" | "subscribe_namespace_ok" | "subscribe_namespace_error" | "unsubscribe_namespace" | "fetch" | "fetch_ok" | "fetch_error" | "fetch_cancel" | "publish" | "publish_ok" | "publish_error" | "track_status" | "track_status_ok" | "track_status_error" | "goaway" | "max_request_id" | "requests_blocked";
29
+ type Draft13MessageType = 'client_setup' | 'server_setup' | 'subscribe' | 'subscribe_ok' | 'subscribe_error' | 'subscribe_update' | 'subscribe_done' | 'unsubscribe' | 'announce' | 'announce_ok' | 'announce_error' | 'unannounce' | 'announce_cancel' | 'subscribe_namespace' | 'subscribe_namespace_ok' | 'subscribe_namespace_error' | 'unsubscribe_namespace' | 'fetch' | 'fetch_ok' | 'fetch_error' | 'fetch_cancel' | 'publish' | 'publish_ok' | 'publish_error' | 'track_status' | 'track_status_ok' | 'track_status_error' | 'goaway' | 'max_request_id' | 'requests_blocked';
26
30
  interface Draft13BaseMessage {
27
31
  readonly type: Draft13MessageType;
28
32
  }
29
33
  interface Draft13ClientSetup extends Draft13BaseMessage {
30
- readonly type: "client_setup";
34
+ readonly type: 'client_setup';
31
35
  readonly supported_versions: bigint[];
32
36
  readonly parameters: Draft13SetupParams;
33
37
  }
34
38
  interface Draft13ServerSetup extends Draft13BaseMessage {
35
- readonly type: "server_setup";
39
+ readonly type: 'server_setup';
36
40
  readonly selected_version: bigint;
37
41
  readonly parameters: Draft13SetupParams;
38
42
  }
39
43
  interface Draft13Subscribe extends Draft13BaseMessage {
40
- readonly type: "subscribe";
44
+ readonly type: 'subscribe';
41
45
  readonly request_id: bigint;
42
46
  readonly track_namespace: string[];
43
47
  readonly track_name: string;
44
48
  readonly subscriber_priority: number;
45
- readonly group_order: bigint;
49
+ readonly group_order: number;
46
50
  readonly forward: bigint;
47
51
  readonly filter_type: bigint;
48
52
  readonly start_group?: bigint;
@@ -51,23 +55,23 @@ interface Draft13Subscribe extends Draft13BaseMessage {
51
55
  readonly parameters: Draft13Params;
52
56
  }
53
57
  interface Draft13SubscribeOk extends Draft13BaseMessage {
54
- readonly type: "subscribe_ok";
58
+ readonly type: 'subscribe_ok';
55
59
  readonly request_id: bigint;
56
60
  readonly track_alias: bigint;
57
61
  readonly expires: bigint;
58
- readonly group_order: bigint;
62
+ readonly group_order: number;
59
63
  readonly content_exists: bigint;
60
64
  readonly largest_location?: LargestLocation;
61
65
  readonly parameters: Draft13Params;
62
66
  }
63
67
  interface Draft13SubscribeError extends Draft13BaseMessage {
64
- readonly type: "subscribe_error";
68
+ readonly type: 'subscribe_error';
65
69
  readonly request_id: bigint;
66
70
  readonly error_code: bigint;
67
71
  readonly reason_phrase: string;
68
72
  }
69
73
  interface Draft13SubscribeUpdate extends Draft13BaseMessage {
70
- readonly type: "subscribe_update";
74
+ readonly type: 'subscribe_update';
71
75
  readonly request_id: bigint;
72
76
  readonly start_group: bigint;
73
77
  readonly start_object: bigint;
@@ -77,80 +81,80 @@ interface Draft13SubscribeUpdate extends Draft13BaseMessage {
77
81
  readonly parameters: Draft13Params;
78
82
  }
79
83
  interface Draft13SubscribeDone extends Draft13BaseMessage {
80
- readonly type: "subscribe_done";
84
+ readonly type: 'subscribe_done';
81
85
  readonly request_id: bigint;
82
86
  readonly status_code: bigint;
83
87
  readonly stream_count: bigint;
84
88
  readonly reason_phrase: string;
85
89
  }
86
90
  interface Draft13Unsubscribe extends Draft13BaseMessage {
87
- readonly type: "unsubscribe";
91
+ readonly type: 'unsubscribe';
88
92
  readonly request_id: bigint;
89
93
  }
90
94
  interface Draft13Announce extends Draft13BaseMessage {
91
- readonly type: "announce";
95
+ readonly type: 'announce';
92
96
  readonly request_id: bigint;
93
97
  readonly track_namespace: string[];
94
98
  readonly parameters: Draft13Params;
95
99
  }
96
100
  interface Draft13AnnounceOk extends Draft13BaseMessage {
97
- readonly type: "announce_ok";
101
+ readonly type: 'announce_ok';
98
102
  readonly request_id: bigint;
99
103
  }
100
104
  interface Draft13AnnounceError extends Draft13BaseMessage {
101
- readonly type: "announce_error";
105
+ readonly type: 'announce_error';
102
106
  readonly request_id: bigint;
103
107
  readonly error_code: bigint;
104
108
  readonly reason_phrase: string;
105
109
  }
106
110
  interface Draft13Unannounce extends Draft13BaseMessage {
107
- readonly type: "unannounce";
111
+ readonly type: 'unannounce';
108
112
  readonly track_namespace: string[];
109
113
  }
110
114
  interface Draft13AnnounceCancel extends Draft13BaseMessage {
111
- readonly type: "announce_cancel";
115
+ readonly type: 'announce_cancel';
112
116
  readonly track_namespace: string[];
113
117
  readonly error_code: bigint;
114
118
  readonly reason_phrase: string;
115
119
  }
116
120
  interface Draft13SubscribeNamespace extends Draft13BaseMessage {
117
- readonly type: "subscribe_namespace";
121
+ readonly type: 'subscribe_namespace';
118
122
  readonly request_id: bigint;
119
123
  readonly track_namespace_prefix: string[];
120
124
  readonly parameters: Draft13Params;
121
125
  }
122
126
  interface Draft13SubscribeNamespaceOk extends Draft13BaseMessage {
123
- readonly type: "subscribe_namespace_ok";
127
+ readonly type: 'subscribe_namespace_ok';
124
128
  readonly request_id: bigint;
125
129
  }
126
130
  interface Draft13SubscribeNamespaceError extends Draft13BaseMessage {
127
- readonly type: "subscribe_namespace_error";
131
+ readonly type: 'subscribe_namespace_error';
128
132
  readonly request_id: bigint;
129
133
  readonly error_code: bigint;
130
134
  readonly reason_phrase: string;
131
135
  }
132
136
  interface Draft13UnsubscribeNamespace extends Draft13BaseMessage {
133
- readonly type: "unsubscribe_namespace";
137
+ readonly type: 'unsubscribe_namespace';
134
138
  readonly track_namespace_prefix: string[];
135
139
  }
136
140
  interface Draft13Publish extends Draft13BaseMessage {
137
- readonly type: "publish";
141
+ readonly type: 'publish';
138
142
  readonly request_id: bigint;
139
143
  readonly track_namespace: string[];
140
144
  readonly track_name: string;
141
145
  readonly track_alias: bigint;
142
- readonly group_order: bigint;
146
+ readonly group_order: number;
143
147
  readonly content_exists: bigint;
144
148
  readonly largest_location?: LargestLocation;
145
149
  readonly forward: bigint;
146
150
  readonly parameters: Draft13Params;
147
151
  }
148
152
  interface Draft13PublishOk extends Draft13BaseMessage {
149
- readonly type: "publish_ok";
153
+ readonly type: 'publish_ok';
150
154
  readonly request_id: bigint;
151
155
  readonly forward: bigint;
152
156
  readonly subscriber_priority: number;
153
- readonly group_order: bigint;
157
+ readonly group_order: number;
154
158
  readonly filter_type: bigint;
155
159
  readonly start_group?: bigint;
156
160
  readonly start_object?: bigint;
@@ -158,7 +162,7 @@ interface Draft13PublishOk extends Draft13BaseMessage {
158
162
  readonly parameters: Draft13Params;
159
163
  }
160
164
  interface Draft13PublishError extends Draft13BaseMessage {
161
- readonly type: "publish_error";
165
+ readonly type: 'publish_error';
162
166
  readonly request_id: bigint;
163
167
  readonly error_code: bigint;
164
168
  readonly reason_phrase: string;
@@ -176,40 +180,40 @@ interface JoiningFetch {
176
180
  readonly joining_start: bigint;
177
181
  }
178
182
  interface Draft13Fetch extends Draft13BaseMessage {
179
- readonly type: "fetch";
183
+ readonly type: 'fetch';
180
184
  readonly request_id: bigint;
181
185
  readonly subscriber_priority: number;
182
- readonly group_order: bigint;
186
+ readonly group_order: number;
183
187
  readonly fetch_type: bigint;
184
188
  readonly standalone?: StandaloneFetch;
185
189
  readonly joining?: JoiningFetch;
186
190
  readonly parameters: Draft13Params;
187
191
  }
188
192
  interface Draft13FetchOk extends Draft13BaseMessage {
189
- readonly type: "fetch_ok";
193
+ readonly type: 'fetch_ok';
190
194
  readonly request_id: bigint;
191
- readonly group_order: bigint;
195
+ readonly group_order: number;
192
196
  readonly end_of_track: bigint;
193
197
  readonly end_location: LargestLocation;
194
198
  readonly parameters: Draft13Params;
195
199
  }
196
200
  interface Draft13FetchError extends Draft13BaseMessage {
197
- readonly type: "fetch_error";
201
+ readonly type: 'fetch_error';
198
202
  readonly request_id: bigint;
199
203
  readonly error_code: bigint;
200
204
  readonly reason_phrase: string;
201
205
  }
202
206
  interface Draft13FetchCancel extends Draft13BaseMessage {
203
- readonly type: "fetch_cancel";
207
+ readonly type: 'fetch_cancel';
204
208
  readonly request_id: bigint;
205
209
  }
206
210
  interface Draft13TrackStatus extends Draft13BaseMessage {
207
- readonly type: "track_status";
211
+ readonly type: 'track_status';
208
212
  readonly request_id: bigint;
209
213
  readonly track_namespace: string[];
210
214
  readonly track_name: string;
211
215
  readonly subscriber_priority: number;
212
- readonly group_order: bigint;
216
+ readonly group_order: number;
213
217
  readonly forward: bigint;
214
218
  readonly filter_type: bigint;
215
219
  readonly start_group?: bigint;
@@ -218,46 +222,47 @@ interface Draft13TrackStatus extends Draft13BaseMessage {
218
222
  readonly parameters: Draft13Params;
219
223
  }
220
224
  interface Draft13TrackStatusOk extends Draft13BaseMessage {
221
- readonly type: "track_status_ok";
225
+ readonly type: 'track_status_ok';
222
226
  readonly request_id: bigint;
223
227
  readonly track_alias: bigint;
224
228
  readonly expires: bigint;
225
- readonly group_order: bigint;
229
+ readonly group_order: number;
226
230
  readonly content_exists: bigint;
227
231
  readonly largest_location?: LargestLocation;
228
232
  readonly parameters: Draft13Params;
229
233
  }
230
234
  interface Draft13TrackStatusError extends Draft13BaseMessage {
231
- readonly type: "track_status_error";
235
+ readonly type: 'track_status_error';
232
236
  readonly request_id: bigint;
233
237
  readonly error_code: bigint;
234
238
  readonly reason_phrase: string;
235
239
  }
236
240
  interface Draft13GoAway extends Draft13BaseMessage {
237
- readonly type: "goaway";
241
+ readonly type: 'goaway';
238
242
  readonly new_session_uri: string;
239
243
  }
240
244
  interface Draft13MaxRequestId extends Draft13BaseMessage {
241
- readonly type: "max_request_id";
245
+ readonly type: 'max_request_id';
242
246
  readonly request_id: bigint;
243
247
  }
244
248
  interface Draft13RequestsBlocked extends Draft13BaseMessage {
245
- readonly type: "requests_blocked";
249
+ readonly type: 'requests_blocked';
246
250
  readonly maximum_request_id: bigint;
247
251
  }
248
252
  type Draft13Message = Draft13ClientSetup | Draft13ServerSetup | Draft13Subscribe | Draft13SubscribeOk | Draft13SubscribeError | Draft13SubscribeUpdate | Draft13SubscribeDone | Draft13Unsubscribe | Draft13Announce | Draft13AnnounceOk | Draft13AnnounceError | Draft13Unannounce | Draft13AnnounceCancel | Draft13SubscribeNamespace | Draft13SubscribeNamespaceOk | Draft13SubscribeNamespaceError | Draft13UnsubscribeNamespace | Draft13Publish | Draft13PublishOk | Draft13PublishError | Draft13Fetch | Draft13FetchOk | Draft13FetchError | Draft13FetchCancel | Draft13TrackStatus | Draft13TrackStatusOk | Draft13TrackStatusError | Draft13GoAway | Draft13MaxRequestId | Draft13RequestsBlocked;
249
253
  interface ObjectPayload {
250
- readonly type: "object";
254
+ readonly type: 'object';
251
255
  readonly byteOffset: number;
252
256
  readonly payloadByteOffset: number;
253
257
  readonly objectId: bigint;
258
+ readonly extensionHeadersLength?: bigint;
254
259
  readonly payloadLength: number;
255
260
  readonly status?: bigint;
256
261
  readonly extensionData: Uint8Array;
257
262
  readonly payload: Uint8Array;
258
263
  }
259
264
  interface SubgroupStream {
260
- readonly type: "subgroup";
265
+ readonly type: 'subgroup';
261
266
  readonly streamTypeId: number;
262
267
  readonly trackAlias: bigint;
263
268
  readonly groupId: bigint;
@@ -266,46 +271,49 @@ interface SubgroupStream {
266
271
  readonly objects: ObjectPayload[];
267
272
  }
268
273
  interface DatagramObject {
269
- readonly type: "datagram";
274
+ readonly type: 'datagram';
270
275
  readonly streamTypeId: number;
271
276
  readonly trackAlias: bigint;
272
277
  readonly groupId: bigint;
273
278
  readonly objectId: bigint;
274
279
  readonly publisherPriority: number;
280
+ readonly extensionHeadersLength?: bigint;
281
+ readonly extensionData?: Uint8Array;
275
282
  readonly objectStatus?: bigint;
276
283
  readonly payloadLength: number;
277
284
  readonly payload: Uint8Array;
278
285
  }
279
286
  interface FetchObjectPayload {
280
- readonly type: "object";
287
+ readonly type: 'object';
281
288
  readonly byteOffset: number;
282
289
  readonly payloadByteOffset: number;
283
290
  readonly groupId: bigint;
284
291
  readonly subgroupId: bigint;
285
292
  readonly objectId: bigint;
286
293
  readonly publisherPriority: number;
294
+ readonly extensionHeadersLength: bigint;
287
295
  readonly extensionData: Uint8Array;
288
296
  readonly payloadLength: number;
289
297
  readonly payload: Uint8Array;
290
298
  }
291
299
  interface FetchStream {
292
- readonly type: "fetch";
300
+ readonly type: 'fetch';
293
301
  readonly requestId: bigint;
294
302
  readonly objects: FetchObjectPayload[];
295
303
  }
296
304
  type Draft13DataStream = SubgroupStream | DatagramObject | FetchStream;
297
305
  interface SubgroupStreamHeader {
298
- readonly type: "subgroup_header";
306
+ readonly type: 'subgroup_header';
299
307
  readonly trackAlias: bigint;
300
308
  readonly groupId: bigint;
301
309
  readonly subgroupId: bigint;
302
310
  readonly publisherPriority: number;
303
311
  }
304
312
  interface FetchStreamHeader {
305
- readonly type: "fetch_header";
313
+ readonly type: 'fetch_header';
306
314
  readonly requestId: bigint;
307
315
  }
308
316
  type DataStreamHeader = SubgroupStreamHeader | FetchStreamHeader;
309
317
  type DataStreamEvent = DataStreamHeader | ObjectPayload;
310
318
 
311
- export type { AuthorizationToken as A, Draft13SubscribeError as B, Draft13SubscribeNamespace as C, Draft13DataStream as D, Draft13SubscribeNamespaceError as E, FetchStream as F, Draft13SubscribeNamespaceOk as G, Draft13SubscribeOk as H, Draft13SubscribeUpdate as I, Draft13TrackStatus as J, Draft13TrackStatusError as K, Draft13TrackStatusOk as L, Draft13Unannounce as M, Draft13Unsubscribe as N, Draft13UnsubscribeNamespace as O, FetchObjectPayload as P, FetchStreamHeader as Q, JoiningFetch as R, SubgroupStream as S, LargestLocation as T, ObjectPayload as U, StandaloneFetch as V, SubgroupStreamHeader as W, UnknownParam as X, Draft13Message as a, Draft13Params as b, Draft13SetupParams as c, DatagramObject as d, Draft13MessageType as e, DataStreamEvent as f, DataStreamHeader as g, Draft13Announce as h, Draft13AnnounceCancel as i, Draft13AnnounceError as j, Draft13AnnounceOk as k, Draft13BaseMessage as l, Draft13ClientSetup as m, Draft13Fetch as n, Draft13FetchCancel as o, Draft13FetchError as p, Draft13FetchOk as q, Draft13GoAway as r, Draft13MaxRequestId as s, Draft13Publish as t, Draft13PublishError as u, Draft13PublishOk as v, Draft13RequestsBlocked as w, Draft13ServerSetup as x, Draft13Subscribe as y, Draft13SubscribeDone as z };
319
+ export type { AuthorizationToken as A, Draft13SubscribeError as B, Draft13SubscribeNamespace as C, Draft13Message as D, Draft13SubscribeNamespaceError as E, FetchStream as F, Draft13SubscribeNamespaceOk as G, Draft13SubscribeOk as H, Draft13SubscribeUpdate as I, Draft13TrackStatus as J, Draft13TrackStatusError as K, Draft13TrackStatusOk as L, Draft13Unannounce as M, Draft13Unsubscribe as N, Draft13UnsubscribeNamespace as O, FetchObjectPayload as P, FetchStreamHeader as Q, JoiningFetch as R, SubgroupStream as S, LargestLocation as T, ObjectPayload as U, StandaloneFetch as V, SubgroupStreamHeader as W, UnknownParam as X, Draft13MessageType as a, Draft13DataStream as b, DatagramObject as c, DataStreamEvent as d, DataStreamHeader as e, Draft13Announce as f, Draft13AnnounceCancel as g, Draft13AnnounceError as h, Draft13AnnounceOk as i, Draft13BaseMessage as j, Draft13ClientSetup as k, Draft13Fetch as l, Draft13FetchCancel as m, Draft13FetchError as n, Draft13FetchOk as o, Draft13GoAway as p, Draft13MaxRequestId as q, Draft13Params as r, Draft13Publish as s, Draft13PublishError as t, Draft13PublishOk as u, Draft13RequestsBlocked as v, Draft13ServerSetup as w, Draft13SetupParams as x, Draft13Subscribe as y, Draft13SubscribeDone as z };
@@ -0,0 +1,25 @@
1
+ type Draft = '07' | '08' | '09' | '10' | '11' | '12' | '13' | '14' | '15' | '16' | '17';
2
+ interface BaseCodec<M> {
3
+ readonly draft: Draft;
4
+ encodeMessage(message: M): Uint8Array;
5
+ decodeMessage(bytes: Uint8Array): DecodeResult<M>;
6
+ }
7
+ interface CodecOptions {
8
+ draft: Draft;
9
+ }
10
+ type DecodeResult<T> = {
11
+ ok: true;
12
+ value: T;
13
+ bytesRead: number;
14
+ } | {
15
+ ok: false;
16
+ error: DecodeError;
17
+ };
18
+ type DecodeErrorCode = 'UNEXPECTED_END' | 'INVALID_VARINT' | 'UNKNOWN_MESSAGE_TYPE' | 'INVALID_PARAMETER' | 'CONSTRAINT_VIOLATION';
19
+ declare class DecodeError extends Error {
20
+ readonly code: DecodeErrorCode;
21
+ readonly offset: number;
22
+ constructor(code: DecodeErrorCode, message: string, offset: number);
23
+ }
24
+
25
+ export { type BaseCodec as B, type CodecOptions as C, DecodeError as D, type DecodeErrorCode as a, type DecodeResult as b, type Draft as c };
@@ -0,0 +1,25 @@
1
+ type Draft = '07' | '08' | '09' | '10' | '11' | '12' | '13' | '14' | '15' | '16' | '17';
2
+ interface BaseCodec<M> {
3
+ readonly draft: Draft;
4
+ encodeMessage(message: M): Uint8Array;
5
+ decodeMessage(bytes: Uint8Array): DecodeResult<M>;
6
+ }
7
+ interface CodecOptions {
8
+ draft: Draft;
9
+ }
10
+ type DecodeResult<T> = {
11
+ ok: true;
12
+ value: T;
13
+ bytesRead: number;
14
+ } | {
15
+ ok: false;
16
+ error: DecodeError;
17
+ };
18
+ type DecodeErrorCode = 'UNEXPECTED_END' | 'INVALID_VARINT' | 'UNKNOWN_MESSAGE_TYPE' | 'INVALID_PARAMETER' | 'CONSTRAINT_VIOLATION';
19
+ declare class DecodeError extends Error {
20
+ readonly code: DecodeErrorCode;
21
+ readonly offset: number;
22
+ constructor(code: DecodeErrorCode, message: string, offset: number);
23
+ }
24
+
25
+ export { type BaseCodec as B, type CodecOptions as C, DecodeError as D, type DecodeErrorCode as a, type DecodeResult as b, type Draft as c };