@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,376 +1,384 @@
1
- // Draft-09 specific message types
2
- // Field names use snake_case to match test vector JSON
3
-
4
- // Unknown parameter for passthrough
5
- export interface UnknownParam {
6
- readonly id: string; // e.g. "0x21"
7
- readonly length: number;
8
- readonly raw_hex: string;
9
- }
10
-
11
- // Setup parameters (PATH, MAX_SUBSCRIBE_ID)
12
- export interface Draft10SetupParams {
13
- path?: string; // 0x01
14
- max_subscribe_id?: bigint; // 0x02
15
- unknown?: UnknownParam[];
16
- }
17
-
18
- // Version-specific parameters
19
- export interface Draft10Params {
20
- authorization_info?: string; // 0x02
21
- delivery_timeout?: bigint; // 0x03
22
- max_cache_duration?: bigint; // 0x04
23
- unknown?: UnknownParam[];
24
- }
25
-
26
- // Draft-09 message type tag union
27
- export type Draft10MessageType =
28
- | "client_setup"
29
- | "server_setup"
30
- | "subscribe"
31
- | "subscribe_ok"
32
- | "subscribe_error"
33
- | "subscribe_update"
34
- | "subscribe_done"
35
- | "unsubscribe"
36
- | "announce"
37
- | "announce_ok"
38
- | "announce_error"
39
- | "unannounce"
40
- | "announce_cancel"
41
- | "subscribe_announces"
42
- | "subscribe_announces_ok"
43
- | "subscribe_announces_error"
44
- | "unsubscribe_announces"
45
- | "fetch"
46
- | "fetch_ok"
47
- | "fetch_error"
48
- | "fetch_cancel"
49
- | "track_status_request"
50
- | "track_status"
51
- | "goaway"
52
- | "max_subscribe_id"
53
- | "subscribes_blocked";
54
-
55
- // Base
56
- export interface Draft10BaseMessage {
57
- readonly type: Draft10MessageType;
58
- }
59
-
60
- // Setup
61
- export interface Draft10ClientSetup extends Draft10BaseMessage {
62
- readonly type: "client_setup";
63
- readonly supported_versions: bigint[];
64
- readonly parameters: Draft10SetupParams;
65
- }
66
-
67
- export interface Draft10ServerSetup extends Draft10BaseMessage {
68
- readonly type: "server_setup";
69
- readonly selected_version: bigint;
70
- readonly parameters: Draft10SetupParams;
71
- }
72
-
73
- // Subscribe
74
- export interface Draft10Subscribe extends Draft10BaseMessage {
75
- readonly type: "subscribe";
76
- readonly subscribe_id: bigint;
77
- readonly track_alias: bigint;
78
- readonly track_namespace: string[];
79
- readonly track_name: string;
80
- readonly subscriber_priority: number; // uint8
81
- readonly group_order: number; // uint8
82
- readonly filter_type: bigint;
83
- readonly start_group?: bigint;
84
- readonly start_object?: bigint;
85
- readonly end_group?: bigint;
86
- readonly parameters: Draft10Params;
87
- }
88
-
89
- export interface Draft10SubscribeOk extends Draft10BaseMessage {
90
- readonly type: "subscribe_ok";
91
- readonly subscribe_id: bigint;
92
- readonly expires: bigint;
93
- readonly group_order: number; // uint8
94
- readonly content_exists: number; // uint8
95
- readonly largest_group_id?: bigint;
96
- readonly largest_object_id?: bigint;
97
- readonly parameters: Draft10Params;
98
- }
99
-
100
- export interface Draft10SubscribeError extends Draft10BaseMessage {
101
- readonly type: "subscribe_error";
102
- readonly subscribe_id: bigint;
103
- readonly error_code: bigint;
104
- readonly reason_phrase: string;
105
- readonly track_alias: bigint;
106
- }
107
-
108
- export interface Draft10SubscribeDone extends Draft10BaseMessage {
109
- readonly type: "subscribe_done";
110
- readonly subscribe_id: bigint;
111
- readonly status_code: bigint;
112
- readonly stream_count: bigint;
113
- readonly reason_phrase: string;
114
- }
115
-
116
- export interface Draft10SubscribeUpdate extends Draft10BaseMessage {
117
- readonly type: "subscribe_update";
118
- readonly subscribe_id: bigint;
119
- readonly start_group: bigint;
120
- readonly start_object: bigint;
121
- readonly end_group: bigint;
122
- readonly subscriber_priority: number; // uint8
123
- readonly parameters: Draft10Params;
124
- }
125
-
126
- export interface Draft10Unsubscribe extends Draft10BaseMessage {
127
- readonly type: "unsubscribe";
128
- readonly subscribe_id: bigint;
129
- }
130
-
131
- // Announce
132
- export interface Draft10Announce extends Draft10BaseMessage {
133
- readonly type: "announce";
134
- readonly track_namespace: string[];
135
- readonly parameters: Draft10Params;
136
- }
137
-
138
- export interface Draft10AnnounceOk extends Draft10BaseMessage {
139
- readonly type: "announce_ok";
140
- readonly track_namespace: string[];
141
- }
142
-
143
- export interface Draft10AnnounceError extends Draft10BaseMessage {
144
- readonly type: "announce_error";
145
- readonly track_namespace: string[];
146
- readonly error_code: bigint;
147
- readonly reason_phrase: string;
148
- }
149
-
150
- export interface Draft10Unannounce extends Draft10BaseMessage {
151
- readonly type: "unannounce";
152
- readonly track_namespace: string[];
153
- }
154
-
155
- export interface Draft10AnnounceCancel extends Draft10BaseMessage {
156
- readonly type: "announce_cancel";
157
- readonly track_namespace: string[];
158
- readonly error_code: bigint;
159
- readonly reason_phrase: string;
160
- }
161
-
162
- // Subscribe Announces
163
- export interface Draft10SubscribeAnnounces extends Draft10BaseMessage {
164
- readonly type: "subscribe_announces";
165
- readonly track_namespace_prefix: string[];
166
- readonly parameters: Draft10Params;
167
- }
168
-
169
- export interface Draft10SubscribeAnnouncesOk extends Draft10BaseMessage {
170
- readonly type: "subscribe_announces_ok";
171
- readonly track_namespace_prefix: string[];
172
- }
173
-
174
- export interface Draft10SubscribeAnnouncesError extends Draft10BaseMessage {
175
- readonly type: "subscribe_announces_error";
176
- readonly track_namespace_prefix: string[];
177
- readonly error_code: bigint;
178
- readonly reason_phrase: string;
179
- }
180
-
181
- export interface Draft10UnsubscribeAnnounces extends Draft10BaseMessage {
182
- readonly type: "unsubscribe_announces";
183
- readonly track_namespace_prefix: string[];
184
- }
185
-
186
- // Fetch
187
- export interface StandaloneFetch {
188
- readonly track_namespace: string[];
189
- readonly track_name: string;
190
- readonly start_group: bigint;
191
- readonly start_object: bigint;
192
- readonly end_group: bigint;
193
- readonly end_object: bigint;
194
- }
195
-
196
- export interface JoiningFetch {
197
- readonly joining_subscribe_id: bigint;
198
- readonly preceding_group_offset: bigint;
199
- }
200
-
201
- export interface Draft10Fetch extends Draft10BaseMessage {
202
- readonly type: "fetch";
203
- readonly subscribe_id: bigint;
204
- readonly subscriber_priority: number; // uint8
205
- readonly group_order: number; // uint8
206
- readonly fetch_type: bigint;
207
- readonly standalone?: StandaloneFetch;
208
- readonly joining?: JoiningFetch;
209
- readonly parameters: Draft10Params;
210
- }
211
-
212
- export interface Draft10FetchOk extends Draft10BaseMessage {
213
- readonly type: "fetch_ok";
214
- readonly subscribe_id: bigint;
215
- readonly group_order: number; // uint8
216
- readonly end_of_track: number; // uint8
217
- readonly largest_group_id: bigint;
218
- readonly largest_object_id: bigint;
219
- readonly parameters: Draft10Params;
220
- }
221
-
222
- export interface Draft10FetchError extends Draft10BaseMessage {
223
- readonly type: "fetch_error";
224
- readonly subscribe_id: bigint;
225
- readonly error_code: bigint;
226
- readonly reason_phrase: string;
227
- }
228
-
229
- export interface Draft10FetchCancel extends Draft10BaseMessage {
230
- readonly type: "fetch_cancel";
231
- readonly subscribe_id: bigint;
232
- }
233
-
234
- // Track Status
235
- export interface Draft10TrackStatusRequest extends Draft10BaseMessage {
236
- readonly type: "track_status_request";
237
- readonly track_namespace: string[];
238
- readonly track_name: string;
239
- }
240
-
241
- export interface Draft10TrackStatus extends Draft10BaseMessage {
242
- readonly type: "track_status";
243
- readonly track_namespace: string[];
244
- readonly track_name: string;
245
- readonly status_code: bigint;
246
- readonly last_group_id: bigint;
247
- readonly last_object_id: bigint;
248
- }
249
-
250
- // Session Control
251
- export interface Draft10GoAway extends Draft10BaseMessage {
252
- readonly type: "goaway";
253
- readonly new_session_uri: string;
254
- }
255
-
256
- export interface Draft10MaxSubscribeId extends Draft10BaseMessage {
257
- readonly type: "max_subscribe_id";
258
- readonly subscribe_id: bigint;
259
- }
260
-
261
- export interface Draft10SubscribesBlocked extends Draft10BaseMessage {
262
- readonly type: "subscribes_blocked";
263
- readonly maximum_subscribe_id: bigint;
264
- }
265
-
266
- // Union of all draft-10 control messages
267
- export type Draft10Message =
268
- | Draft10ClientSetup
269
- | Draft10ServerSetup
270
- | Draft10Subscribe
271
- | Draft10SubscribeOk
272
- | Draft10SubscribeError
273
- | Draft10SubscribeUpdate
274
- | Draft10SubscribeDone
275
- | Draft10Unsubscribe
276
- | Draft10Announce
277
- | Draft10AnnounceOk
278
- | Draft10AnnounceError
279
- | Draft10Unannounce
280
- | Draft10AnnounceCancel
281
- | Draft10SubscribeAnnounces
282
- | Draft10SubscribeAnnouncesOk
283
- | Draft10SubscribeAnnouncesError
284
- | Draft10UnsubscribeAnnounces
285
- | Draft10Fetch
286
- | Draft10FetchOk
287
- | Draft10FetchError
288
- | Draft10FetchCancel
289
- | Draft10TrackStatusRequest
290
- | Draft10TrackStatus
291
- | Draft10GoAway
292
- | Draft10MaxSubscribeId
293
- | Draft10SubscribesBlocked;
294
-
295
- // Data stream types
296
- export interface ObjectPayload {
297
- readonly type: "object";
298
- readonly objectId: bigint;
299
- readonly extensionHeadersLength: bigint;
300
- readonly payloadLength: number;
301
- readonly status?: bigint;
302
- readonly payload: Uint8Array;
303
- }
304
-
305
- export interface SubgroupStream {
306
- readonly type: "subgroup";
307
- readonly streamTypeId: 0x04;
308
- readonly trackAlias: bigint;
309
- readonly groupId: bigint;
310
- readonly subgroupId: bigint;
311
- readonly publisherPriority: number;
312
- readonly objects: ObjectPayload[];
313
- }
314
-
315
- export interface DatagramObject {
316
- readonly type: "datagram";
317
- readonly streamTypeId: 0x01;
318
- readonly trackAlias: bigint;
319
- readonly groupId: bigint;
320
- readonly objectId: bigint;
321
- readonly publisherPriority: number;
322
- readonly extensionHeadersLength: bigint;
323
- readonly payload: Uint8Array;
324
- }
325
-
326
- export interface DatagramStatusObject {
327
- readonly type: "datagram_status";
328
- readonly streamTypeId: 0x02;
329
- readonly trackAlias: bigint;
330
- readonly groupId: bigint;
331
- readonly objectId: bigint;
332
- readonly publisherPriority: number;
333
- readonly extensionHeadersLength: bigint;
334
- readonly objectStatus: bigint;
335
- }
336
-
337
- export interface FetchObjectPayload {
338
- readonly type: "object";
339
- readonly groupId: bigint;
340
- readonly subgroupId: bigint;
341
- readonly objectId: bigint;
342
- readonly publisherPriority: number;
343
- readonly extensionHeadersLength: bigint;
344
- readonly payloadLength: number;
345
- readonly status?: bigint;
346
- readonly payload: Uint8Array;
347
- }
348
-
349
- export interface FetchStream {
350
- readonly type: "fetch";
351
- readonly subscribeId: bigint;
352
- readonly objects: FetchObjectPayload[];
353
- }
354
-
355
- export type Draft10DataStream =
356
- | SubgroupStream
357
- | DatagramObject
358
- | DatagramStatusObject
359
- | FetchStream;
360
-
361
- // Streaming data stream decoder types
362
- export interface SubgroupStreamHeader {
363
- readonly type: "subgroup_header";
364
- readonly trackAlias: bigint;
365
- readonly groupId: bigint;
366
- readonly subgroupId: bigint;
367
- readonly publisherPriority: number;
368
- }
369
-
370
- export interface FetchStreamHeader {
371
- readonly type: "fetch_header";
372
- readonly subscribeId: bigint;
373
- }
374
-
375
- export type DataStreamHeader = SubgroupStreamHeader | FetchStreamHeader;
376
- export type DataStreamEvent = DataStreamHeader | ObjectPayload;
1
+ // Draft-09 specific message types
2
+ // Field names use snake_case to match test vector JSON
3
+
4
+ // Unknown parameter for passthrough
5
+ export interface UnknownParam {
6
+ readonly id: string; // e.g. "0x21"
7
+ readonly length: number;
8
+ readonly raw_hex: string;
9
+ }
10
+
11
+ // Setup parameters (PATH, MAX_SUBSCRIBE_ID)
12
+ export interface Draft10SetupParams {
13
+ path?: string; // 0x01
14
+ max_subscribe_id?: bigint; // 0x02
15
+ unknown?: UnknownParam[];
16
+ }
17
+
18
+ // Version-specific parameters
19
+ export interface Draft10Params {
20
+ authorization_info?: string; // 0x02
21
+ delivery_timeout?: bigint; // 0x03
22
+ max_cache_duration?: bigint; // 0x04
23
+ unknown?: UnknownParam[];
24
+ }
25
+
26
+ // Draft-09 message type tag union
27
+ export type Draft10MessageType =
28
+ | "client_setup"
29
+ | "server_setup"
30
+ | "subscribe"
31
+ | "subscribe_ok"
32
+ | "subscribe_error"
33
+ | "subscribe_update"
34
+ | "subscribe_done"
35
+ | "unsubscribe"
36
+ | "announce"
37
+ | "announce_ok"
38
+ | "announce_error"
39
+ | "unannounce"
40
+ | "announce_cancel"
41
+ | "subscribe_announces"
42
+ | "subscribe_announces_ok"
43
+ | "subscribe_announces_error"
44
+ | "unsubscribe_announces"
45
+ | "fetch"
46
+ | "fetch_ok"
47
+ | "fetch_error"
48
+ | "fetch_cancel"
49
+ | "track_status_request"
50
+ | "track_status"
51
+ | "goaway"
52
+ | "max_subscribe_id"
53
+ | "subscribes_blocked";
54
+
55
+ // Base
56
+ export interface Draft10BaseMessage {
57
+ readonly type: Draft10MessageType;
58
+ }
59
+
60
+ // Setup
61
+ export interface Draft10ClientSetup extends Draft10BaseMessage {
62
+ readonly type: "client_setup";
63
+ readonly supported_versions: bigint[];
64
+ readonly parameters: Draft10SetupParams;
65
+ }
66
+
67
+ export interface Draft10ServerSetup extends Draft10BaseMessage {
68
+ readonly type: "server_setup";
69
+ readonly selected_version: bigint;
70
+ readonly parameters: Draft10SetupParams;
71
+ }
72
+
73
+ // Subscribe
74
+ export interface Draft10Subscribe extends Draft10BaseMessage {
75
+ readonly type: "subscribe";
76
+ readonly subscribe_id: bigint;
77
+ readonly track_alias: bigint;
78
+ readonly track_namespace: string[];
79
+ readonly track_name: string;
80
+ readonly subscriber_priority: number; // uint8
81
+ readonly group_order: number; // uint8
82
+ readonly filter_type: bigint;
83
+ readonly start_group?: bigint;
84
+ readonly start_object?: bigint;
85
+ readonly end_group?: bigint;
86
+ readonly parameters: Draft10Params;
87
+ }
88
+
89
+ export interface Draft10SubscribeOk extends Draft10BaseMessage {
90
+ readonly type: "subscribe_ok";
91
+ readonly subscribe_id: bigint;
92
+ readonly expires: bigint;
93
+ readonly group_order: number; // uint8
94
+ readonly content_exists: number; // uint8
95
+ readonly largest_group_id?: bigint;
96
+ readonly largest_object_id?: bigint;
97
+ readonly parameters: Draft10Params;
98
+ }
99
+
100
+ export interface Draft10SubscribeError extends Draft10BaseMessage {
101
+ readonly type: "subscribe_error";
102
+ readonly subscribe_id: bigint;
103
+ readonly error_code: bigint;
104
+ readonly reason_phrase: string;
105
+ readonly track_alias: bigint;
106
+ }
107
+
108
+ export interface Draft10SubscribeDone extends Draft10BaseMessage {
109
+ readonly type: "subscribe_done";
110
+ readonly subscribe_id: bigint;
111
+ readonly status_code: bigint;
112
+ readonly stream_count: bigint;
113
+ readonly reason_phrase: string;
114
+ }
115
+
116
+ export interface Draft10SubscribeUpdate extends Draft10BaseMessage {
117
+ readonly type: "subscribe_update";
118
+ readonly subscribe_id: bigint;
119
+ readonly start_group: bigint;
120
+ readonly start_object: bigint;
121
+ readonly end_group: bigint;
122
+ readonly subscriber_priority: number; // uint8
123
+ readonly parameters: Draft10Params;
124
+ }
125
+
126
+ export interface Draft10Unsubscribe extends Draft10BaseMessage {
127
+ readonly type: "unsubscribe";
128
+ readonly subscribe_id: bigint;
129
+ }
130
+
131
+ // Announce
132
+ export interface Draft10Announce extends Draft10BaseMessage {
133
+ readonly type: "announce";
134
+ readonly track_namespace: string[];
135
+ readonly parameters: Draft10Params;
136
+ }
137
+
138
+ export interface Draft10AnnounceOk extends Draft10BaseMessage {
139
+ readonly type: "announce_ok";
140
+ readonly track_namespace: string[];
141
+ }
142
+
143
+ export interface Draft10AnnounceError extends Draft10BaseMessage {
144
+ readonly type: "announce_error";
145
+ readonly track_namespace: string[];
146
+ readonly error_code: bigint;
147
+ readonly reason_phrase: string;
148
+ }
149
+
150
+ export interface Draft10Unannounce extends Draft10BaseMessage {
151
+ readonly type: "unannounce";
152
+ readonly track_namespace: string[];
153
+ }
154
+
155
+ export interface Draft10AnnounceCancel extends Draft10BaseMessage {
156
+ readonly type: "announce_cancel";
157
+ readonly track_namespace: string[];
158
+ readonly error_code: bigint;
159
+ readonly reason_phrase: string;
160
+ }
161
+
162
+ // Subscribe Announces
163
+ export interface Draft10SubscribeAnnounces extends Draft10BaseMessage {
164
+ readonly type: "subscribe_announces";
165
+ readonly track_namespace_prefix: string[];
166
+ readonly parameters: Draft10Params;
167
+ }
168
+
169
+ export interface Draft10SubscribeAnnouncesOk extends Draft10BaseMessage {
170
+ readonly type: "subscribe_announces_ok";
171
+ readonly track_namespace_prefix: string[];
172
+ }
173
+
174
+ export interface Draft10SubscribeAnnouncesError extends Draft10BaseMessage {
175
+ readonly type: "subscribe_announces_error";
176
+ readonly track_namespace_prefix: string[];
177
+ readonly error_code: bigint;
178
+ readonly reason_phrase: string;
179
+ }
180
+
181
+ export interface Draft10UnsubscribeAnnounces extends Draft10BaseMessage {
182
+ readonly type: "unsubscribe_announces";
183
+ readonly track_namespace_prefix: string[];
184
+ }
185
+
186
+ // Fetch
187
+ export interface StandaloneFetch {
188
+ readonly track_namespace: string[];
189
+ readonly track_name: string;
190
+ readonly start_group: bigint;
191
+ readonly start_object: bigint;
192
+ readonly end_group: bigint;
193
+ readonly end_object: bigint;
194
+ }
195
+
196
+ export interface JoiningFetch {
197
+ readonly joining_subscribe_id: bigint;
198
+ readonly preceding_group_offset: bigint;
199
+ }
200
+
201
+ export interface Draft10Fetch extends Draft10BaseMessage {
202
+ readonly type: "fetch";
203
+ readonly subscribe_id: bigint;
204
+ readonly subscriber_priority: number; // uint8
205
+ readonly group_order: number; // uint8
206
+ readonly fetch_type: bigint;
207
+ readonly standalone?: StandaloneFetch;
208
+ readonly joining?: JoiningFetch;
209
+ readonly parameters: Draft10Params;
210
+ }
211
+
212
+ export interface Draft10FetchOk extends Draft10BaseMessage {
213
+ readonly type: "fetch_ok";
214
+ readonly subscribe_id: bigint;
215
+ readonly group_order: number; // uint8
216
+ readonly end_of_track: number; // uint8
217
+ readonly largest_group_id: bigint;
218
+ readonly largest_object_id: bigint;
219
+ readonly parameters: Draft10Params;
220
+ }
221
+
222
+ export interface Draft10FetchError extends Draft10BaseMessage {
223
+ readonly type: "fetch_error";
224
+ readonly subscribe_id: bigint;
225
+ readonly error_code: bigint;
226
+ readonly reason_phrase: string;
227
+ }
228
+
229
+ export interface Draft10FetchCancel extends Draft10BaseMessage {
230
+ readonly type: "fetch_cancel";
231
+ readonly subscribe_id: bigint;
232
+ }
233
+
234
+ // Track Status
235
+ export interface Draft10TrackStatusRequest extends Draft10BaseMessage {
236
+ readonly type: "track_status_request";
237
+ readonly track_namespace: string[];
238
+ readonly track_name: string;
239
+ }
240
+
241
+ export interface Draft10TrackStatus extends Draft10BaseMessage {
242
+ readonly type: "track_status";
243
+ readonly track_namespace: string[];
244
+ readonly track_name: string;
245
+ readonly status_code: bigint;
246
+ readonly last_group_id: bigint;
247
+ readonly last_object_id: bigint;
248
+ }
249
+
250
+ // Session Control
251
+ export interface Draft10GoAway extends Draft10BaseMessage {
252
+ readonly type: "goaway";
253
+ readonly new_session_uri: string;
254
+ }
255
+
256
+ export interface Draft10MaxSubscribeId extends Draft10BaseMessage {
257
+ readonly type: "max_subscribe_id";
258
+ readonly subscribe_id: bigint;
259
+ }
260
+
261
+ export interface Draft10SubscribesBlocked extends Draft10BaseMessage {
262
+ readonly type: "subscribes_blocked";
263
+ readonly maximum_subscribe_id: bigint;
264
+ }
265
+
266
+ // Union of all draft-10 control messages
267
+ export type Draft10Message =
268
+ | Draft10ClientSetup
269
+ | Draft10ServerSetup
270
+ | Draft10Subscribe
271
+ | Draft10SubscribeOk
272
+ | Draft10SubscribeError
273
+ | Draft10SubscribeUpdate
274
+ | Draft10SubscribeDone
275
+ | Draft10Unsubscribe
276
+ | Draft10Announce
277
+ | Draft10AnnounceOk
278
+ | Draft10AnnounceError
279
+ | Draft10Unannounce
280
+ | Draft10AnnounceCancel
281
+ | Draft10SubscribeAnnounces
282
+ | Draft10SubscribeAnnouncesOk
283
+ | Draft10SubscribeAnnouncesError
284
+ | Draft10UnsubscribeAnnounces
285
+ | Draft10Fetch
286
+ | Draft10FetchOk
287
+ | Draft10FetchError
288
+ | Draft10FetchCancel
289
+ | Draft10TrackStatusRequest
290
+ | Draft10TrackStatus
291
+ | Draft10GoAway
292
+ | Draft10MaxSubscribeId
293
+ | Draft10SubscribesBlocked;
294
+
295
+ // Data stream types
296
+ export interface ObjectPayload {
297
+ readonly type: "object";
298
+ readonly byteOffset: number;
299
+ readonly payloadByteOffset: number;
300
+ readonly objectId: bigint;
301
+ readonly extensionHeadersLength: bigint;
302
+ readonly extensionData: Uint8Array;
303
+ readonly payloadLength: number;
304
+ readonly status?: bigint;
305
+ readonly payload: Uint8Array;
306
+ }
307
+
308
+ export interface SubgroupStream {
309
+ readonly type: "subgroup";
310
+ readonly streamTypeId: 0x04;
311
+ readonly trackAlias: bigint;
312
+ readonly groupId: bigint;
313
+ readonly subgroupId: bigint;
314
+ readonly publisherPriority: number;
315
+ readonly objects: ObjectPayload[];
316
+ }
317
+
318
+ export interface DatagramObject {
319
+ readonly type: "datagram";
320
+ readonly streamTypeId: 0x01;
321
+ readonly trackAlias: bigint;
322
+ readonly groupId: bigint;
323
+ readonly objectId: bigint;
324
+ readonly publisherPriority: number;
325
+ readonly extensionHeadersLength: bigint;
326
+ readonly extensionData: Uint8Array;
327
+ readonly payload: Uint8Array;
328
+ }
329
+
330
+ export interface DatagramStatusObject {
331
+ readonly type: "datagram_status";
332
+ readonly streamTypeId: 0x02;
333
+ readonly trackAlias: bigint;
334
+ readonly groupId: bigint;
335
+ readonly objectId: bigint;
336
+ readonly publisherPriority: number;
337
+ readonly extensionHeadersLength: bigint;
338
+ readonly extensionData: Uint8Array;
339
+ readonly objectStatus: bigint;
340
+ }
341
+
342
+ export interface FetchObjectPayload {
343
+ readonly type: "object";
344
+ readonly byteOffset: number;
345
+ readonly payloadByteOffset: number;
346
+ readonly groupId: bigint;
347
+ readonly subgroupId: bigint;
348
+ readonly objectId: bigint;
349
+ readonly publisherPriority: number;
350
+ readonly extensionHeadersLength: bigint;
351
+ readonly extensionData: Uint8Array;
352
+ readonly payloadLength: number;
353
+ readonly status?: bigint;
354
+ readonly payload: Uint8Array;
355
+ }
356
+
357
+ export interface FetchStream {
358
+ readonly type: "fetch";
359
+ readonly subscribeId: bigint;
360
+ readonly objects: FetchObjectPayload[];
361
+ }
362
+
363
+ export type Draft10DataStream =
364
+ | SubgroupStream
365
+ | DatagramObject
366
+ | DatagramStatusObject
367
+ | FetchStream;
368
+
369
+ // Streaming data stream decoder types
370
+ export interface SubgroupStreamHeader {
371
+ readonly type: "subgroup_header";
372
+ readonly trackAlias: bigint;
373
+ readonly groupId: bigint;
374
+ readonly subgroupId: bigint;
375
+ readonly publisherPriority: number;
376
+ }
377
+
378
+ export interface FetchStreamHeader {
379
+ readonly type: "fetch_header";
380
+ readonly subscribeId: bigint;
381
+ }
382
+
383
+ export type DataStreamHeader = SubgroupStreamHeader | FetchStreamHeader;
384
+ export type DataStreamEvent = DataStreamHeader | ObjectPayload;