@moqtap/codec 0.8.1 → 0.10.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.
- package/CHANGELOG.md +75 -0
- package/README.md +16 -4
- package/dist/{chunk-KCH4BQXK.cjs → chunk-AQ445VV7.cjs} +15 -9
- package/dist/{chunk-UZO5Z2XT.cjs → chunk-BIBMDTU5.cjs} +12 -6
- package/dist/chunk-BMJMY6FX.cjs +868 -0
- package/dist/{chunk-23KRITJ6.js → chunk-BX2N7TZM.js} +14 -8
- package/dist/{chunk-XQGEOFGE.js → chunk-CF5DDD3Q.js} +14 -8
- package/dist/chunk-FT3HDNIB.js +2374 -0
- package/dist/{chunk-TMXRYOBS.js → chunk-G53WYUXL.js} +13 -7
- package/dist/{chunk-JKMYAUGY.js → chunk-K2B3OVFK.js} +11 -8
- package/dist/{chunk-3YAR3I3S.js → chunk-KGDVC4O6.js} +36 -22
- package/dist/{chunk-VWXUT5R2.cjs → chunk-KTNERCTZ.cjs} +36 -22
- package/dist/{chunk-H6DTAIWM.js → chunk-L5DRACXS.js} +22 -16
- package/dist/{chunk-UA5XFP4O.cjs → chunk-OUNN4IQB.cjs} +14 -8
- package/dist/{chunk-NH4L6NIY.js → chunk-OZRK73NQ.js} +12 -6
- package/dist/{chunk-PU2KV7VP.cjs → chunk-RYKQXBG6.cjs} +12 -6
- package/dist/{chunk-EVCPBFSR.cjs → chunk-SDJTSMOW.cjs} +23 -17
- package/dist/chunk-T4VWPKDG.cjs +2374 -0
- package/dist/{chunk-2XH6PHXR.js → chunk-TSUZ6GJV.js} +12 -6
- package/dist/{chunk-QGIHC6BA.cjs → chunk-UKKDOOUO.cjs} +12 -9
- package/dist/{chunk-BV6MITLO.js → chunk-WCPENYNE.js} +14 -8
- package/dist/{chunk-IADVBKEJ.cjs → chunk-WCTMPDUX.cjs} +15 -9
- package/dist/chunk-WX5PU7HF.js +868 -0
- package/dist/{chunk-7ENEWAMZ.cjs → chunk-XCRCAUGI.cjs} +15 -9
- package/dist/{codec-BLYAy2OP.d.ts → codec--CVeqGQv.d.ts} +1 -1
- package/dist/{codec-BNS3gS77.d.ts → codec-08ZOr5wI.d.ts} +2 -2
- package/dist/{codec-DujHf55Z.d.ts → codec-BJ7BHuiZ.d.ts} +1 -1
- package/dist/{codec-CI0BjmHc.d.ts → codec-BNy5syCU.d.ts} +1 -1
- package/dist/{codec-N3g1lxQQ.d.cts → codec-Bd60SGKH.d.cts} +2 -2
- package/dist/{codec-xeuGZY77.d.cts → codec-BrTi4K7r.d.cts} +3 -3
- package/dist/{codec-DJmV04i0.d.ts → codec-Bux_Q40X.d.ts} +2 -2
- package/dist/{codec-BqqoYdh_.d.cts → codec-BxQTybUX.d.cts} +2 -2
- package/dist/{codec-D2JbI2tp.d.ts → codec-C3mdsGx3.d.ts} +2 -2
- package/dist/{codec-DQWQSam3.d.cts → codec-C6Mx4bwz.d.cts} +1 -1
- package/dist/{codec-DAePx2NL.d.ts → codec-CBdOIfMY.d.ts} +3 -3
- package/dist/codec-CFWu5KVT.d.cts +49 -0
- package/dist/{codec-CyApDKwf.d.cts → codec-CWnf8mn_.d.cts} +2 -2
- package/dist/{codec-DvcJgYKq.d.cts → codec-CXCjya_G.d.cts} +1 -1
- package/dist/{codec-BOyrk_C9.d.cts → codec-Cfo_z5ET.d.cts} +1 -1
- package/dist/{codec-v6Vloc7H.d.ts → codec-Cm3D261p.d.ts} +2 -2
- package/dist/codec-CwZ6OCPP.d.ts +49 -0
- package/dist/{codec-NMsTK0GX.d.cts → codec-Czejcmxr.d.cts} +2 -2
- package/dist/{codec-hvkJfCF5.d.cts → codec-DNmiG2e0.d.cts} +2 -2
- package/dist/{codec-CWj5iTxA.d.ts → codec-DOmAmFkI.d.ts} +2 -2
- package/dist/{codec-WwwUipaU.d.ts → codec-DaXjRrOV.d.ts} +2 -2
- package/dist/{codec-DplRgIKq.d.ts → codec-Dl_QIXMz.d.ts} +1 -1
- package/dist/{codec-D95gT98n.d.cts → codec-DzkdW4kO.d.cts} +1 -1
- package/dist/{codec-cou9XBMF.d.cts → codec-EvybrBuY.d.cts} +2 -2
- package/dist/{codec-DL0njGkL.d.ts → codec-alVA27Uc.d.ts} +2 -2
- package/dist/{codec-D89DWXbv.d.cts → codec-f7vxeVIS.d.cts} +2 -2
- package/dist/{codec-D47r_-Rl.d.ts → codec-gl4_QEva.d.ts} +2 -2
- package/dist/{codec-BOtv3R5j.d.cts → codec-guzqtfMk.d.cts} +2 -2
- package/dist/draft07-session.d.cts +3 -3
- package/dist/draft07-session.d.ts +3 -3
- package/dist/draft07.d.cts +3 -3
- package/dist/draft07.d.ts +3 -3
- package/dist/draft08-session.d.cts +3 -3
- package/dist/draft08-session.d.ts +3 -3
- package/dist/draft08.d.cts +4 -4
- package/dist/draft08.d.ts +4 -4
- package/dist/draft09-session.d.cts +3 -3
- package/dist/draft09-session.d.ts +3 -3
- package/dist/draft09.d.cts +4 -4
- package/dist/draft09.d.ts +4 -4
- package/dist/draft10-session.d.cts +3 -3
- package/dist/draft10-session.d.ts +3 -3
- package/dist/draft10.d.cts +4 -4
- package/dist/draft10.d.ts +4 -4
- package/dist/draft11-session.d.cts +4 -4
- package/dist/draft11-session.d.ts +4 -4
- package/dist/draft11.cjs +2 -2
- package/dist/draft11.d.cts +6 -6
- package/dist/draft11.d.ts +6 -6
- package/dist/draft11.js +1 -1
- package/dist/draft12-session.d.cts +4 -4
- package/dist/draft12-session.d.ts +4 -4
- package/dist/draft12.cjs +2 -2
- package/dist/draft12.d.cts +6 -6
- package/dist/draft12.d.ts +6 -6
- package/dist/draft12.js +1 -1
- package/dist/draft13-session.d.cts +4 -4
- package/dist/draft13-session.d.ts +4 -4
- package/dist/draft13.cjs +2 -2
- package/dist/draft13.d.cts +6 -6
- package/dist/draft13.d.ts +6 -6
- package/dist/draft13.js +1 -1
- package/dist/draft14-session.d.cts +4 -4
- package/dist/draft14-session.d.ts +4 -4
- package/dist/draft14.cjs +2 -2
- package/dist/draft14.d.cts +6 -6
- package/dist/draft14.d.ts +6 -6
- package/dist/draft14.js +1 -1
- package/dist/draft15-session.d.cts +4 -4
- package/dist/draft15-session.d.ts +4 -4
- package/dist/draft15.cjs +2 -2
- package/dist/draft15.d.cts +6 -6
- package/dist/draft15.d.ts +6 -6
- package/dist/draft15.js +1 -1
- package/dist/draft16-session.d.cts +4 -4
- package/dist/draft16-session.d.ts +4 -4
- package/dist/draft16.cjs +2 -2
- package/dist/draft16.d.cts +6 -6
- package/dist/draft16.d.ts +6 -6
- package/dist/draft16.js +1 -1
- package/dist/draft17-session.d.cts +4 -4
- package/dist/draft17-session.d.ts +4 -4
- package/dist/draft17.cjs +2 -2
- package/dist/draft17.d.cts +5 -5
- package/dist/draft17.d.ts +5 -5
- package/dist/draft17.js +1 -1
- package/dist/draft18-session.d.cts +4 -4
- package/dist/draft18-session.d.ts +4 -4
- package/dist/draft18.cjs +2 -2
- package/dist/draft18.d.cts +5 -5
- package/dist/draft18.d.ts +5 -5
- package/dist/draft18.js +1 -1
- package/dist/draft19-session.d.cts +4 -4
- package/dist/draft19-session.d.ts +4 -4
- package/dist/draft19.cjs +2 -2
- package/dist/draft19.d.cts +5 -5
- package/dist/draft19.d.ts +5 -5
- package/dist/draft19.js +1 -1
- package/dist/draft20-session.cjs +8 -0
- package/dist/draft20-session.d.cts +195 -0
- package/dist/draft20-session.d.ts +195 -0
- package/dist/draft20-session.js +8 -0
- package/dist/draft20.cjs +217 -0
- package/dist/draft20.d.cts +175 -0
- package/dist/draft20.d.ts +175 -0
- package/dist/draft20.js +217 -0
- package/dist/index.cjs +25 -19
- package/dist/index.d.cts +41 -26
- package/dist/index.d.ts +41 -26
- package/dist/index.js +16 -10
- package/dist/{session-types-KsqyVp6y.d.cts → session-types-B9idsih-.d.cts} +13 -1
- package/dist/{session-types-C0l_-Ups.d.ts → session-types-Dn7b3RZM.d.ts} +13 -1
- package/dist/session.cjs +5 -1
- package/dist/session.d.cts +14 -12
- package/dist/session.d.ts +14 -12
- package/dist/session.js +5 -1
- package/dist/{types-Cqp10JtB.d.cts → types-Bg86GGVZ.d.cts} +2 -2
- package/dist/{types-Cqp10JtB.d.ts → types-Bg86GGVZ.d.ts} +2 -2
- package/dist/{types-zHgCS6o5.d.cts → types-C1rxh-id.d.cts} +7 -7
- package/dist/{types-zHgCS6o5.d.ts → types-C1rxh-id.d.ts} +7 -7
- package/dist/{types-Bio-91Rt.d.cts → types-CI_SX4Xe.d.cts} +2 -2
- package/dist/{types-Bio-91Rt.d.ts → types-CI_SX4Xe.d.ts} +2 -2
- package/dist/types-CY-QWxd-.d.cts +359 -0
- package/dist/types-CY-QWxd-.d.ts +359 -0
- package/dist/{types-Cm9fjeYC.d.cts → types-CZTzbIzQ.d.cts} +2 -2
- package/dist/{types-Cm9fjeYC.d.ts → types-CZTzbIzQ.d.ts} +2 -2
- package/dist/{types-HI_bbXka.d.cts → types-CmqT0jUf.d.cts} +1 -1
- package/dist/{types-HI_bbXka.d.ts → types-CmqT0jUf.d.ts} +1 -1
- package/dist/{types-Ck45Ex5S.d.cts → types-D0kTgUuL.d.cts} +1 -1
- package/dist/{types-Ck45Ex5S.d.ts → types-D0kTgUuL.d.ts} +1 -1
- package/dist/{types-D9eiB_9A.d.cts → types-D4bmW8rY.d.cts} +2 -2
- package/dist/{types-D9eiB_9A.d.ts → types-D4bmW8rY.d.ts} +2 -2
- package/dist/{types-CdCSIfvI.d.cts → types-DG5_iKuv.d.cts} +1 -1
- package/dist/{types-CdCSIfvI.d.ts → types-DG5_iKuv.d.ts} +1 -1
- package/dist/{types-CXlSn0I9.d.cts → types-DjxexghA.d.cts} +2 -2
- package/dist/{types-CXlSn0I9.d.ts → types-DjxexghA.d.ts} +2 -2
- package/dist/{types-CPaYBsMG.d.cts → types-pShrs3fN.d.cts} +2 -2
- package/dist/{types-CPaYBsMG.d.ts → types-pShrs3fN.d.ts} +2 -2
- package/package.json +16 -3
- package/src/core/session-types.ts +7 -0
- package/src/core/types.ts +1 -0
- package/src/drafts/draft11/codec.ts +11 -8
- package/src/drafts/draft11/types.ts +1 -1
- package/src/drafts/draft12/codec.ts +22 -16
- package/src/drafts/draft12/types.ts +2 -2
- package/src/drafts/draft13/codec.ts +14 -8
- package/src/drafts/draft13/types.ts +2 -2
- package/src/drafts/draft14/codec.ts +14 -8
- package/src/drafts/draft14/types.ts +1 -1
- package/src/drafts/draft15/codec.ts +14 -8
- package/src/drafts/draft15/types.ts +2 -2
- package/src/drafts/draft16/codec.ts +13 -7
- package/src/drafts/draft16/types.ts +2 -2
- package/src/drafts/draft17/codec.ts +12 -6
- package/src/drafts/draft17/types.ts +2 -2
- package/src/drafts/draft18/codec.ts +12 -6
- package/src/drafts/draft18/types.ts +2 -2
- package/src/drafts/draft19/codec.ts +37 -23
- package/src/drafts/draft19/types.ts +10 -7
- package/src/drafts/draft20/codec.ts +1749 -0
- package/src/drafts/draft20/data-streams.ts +1291 -0
- package/src/drafts/draft20/error-codes.ts +135 -0
- package/src/drafts/draft20/index.ts +165 -0
- package/src/drafts/draft20/messages.ts +68 -0
- package/src/drafts/draft20/rules.ts +107 -0
- package/src/drafts/draft20/session-fsm.ts +1063 -0
- package/src/drafts/draft20/session.ts +21 -0
- package/src/drafts/draft20/types.ts +461 -0
- package/src/index.ts +20 -2
- package/src/session.ts +4 -0
|
@@ -75,12 +75,12 @@ function encodeSetupOptions(opts: Draft19SetupOptions, writer: BufferWriter): vo
|
|
|
75
75
|
},
|
|
76
76
|
})
|
|
77
77
|
}
|
|
78
|
-
|
|
78
|
+
for (const token of opts.authorization_token ?? []) {
|
|
79
79
|
entries.push({
|
|
80
80
|
type: SETUP_OPT_AUTHORIZATION_TOKEN,
|
|
81
81
|
encode: (w) => {
|
|
82
82
|
const tmpW = new BufferWriter(64)
|
|
83
|
-
encodeAuthorizationToken(
|
|
83
|
+
encodeAuthorizationToken(token, tmpW)
|
|
84
84
|
const raw = tmpW.finish()
|
|
85
85
|
w.writeVarInt(BigInt(raw.byteLength))
|
|
86
86
|
w.writeBytes(raw)
|
|
@@ -191,7 +191,10 @@ function decodeSetupOptions(reader: BufferReader, payloadEnd: number): Draft19Se
|
|
|
191
191
|
if (optType === SETUP_OPT_PATH) {
|
|
192
192
|
result.path = textDecoder.decode(bytes)
|
|
193
193
|
} else if (optType === SETUP_OPT_AUTHORIZATION_TOKEN) {
|
|
194
|
-
result.authorization_token =
|
|
194
|
+
result.authorization_token = [
|
|
195
|
+
...(result.authorization_token ?? []),
|
|
196
|
+
decodeAuthorizationToken(new BufferReader(bytes)),
|
|
197
|
+
]
|
|
195
198
|
} else if (optType === SETUP_OPT_AUTHORITY) {
|
|
196
199
|
result.authority = textDecoder.decode(bytes)
|
|
197
200
|
} else if (optType === SETUP_OPT_MOQT_IMPLEMENTATION) {
|
|
@@ -403,12 +406,12 @@ function encodeParams(params: Draft19Params, writer: BufferWriter): void {
|
|
|
403
406
|
encode: (w) => w.writeVarInt(params.object_delivery_timeout!),
|
|
404
407
|
})
|
|
405
408
|
}
|
|
406
|
-
|
|
409
|
+
for (const token of params.authorization_token ?? []) {
|
|
407
410
|
entries.push({
|
|
408
411
|
type: PARAM_AUTHORIZATION_TOKEN,
|
|
409
412
|
encode: (w) => {
|
|
410
413
|
const tmpW = new BufferWriter(64)
|
|
411
|
-
encodeAuthorizationToken(
|
|
414
|
+
encodeAuthorizationToken(token, tmpW)
|
|
412
415
|
const raw = tmpW.finish()
|
|
413
416
|
w.writeVarInt(BigInt(raw.byteLength))
|
|
414
417
|
w.writeBytes(raw)
|
|
@@ -489,34 +492,34 @@ function encodeParams(params: Draft19Params, writer: BufferWriter): void {
|
|
|
489
492
|
encode: (w) => w.writeUint8(Number(params.group_order!)),
|
|
490
493
|
})
|
|
491
494
|
}
|
|
492
|
-
|
|
495
|
+
for (const filter of params.subgroup_filter ?? []) {
|
|
493
496
|
entries.push({
|
|
494
497
|
type: PARAM_SUBGROUP_FILTER,
|
|
495
|
-
encode: (w) => encodeRangeFilter(
|
|
498
|
+
encode: (w) => encodeRangeFilter(filter, false, w),
|
|
496
499
|
})
|
|
497
500
|
}
|
|
498
|
-
|
|
501
|
+
for (const filter of params.objectid_filter ?? []) {
|
|
499
502
|
entries.push({
|
|
500
503
|
type: PARAM_OBJECTID_FILTER,
|
|
501
|
-
encode: (w) => encodeRangeFilter(
|
|
504
|
+
encode: (w) => encodeRangeFilter(filter, false, w),
|
|
502
505
|
})
|
|
503
506
|
}
|
|
504
|
-
|
|
507
|
+
for (const filter of params.priority_filter ?? []) {
|
|
505
508
|
entries.push({
|
|
506
509
|
type: PARAM_PRIORITY_FILTER,
|
|
507
|
-
encode: (w) => encodeRangeFilter(
|
|
510
|
+
encode: (w) => encodeRangeFilter(filter, false, w),
|
|
508
511
|
})
|
|
509
512
|
}
|
|
510
|
-
|
|
513
|
+
for (const filter of params.object_property_filter ?? []) {
|
|
511
514
|
entries.push({
|
|
512
515
|
type: PARAM_OBJECT_PROPERTY_FILTER,
|
|
513
|
-
encode: (w) => encodeRangeFilter(
|
|
516
|
+
encode: (w) => encodeRangeFilter(filter, true, w),
|
|
514
517
|
})
|
|
515
518
|
}
|
|
516
|
-
|
|
519
|
+
for (const filter of params.track_property_filter ?? []) {
|
|
517
520
|
entries.push({
|
|
518
521
|
type: PARAM_TRACK_PROPERTY_FILTER,
|
|
519
|
-
encode: (w) => encodeRangeFilter(
|
|
522
|
+
encode: (w) => encodeRangeFilter(filter, true, w),
|
|
520
523
|
})
|
|
521
524
|
}
|
|
522
525
|
if (params.new_group_request !== undefined) {
|
|
@@ -587,7 +590,10 @@ function decodeParams(reader: BufferReader, messageType: string): Draft19Params
|
|
|
587
590
|
} else if (paramType === PARAM_AUTHORIZATION_TOKEN) {
|
|
588
591
|
const length = Number(reader.readVarInt())
|
|
589
592
|
const bytes = reader.readBytes(length)
|
|
590
|
-
result.authorization_token =
|
|
593
|
+
result.authorization_token = [
|
|
594
|
+
...(result.authorization_token ?? []),
|
|
595
|
+
decodeAuthorizationToken(new BufferReader(bytes)),
|
|
596
|
+
]
|
|
591
597
|
} else if (paramType === PARAM_RENDEZVOUS_TIMEOUT) {
|
|
592
598
|
result.rendezvous_timeout = reader.readVarInt()
|
|
593
599
|
} else if (paramType === PARAM_SUBGROUP_DELIVERY_TIMEOUT) {
|
|
@@ -632,15 +638,21 @@ function decodeParams(reader: BufferReader, messageType: string): Draft19Params
|
|
|
632
638
|
// uint8: single raw byte
|
|
633
639
|
result.group_order = BigInt(reader.readUint8())
|
|
634
640
|
} else if (paramType === PARAM_SUBGROUP_FILTER) {
|
|
635
|
-
result.subgroup_filter = decodeRangeFilter(reader, false)
|
|
641
|
+
result.subgroup_filter = [...(result.subgroup_filter ?? []), decodeRangeFilter(reader, false)]
|
|
636
642
|
} else if (paramType === PARAM_OBJECTID_FILTER) {
|
|
637
|
-
result.objectid_filter = decodeRangeFilter(reader, false)
|
|
643
|
+
result.objectid_filter = [...(result.objectid_filter ?? []), decodeRangeFilter(reader, false)]
|
|
638
644
|
} else if (paramType === PARAM_PRIORITY_FILTER) {
|
|
639
|
-
result.priority_filter = decodeRangeFilter(reader, false)
|
|
645
|
+
result.priority_filter = [...(result.priority_filter ?? []), decodeRangeFilter(reader, false)]
|
|
640
646
|
} else if (paramType === PARAM_OBJECT_PROPERTY_FILTER) {
|
|
641
|
-
result.object_property_filter =
|
|
647
|
+
result.object_property_filter = [
|
|
648
|
+
...(result.object_property_filter ?? []),
|
|
649
|
+
decodeRangeFilter(reader, true),
|
|
650
|
+
]
|
|
642
651
|
} else if (paramType === PARAM_TRACK_PROPERTY_FILTER) {
|
|
643
|
-
result.track_property_filter =
|
|
652
|
+
result.track_property_filter = [
|
|
653
|
+
...(result.track_property_filter ?? []),
|
|
654
|
+
decodeRangeFilter(reader, true),
|
|
655
|
+
]
|
|
644
656
|
} else if (paramType === PARAM_NEW_GROUP_REQUEST) {
|
|
645
657
|
result.new_group_request = reader.readVarInt()
|
|
646
658
|
} else if (paramType === PARAM_TRACK_NAMESPACE_PREFIX) {
|
|
@@ -1429,7 +1441,7 @@ export function createStreamDecoder(): TransformStream<Uint8Array, Draft19Messag
|
|
|
1429
1441
|
// ─── Codec Factory ─────────────────────────────────────────────────────────────
|
|
1430
1442
|
|
|
1431
1443
|
export interface Draft19Codec extends BaseCodec<Draft19Message> {
|
|
1432
|
-
readonly draft: '
|
|
1444
|
+
readonly draft: '19'
|
|
1433
1445
|
encodeSubgroupStream(stream: SubgroupStream): Uint8Array
|
|
1434
1446
|
encodeDatagram(dg: DatagramObject): Uint8Array
|
|
1435
1447
|
encodeFetchStream(stream: FetchStream): Uint8Array
|
|
@@ -1448,7 +1460,9 @@ export interface Draft19Codec extends BaseCodec<Draft19Message> {
|
|
|
1448
1460
|
|
|
1449
1461
|
export function createDraft19Codec(): Draft19Codec {
|
|
1450
1462
|
return {
|
|
1451
|
-
|
|
1463
|
+
// Was '18' — a copy-paste from draft18/codec.ts. createSessionState() keys
|
|
1464
|
+
// off codec.draft, so a draft-19 codec was handing back a draft-18 FSM.
|
|
1465
|
+
draft: '19',
|
|
1452
1466
|
encodeMessage,
|
|
1453
1467
|
decodeMessage,
|
|
1454
1468
|
encodeSubgroupStream,
|
|
@@ -18,7 +18,7 @@ export interface AuthorizationToken {
|
|
|
18
18
|
// Setup options (KVP encoding, no count prefix)
|
|
19
19
|
export interface Draft19SetupOptions {
|
|
20
20
|
path?: string // 0x01 odd
|
|
21
|
-
authorization_token?: AuthorizationToken // 0x03 odd
|
|
21
|
+
authorization_token?: readonly AuthorizationToken[] // 0x03 odd
|
|
22
22
|
max_auth_token_cache_size?: bigint // 0x04 even
|
|
23
23
|
authority?: string // 0x05 odd
|
|
24
24
|
max_filter_ranges?: bigint // 0x06 even (NEW in draft-19)
|
|
@@ -58,7 +58,7 @@ export interface LargestObject {
|
|
|
58
58
|
// Version-specific parameters (delta-encoded types, count-prefixed)
|
|
59
59
|
export interface Draft19Params {
|
|
60
60
|
object_delivery_timeout?: bigint // 0x02 varint (renamed from delivery_timeout in draft-17)
|
|
61
|
-
authorization_token?: AuthorizationToken // 0x03 length-prefixed nested
|
|
61
|
+
authorization_token?: readonly AuthorizationToken[] // 0x03 length-prefixed nested
|
|
62
62
|
rendezvous_timeout?: bigint // 0x04 varint
|
|
63
63
|
subgroup_delivery_timeout?: bigint // 0x06 varint (NEW in draft-18)
|
|
64
64
|
expires?: bigint // 0x08 varint
|
|
@@ -68,11 +68,14 @@ export interface Draft19Params {
|
|
|
68
68
|
subscriber_priority?: bigint // 0x20 uint8
|
|
69
69
|
location_filter?: LocationFilter // 0x21 length-prefixed (renamed from subscription_filter in draft-19)
|
|
70
70
|
group_order?: bigint // 0x22 uint8
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
// Section 5.1.3 permits each of the five more than once in a message: a
|
|
72
|
+
// filter parameter carries one SetID, so two alternatives over the same
|
|
73
|
+
// field need two parameters. A single filter is a one-element list.
|
|
74
|
+
subgroup_filter?: readonly RangeFilter[] // 0x25 length-prefixed (NEW in draft-19)
|
|
75
|
+
objectid_filter?: readonly RangeFilter[] // 0x26 length-prefixed (NEW in draft-19)
|
|
76
|
+
priority_filter?: readonly RangeFilter[] // 0x27 length-prefixed (NEW in draft-19)
|
|
77
|
+
object_property_filter?: readonly RangeFilter[] // 0x28 length-prefixed (NEW in draft-19)
|
|
78
|
+
track_property_filter?: readonly RangeFilter[] // 0x29 length-prefixed (NEW in draft-19)
|
|
76
79
|
new_group_request?: bigint // 0x32 varint
|
|
77
80
|
track_namespace_prefix?: string[] // 0x34 Track Namespace encoding (NEW in draft-18)
|
|
78
81
|
unknown?: UnknownParam[]
|