@norskvideo/moq-net 0.1.7 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. package/README.md +2 -2
  2. package/announce.d.ts +7 -0
  3. package/announce.d.ts.map +1 -0
  4. package/announce.js +8 -0
  5. package/announce.js.map +1 -0
  6. package/announced.d.ts +49 -91
  7. package/announced.d.ts.map +1 -1
  8. package/announced.js +21 -156
  9. package/announced.js.map +1 -1
  10. package/bandwidth.d.ts +163 -0
  11. package/bandwidth.d.ts.map +1 -0
  12. package/bandwidth.js +304 -0
  13. package/bandwidth.js.map +1 -0
  14. package/bandwidth_api.d.ts +7 -0
  15. package/bandwidth_api.d.ts.map +1 -0
  16. package/bandwidth_api.js +8 -0
  17. package/bandwidth_api.js.map +1 -0
  18. package/broadcast.d.ts +44 -35
  19. package/broadcast.d.ts.map +1 -1
  20. package/broadcast.js +104 -60
  21. package/broadcast.js.map +1 -1
  22. package/connection/accept.d.ts +16 -1
  23. package/connection/accept.d.ts.map +1 -1
  24. package/connection/accept.js +52 -28
  25. package/connection/accept.js.map +1 -1
  26. package/connection/browser.d.ts.map +1 -1
  27. package/connection/browser.js +9 -7
  28. package/connection/browser.js.map +1 -1
  29. package/connection/connect.d.ts +30 -6
  30. package/connection/connect.d.ts.map +1 -1
  31. package/connection/connect.js +110 -54
  32. package/connection/connect.js.map +1 -1
  33. package/connection/established.d.ts +17 -21
  34. package/connection/established.d.ts.map +1 -1
  35. package/connection/established.js.map +1 -1
  36. package/connection/forward.d.ts +2 -0
  37. package/connection/forward.d.ts.map +1 -0
  38. package/connection/forward.js +173 -0
  39. package/connection/forward.js.map +1 -0
  40. package/connection/handshake.d.ts +1 -0
  41. package/connection/handshake.d.ts.map +1 -1
  42. package/connection/handshake.js +5 -2
  43. package/connection/handshake.js.map +1 -1
  44. package/connection/index.d.ts +5 -5
  45. package/connection/index.d.ts.map +1 -1
  46. package/connection/index.js +4 -5
  47. package/connection/index.js.map +1 -1
  48. package/connection/pool.d.ts +186 -0
  49. package/connection/pool.d.ts.map +1 -0
  50. package/connection/pool.js +361 -0
  51. package/connection/pool.js.map +1 -0
  52. package/connection/reload.d.ts +14 -93
  53. package/connection/reload.d.ts.map +1 -1
  54. package/connection/reload.js +217 -81
  55. package/connection/reload.js.map +1 -1
  56. package/connection/stats.d.ts +3 -26
  57. package/connection/stats.d.ts.map +1 -1
  58. package/connection/stats.js.map +1 -1
  59. package/connection/transport.d.ts +0 -7
  60. package/connection/transport.d.ts.map +1 -1
  61. package/consume.d.ts +1 -43
  62. package/consume.d.ts.map +1 -1
  63. package/consume.js +1 -1
  64. package/consume.js.map +1 -1
  65. package/error.d.ts +180 -29
  66. package/error.d.ts.map +1 -1
  67. package/error.js +331 -16
  68. package/error.js.map +1 -1
  69. package/errors.d.ts +7 -0
  70. package/errors.d.ts.map +1 -0
  71. package/errors.js +8 -0
  72. package/errors.js.map +1 -0
  73. package/group.d.ts +9 -43
  74. package/group.d.ts.map +1 -1
  75. package/group.js +284 -69
  76. package/group.js.map +1 -1
  77. package/hop.d.ts +115 -0
  78. package/hop.d.ts.map +1 -0
  79. package/hop.js +119 -0
  80. package/hop.js.map +1 -0
  81. package/ietf/adapter.d.ts +5 -1
  82. package/ietf/adapter.d.ts.map +1 -1
  83. package/ietf/adapter.js +105 -60
  84. package/ietf/adapter.js.map +1 -1
  85. package/ietf/aliases.d.ts +1 -78
  86. package/ietf/aliases.d.ts.map +1 -1
  87. package/ietf/cluster.d.ts +9 -123
  88. package/ietf/cluster.d.ts.map +1 -1
  89. package/ietf/cluster.js +84 -44
  90. package/ietf/cluster.js.map +1 -1
  91. package/ietf/connection.d.ts +6 -72
  92. package/ietf/connection.d.ts.map +1 -1
  93. package/ietf/connection.js +62 -56
  94. package/ietf/connection.js.map +1 -1
  95. package/ietf/error.d.ts +11 -0
  96. package/ietf/error.d.ts.map +1 -0
  97. package/ietf/error.js +193 -0
  98. package/ietf/error.js.map +1 -0
  99. package/ietf/fetch.d.ts +7 -20
  100. package/ietf/fetch.d.ts.map +1 -1
  101. package/ietf/fetch.js +52 -22
  102. package/ietf/fetch.js.map +1 -1
  103. package/ietf/filter.d.ts +2 -0
  104. package/ietf/filter.d.ts.map +1 -1
  105. package/ietf/filter.js +10 -1
  106. package/ietf/filter.js.map +1 -1
  107. package/ietf/goaway.d.ts.map +1 -1
  108. package/ietf/goaway.js +22 -5
  109. package/ietf/goaway.js.map +1 -1
  110. package/ietf/hidden.d.ts +2 -0
  111. package/ietf/hidden.d.ts.map +1 -0
  112. package/ietf/hidden.js +30 -0
  113. package/ietf/hidden.js.map +1 -0
  114. package/ietf/index.d.ts +2 -0
  115. package/ietf/index.d.ts.map +1 -1
  116. package/ietf/index.js +2 -0
  117. package/ietf/index.js.map +1 -1
  118. package/ietf/object.d.ts +15 -8
  119. package/ietf/object.d.ts.map +1 -1
  120. package/ietf/object.js +51 -36
  121. package/ietf/object.js.map +1 -1
  122. package/ietf/parameters.d.ts +14 -2
  123. package/ietf/parameters.d.ts.map +1 -1
  124. package/ietf/parameters.js +97 -29
  125. package/ietf/parameters.js.map +1 -1
  126. package/ietf/properties.d.ts +1 -0
  127. package/ietf/properties.d.ts.map +1 -1
  128. package/ietf/properties.js +14 -0
  129. package/ietf/properties.js.map +1 -1
  130. package/ietf/publish.d.ts +19 -2
  131. package/ietf/publish.d.ts.map +1 -1
  132. package/ietf/publish.js +40 -6
  133. package/ietf/publish.js.map +1 -1
  134. package/ietf/publish_namespace.d.ts +25 -0
  135. package/ietf/publish_namespace.d.ts.map +1 -1
  136. package/ietf/publish_namespace.js +63 -0
  137. package/ietf/publish_namespace.js.map +1 -1
  138. package/ietf/publisher.d.ts +1 -82
  139. package/ietf/publisher.d.ts.map +1 -1
  140. package/ietf/publisher.js +483 -235
  141. package/ietf/publisher.js.map +1 -1
  142. package/ietf/solicit.d.ts +1 -40
  143. package/ietf/solicit.d.ts.map +1 -1
  144. package/ietf/subscribe.d.ts +8 -6
  145. package/ietf/subscribe.d.ts.map +1 -1
  146. package/ietf/subscribe.js +33 -27
  147. package/ietf/subscribe.js.map +1 -1
  148. package/ietf/subscribe_namespace.d.ts +8 -2
  149. package/ietf/subscribe_namespace.d.ts.map +1 -1
  150. package/ietf/subscribe_namespace.js +18 -8
  151. package/ietf/subscribe_namespace.js.map +1 -1
  152. package/ietf/subscriber.d.ts +1 -65
  153. package/ietf/subscriber.d.ts.map +1 -1
  154. package/ietf/subscriber.js +337 -123
  155. package/ietf/subscriber.js.map +1 -1
  156. package/ietf/token.d.ts +2 -0
  157. package/ietf/token.d.ts.map +1 -0
  158. package/ietf/token.js +99 -0
  159. package/ietf/token.js.map +1 -0
  160. package/ietf/track.d.ts +4 -0
  161. package/ietf/track.d.ts.map +1 -1
  162. package/ietf/track.js +6 -20
  163. package/ietf/track.js.map +1 -1
  164. package/ietf/version.d.ts +12 -1
  165. package/ietf/version.d.ts.map +1 -1
  166. package/ietf/version.js +13 -0
  167. package/ietf/version.js.map +1 -1
  168. package/index.d.ts +12 -7
  169. package/index.d.ts.map +1 -1
  170. package/index.js +10 -5
  171. package/index.js.map +1 -1
  172. package/internal.d.ts +115 -1
  173. package/internal.d.ts.map +1 -1
  174. package/internal.js +108 -0
  175. package/internal.js.map +1 -1
  176. package/lite/announce.d.ts +60 -10
  177. package/lite/announce.d.ts.map +1 -1
  178. package/lite/announce.js +176 -31
  179. package/lite/announce.js.map +1 -1
  180. package/lite/connection.d.ts +9 -59
  181. package/lite/connection.d.ts.map +1 -1
  182. package/lite/connection.js +34 -35
  183. package/lite/connection.js.map +1 -1
  184. package/lite/datagram.d.ts +3 -2
  185. package/lite/datagram.d.ts.map +1 -1
  186. package/lite/datagram.js +7 -8
  187. package/lite/datagram.js.map +1 -1
  188. package/lite/fetch.d.ts +15 -1
  189. package/lite/fetch.d.ts.map +1 -1
  190. package/lite/fetch.js +39 -7
  191. package/lite/fetch.js.map +1 -1
  192. package/lite/goaway.d.ts.map +1 -1
  193. package/lite/goaway.js +7 -1
  194. package/lite/goaway.js.map +1 -1
  195. package/lite/group.d.ts +30 -12
  196. package/lite/group.d.ts.map +1 -1
  197. package/lite/group.js +68 -26
  198. package/lite/group.js.map +1 -1
  199. package/lite/message.d.ts +2 -2
  200. package/lite/message.d.ts.map +1 -1
  201. package/lite/message.js +14 -5
  202. package/lite/message.js.map +1 -1
  203. package/lite/priority.d.ts +1 -61
  204. package/lite/priority.d.ts.map +1 -1
  205. package/lite/priority.js +4 -5
  206. package/lite/priority.js.map +1 -1
  207. package/lite/publisher.d.ts +1 -69
  208. package/lite/publisher.d.ts.map +1 -1
  209. package/lite/publisher.js +630 -262
  210. package/lite/publisher.js.map +1 -1
  211. package/lite/setup.d.ts +8 -8
  212. package/lite/setup.d.ts.map +1 -1
  213. package/lite/setup.js +33 -30
  214. package/lite/setup.js.map +1 -1
  215. package/lite/subscribe.d.ts +71 -17
  216. package/lite/subscribe.d.ts.map +1 -1
  217. package/lite/subscribe.js +205 -53
  218. package/lite/subscribe.js.map +1 -1
  219. package/lite/subscriber.d.ts +15 -56
  220. package/lite/subscriber.d.ts.map +1 -1
  221. package/lite/subscriber.js +451 -247
  222. package/lite/subscriber.js.map +1 -1
  223. package/lite/track.d.ts +4 -10
  224. package/lite/track.d.ts.map +1 -1
  225. package/lite/track.js +34 -29
  226. package/lite/track.js.map +1 -1
  227. package/lite/version.d.ts +42 -6
  228. package/lite/version.d.ts.map +1 -1
  229. package/lite/version.js +126 -10
  230. package/lite/version.js.map +1 -1
  231. package/origin.d.ts +256 -29
  232. package/origin.d.ts.map +1 -1
  233. package/origin.js +1427 -37
  234. package/origin.js.map +1 -1
  235. package/package.json +8 -3
  236. package/path.d.ts +25 -7
  237. package/path.d.ts.map +1 -1
  238. package/path.js +5 -3
  239. package/path.js.map +1 -1
  240. package/stream.d.ts +73 -14
  241. package/stream.d.ts.map +1 -1
  242. package/stream.js +372 -141
  243. package/stream.js.map +1 -1
  244. package/tail.d.ts +18 -0
  245. package/tail.d.ts.map +1 -0
  246. package/tail.js +167 -0
  247. package/tail.js.map +1 -0
  248. package/time.d.ts +15 -2
  249. package/time.d.ts.map +1 -1
  250. package/time.js +28 -9
  251. package/time.js.map +1 -1
  252. package/track.d.ts +211 -83
  253. package/track.d.ts.map +1 -1
  254. package/track.js +816 -205
  255. package/track.js.map +1 -1
  256. package/util/abort.d.ts +2 -0
  257. package/util/abort.d.ts.map +1 -0
  258. package/util/abort.js +20 -0
  259. package/util/abort.js.map +1 -0
  260. package/util/log.d.ts +5 -0
  261. package/util/log.d.ts.map +1 -0
  262. package/util/log.js +17 -0
  263. package/util/log.js.map +1 -0
  264. package/util/u64.d.ts +39 -0
  265. package/util/u64.d.ts.map +1 -0
  266. package/util/u64.js +83 -0
  267. package/util/u64.js.map +1 -0
  268. package/util/varint.d.ts +29 -0
  269. package/util/varint.d.ts.map +1 -0
  270. package/util/varint.js +198 -0
  271. package/util/varint.js.map +1 -0
  272. package/varint.d.ts +10 -6
  273. package/varint.d.ts.map +1 -1
  274. package/varint.js +40 -237
  275. package/varint.js.map +1 -1
  276. package/wire.d.ts +80 -0
  277. package/wire.d.ts.map +1 -0
  278. package/wire.js +32 -0
  279. package/wire.js.map +1 -0
  280. package/zod.d.ts +1 -1
  281. package/zod.d.ts.map +1 -1
  282. package/zod.js.map +1 -1
  283. package/mock.d.ts +0 -66
  284. package/mock.d.ts.map +0 -1
  285. package/mock.js +0 -243
  286. package/mock.js.map +0 -1
