@moqtap/codec 0.2.0 → 0.2.2

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 (439) hide show
  1. package/dist/core/buffer-reader.d.ts +15 -0
  2. package/dist/core/buffer-reader.d.ts.map +1 -0
  3. package/dist/core/buffer-reader.js +98 -0
  4. package/dist/core/buffer-reader.js.map +1 -0
  5. package/dist/core/buffer-writer.d.ts +16 -0
  6. package/dist/core/buffer-writer.d.ts.map +1 -0
  7. package/dist/core/buffer-writer.js +86 -0
  8. package/dist/core/buffer-writer.js.map +1 -0
  9. package/dist/core/errors.d.ts +2 -0
  10. package/dist/core/errors.d.ts.map +1 -0
  11. package/dist/core/errors.js +2 -0
  12. package/dist/core/errors.js.map +1 -0
  13. package/dist/core/hex.d.ts +5 -0
  14. package/dist/core/hex.d.ts.map +1 -0
  15. package/dist/core/hex.js +17 -0
  16. package/dist/core/hex.js.map +1 -0
  17. package/dist/core/session-types.d.ts +99 -0
  18. package/dist/core/session-types.d.ts.map +1 -0
  19. package/dist/core/session-types.js +2 -0
  20. package/dist/core/session-types.js.map +1 -0
  21. package/dist/core/types.d.ts +235 -0
  22. package/dist/core/types.d.ts.map +1 -0
  23. package/dist/core/types.js +11 -0
  24. package/dist/core/types.js.map +1 -0
  25. package/dist/drafts/draft07/announce-fsm.d.ts +2 -0
  26. package/dist/drafts/draft07/announce-fsm.d.ts.map +1 -0
  27. package/dist/drafts/draft07/announce-fsm.js +2 -0
  28. package/dist/drafts/draft07/announce-fsm.js.map +1 -0
  29. package/dist/drafts/draft07/codec.d.ts +17 -0
  30. package/dist/drafts/draft07/codec.d.ts.map +1 -0
  31. package/dist/drafts/draft07/codec.js +722 -0
  32. package/dist/drafts/draft07/codec.js.map +1 -0
  33. package/dist/drafts/draft07/data-streams.d.ts +9 -0
  34. package/dist/drafts/draft07/data-streams.d.ts.map +1 -0
  35. package/dist/drafts/draft07/data-streams.js +228 -0
  36. package/dist/drafts/draft07/data-streams.js.map +1 -0
  37. package/dist/drafts/draft07/index.d.ts +14 -0
  38. package/dist/drafts/draft07/index.d.ts.map +1 -0
  39. package/dist/drafts/draft07/index.js +18 -0
  40. package/dist/drafts/draft07/index.js.map +1 -0
  41. package/dist/drafts/draft07/messages.d.ts +32 -0
  42. package/dist/drafts/draft07/messages.d.ts.map +1 -0
  43. package/dist/drafts/draft07/messages.js +42 -0
  44. package/dist/drafts/draft07/messages.js.map +1 -0
  45. package/dist/drafts/draft07/parameters.d.ts +4 -0
  46. package/dist/drafts/draft07/parameters.d.ts.map +1 -0
  47. package/dist/drafts/draft07/parameters.js +10 -0
  48. package/dist/drafts/draft07/parameters.js.map +1 -0
  49. package/dist/drafts/draft07/rules.d.ts +8 -0
  50. package/dist/drafts/draft07/rules.d.ts.map +1 -0
  51. package/dist/drafts/draft07/rules.js +95 -0
  52. package/dist/drafts/draft07/rules.js.map +1 -0
  53. package/dist/drafts/draft07/session-fsm.d.ts +38 -0
  54. package/dist/drafts/draft07/session-fsm.d.ts.map +1 -0
  55. package/dist/drafts/draft07/session-fsm.js +354 -0
  56. package/dist/drafts/draft07/session-fsm.js.map +1 -0
  57. package/dist/drafts/draft07/session.d.ts +4 -0
  58. package/dist/drafts/draft07/session.d.ts.map +1 -0
  59. package/dist/drafts/draft07/session.js +5 -0
  60. package/dist/drafts/draft07/session.js.map +1 -0
  61. package/dist/drafts/draft07/subscription-fsm.d.ts +2 -0
  62. package/dist/drafts/draft07/subscription-fsm.d.ts.map +1 -0
  63. package/dist/drafts/draft07/subscription-fsm.js +2 -0
  64. package/dist/drafts/draft07/subscription-fsm.js.map +1 -0
  65. package/dist/drafts/draft07/types.d.ts +61 -0
  66. package/dist/drafts/draft07/types.d.ts.map +1 -0
  67. package/dist/drafts/draft07/types.js +4 -0
  68. package/dist/drafts/draft07/types.js.map +1 -0
  69. package/dist/drafts/draft07/varint.d.ts +4 -0
  70. package/dist/drafts/draft07/varint.d.ts.map +1 -0
  71. package/dist/drafts/draft07/varint.js +22 -0
  72. package/dist/drafts/draft07/varint.js.map +1 -0
  73. package/dist/drafts/draft08/codec.d.ts +29 -0
  74. package/dist/drafts/draft08/codec.d.ts.map +1 -0
  75. package/dist/drafts/draft08/codec.js +729 -0
  76. package/dist/drafts/draft08/codec.js.map +1 -0
  77. package/dist/drafts/draft08/data-streams.d.ts +12 -0
  78. package/dist/drafts/draft08/data-streams.d.ts.map +1 -0
  79. package/dist/drafts/draft08/data-streams.js +345 -0
  80. package/dist/drafts/draft08/data-streams.js.map +1 -0
  81. package/dist/drafts/draft08/index.d.ts +9 -0
  82. package/dist/drafts/draft08/index.d.ts.map +1 -0
  83. package/dist/drafts/draft08/index.js +7 -0
  84. package/dist/drafts/draft08/index.js.map +1 -0
  85. package/dist/drafts/draft08/messages.d.ts +34 -0
  86. package/dist/drafts/draft08/messages.d.ts.map +1 -0
  87. package/dist/drafts/draft08/messages.js +66 -0
  88. package/dist/drafts/draft08/messages.js.map +1 -0
  89. package/dist/drafts/draft08/rules.d.ts +8 -0
  90. package/dist/drafts/draft08/rules.d.ts.map +1 -0
  91. package/dist/drafts/draft08/rules.js +83 -0
  92. package/dist/drafts/draft08/rules.js.map +1 -0
  93. package/dist/drafts/draft08/session-fsm.d.ts +47 -0
  94. package/dist/drafts/draft08/session-fsm.d.ts.map +1 -0
  95. package/dist/drafts/draft08/session-fsm.js +483 -0
  96. package/dist/drafts/draft08/session-fsm.js.map +1 -0
  97. package/dist/drafts/draft08/session.d.ts +5 -0
  98. package/dist/drafts/draft08/session.d.ts.map +1 -0
  99. package/dist/drafts/draft08/session.js +5 -0
  100. package/dist/drafts/draft08/session.js.map +1 -0
  101. package/dist/drafts/draft08/types.d.ts +268 -0
  102. package/dist/drafts/draft08/types.d.ts.map +1 -0
  103. package/dist/drafts/draft08/types.js +4 -0
  104. package/dist/drafts/draft08/types.js.map +1 -0
  105. package/dist/drafts/draft09/codec.d.ts +21 -0
  106. package/dist/drafts/draft09/codec.d.ts.map +1 -0
  107. package/dist/drafts/draft09/codec.js +721 -0
  108. package/dist/drafts/draft09/codec.js.map +1 -0
  109. package/dist/drafts/draft09/data-streams.d.ts +12 -0
  110. package/dist/drafts/draft09/data-streams.d.ts.map +1 -0
  111. package/dist/drafts/draft09/data-streams.js +307 -0
  112. package/dist/drafts/draft09/data-streams.js.map +1 -0
  113. package/dist/drafts/draft09/index.d.ts +9 -0
  114. package/dist/drafts/draft09/index.d.ts.map +1 -0
  115. package/dist/drafts/draft09/index.js +7 -0
  116. package/dist/drafts/draft09/index.js.map +1 -0
  117. package/dist/drafts/draft09/messages.d.ts +34 -0
  118. package/dist/drafts/draft09/messages.d.ts.map +1 -0
  119. package/dist/drafts/draft09/messages.js +66 -0
  120. package/dist/drafts/draft09/messages.js.map +1 -0
  121. package/dist/drafts/draft09/rules.d.ts +8 -0
  122. package/dist/drafts/draft09/rules.d.ts.map +1 -0
  123. package/dist/drafts/draft09/rules.js +83 -0
  124. package/dist/drafts/draft09/rules.js.map +1 -0
  125. package/dist/drafts/draft09/session-fsm.d.ts +47 -0
  126. package/dist/drafts/draft09/session-fsm.d.ts.map +1 -0
  127. package/dist/drafts/draft09/session-fsm.js +483 -0
  128. package/dist/drafts/draft09/session-fsm.js.map +1 -0
  129. package/dist/drafts/draft09/session.d.ts +5 -0
  130. package/dist/drafts/draft09/session.d.ts.map +1 -0
  131. package/dist/drafts/draft09/session.js +5 -0
  132. package/dist/drafts/draft09/session.js.map +1 -0
  133. package/dist/drafts/draft09/types.d.ts +268 -0
  134. package/dist/drafts/draft09/types.d.ts.map +1 -0
  135. package/dist/drafts/draft09/types.js +4 -0
  136. package/dist/drafts/draft09/types.js.map +1 -0
  137. package/dist/drafts/draft10/codec.d.ts +21 -0
  138. package/dist/drafts/draft10/codec.d.ts.map +1 -0
  139. package/dist/drafts/draft10/codec.js +721 -0
  140. package/dist/drafts/draft10/codec.js.map +1 -0
  141. package/dist/drafts/draft10/data-streams.d.ts +12 -0
  142. package/dist/drafts/draft10/data-streams.d.ts.map +1 -0
  143. package/dist/drafts/draft10/data-streams.js +307 -0
  144. package/dist/drafts/draft10/data-streams.js.map +1 -0
  145. package/dist/drafts/draft10/index.d.ts +9 -0
  146. package/dist/drafts/draft10/index.d.ts.map +1 -0
  147. package/dist/drafts/draft10/index.js +7 -0
  148. package/dist/drafts/draft10/index.js.map +1 -0
  149. package/dist/drafts/draft10/messages.d.ts +34 -0
  150. package/dist/drafts/draft10/messages.d.ts.map +1 -0
  151. package/dist/drafts/draft10/messages.js +66 -0
  152. package/dist/drafts/draft10/messages.js.map +1 -0
  153. package/dist/drafts/draft10/rules.d.ts +8 -0
  154. package/dist/drafts/draft10/rules.d.ts.map +1 -0
  155. package/dist/drafts/draft10/rules.js +83 -0
  156. package/dist/drafts/draft10/rules.js.map +1 -0
  157. package/dist/drafts/draft10/session-fsm.d.ts +47 -0
  158. package/dist/drafts/draft10/session-fsm.d.ts.map +1 -0
  159. package/dist/drafts/draft10/session-fsm.js +483 -0
  160. package/dist/drafts/draft10/session-fsm.js.map +1 -0
  161. package/dist/drafts/draft10/session.d.ts +5 -0
  162. package/dist/drafts/draft10/session.d.ts.map +1 -0
  163. package/dist/drafts/draft10/session.js +5 -0
  164. package/dist/drafts/draft10/session.js.map +1 -0
  165. package/dist/drafts/draft10/types.d.ts +268 -0
  166. package/dist/drafts/draft10/types.d.ts.map +1 -0
  167. package/dist/drafts/draft10/types.js +4 -0
  168. package/dist/drafts/draft10/types.js.map +1 -0
  169. package/dist/drafts/draft11/codec.d.ts +25 -0
  170. package/dist/drafts/draft11/codec.d.ts.map +1 -0
  171. package/dist/drafts/draft11/codec.js +775 -0
  172. package/dist/drafts/draft11/codec.js.map +1 -0
  173. package/dist/drafts/draft11/data-streams.d.ts +10 -0
  174. package/dist/drafts/draft11/data-streams.d.ts.map +1 -0
  175. package/dist/drafts/draft11/data-streams.js +253 -0
  176. package/dist/drafts/draft11/data-streams.js.map +1 -0
  177. package/dist/drafts/draft11/index.d.ts +9 -0
  178. package/dist/drafts/draft11/index.d.ts.map +1 -0
  179. package/dist/drafts/draft11/index.js +7 -0
  180. package/dist/drafts/draft11/index.js.map +1 -0
  181. package/dist/drafts/draft11/messages.d.ts +33 -0
  182. package/dist/drafts/draft11/messages.d.ts.map +1 -0
  183. package/dist/drafts/draft11/messages.js +65 -0
  184. package/dist/drafts/draft11/messages.js.map +1 -0
  185. package/dist/drafts/draft11/rules.d.ts +8 -0
  186. package/dist/drafts/draft11/rules.d.ts.map +1 -0
  187. package/dist/drafts/draft11/rules.js +88 -0
  188. package/dist/drafts/draft11/rules.js.map +1 -0
  189. package/dist/drafts/draft11/session-fsm.d.ts +52 -0
  190. package/dist/drafts/draft11/session-fsm.d.ts.map +1 -0
  191. package/dist/drafts/draft11/session-fsm.js +530 -0
  192. package/dist/drafts/draft11/session-fsm.js.map +1 -0
  193. package/dist/drafts/draft11/session.d.ts +5 -0
  194. package/dist/drafts/draft11/session.d.ts.map +1 -0
  195. package/dist/drafts/draft11/session.js +5 -0
  196. package/dist/drafts/draft11/session.js.map +1 -0
  197. package/dist/drafts/draft11/types.d.ts +266 -0
  198. package/dist/drafts/draft11/types.d.ts.map +1 -0
  199. package/dist/drafts/draft11/types.js +4 -0
  200. package/dist/drafts/draft11/types.js.map +1 -0
  201. package/dist/drafts/draft12/codec.d.ts +27 -0
  202. package/dist/drafts/draft12/codec.d.ts.map +1 -0
  203. package/dist/drafts/draft12/codec.js +918 -0
  204. package/dist/drafts/draft12/codec.js.map +1 -0
  205. package/dist/drafts/draft12/data-streams.d.ts +10 -0
  206. package/dist/drafts/draft12/data-streams.d.ts.map +1 -0
  207. package/dist/drafts/draft12/data-streams.js +254 -0
  208. package/dist/drafts/draft12/data-streams.js.map +1 -0
  209. package/dist/drafts/draft12/index.d.ts +9 -0
  210. package/dist/drafts/draft12/index.d.ts.map +1 -0
  211. package/dist/drafts/draft12/index.js +7 -0
  212. package/dist/drafts/draft12/index.js.map +1 -0
  213. package/dist/drafts/draft12/messages.d.ts +37 -0
  214. package/dist/drafts/draft12/messages.d.ts.map +1 -0
  215. package/dist/drafts/draft12/messages.js +77 -0
  216. package/dist/drafts/draft12/messages.js.map +1 -0
  217. package/dist/drafts/draft12/rules.d.ts +8 -0
  218. package/dist/drafts/draft12/rules.d.ts.map +1 -0
  219. package/dist/drafts/draft12/rules.js +94 -0
  220. package/dist/drafts/draft12/rules.js.map +1 -0
  221. package/dist/drafts/draft12/session-fsm.d.ts +55 -0
  222. package/dist/drafts/draft12/session-fsm.d.ts.map +1 -0
  223. package/dist/drafts/draft12/session-fsm.js +569 -0
  224. package/dist/drafts/draft12/session-fsm.js.map +1 -0
  225. package/dist/drafts/draft12/session.d.ts +5 -0
  226. package/dist/drafts/draft12/session.d.ts.map +1 -0
  227. package/dist/drafts/draft12/session.js +5 -0
  228. package/dist/drafts/draft12/session.js.map +1 -0
  229. package/dist/drafts/draft12/types.d.ts +294 -0
  230. package/dist/drafts/draft12/types.d.ts.map +1 -0
  231. package/dist/drafts/draft12/types.js +4 -0
  232. package/dist/drafts/draft12/types.js.map +1 -0
  233. package/dist/drafts/draft13/codec.d.ts +27 -0
  234. package/dist/drafts/draft13/codec.d.ts.map +1 -0
  235. package/dist/drafts/draft13/codec.js +1000 -0
  236. package/dist/drafts/draft13/codec.js.map +1 -0
  237. package/dist/drafts/draft13/data-streams.d.ts +10 -0
  238. package/dist/drafts/draft13/data-streams.d.ts.map +1 -0
  239. package/dist/drafts/draft13/data-streams.js +254 -0
  240. package/dist/drafts/draft13/data-streams.js.map +1 -0
  241. package/dist/drafts/draft13/index.d.ts +9 -0
  242. package/dist/drafts/draft13/index.d.ts.map +1 -0
  243. package/dist/drafts/draft13/index.js +7 -0
  244. package/dist/drafts/draft13/index.js.map +1 -0
  245. package/dist/drafts/draft13/messages.d.ts +38 -0
  246. package/dist/drafts/draft13/messages.d.ts.map +1 -0
  247. package/dist/drafts/draft13/messages.js +79 -0
  248. package/dist/drafts/draft13/messages.js.map +1 -0
  249. package/dist/drafts/draft13/rules.d.ts +8 -0
  250. package/dist/drafts/draft13/rules.d.ts.map +1 -0
  251. package/dist/drafts/draft13/rules.js +96 -0
  252. package/dist/drafts/draft13/rules.js.map +1 -0
  253. package/dist/drafts/draft13/session-fsm.d.ts +56 -0
  254. package/dist/drafts/draft13/session-fsm.d.ts.map +1 -0
  255. package/dist/drafts/draft13/session-fsm.js +581 -0
  256. package/dist/drafts/draft13/session-fsm.js.map +1 -0
  257. package/dist/drafts/draft13/session.d.ts +5 -0
  258. package/dist/drafts/draft13/session.d.ts.map +1 -0
  259. package/dist/drafts/draft13/session.js +5 -0
  260. package/dist/drafts/draft13/session.js.map +1 -0
  261. package/dist/drafts/draft13/types.d.ts +310 -0
  262. package/dist/drafts/draft13/types.d.ts.map +1 -0
  263. package/dist/drafts/draft13/types.js +4 -0
  264. package/dist/drafts/draft13/types.js.map +1 -0
  265. package/dist/drafts/draft14/codec.d.ts +34 -0
  266. package/dist/drafts/draft14/codec.d.ts.map +1 -0
  267. package/dist/drafts/draft14/codec.js +752 -0
  268. package/dist/drafts/draft14/codec.js.map +1 -0
  269. package/dist/drafts/draft14/data-streams.d.ts +56 -0
  270. package/dist/drafts/draft14/data-streams.d.ts.map +1 -0
  271. package/dist/drafts/draft14/data-streams.js +729 -0
  272. package/dist/drafts/draft14/data-streams.js.map +1 -0
  273. package/dist/drafts/draft14/index.d.ts +9 -0
  274. package/dist/drafts/draft14/index.d.ts.map +1 -0
  275. package/dist/drafts/draft14/index.js +7 -0
  276. package/dist/drafts/draft14/index.js.map +1 -0
  277. package/dist/drafts/draft14/messages.d.ts +36 -0
  278. package/dist/drafts/draft14/messages.d.ts.map +1 -0
  279. package/dist/drafts/draft14/messages.js +71 -0
  280. package/dist/drafts/draft14/messages.js.map +1 -0
  281. package/dist/drafts/draft14/rules.d.ts +8 -0
  282. package/dist/drafts/draft14/rules.d.ts.map +1 -0
  283. package/dist/drafts/draft14/rules.js +101 -0
  284. package/dist/drafts/draft14/rules.js.map +1 -0
  285. package/dist/drafts/draft14/session-fsm.d.ts +58 -0
  286. package/dist/drafts/draft14/session-fsm.d.ts.map +1 -0
  287. package/dist/drafts/draft14/session-fsm.js +648 -0
  288. package/dist/drafts/draft14/session-fsm.js.map +1 -0
  289. package/dist/drafts/draft14/session.d.ts +5 -0
  290. package/dist/drafts/draft14/session.d.ts.map +1 -0
  291. package/dist/drafts/draft14/session.js +5 -0
  292. package/dist/drafts/draft14/session.js.map +1 -0
  293. package/dist/drafts/draft14/types.d.ts +263 -0
  294. package/dist/drafts/draft14/types.d.ts.map +1 -0
  295. package/dist/drafts/draft14/types.js +4 -0
  296. package/dist/drafts/draft14/types.js.map +1 -0
  297. package/dist/drafts/draft15/codec.d.ts +33 -0
  298. package/dist/drafts/draft15/codec.d.ts.map +1 -0
  299. package/dist/drafts/draft15/codec.js +742 -0
  300. package/dist/drafts/draft15/codec.js.map +1 -0
  301. package/dist/drafts/draft15/data-streams.d.ts +45 -0
  302. package/dist/drafts/draft15/data-streams.d.ts.map +1 -0
  303. package/dist/drafts/draft15/data-streams.js +675 -0
  304. package/dist/drafts/draft15/data-streams.js.map +1 -0
  305. package/dist/drafts/draft15/index.d.ts +9 -0
  306. package/dist/drafts/draft15/index.d.ts.map +1 -0
  307. package/dist/drafts/draft15/index.js +7 -0
  308. package/dist/drafts/draft15/index.js.map +1 -0
  309. package/dist/drafts/draft15/messages.d.ts +31 -0
  310. package/dist/drafts/draft15/messages.d.ts.map +1 -0
  311. package/dist/drafts/draft15/messages.js +59 -0
  312. package/dist/drafts/draft15/messages.js.map +1 -0
  313. package/dist/drafts/draft15/rules.d.ts +8 -0
  314. package/dist/drafts/draft15/rules.d.ts.map +1 -0
  315. package/dist/drafts/draft15/rules.js +83 -0
  316. package/dist/drafts/draft15/rules.js.map +1 -0
  317. package/dist/drafts/draft15/session-fsm.d.ts +48 -0
  318. package/dist/drafts/draft15/session-fsm.d.ts.map +1 -0
  319. package/dist/drafts/draft15/session-fsm.js +479 -0
  320. package/dist/drafts/draft15/session-fsm.js.map +1 -0
  321. package/dist/drafts/draft15/session.d.ts +5 -0
  322. package/dist/drafts/draft15/session.d.ts.map +1 -0
  323. package/dist/drafts/draft15/session.js +5 -0
  324. package/dist/drafts/draft15/session.js.map +1 -0
  325. package/dist/drafts/draft15/types.d.ts +232 -0
  326. package/dist/drafts/draft15/types.d.ts.map +1 -0
  327. package/dist/drafts/draft15/types.js +4 -0
  328. package/dist/drafts/draft15/types.js.map +1 -0
  329. package/dist/drafts/draft16/codec.d.ts +29 -0
  330. package/dist/drafts/draft16/codec.d.ts.map +1 -0
  331. package/dist/drafts/draft16/codec.js +747 -0
  332. package/dist/drafts/draft16/codec.js.map +1 -0
  333. package/dist/drafts/draft16/data-streams.d.ts +34 -0
  334. package/dist/drafts/draft16/data-streams.d.ts.map +1 -0
  335. package/dist/drafts/draft16/data-streams.js +667 -0
  336. package/dist/drafts/draft16/data-streams.js.map +1 -0
  337. package/dist/drafts/draft16/index.d.ts +9 -0
  338. package/dist/drafts/draft16/index.d.ts.map +1 -0
  339. package/dist/drafts/draft16/index.js +7 -0
  340. package/dist/drafts/draft16/index.js.map +1 -0
  341. package/dist/drafts/draft16/messages.d.ts +32 -0
  342. package/dist/drafts/draft16/messages.d.ts.map +1 -0
  343. package/dist/drafts/draft16/messages.js +62 -0
  344. package/dist/drafts/draft16/messages.js.map +1 -0
  345. package/dist/drafts/draft16/rules.d.ts +8 -0
  346. package/dist/drafts/draft16/rules.d.ts.map +1 -0
  347. package/dist/drafts/draft16/rules.js +84 -0
  348. package/dist/drafts/draft16/rules.js.map +1 -0
  349. package/dist/drafts/draft16/session-fsm.d.ts +48 -0
  350. package/dist/drafts/draft16/session-fsm.d.ts.map +1 -0
  351. package/dist/drafts/draft16/session-fsm.js +474 -0
  352. package/dist/drafts/draft16/session-fsm.js.map +1 -0
  353. package/dist/drafts/draft16/session.d.ts +5 -0
  354. package/dist/drafts/draft16/session.d.ts.map +1 -0
  355. package/dist/drafts/draft16/session.js +5 -0
  356. package/dist/drafts/draft16/session.js.map +1 -0
  357. package/dist/drafts/draft16/types.d.ts +238 -0
  358. package/dist/drafts/draft16/types.d.ts.map +1 -0
  359. package/dist/drafts/draft16/types.js +4 -0
  360. package/dist/drafts/draft16/types.js.map +1 -0
  361. package/dist/drafts/draft17/codec.d.ts +29 -0
  362. package/dist/drafts/draft17/codec.d.ts.map +1 -0
  363. package/dist/drafts/draft17/codec.js +799 -0
  364. package/dist/drafts/draft17/codec.js.map +1 -0
  365. package/dist/drafts/draft17/data-streams.d.ts +13 -0
  366. package/dist/drafts/draft17/data-streams.d.ts.map +1 -0
  367. package/dist/drafts/draft17/data-streams.js +633 -0
  368. package/dist/drafts/draft17/data-streams.js.map +1 -0
  369. package/dist/drafts/draft17/index.d.ts +8 -0
  370. package/dist/drafts/draft17/index.d.ts.map +1 -0
  371. package/dist/drafts/draft17/index.js +6 -0
  372. package/dist/drafts/draft17/index.js.map +1 -0
  373. package/dist/drafts/draft17/messages.d.ts +25 -0
  374. package/dist/drafts/draft17/messages.d.ts.map +1 -0
  375. package/dist/drafts/draft17/messages.js +48 -0
  376. package/dist/drafts/draft17/messages.js.map +1 -0
  377. package/dist/drafts/draft17/rules.d.ts +8 -0
  378. package/dist/drafts/draft17/rules.d.ts.map +1 -0
  379. package/dist/drafts/draft17/rules.js +71 -0
  380. package/dist/drafts/draft17/rules.js.map +1 -0
  381. package/dist/drafts/draft17/session-fsm.d.ts +45 -0
  382. package/dist/drafts/draft17/session-fsm.d.ts.map +1 -0
  383. package/dist/drafts/draft17/session-fsm.js +328 -0
  384. package/dist/drafts/draft17/session-fsm.js.map +1 -0
  385. package/dist/drafts/draft17/session.d.ts +5 -0
  386. package/dist/drafts/draft17/session.d.ts.map +1 -0
  387. package/dist/drafts/draft17/session.js +6 -0
  388. package/dist/drafts/draft17/session.js.map +1 -0
  389. package/dist/drafts/draft17/types.d.ts +219 -0
  390. package/dist/drafts/draft17/types.d.ts.map +1 -0
  391. package/dist/drafts/draft17/types.js +3 -0
  392. package/dist/drafts/draft17/types.js.map +1 -0
  393. package/dist/index.d.ts +46 -38
  394. package/dist/index.d.ts.map +1 -0
  395. package/dist/index.js +93 -110
  396. package/dist/index.js.map +1 -0
  397. package/dist/session.d.ts +4 -8
  398. package/dist/session.d.ts.map +1 -0
  399. package/dist/session.js +32 -26
  400. package/dist/session.js.map +1 -0
  401. package/package.json +2 -2
  402. package/src/core/buffer-reader.ts +1 -1
  403. package/src/core/hex.ts +17 -0
  404. package/src/drafts/draft07/codec.ts +933 -991
  405. package/src/drafts/draft07/data-streams.ts +240 -0
  406. package/src/drafts/draft07/index.ts +89 -69
  407. package/src/drafts/draft07/messages.ts +42 -44
  408. package/src/drafts/draft07/rules.ts +101 -104
  409. package/src/drafts/draft07/types.ts +72 -0
  410. package/src/drafts/draft08/codec.ts +944 -1254
  411. package/src/drafts/draft08/data-streams.ts +359 -0
  412. package/src/drafts/draft08/types.ts +384 -377
  413. package/src/drafts/draft09/codec.ts +936 -1235
  414. package/src/drafts/draft09/data-streams.ts +332 -0
  415. package/src/drafts/draft09/types.ts +384 -376
  416. package/src/drafts/draft10/codec.ts +936 -1235
  417. package/src/drafts/draft10/data-streams.ts +332 -0
  418. package/src/drafts/draft10/types.ts +384 -376
  419. package/src/drafts/draft11/codec.ts +979 -1198
  420. package/src/drafts/draft11/data-streams.ts +269 -0
  421. package/src/drafts/draft11/types.ts +381 -375
  422. package/src/drafts/draft12/codec.ts +1113 -1354
  423. package/src/drafts/draft12/data-streams.ts +275 -0
  424. package/src/drafts/draft12/types.ts +419 -414
  425. package/src/drafts/draft13/codec.ts +1197 -1438
  426. package/src/drafts/draft13/data-streams.ts +275 -0
  427. package/src/drafts/draft13/types.ts +438 -433
  428. package/src/drafts/draft14/codec.ts +1034 -1480
  429. package/src/drafts/draft14/data-streams.ts +798 -0
  430. package/src/drafts/draft14/types.ts +381 -365
  431. package/src/drafts/draft15/codec.ts +969 -1661
  432. package/src/drafts/draft15/data-streams.ts +778 -0
  433. package/src/drafts/draft15/types.ts +339 -336
  434. package/src/drafts/draft16/codec.ts +957 -1623
  435. package/src/drafts/draft16/data-streams.ts +773 -0
  436. package/src/drafts/draft16/types.ts +357 -354
  437. package/src/drafts/draft17/codec.ts +962 -1621
  438. package/src/drafts/draft17/data-streams.ts +742 -0
  439. package/src/drafts/draft17/types.ts +313 -310