package/stream.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import type { IetfVersion } from "./ietf/version";
2
+ import { type Version as LiteVersion } from "./lite/version";
3
+ import { U64 } from "./util/u64";
2
4
  /**
3
5
  * Options handed to the transport for one outgoing stream.
4
6
  *
@@ -9,6 +11,16 @@ import type { IetfVersion } from "./ietf/version";
9
11
  export declare function sendOptions(options?: OpenOptions): WebTransportSendStreamOptions & {
10
12
  waitUntilAvailable?: boolean;
11
13
  };
14
+ /**
15
+ * The version a stream's bytes follow: a moq-transport draft or a moq-lite draft. Required on
16
+ * every stream so the varint form never defaults silently; a stream opened before negotiation
17
+ * names the version its handshake is encoded with.
18
+ */
19
+ export type StreamVersion = IetfVersion | LiteVersion;
20
+ /** The moq-transport draft a stream follows, or undefined on moq-lite, whose stream codes are the same on every draft. */
21
+ export declare function asIetf(version: StreamVersion): IetfVersion | undefined;
22
+ /** Encode one varint in the form `version` uses, for a body written outside a {@link Writer}. */
23
+ export declare function encodeVarint(v: number | bigint, version: StreamVersion): Uint8Array;
12
24
  /**
13
25
  * The `WebTransportSendStream` that every outgoing stream is, narrowed to the one attribute
14
26
  * this package uses. The DOM types available here still describe them as plain
@@ -24,8 +36,8 @@ export type SendStream = WritableStream<Uint8Array> & {
24
36
  };
25
37
  /** Options for opening an outgoing stream. */
26
38
  export interface OpenOptions {
27
- /** The negotiated IETF version, which selects the varint encoding. */
28
- version?: IetfVersion;
39
+ /** The negotiated version, which selects the varint encoding. */
40
+ version: StreamVersion;
29
41
  /**
30
42
  * The transport send order, where HIGHER values are transmitted first.
31
43
  * Left to the transport's default when unset.
@@ -50,8 +62,8 @@ export interface OpenOptions {
50
62
  }
51
63
  /** Options for {@link Writer.tryOpen}. */
52
64
  export interface TryOpenOptions extends OpenOptions {
53
- /** Give up once this settles, however it settles. */
54
- cancel: Promise<unknown>;
65
+ /** Give up once this resolves. */
66
+ cancel: Promise<void>;
55
67
  }
56
68
  export declare class Stream {
57
69
  reader: Reader;
@@ -60,45 +72,91 @@ export declare class Stream {
60
72
  constructor(props: {
61
73
  writable: WritableStream<Uint8Array>;
62
74
  readable: ReadableStream<Uint8Array>;
63
- version?: IetfVersion;
75
+ version: StreamVersion;
64
76
  });
65
77
  /** Pair halves that were opened separately, as the SETUP exchange does. */
66
78
  constructor(props: {
67
79
  writer: Writer;
68
80
  reader: Reader;
69
81
  });
70
- static accept(quic: WebTransport, version?: IetfVersion): Promise<Stream | undefined>;
82
+ static accept(quic: WebTransport, version: StreamVersion): Promise<Stream | undefined>;
71
83
  /**
72
84
  * Open an outgoing bidirectional stream.
73
85
  * @param quic - The session to open it on
74
86
  * @param options - The version its varints encode with, and the send order ranking it
75
87
  * against the session's other streams
76
88
  */
77
- static open(quic: WebTransport, options?: OpenOptions): Promise<Stream>;
89
+ static open(quic: WebTransport, options: OpenOptions): Promise<Stream>;
78
90
  close(): void;
79
91
  abort(reason: Error): void;
80
92
  }
81
93
  export declare class Reader {
82
94
  #private;
83
- version?: IetfVersion;
84
- constructor(stream: ReadableStream<Uint8Array>, buffer?: Uint8Array, version?: IetfVersion);
85
- constructor(stream: undefined, buffer: Uint8Array, version?: IetfVersion);
95
+ version: StreamVersion;
96
+ constructor(stream: ReadableStream<Uint8Array>, buffer: Uint8Array | undefined, version: StreamVersion);
97
+ constructor(stream: undefined, buffer: Uint8Array, version: StreamVersion);
98
+ /**
99
+ * Run a synchronous decode over the buffered bytes and consume what it read.
100
+ *
101
+ * Returns undefined and consumes nothing when the decode ran past the buffered bytes, so a
102
+ * caller can drain every complete message already here without waiting on the stream.
103
+ */
104
+ tryDecode<T extends NonNullable<unknown>>(decode: (c: Cursor) => T): T | undefined;
105
+ /** Run a synchronous decode, filling from the stream until it has the bytes it needs. */
106
+ decode<T>(decode: (c: Cursor) => T): Promise<T>;
107
+ /** Like {@link decode}, but returns undefined if the stream ends cleanly first. */
108
+ decodeMaybe<T>(decode: (c: Cursor) => T): Promise<T | undefined>;
86
109
  read(size: number): Promise<Uint8Array>;
87
110
  readAll(): Promise<Uint8Array>;
111
+ discard(): Promise<void>;
88
112
  string(): Promise<string>;
89
113
  bool(): Promise<boolean>;
90
114
  u8(): Promise<number>;
91
115
  u16(): Promise<number>;
92
116
  u53(): Promise<number>;
93
117
  u62(): Promise<bigint>;
118
+ varint(): Promise<U64>;
94
119
  done(): Promise<boolean>;
95
120
  stop(reason: unknown): void;
96
121
  get closed(): Promise<void>;
97
122
  }
123
+ /**
124
+ * A synchronous view over a {@link Reader}'s buffered bytes, handed to {@link Reader.decode}.
125
+ *
126
+ * A read past the buffered bytes throws an internal signal that the Reader catches: it consumes
127
+ * nothing, fills, and runs the decode again from the start. A decode must therefore not mutate
128
+ * anything before its last read, must not swallow what it throws, and must read at least a byte.
129
+ */
130
+ export declare class Cursor {
131
+ #private;
132
+ readonly version: StreamVersion;
133
+ constructor(buffer: Uint8Array, version: StreamVersion);
134
+ /** How many bytes have been read. */
135
+ get offset(): number;
136
+ /** How many buffered bytes are left to read. */
137
+ get remaining(): number;
138
+ /**
139
+ * Decode the next `size` bytes on their own. Running past them, or leaving any unread, is
140
+ * malformed rather than a reason to wait for more.
141
+ */
142
+ exact<T>(size: number, decode: (c: Cursor) => T): T;
143
+ /** Read `size` bytes, as a view onto the buffer rather than a copy. */
144
+ read(size: number): Uint8Array;
145
+ string(): string;
146
+ bool(): boolean;
147
+ u8(): number;
148
+ u16(): number;
149
+ /** Read a varint as a `number`, throwing if it is above `Number.MAX_SAFE_INTEGER`. */
150
+ u53(): number;
151
+ /** Read a varint as a bigint. A leading-ones varint may exceed 62 bits. */
152
+ u62(): bigint;
153
+ /** Read a varint. */
154
+ varint(): U64;
155
+ }
98
156
  export declare class Writer {
99
157
  #private;
100
- version?: IetfVersion;
101
- constructor(stream: WritableStream<Uint8Array>, version?: IetfVersion);
158
+ version: StreamVersion;
159
+ constructor(stream: WritableStream<Uint8Array>, version: StreamVersion);
102
160
  /**
103
161
  * Rank this stream against the session's others, where HIGHER values are sent first.
104
162
  *
@@ -116,6 +174,7 @@ export declare class Writer {
116
174
  i32(v: number): Promise<void>;
117
175
  u53(v: number): Promise<void>;
118
176
  u62(v: bigint): Promise<void>;
177
+ varint(v: U64): Promise<void>;
119
178
  write(v: Uint8Array): Promise<void>;
120
179
  string(str: string): Promise<void>;
121
180
  close(): void;
@@ -127,7 +186,7 @@ export declare class Writer {
127
186
  * @param options - The version its varints encode with, and the send order ranking it
128
187
  * against the session's other streams
129
188
  */
130
- static open(quic: WebTransport, options?: OpenOptions): Promise<Writer>;
189
+ static open(quic: WebTransport, options: OpenOptions): Promise<Writer>;
131
190
  /**
132
191
  * Like {@link Writer.open}, but gives up when `cancel` settles or `timeout` elapses,
133
192
  * returning undefined so the caller can drop whatever it meant to send. A stream that
@@ -140,7 +199,7 @@ export declare class Writer {
140
199
  }
141
200
  export declare class Readers {
142
201
  #private;
143
- constructor(quic: WebTransport, version?: IetfVersion);
202
+ constructor(quic: WebTransport, version: StreamVersion);
144
203
  next(): Promise<Reader | undefined>;
145
204
  close(): void;
146
205
  }
package/stream.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../src/stream.ts"],"names":[],"mappings":"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"}