@@ -1,310 +1,313 @@
1
- // Draft-17 specific message types
2
-
3
- // Unknown parameter for passthrough
4
- export interface UnknownParam {
5
- readonly id: string; // e.g. "0x21"
6
- readonly length: number;
7
- readonly raw_hex: string;
8
- }
9
-
10
- // Setup options (KVP encoding, no count prefix)
11
- export interface Draft17SetupOptions {
12
- path?: string; // 0x01 odd
13
- max_auth_token_cache_size?: bigint; // 0x04 even
14
- authority?: string; // 0x05 odd
15
- moqt_implementation?: string; // 0x07 odd
16
- unknown?: UnknownParam[];
17
- }
18
-
19
- // Subscription filter parameter
20
- export interface SubscriptionFilter {
21
- readonly filter_type: bigint;
22
- readonly start_group?: bigint;
23
- readonly start_object?: bigint;
24
- readonly end_group?: bigint;
25
- }
26
-
27
- // Largest object location parameter
28
- export interface LargestObject {
29
- readonly group: bigint;
30
- readonly object: bigint;
31
- }
32
-
33
- // Version-specific parameters (delta-encoded types, count-prefixed)
34
- export interface Draft17Params {
35
- expires?: bigint; // 0x08 varint
36
- largest_object?: LargestObject; // 0x09 Location (2 bare varints)
37
- subscriber_priority?: bigint; // 0x20 uint8
38
- subscription_filter?: SubscriptionFilter; // 0x21 length-prefixed
39
- group_order?: bigint; // 0x22 uint8
40
- unknown?: UnknownParam[];
41
- }
42
-
43
- // Track properties (KVP encoding, no count prefix, read until end of payload)
44
- export interface Draft17TrackProperties {
45
- unknown?: UnknownParam[];
46
- }
47
-
48
- // Draft-17 message type tag union
49
- export type Draft17MessageType =
50
- | "setup"
51
- | "subscribe"
52
- | "subscribe_ok"
53
- | "request_update"
54
- | "publish"
55
- | "publish_ok"
56
- | "publish_done"
57
- | "publish_namespace"
58
- | "namespace"
59
- | "namespace_done"
60
- | "subscribe_namespace"
61
- | "publish_blocked"
62
- | "fetch"
63
- | "fetch_ok"
64
- | "track_status"
65
- | "request_ok"
66
- | "request_error"
67
- | "goaway";
68
-
69
- // Base
70
- export interface Draft17BaseMessage {
71
- readonly type: Draft17MessageType;
72
- }
73
-
74
- // Setup — single unified message (0x2F00)
75
- export interface Draft17Setup extends Draft17BaseMessage {
76
- readonly type: "setup";
77
- readonly options: Draft17SetupOptions;
78
- }
79
-
80
- // Subscribe — fields moved to parameters, added required_request_id_delta
81
- export interface Draft17Subscribe extends Draft17BaseMessage {
82
- readonly type: "subscribe";
83
- readonly request_id: bigint;
84
- readonly required_request_id_delta: bigint;
85
- readonly track_namespace: string[];
86
- readonly track_name: string;
87
- readonly parameters: Draft17Params;
88
- }
89
-
90
- export interface Draft17SubscribeOk extends Draft17BaseMessage {
91
- readonly type: "subscribe_ok";
92
- readonly track_alias: bigint;
93
- readonly parameters: Draft17Params;
94
- readonly track_properties: Draft17TrackProperties;
95
- }
96
-
97
- export interface Draft17RequestUpdate extends Draft17BaseMessage {
98
- readonly type: "request_update";
99
- readonly request_id: bigint;
100
- readonly required_request_id_delta: bigint;
101
- readonly parameters: Draft17Params;
102
- }
103
-
104
- // Publish
105
- export interface Draft17Publish extends Draft17BaseMessage {
106
- readonly type: "publish";
107
- readonly request_id: bigint;
108
- readonly required_request_id_delta: bigint;
109
- readonly track_namespace: string[];
110
- readonly track_name: string;
111
- readonly track_alias: bigint;
112
- readonly parameters: Draft17Params;
113
- readonly track_properties: Draft17TrackProperties;
114
- }
115
-
116
- export interface Draft17PublishOk extends Draft17BaseMessage {
117
- readonly type: "publish_ok";
118
- readonly parameters: Draft17Params;
119
- }
120
-
121
- export interface Draft17PublishDone extends Draft17BaseMessage {
122
- readonly type: "publish_done";
123
- readonly status_code: bigint;
124
- readonly stream_count: bigint;
125
- readonly reason_phrase: string;
126
- }
127
-
128
- // Namespace
129
- export interface Draft17PublishNamespace extends Draft17BaseMessage {
130
- readonly type: "publish_namespace";
131
- readonly request_id: bigint;
132
- readonly required_request_id_delta: bigint;
133
- readonly track_namespace: string[];
134
- readonly parameters: Draft17Params;
135
- }
136
-
137
- export interface Draft17Namespace extends Draft17BaseMessage {
138
- readonly type: "namespace";
139
- readonly namespace_suffix: string[];
140
- }
141
-
142
- export interface Draft17NamespaceDone extends Draft17BaseMessage {
143
- readonly type: "namespace_done";
144
- readonly namespace_suffix: string[];
145
- }
146
-
147
- export interface Draft17SubscribeNamespace extends Draft17BaseMessage {
148
- readonly type: "subscribe_namespace";
149
- readonly request_id: bigint;
150
- readonly required_request_id_delta: bigint;
151
- readonly namespace_prefix: string[];
152
- readonly subscribe_options: bigint;
153
- readonly parameters: Draft17Params;
154
- }
155
-
156
- // New in draft-17: PUBLISH_BLOCKED
157
- export interface Draft17PublishBlocked extends Draft17BaseMessage {
158
- readonly type: "publish_blocked";
159
- readonly namespace_suffix: string[];
160
- readonly track_name: string;
161
- }
162
-
163
- // Fetch
164
- export interface StandaloneFetch {
165
- readonly track_namespace: string[];
166
- readonly track_name: string;
167
- readonly start_group: bigint;
168
- readonly start_object: bigint;
169
- readonly end_group: bigint;
170
- readonly end_object: bigint;
171
- }
172
-
173
- export interface JoiningFetch {
174
- readonly joining_request_id: bigint;
175
- readonly joining_start: bigint;
176
- }
177
-
178
- export interface Draft17Fetch extends Draft17BaseMessage {
179
- readonly type: "fetch";
180
- readonly request_id: bigint;
181
- readonly required_request_id_delta: bigint;
182
- readonly fetch_type: bigint;
183
- readonly standalone?: StandaloneFetch;
184
- readonly joining?: JoiningFetch;
185
- readonly parameters: Draft17Params;
186
- }
187
-
188
- export interface Draft17FetchOk extends Draft17BaseMessage {
189
- readonly type: "fetch_ok";
190
- readonly end_of_track: number; // uint8
191
- readonly end_group: bigint;
192
- readonly end_object: bigint;
193
- readonly parameters: Draft17Params;
194
- readonly track_properties: Draft17TrackProperties;
195
- }
196
-
197
- // Track Status — same format as subscribe in draft-17
198
- export interface Draft17TrackStatus extends Draft17BaseMessage {
199
- readonly type: "track_status";
200
- readonly request_id: bigint;
201
- readonly required_request_id_delta: bigint;
202
- readonly track_namespace: string[];
203
- readonly track_name: string;
204
- readonly parameters: Draft17Params;
205
- }
206
-
207
- // Consolidated response messages — no request_id in draft-17
208
- export interface Draft17RequestOk extends Draft17BaseMessage {
209
- readonly type: "request_ok";
210
- readonly parameters: Draft17Params;
211
- }
212
-
213
- export interface Draft17RequestError extends Draft17BaseMessage {
214
- readonly type: "request_error";
215
- readonly error_code: bigint;
216
- readonly retry_interval: bigint;
217
- readonly reason_phrase: string;
218
- }
219
-
220
- // Session Control
221
- export interface Draft17GoAway extends Draft17BaseMessage {
222
- readonly type: "goaway";
223
- readonly new_session_uri: string;
224
- readonly timeout: bigint;
225
- }
226
-
227
- // Union of all draft-17 control messages
228
- export type Draft17Message =
229
- | Draft17Setup
230
- | Draft17Subscribe
231
- | Draft17SubscribeOk
232
- | Draft17RequestUpdate
233
- | Draft17Publish
234
- | Draft17PublishOk
235
- | Draft17PublishDone
236
- | Draft17PublishNamespace
237
- | Draft17Namespace
238
- | Draft17NamespaceDone
239
- | Draft17SubscribeNamespace
240
- | Draft17PublishBlocked
241
- | Draft17Fetch
242
- | Draft17FetchOk
243
- | Draft17TrackStatus
244
- | Draft17RequestOk
245
- | Draft17RequestError
246
- | Draft17GoAway;
247
-
248
- // Data stream types (same as draft-16)
249
- export interface ObjectPayload {
250
- readonly type: "object";
251
- readonly objectId: bigint;
252
- readonly payloadLength: number;
253
- readonly status?: bigint;
254
- readonly payload: Uint8Array;
255
- }
256
-
257
- export interface SubgroupStream {
258
- readonly type: "subgroup";
259
- readonly headerType: number;
260
- readonly trackAlias: bigint;
261
- readonly groupId: bigint;
262
- readonly subgroupId: bigint;
263
- readonly publisherPriority: number;
264
- readonly objects: ObjectPayload[];
265
- }
266
-
267
- export interface DatagramObject {
268
- readonly type: "datagram";
269
- readonly datagramType: number;
270
- readonly trackAlias: bigint;
271
- readonly groupId: bigint;
272
- readonly objectId: bigint;
273
- readonly publisherPriority: number;
274
- readonly endOfGroup?: boolean;
275
- readonly objectStatus?: bigint;
276
- readonly payloadLength: number;
277
- readonly payload: Uint8Array;
278
- }
279
-
280
- export interface FetchObjectPayload extends ObjectPayload {
281
- readonly serializationFlags: number;
282
- readonly groupId: bigint;
283
- readonly subgroupId: bigint;
284
- readonly publisherPriority: number;
285
- }
286
-
287
- export interface FetchStream {
288
- readonly type: "fetch";
289
- readonly requestId: bigint;
290
- readonly objects: FetchObjectPayload[];
291
- }
292
-
293
- export type Draft17DataStream = SubgroupStream | DatagramObject | FetchStream;
294
-
295
- // Streaming data stream decoder types
296
- export interface SubgroupStreamHeader {
297
- readonly type: "subgroup_header";
298
- readonly trackAlias: bigint;
299
- readonly groupId: bigint;
300
- readonly subgroupId: bigint;
301
- readonly publisherPriority: number;
302
- }
303
-
304
- export interface FetchStreamHeader {
305
- readonly type: "fetch_header";
306
- readonly requestId: bigint;
307
- }
308
-
309
- export type DataStreamHeader = SubgroupStreamHeader | FetchStreamHeader;
310
- export type DataStreamEvent = DataStreamHeader | ObjectPayload;
1
+ // Draft-17 specific message types
2
+
3
+ // Unknown parameter for passthrough
4
+ export interface UnknownParam {
5
+ readonly id: string; // e.g. "0x21"
6
+ readonly length: number;
7
+ readonly raw_hex: string;
8
+ }
9
+
10
+ // Setup options (KVP encoding, no count prefix)
11
+ export interface Draft17SetupOptions {
12
+ path?: string; // 0x01 odd
13
+ max_auth_token_cache_size?: bigint; // 0x04 even
14
+ authority?: string; // 0x05 odd
15
+ moqt_implementation?: string; // 0x07 odd
16
+ unknown?: UnknownParam[];
17
+ }
18
+
19
+ // Subscription filter parameter
20
+ export interface SubscriptionFilter {
21
+ readonly filter_type: bigint;
22
+ readonly start_group?: bigint;
23
+ readonly start_object?: bigint;
24
+ readonly end_group?: bigint;
25
+ }
26
+
27
+ // Largest object location parameter
28
+ export interface LargestObject {
29
+ readonly group: bigint;
30
+ readonly object: bigint;
31
+ }
32
+
33
+ // Version-specific parameters (delta-encoded types, count-prefixed)
34
+ export interface Draft17Params {
35
+ expires?: bigint; // 0x08 varint
36
+ largest_object?: LargestObject; // 0x09 Location (2 bare varints)
37
+ subscriber_priority?: bigint; // 0x20 uint8
38
+ subscription_filter?: SubscriptionFilter; // 0x21 length-prefixed
39
+ group_order?: bigint; // 0x22 uint8
40
+ unknown?: UnknownParam[];
41
+ }
42
+
43
+ // Track properties (KVP encoding, no count prefix, read until end of payload)
44
+ export interface Draft17TrackProperties {
45
+ unknown?: UnknownParam[];
46
+ }
47
+
48
+ // Draft-17 message type tag union
49
+ export type Draft17MessageType =
50
+ | "setup"
51
+ | "subscribe"
52
+ | "subscribe_ok"
53
+ | "request_update"
54
+ | "publish"
55
+ | "publish_ok"
56
+ | "publish_done"
57
+ | "publish_namespace"
58
+ | "namespace"
59
+ | "namespace_done"
60
+ | "subscribe_namespace"
61
+ | "publish_blocked"
62
+ | "fetch"
63
+ | "fetch_ok"
64
+ | "track_status"
65
+ | "request_ok"
66
+ | "request_error"
67
+ | "goaway";
68
+
69
+ // Base
70
+ export interface Draft17BaseMessage {
71
+ readonly type: Draft17MessageType;
72
+ }
73
+
74
+ // Setup — single unified message (0x2F00)
75
+ export interface Draft17Setup extends Draft17BaseMessage {
76
+ readonly type: "setup";
77
+ readonly options: Draft17SetupOptions;
78
+ }
79
+
80
+ // Subscribe — fields moved to parameters, added required_request_id_delta
81
+ export interface Draft17Subscribe extends Draft17BaseMessage {
82
+ readonly type: "subscribe";
83
+ readonly request_id: bigint;
84
+ readonly required_request_id_delta: bigint;
85
+ readonly track_namespace: string[];
86
+ readonly track_name: string;
87
+ readonly parameters: Draft17Params;
88
+ }
89
+
90
+ export interface Draft17SubscribeOk extends Draft17BaseMessage {
91
+ readonly type: "subscribe_ok";
92
+ readonly track_alias: bigint;
93
+ readonly parameters: Draft17Params;
94
+ readonly track_properties: Draft17TrackProperties;
95
+ }
96
+
97
+ export interface Draft17RequestUpdate extends Draft17BaseMessage {
98
+ readonly type: "request_update";
99
+ readonly request_id: bigint;
100
+ readonly required_request_id_delta: bigint;
101
+ readonly parameters: Draft17Params;
102
+ }
103
+
104
+ // Publish
105
+ export interface Draft17Publish extends Draft17BaseMessage {
106
+ readonly type: "publish";
107
+ readonly request_id: bigint;
108
+ readonly required_request_id_delta: bigint;
109
+ readonly track_namespace: string[];
110
+ readonly track_name: string;
111
+ readonly track_alias: bigint;
112
+ readonly parameters: Draft17Params;
113
+ readonly track_properties: Draft17TrackProperties;
114
+ }
115
+
116
+ export interface Draft17PublishOk extends Draft17BaseMessage {
117
+ readonly type: "publish_ok";
118
+ readonly parameters: Draft17Params;
119
+ }
120
+
121
+ export interface Draft17PublishDone extends Draft17BaseMessage {
122
+ readonly type: "publish_done";
123
+ readonly status_code: bigint;
124
+ readonly stream_count: bigint;
125
+ readonly reason_phrase: string;
126
+ }
127
+
128
+ // Namespace
129
+ export interface Draft17PublishNamespace extends Draft17BaseMessage {
130
+ readonly type: "publish_namespace";
131
+ readonly request_id: bigint;
132
+ readonly required_request_id_delta: bigint;
133
+ readonly track_namespace: string[];
134
+ readonly parameters: Draft17Params;
135
+ }
136
+
137
+ export interface Draft17Namespace extends Draft17BaseMessage {
138
+ readonly type: "namespace";
139
+ readonly namespace_suffix: string[];
140
+ }
141
+
142
+ export interface Draft17NamespaceDone extends Draft17BaseMessage {
143
+ readonly type: "namespace_done";
144
+ readonly namespace_suffix: string[];
145
+ }
146
+
147
+ export interface Draft17SubscribeNamespace extends Draft17BaseMessage {
148
+ readonly type: "subscribe_namespace";
149
+ readonly request_id: bigint;
150
+ readonly required_request_id_delta: bigint;
151
+ readonly namespace_prefix: string[];
152
+ readonly subscribe_options: bigint;
153
+ readonly parameters: Draft17Params;
154
+ }
155
+
156
+ // New in draft-17: PUBLISH_BLOCKED
157
+ export interface Draft17PublishBlocked extends Draft17BaseMessage {
158
+ readonly type: "publish_blocked";
159
+ readonly namespace_suffix: string[];
160
+ readonly track_name: string;
161
+ }
162
+
163
+ // Fetch
164
+ export interface StandaloneFetch {
165
+ readonly track_namespace: string[];
166
+ readonly track_name: string;
167
+ readonly start_group: bigint;
168
+ readonly start_object: bigint;
169
+ readonly end_group: bigint;
170
+ readonly end_object: bigint;
171
+ }
172
+
173
+ export interface JoiningFetch {
174
+ readonly joining_request_id: bigint;
175
+ readonly joining_start: bigint;
176
+ }
177
+
178
+ export interface Draft17Fetch extends Draft17BaseMessage {
179
+ readonly type: "fetch";
180
+ readonly request_id: bigint;
181
+ readonly required_request_id_delta: bigint;
182
+ readonly fetch_type: bigint;
183
+ readonly standalone?: StandaloneFetch;
184
+ readonly joining?: JoiningFetch;
185
+ readonly parameters: Draft17Params;
186
+ }
187
+
188
+ export interface Draft17FetchOk extends Draft17BaseMessage {
189
+ readonly type: "fetch_ok";
190
+ readonly end_of_track: number; // uint8
191
+ readonly end_group: bigint;
192
+ readonly end_object: bigint;
193
+ readonly parameters: Draft17Params;
194
+ readonly track_properties: Draft17TrackProperties;
195
+ }
196
+
197
+ // Track Status — same format as subscribe in draft-17
198
+ export interface Draft17TrackStatus extends Draft17BaseMessage {
199
+ readonly type: "track_status";
200
+ readonly request_id: bigint;
201
+ readonly required_request_id_delta: bigint;
202
+ readonly track_namespace: string[];
203
+ readonly track_name: string;
204
+ readonly parameters: Draft17Params;
205
+ }
206
+
207
+ // Consolidated response messages — no request_id in draft-17
208
+ export interface Draft17RequestOk extends Draft17BaseMessage {
209
+ readonly type: "request_ok";
210
+ readonly parameters: Draft17Params;
211
+ }
212
+
213
+ export interface Draft17RequestError extends Draft17BaseMessage {
214
+ readonly type: "request_error";
215
+ readonly error_code: bigint;
216
+ readonly retry_interval: bigint;
217
+ readonly reason_phrase: string;
218
+ }
219
+
220
+ // Session Control
221
+ export interface Draft17GoAway extends Draft17BaseMessage {
222
+ readonly type: "goaway";
223
+ readonly new_session_uri: string;
224
+ readonly timeout: bigint;
225
+ }
226
+
227
+ // Union of all draft-17 control messages
228
+ export type Draft17Message =
229
+ | Draft17Setup
230
+ | Draft17Subscribe
231
+ | Draft17SubscribeOk
232
+ | Draft17RequestUpdate
233
+ | Draft17Publish
234
+ | Draft17PublishOk
235
+ | Draft17PublishDone
236
+ | Draft17PublishNamespace
237
+ | Draft17Namespace
238
+ | Draft17NamespaceDone
239
+ | Draft17SubscribeNamespace
240
+ | Draft17PublishBlocked
241
+ | Draft17Fetch
242
+ | Draft17FetchOk
243
+ | Draft17TrackStatus
244
+ | Draft17RequestOk
245
+ | Draft17RequestError
246
+ | Draft17GoAway;
247
+
248
+ // Data stream types (same as draft-16)
249
+ export interface ObjectPayload {
250
+ readonly type: "object";
251
+ readonly byteOffset: number;
252
+ readonly payloadByteOffset: number;
253
+ readonly objectId: bigint;
254
+ readonly payloadLength: number;
255
+ readonly status?: bigint;
256
+ readonly extensionData: Uint8Array;
257
+ readonly payload: Uint8Array;
258
+ }
259
+
260
+ export interface SubgroupStream {
261
+ readonly type: "subgroup";
262
+ readonly headerType: number;
263
+ readonly trackAlias: bigint;
264
+ readonly groupId: bigint;
265
+ readonly subgroupId: bigint;
266
+ readonly publisherPriority: number;
267
+ readonly objects: ObjectPayload[];
268
+ }
269
+
270
+ export interface DatagramObject {
271
+ readonly type: "datagram";
272
+ readonly datagramType: number;
273
+ readonly trackAlias: bigint;
274
+ readonly groupId: bigint;
275
+ readonly objectId: bigint;
276
+ readonly publisherPriority: number;
277
+ readonly endOfGroup?: boolean;
278
+ readonly objectStatus?: bigint;
279
+ readonly payloadLength: number;
280
+ readonly payload: Uint8Array;
281
+ }
282
+
283
+ export interface FetchObjectPayload extends ObjectPayload {
284
+ readonly serializationFlags: number;
285
+ readonly groupId: bigint;
286
+ readonly subgroupId: bigint;
287
+ readonly publisherPriority: number;
288
+ }
289
+
290
+ export interface FetchStream {
291
+ readonly type: "fetch";
292
+ readonly requestId: bigint;
293
+ readonly objects: FetchObjectPayload[];
294
+ }
295
+
296
+ export type Draft17DataStream = SubgroupStream | DatagramObject | FetchStream;
297
+
298
+ // Streaming data stream decoder types
299
+ export interface SubgroupStreamHeader {
300
+ readonly type: "subgroup_header";
301
+ readonly trackAlias: bigint;
302
+ readonly groupId: bigint;
303
+ readonly subgroupId: bigint;
304
+ readonly publisherPriority: number;
305
+ }
306
+
307
+ export interface FetchStreamHeader {
308
+ readonly type: "fetch_header";
309
+ readonly requestId: bigint;
310
+ }
311
+
312
+ export type DataStreamHeader = SubgroupStreamHeader | FetchStreamHeader;
313
+ export type DataStreamEvent = DataStreamHeader | ObjectPayload;