livekit-client 0.14.1 → 0.15.1

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 (104) hide show
  1. package/.github/workflows/{lint.yaml → test.yaml} +7 -4
  2. package/.gitmodules +3 -0
  3. package/README.md +46 -14
  4. package/dist/api/SignalClient.d.ts +7 -32
  5. package/dist/api/SignalClient.js +37 -8
  6. package/dist/api/SignalClient.js.map +1 -1
  7. package/dist/connect.d.ts +1 -1
  8. package/dist/connect.js +73 -59
  9. package/dist/connect.js.map +1 -1
  10. package/dist/index.d.ts +3 -3
  11. package/dist/index.js +4 -3
  12. package/dist/index.js.map +1 -1
  13. package/dist/logger.d.ts +10 -0
  14. package/dist/logger.js +15 -0
  15. package/dist/logger.js.map +1 -1
  16. package/dist/options.d.ts +83 -19
  17. package/dist/options.js +0 -10
  18. package/dist/options.js.map +1 -1
  19. package/dist/proto/livekit_models.d.ts +27 -1
  20. package/dist/proto/livekit_models.js +188 -3
  21. package/dist/proto/livekit_models.js.map +1 -1
  22. package/dist/proto/livekit_rtc.d.ts +114 -7
  23. package/dist/proto/livekit_rtc.js +783 -30
  24. package/dist/proto/livekit_rtc.js.map +1 -1
  25. package/dist/room/RTCEngine.d.ts +4 -2
  26. package/dist/room/RTCEngine.js +31 -35
  27. package/dist/room/RTCEngine.js.map +1 -1
  28. package/dist/room/Room.d.ts +16 -17
  29. package/dist/room/Room.js +125 -77
  30. package/dist/room/Room.js.map +1 -1
  31. package/dist/room/events.d.ts +115 -6
  32. package/dist/room/events.js +114 -5
  33. package/dist/room/events.js.map +1 -1
  34. package/dist/room/participant/LocalParticipant.d.ts +29 -9
  35. package/dist/room/participant/LocalParticipant.js +220 -160
  36. package/dist/room/participant/LocalParticipant.js.map +1 -1
  37. package/dist/room/participant/Participant.js +2 -1
  38. package/dist/room/participant/Participant.js.map +1 -1
  39. package/dist/room/participant/RemoteParticipant.d.ts +1 -1
  40. package/dist/room/participant/RemoteParticipant.js +8 -5
  41. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  42. package/dist/room/participant/publishUtils.d.ts +11 -0
  43. package/dist/room/participant/publishUtils.js +148 -0
  44. package/dist/room/participant/publishUtils.js.map +1 -0
  45. package/dist/room/participant/publishUtils.test.d.ts +1 -0
  46. package/dist/room/participant/publishUtils.test.js +79 -0
  47. package/dist/room/participant/publishUtils.test.js.map +1 -0
  48. package/dist/room/stats.d.ts +21 -6
  49. package/dist/room/stats.js +22 -1
  50. package/dist/room/stats.js.map +1 -1
  51. package/dist/room/track/LocalAudioTrack.d.ts +8 -3
  52. package/dist/room/track/LocalAudioTrack.js +49 -3
  53. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  54. package/dist/room/track/LocalTrack.d.ts +4 -3
  55. package/dist/room/track/LocalTrack.js +6 -48
  56. package/dist/room/track/LocalTrack.js.map +1 -1
  57. package/dist/room/track/LocalVideoTrack.d.ts +13 -4
  58. package/dist/room/track/LocalVideoTrack.js +150 -57
  59. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  60. package/dist/room/track/LocalVideoTrack.test.d.ts +1 -0
  61. package/dist/room/track/LocalVideoTrack.test.js +68 -0
  62. package/dist/room/track/LocalVideoTrack.test.js.map +1 -0
  63. package/dist/room/track/RemoteAudioTrack.d.ts +7 -0
  64. package/dist/room/track/RemoteAudioTrack.js +61 -0
  65. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  66. package/dist/room/track/RemoteTrackPublication.d.ts +2 -3
  67. package/dist/room/track/RemoteTrackPublication.js +11 -10
  68. package/dist/room/track/RemoteTrackPublication.js.map +1 -1
  69. package/dist/room/track/RemoteVideoTrack.d.ts +10 -6
  70. package/dist/room/track/RemoteVideoTrack.js +97 -44
  71. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  72. package/dist/room/track/Track.d.ts +10 -2
  73. package/dist/room/track/Track.js +29 -2
  74. package/dist/room/track/Track.js.map +1 -1
  75. package/dist/room/track/create.d.ts +4 -6
  76. package/dist/room/track/create.js +10 -57
  77. package/dist/room/track/create.js.map +1 -1
  78. package/dist/room/track/defaults.d.ts +4 -0
  79. package/dist/room/track/defaults.js +21 -0
  80. package/dist/room/track/defaults.js.map +1 -0
  81. package/dist/room/track/options.d.ts +15 -65
  82. package/dist/room/track/options.js +14 -13
  83. package/dist/room/track/options.js.map +1 -1
  84. package/dist/room/track/utils.d.ts +3 -0
  85. package/dist/room/track/utils.js +68 -0
  86. package/dist/room/track/utils.js.map +1 -0
  87. package/dist/room/track/utils.test.d.ts +1 -0
  88. package/dist/room/track/utils.test.js +85 -0
  89. package/dist/room/track/utils.test.js.map +1 -0
  90. package/dist/room/utils.d.ts +7 -1
  91. package/dist/room/utils.js +29 -6
  92. package/dist/room/utils.js.map +1 -1
  93. package/dist/version.d.ts +1 -1
  94. package/dist/version.js +1 -1
  95. package/example/index.html +194 -178
  96. package/example/sample.ts +454 -325
  97. package/example/styles.css +144 -0
  98. package/example/webpack.config.js +1 -1
  99. package/jest.config.js +6 -0
  100. package/package.json +10 -7
  101. package/tsconfig.eslint.json +8 -1
  102. package/dist/room/defaults.d.ts +0 -5
  103. package/dist/room/defaults.js +0 -32
  104. package/dist/room/defaults.js.map +0 -1
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ConnectionQualityUpdate = exports.ConnectionQualityInfo = exports.RoomUpdate = exports.SpeakersChanged = exports.ICEServer = exports.LeaveRequest = exports.UpdateTrackSettings = exports.UpdateSubscription = exports.ParticipantUpdate = exports.SessionDescription = exports.TrackPublishedResponse = exports.JoinResponse = exports.MuteTrackRequest = exports.TrickleRequest = exports.AddTrackRequest = exports.SignalResponse = exports.SignalRequest = exports.videoQualityToJSON = exports.videoQualityFromJSON = exports.VideoQuality = exports.signalTargetToJSON = exports.signalTargetFromJSON = exports.SignalTarget = exports.protobufPackage = void 0;
6
+ exports.SubscriptionPermissionUpdate = exports.UpdateSubscriptionPermissions = exports.TrackPermission = exports.SubscribedQualityUpdate = exports.SubscribedQuality = exports.StreamStateUpdate = exports.StreamStateInfo = exports.ConnectionQualityUpdate = exports.ConnectionQualityInfo = exports.RoomUpdate = exports.SpeakersChanged = exports.ICEServer = exports.UpdateVideoLayers = exports.LeaveRequest = exports.UpdateTrackSettings = exports.UpdateSubscription = exports.ParticipantUpdate = exports.SessionDescription = exports.TrackPublishedResponse = exports.JoinResponse = exports.MuteTrackRequest = exports.TrickleRequest = exports.AddTrackRequest = exports.SignalResponse = exports.SignalRequest = exports.streamStateToJSON = exports.streamStateFromJSON = exports.StreamState = exports.signalTargetToJSON = exports.signalTargetFromJSON = exports.SignalTarget = exports.protobufPackage = void 0;
7
7
  /* eslint-disable */
8
8
  const long_1 = __importDefault(require("long"));
9
9
  const minimal_1 = __importDefault(require("protobufjs/minimal"));
@@ -41,44 +41,38 @@ function signalTargetToJSON(object) {
41
41
  }
42
42
  }
43
43
  exports.signalTargetToJSON = signalTargetToJSON;
44
- var VideoQuality;
45
- (function (VideoQuality) {
46
- VideoQuality[VideoQuality["LOW"] = 0] = "LOW";
47
- VideoQuality[VideoQuality["MEDIUM"] = 1] = "MEDIUM";
48
- VideoQuality[VideoQuality["HIGH"] = 2] = "HIGH";
49
- VideoQuality[VideoQuality["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
50
- })(VideoQuality = exports.VideoQuality || (exports.VideoQuality = {}));
51
- function videoQualityFromJSON(object) {
44
+ var StreamState;
45
+ (function (StreamState) {
46
+ StreamState[StreamState["ACTIVE"] = 0] = "ACTIVE";
47
+ StreamState[StreamState["PAUSED"] = 1] = "PAUSED";
48
+ StreamState[StreamState["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
49
+ })(StreamState = exports.StreamState || (exports.StreamState = {}));
50
+ function streamStateFromJSON(object) {
52
51
  switch (object) {
53
52
  case 0:
54
- case "LOW":
55
- return VideoQuality.LOW;
53
+ case "ACTIVE":
54
+ return StreamState.ACTIVE;
56
55
  case 1:
57
- case "MEDIUM":
58
- return VideoQuality.MEDIUM;
59
- case 2:
60
- case "HIGH":
61
- return VideoQuality.HIGH;
56
+ case "PAUSED":
57
+ return StreamState.PAUSED;
62
58
  case -1:
63
59
  case "UNRECOGNIZED":
64
60
  default:
65
- return VideoQuality.UNRECOGNIZED;
61
+ return StreamState.UNRECOGNIZED;
66
62
  }
67
63
  }
68
- exports.videoQualityFromJSON = videoQualityFromJSON;
69
- function videoQualityToJSON(object) {
64
+ exports.streamStateFromJSON = streamStateFromJSON;
65
+ function streamStateToJSON(object) {
70
66
  switch (object) {
71
- case VideoQuality.LOW:
72
- return "LOW";
73
- case VideoQuality.MEDIUM:
74
- return "MEDIUM";
75
- case VideoQuality.HIGH:
76
- return "HIGH";
67
+ case StreamState.ACTIVE:
68
+ return "ACTIVE";
69
+ case StreamState.PAUSED:
70
+ return "PAUSED";
77
71
  default:
78
72
  return "UNKNOWN";
79
73
  }
80
74
  }
81
- exports.videoQualityToJSON = videoQualityToJSON;
75
+ exports.streamStateToJSON = streamStateToJSON;
82
76
  const baseSignalRequest = {};
83
77
  exports.SignalRequest = {
84
78
  encode(message, writer = minimal_1.default.Writer.create()) {
@@ -106,6 +100,12 @@ exports.SignalRequest = {
106
100
  if (message.leave !== undefined) {
107
101
  exports.LeaveRequest.encode(message.leave, writer.uint32(66).fork()).ldelim();
108
102
  }
103
+ if (message.updateLayers !== undefined) {
104
+ exports.UpdateVideoLayers.encode(message.updateLayers, writer.uint32(82).fork()).ldelim();
105
+ }
106
+ if (message.subscriptionPermissions !== undefined) {
107
+ exports.UpdateSubscriptionPermissions.encode(message.subscriptionPermissions, writer.uint32(90).fork()).ldelim();
108
+ }
109
109
  return writer;
110
110
  },
111
111
  decode(input, length) {
@@ -139,6 +139,13 @@ exports.SignalRequest = {
139
139
  case 8:
140
140
  message.leave = exports.LeaveRequest.decode(reader, reader.uint32());
141
141
  break;
142
+ case 10:
143
+ message.updateLayers = exports.UpdateVideoLayers.decode(reader, reader.uint32());
144
+ break;
145
+ case 11:
146
+ message.subscriptionPermissions =
147
+ exports.UpdateSubscriptionPermissions.decode(reader, reader.uint32());
148
+ break;
142
149
  default:
143
150
  reader.skipType(tag & 7);
144
151
  break;
@@ -196,6 +203,19 @@ exports.SignalRequest = {
196
203
  else {
197
204
  message.leave = undefined;
198
205
  }
206
+ if (object.updateLayers !== undefined && object.updateLayers !== null) {
207
+ message.updateLayers = exports.UpdateVideoLayers.fromJSON(object.updateLayers);
208
+ }
209
+ else {
210
+ message.updateLayers = undefined;
211
+ }
212
+ if (object.subscriptionPermissions !== undefined &&
213
+ object.subscriptionPermissions !== null) {
214
+ message.subscriptionPermissions = exports.UpdateSubscriptionPermissions.fromJSON(object.subscriptionPermissions);
215
+ }
216
+ else {
217
+ message.subscriptionPermissions = undefined;
218
+ }
199
219
  return message;
200
220
  },
201
221
  toJSON(message) {
@@ -232,6 +252,14 @@ exports.SignalRequest = {
232
252
  (obj.leave = message.leave
233
253
  ? exports.LeaveRequest.toJSON(message.leave)
234
254
  : undefined);
255
+ message.updateLayers !== undefined &&
256
+ (obj.updateLayers = message.updateLayers
257
+ ? exports.UpdateVideoLayers.toJSON(message.updateLayers)
258
+ : undefined);
259
+ message.subscriptionPermissions !== undefined &&
260
+ (obj.subscriptionPermissions = message.subscriptionPermissions
261
+ ? exports.UpdateSubscriptionPermissions.toJSON(message.subscriptionPermissions)
262
+ : undefined);
235
263
  return obj;
236
264
  },
237
265
  fromPartial(object) {
@@ -284,6 +312,20 @@ exports.SignalRequest = {
284
312
  else {
285
313
  message.leave = undefined;
286
314
  }
315
+ if (object.updateLayers !== undefined && object.updateLayers !== null) {
316
+ message.updateLayers = exports.UpdateVideoLayers.fromPartial(object.updateLayers);
317
+ }
318
+ else {
319
+ message.updateLayers = undefined;
320
+ }
321
+ if (object.subscriptionPermissions !== undefined &&
322
+ object.subscriptionPermissions !== null) {
323
+ message.subscriptionPermissions =
324
+ exports.UpdateSubscriptionPermissions.fromPartial(object.subscriptionPermissions);
325
+ }
326
+ else {
327
+ message.subscriptionPermissions = undefined;
328
+ }
287
329
  return message;
288
330
  },
289
331
  };
@@ -323,6 +365,15 @@ exports.SignalResponse = {
323
365
  if (message.connectionQuality !== undefined) {
324
366
  exports.ConnectionQualityUpdate.encode(message.connectionQuality, writer.uint32(98).fork()).ldelim();
325
367
  }
368
+ if (message.streamStateUpdate !== undefined) {
369
+ exports.StreamStateUpdate.encode(message.streamStateUpdate, writer.uint32(106).fork()).ldelim();
370
+ }
371
+ if (message.subscribedQualityUpdate !== undefined) {
372
+ exports.SubscribedQualityUpdate.encode(message.subscribedQualityUpdate, writer.uint32(114).fork()).ldelim();
373
+ }
374
+ if (message.subscriptionPermissionUpdate !== undefined) {
375
+ exports.SubscriptionPermissionUpdate.encode(message.subscriptionPermissionUpdate, writer.uint32(122).fork()).ldelim();
376
+ }
326
377
  return writer;
327
378
  },
328
379
  decode(input, length) {
@@ -365,6 +416,16 @@ exports.SignalResponse = {
365
416
  case 12:
366
417
  message.connectionQuality = exports.ConnectionQualityUpdate.decode(reader, reader.uint32());
367
418
  break;
419
+ case 13:
420
+ message.streamStateUpdate = exports.StreamStateUpdate.decode(reader, reader.uint32());
421
+ break;
422
+ case 14:
423
+ message.subscribedQualityUpdate = exports.SubscribedQualityUpdate.decode(reader, reader.uint32());
424
+ break;
425
+ case 15:
426
+ message.subscriptionPermissionUpdate =
427
+ exports.SubscriptionPermissionUpdate.decode(reader, reader.uint32());
428
+ break;
368
429
  default:
369
430
  reader.skipType(tag & 7);
370
431
  break;
@@ -442,6 +503,28 @@ exports.SignalResponse = {
442
503
  else {
443
504
  message.connectionQuality = undefined;
444
505
  }
506
+ if (object.streamStateUpdate !== undefined &&
507
+ object.streamStateUpdate !== null) {
508
+ message.streamStateUpdate = exports.StreamStateUpdate.fromJSON(object.streamStateUpdate);
509
+ }
510
+ else {
511
+ message.streamStateUpdate = undefined;
512
+ }
513
+ if (object.subscribedQualityUpdate !== undefined &&
514
+ object.subscribedQualityUpdate !== null) {
515
+ message.subscribedQualityUpdate = exports.SubscribedQualityUpdate.fromJSON(object.subscribedQualityUpdate);
516
+ }
517
+ else {
518
+ message.subscribedQualityUpdate = undefined;
519
+ }
520
+ if (object.subscriptionPermissionUpdate !== undefined &&
521
+ object.subscriptionPermissionUpdate !== null) {
522
+ message.subscriptionPermissionUpdate =
523
+ exports.SubscriptionPermissionUpdate.fromJSON(object.subscriptionPermissionUpdate);
524
+ }
525
+ else {
526
+ message.subscriptionPermissionUpdate = undefined;
527
+ }
445
528
  return message;
446
529
  },
447
530
  toJSON(message) {
@@ -488,6 +571,18 @@ exports.SignalResponse = {
488
571
  (obj.connectionQuality = message.connectionQuality
489
572
  ? exports.ConnectionQualityUpdate.toJSON(message.connectionQuality)
490
573
  : undefined);
574
+ message.streamStateUpdate !== undefined &&
575
+ (obj.streamStateUpdate = message.streamStateUpdate
576
+ ? exports.StreamStateUpdate.toJSON(message.streamStateUpdate)
577
+ : undefined);
578
+ message.subscribedQualityUpdate !== undefined &&
579
+ (obj.subscribedQualityUpdate = message.subscribedQualityUpdate
580
+ ? exports.SubscribedQualityUpdate.toJSON(message.subscribedQualityUpdate)
581
+ : undefined);
582
+ message.subscriptionPermissionUpdate !== undefined &&
583
+ (obj.subscriptionPermissionUpdate = message.subscriptionPermissionUpdate
584
+ ? exports.SubscriptionPermissionUpdate.toJSON(message.subscriptionPermissionUpdate)
585
+ : undefined);
491
586
  return obj;
492
587
  },
493
588
  fromPartial(object) {
@@ -560,6 +655,28 @@ exports.SignalResponse = {
560
655
  else {
561
656
  message.connectionQuality = undefined;
562
657
  }
658
+ if (object.streamStateUpdate !== undefined &&
659
+ object.streamStateUpdate !== null) {
660
+ message.streamStateUpdate = exports.StreamStateUpdate.fromPartial(object.streamStateUpdate);
661
+ }
662
+ else {
663
+ message.streamStateUpdate = undefined;
664
+ }
665
+ if (object.subscribedQualityUpdate !== undefined &&
666
+ object.subscribedQualityUpdate !== null) {
667
+ message.subscribedQualityUpdate = exports.SubscribedQualityUpdate.fromPartial(object.subscribedQualityUpdate);
668
+ }
669
+ else {
670
+ message.subscribedQualityUpdate = undefined;
671
+ }
672
+ if (object.subscriptionPermissionUpdate !== undefined &&
673
+ object.subscriptionPermissionUpdate !== null) {
674
+ message.subscriptionPermissionUpdate =
675
+ exports.SubscriptionPermissionUpdate.fromPartial(object.subscriptionPermissionUpdate);
676
+ }
677
+ else {
678
+ message.subscriptionPermissionUpdate = undefined;
679
+ }
563
680
  return message;
564
681
  },
565
682
  };
@@ -599,12 +716,16 @@ exports.AddTrackRequest = {
599
716
  if (message.source !== 0) {
600
717
  writer.uint32(64).int32(message.source);
601
718
  }
719
+ for (const v of message.layers) {
720
+ livekit_models_1.VideoLayer.encode(v, writer.uint32(74).fork()).ldelim();
721
+ }
602
722
  return writer;
603
723
  },
604
724
  decode(input, length) {
605
725
  const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
606
726
  let end = length === undefined ? reader.len : reader.pos + length;
607
727
  const message = Object.assign({}, baseAddTrackRequest);
728
+ message.layers = [];
608
729
  while (reader.pos < end) {
609
730
  const tag = reader.uint32();
610
731
  switch (tag >>> 3) {
@@ -632,6 +753,9 @@ exports.AddTrackRequest = {
632
753
  case 8:
633
754
  message.source = reader.int32();
634
755
  break;
756
+ case 9:
757
+ message.layers.push(livekit_models_1.VideoLayer.decode(reader, reader.uint32()));
758
+ break;
635
759
  default:
636
760
  reader.skipType(tag & 7);
637
761
  break;
@@ -641,6 +765,7 @@ exports.AddTrackRequest = {
641
765
  },
642
766
  fromJSON(object) {
643
767
  const message = Object.assign({}, baseAddTrackRequest);
768
+ message.layers = [];
644
769
  if (object.cid !== undefined && object.cid !== null) {
645
770
  message.cid = String(object.cid);
646
771
  }
@@ -689,6 +814,11 @@ exports.AddTrackRequest = {
689
814
  else {
690
815
  message.source = 0;
691
816
  }
817
+ if (object.layers !== undefined && object.layers !== null) {
818
+ for (const e of object.layers) {
819
+ message.layers.push(livekit_models_1.VideoLayer.fromJSON(e));
820
+ }
821
+ }
692
822
  return message;
693
823
  },
694
824
  toJSON(message) {
@@ -702,6 +832,12 @@ exports.AddTrackRequest = {
702
832
  message.disableDtx !== undefined && (obj.disableDtx = message.disableDtx);
703
833
  message.source !== undefined &&
704
834
  (obj.source = livekit_models_1.trackSourceToJSON(message.source));
835
+ if (message.layers) {
836
+ obj.layers = message.layers.map((e) => e ? livekit_models_1.VideoLayer.toJSON(e) : undefined);
837
+ }
838
+ else {
839
+ obj.layers = [];
840
+ }
705
841
  return obj;
706
842
  },
707
843
  fromPartial(object) {
@@ -715,6 +851,12 @@ exports.AddTrackRequest = {
715
851
  message.muted = (_f = object.muted) !== null && _f !== void 0 ? _f : false;
716
852
  message.disableDtx = (_g = object.disableDtx) !== null && _g !== void 0 ? _g : false;
717
853
  message.source = (_h = object.source) !== null && _h !== void 0 ? _h : 0;
854
+ message.layers = [];
855
+ if (object.layers !== undefined && object.layers !== null) {
856
+ for (const e of object.layers) {
857
+ message.layers.push(livekit_models_1.VideoLayer.fromPartial(e));
858
+ }
859
+ }
718
860
  return message;
719
861
  },
720
862
  };
@@ -1347,7 +1489,7 @@ exports.UpdateTrackSettings = {
1347
1489
  message.disabled = false;
1348
1490
  }
1349
1491
  if (object.quality !== undefined && object.quality !== null) {
1350
- message.quality = videoQualityFromJSON(object.quality);
1492
+ message.quality = livekit_models_1.videoQualityFromJSON(object.quality);
1351
1493
  }
1352
1494
  else {
1353
1495
  message.quality = 0;
@@ -1376,7 +1518,7 @@ exports.UpdateTrackSettings = {
1376
1518
  }
1377
1519
  message.disabled !== undefined && (obj.disabled = message.disabled);
1378
1520
  message.quality !== undefined &&
1379
- (obj.quality = videoQualityToJSON(message.quality));
1521
+ (obj.quality = livekit_models_1.videoQualityToJSON(message.quality));
1380
1522
  message.width !== undefined && (obj.width = message.width);
1381
1523
  message.height !== undefined && (obj.height = message.height);
1382
1524
  return obj;
@@ -1445,6 +1587,78 @@ exports.LeaveRequest = {
1445
1587
  return message;
1446
1588
  },
1447
1589
  };
1590
+ const baseUpdateVideoLayers = { trackSid: "" };
1591
+ exports.UpdateVideoLayers = {
1592
+ encode(message, writer = minimal_1.default.Writer.create()) {
1593
+ if (message.trackSid !== "") {
1594
+ writer.uint32(10).string(message.trackSid);
1595
+ }
1596
+ for (const v of message.layers) {
1597
+ livekit_models_1.VideoLayer.encode(v, writer.uint32(18).fork()).ldelim();
1598
+ }
1599
+ return writer;
1600
+ },
1601
+ decode(input, length) {
1602
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
1603
+ let end = length === undefined ? reader.len : reader.pos + length;
1604
+ const message = Object.assign({}, baseUpdateVideoLayers);
1605
+ message.layers = [];
1606
+ while (reader.pos < end) {
1607
+ const tag = reader.uint32();
1608
+ switch (tag >>> 3) {
1609
+ case 1:
1610
+ message.trackSid = reader.string();
1611
+ break;
1612
+ case 2:
1613
+ message.layers.push(livekit_models_1.VideoLayer.decode(reader, reader.uint32()));
1614
+ break;
1615
+ default:
1616
+ reader.skipType(tag & 7);
1617
+ break;
1618
+ }
1619
+ }
1620
+ return message;
1621
+ },
1622
+ fromJSON(object) {
1623
+ const message = Object.assign({}, baseUpdateVideoLayers);
1624
+ message.layers = [];
1625
+ if (object.trackSid !== undefined && object.trackSid !== null) {
1626
+ message.trackSid = String(object.trackSid);
1627
+ }
1628
+ else {
1629
+ message.trackSid = "";
1630
+ }
1631
+ if (object.layers !== undefined && object.layers !== null) {
1632
+ for (const e of object.layers) {
1633
+ message.layers.push(livekit_models_1.VideoLayer.fromJSON(e));
1634
+ }
1635
+ }
1636
+ return message;
1637
+ },
1638
+ toJSON(message) {
1639
+ const obj = {};
1640
+ message.trackSid !== undefined && (obj.trackSid = message.trackSid);
1641
+ if (message.layers) {
1642
+ obj.layers = message.layers.map((e) => e ? livekit_models_1.VideoLayer.toJSON(e) : undefined);
1643
+ }
1644
+ else {
1645
+ obj.layers = [];
1646
+ }
1647
+ return obj;
1648
+ },
1649
+ fromPartial(object) {
1650
+ var _a;
1651
+ const message = Object.assign({}, baseUpdateVideoLayers);
1652
+ message.trackSid = (_a = object.trackSid) !== null && _a !== void 0 ? _a : "";
1653
+ message.layers = [];
1654
+ if (object.layers !== undefined && object.layers !== null) {
1655
+ for (const e of object.layers) {
1656
+ message.layers.push(livekit_models_1.VideoLayer.fromPartial(e));
1657
+ }
1658
+ }
1659
+ return message;
1660
+ },
1661
+ };
1448
1662
  const baseICEServer = { urls: "", username: "", credential: "" };
1449
1663
  exports.ICEServer = {
1450
1664
  encode(message, writer = minimal_1.default.Writer.create()) {
@@ -1640,7 +1854,11 @@ exports.RoomUpdate = {
1640
1854
  return message;
1641
1855
  },
1642
1856
  };
1643
- const baseConnectionQualityInfo = { participantSid: "", quality: 0 };
1857
+ const baseConnectionQualityInfo = {
1858
+ participantSid: "",
1859
+ quality: 0,
1860
+ score: 0,
1861
+ };
1644
1862
  exports.ConnectionQualityInfo = {
1645
1863
  encode(message, writer = minimal_1.default.Writer.create()) {
1646
1864
  if (message.participantSid !== "") {
@@ -1649,6 +1867,9 @@ exports.ConnectionQualityInfo = {
1649
1867
  if (message.quality !== 0) {
1650
1868
  writer.uint32(16).int32(message.quality);
1651
1869
  }
1870
+ if (message.score !== 0) {
1871
+ writer.uint32(29).float(message.score);
1872
+ }
1652
1873
  return writer;
1653
1874
  },
1654
1875
  decode(input, length) {
@@ -1664,6 +1885,9 @@ exports.ConnectionQualityInfo = {
1664
1885
  case 2:
1665
1886
  message.quality = reader.int32();
1666
1887
  break;
1888
+ case 3:
1889
+ message.score = reader.float();
1890
+ break;
1667
1891
  default:
1668
1892
  reader.skipType(tag & 7);
1669
1893
  break;
@@ -1685,6 +1909,12 @@ exports.ConnectionQualityInfo = {
1685
1909
  else {
1686
1910
  message.quality = 0;
1687
1911
  }
1912
+ if (object.score !== undefined && object.score !== null) {
1913
+ message.score = Number(object.score);
1914
+ }
1915
+ else {
1916
+ message.score = 0;
1917
+ }
1688
1918
  return message;
1689
1919
  },
1690
1920
  toJSON(message) {
@@ -1693,13 +1923,15 @@ exports.ConnectionQualityInfo = {
1693
1923
  (obj.participantSid = message.participantSid);
1694
1924
  message.quality !== undefined &&
1695
1925
  (obj.quality = livekit_models_1.connectionQualityToJSON(message.quality));
1926
+ message.score !== undefined && (obj.score = message.score);
1696
1927
  return obj;
1697
1928
  },
1698
1929
  fromPartial(object) {
1699
- var _a, _b;
1930
+ var _a, _b, _c;
1700
1931
  const message = Object.assign({}, baseConnectionQualityInfo);
1701
1932
  message.participantSid = (_a = object.participantSid) !== null && _a !== void 0 ? _a : "";
1702
1933
  message.quality = (_b = object.quality) !== null && _b !== void 0 ? _b : 0;
1934
+ message.score = (_c = object.score) !== null && _c !== void 0 ? _c : 0;
1703
1935
  return message;
1704
1936
  },
1705
1937
  };
@@ -1760,6 +1992,527 @@ exports.ConnectionQualityUpdate = {
1760
1992
  return message;
1761
1993
  },
1762
1994
  };
1995
+ const baseStreamStateInfo = {
1996
+ participantSid: "",
1997
+ trackSid: "",
1998
+ state: 0,
1999
+ };
2000
+ exports.StreamStateInfo = {
2001
+ encode(message, writer = minimal_1.default.Writer.create()) {
2002
+ if (message.participantSid !== "") {
2003
+ writer.uint32(10).string(message.participantSid);
2004
+ }
2005
+ if (message.trackSid !== "") {
2006
+ writer.uint32(18).string(message.trackSid);
2007
+ }
2008
+ if (message.state !== 0) {
2009
+ writer.uint32(24).int32(message.state);
2010
+ }
2011
+ return writer;
2012
+ },
2013
+ decode(input, length) {
2014
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
2015
+ let end = length === undefined ? reader.len : reader.pos + length;
2016
+ const message = Object.assign({}, baseStreamStateInfo);
2017
+ while (reader.pos < end) {
2018
+ const tag = reader.uint32();
2019
+ switch (tag >>> 3) {
2020
+ case 1:
2021
+ message.participantSid = reader.string();
2022
+ break;
2023
+ case 2:
2024
+ message.trackSid = reader.string();
2025
+ break;
2026
+ case 3:
2027
+ message.state = reader.int32();
2028
+ break;
2029
+ default:
2030
+ reader.skipType(tag & 7);
2031
+ break;
2032
+ }
2033
+ }
2034
+ return message;
2035
+ },
2036
+ fromJSON(object) {
2037
+ const message = Object.assign({}, baseStreamStateInfo);
2038
+ if (object.participantSid !== undefined && object.participantSid !== null) {
2039
+ message.participantSid = String(object.participantSid);
2040
+ }
2041
+ else {
2042
+ message.participantSid = "";
2043
+ }
2044
+ if (object.trackSid !== undefined && object.trackSid !== null) {
2045
+ message.trackSid = String(object.trackSid);
2046
+ }
2047
+ else {
2048
+ message.trackSid = "";
2049
+ }
2050
+ if (object.state !== undefined && object.state !== null) {
2051
+ message.state = streamStateFromJSON(object.state);
2052
+ }
2053
+ else {
2054
+ message.state = 0;
2055
+ }
2056
+ return message;
2057
+ },
2058
+ toJSON(message) {
2059
+ const obj = {};
2060
+ message.participantSid !== undefined &&
2061
+ (obj.participantSid = message.participantSid);
2062
+ message.trackSid !== undefined && (obj.trackSid = message.trackSid);
2063
+ message.state !== undefined &&
2064
+ (obj.state = streamStateToJSON(message.state));
2065
+ return obj;
2066
+ },
2067
+ fromPartial(object) {
2068
+ var _a, _b, _c;
2069
+ const message = Object.assign({}, baseStreamStateInfo);
2070
+ message.participantSid = (_a = object.participantSid) !== null && _a !== void 0 ? _a : "";
2071
+ message.trackSid = (_b = object.trackSid) !== null && _b !== void 0 ? _b : "";
2072
+ message.state = (_c = object.state) !== null && _c !== void 0 ? _c : 0;
2073
+ return message;
2074
+ },
2075
+ };
2076
+ const baseStreamStateUpdate = {};
2077
+ exports.StreamStateUpdate = {
2078
+ encode(message, writer = minimal_1.default.Writer.create()) {
2079
+ for (const v of message.streamStates) {
2080
+ exports.StreamStateInfo.encode(v, writer.uint32(10).fork()).ldelim();
2081
+ }
2082
+ return writer;
2083
+ },
2084
+ decode(input, length) {
2085
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
2086
+ let end = length === undefined ? reader.len : reader.pos + length;
2087
+ const message = Object.assign({}, baseStreamStateUpdate);
2088
+ message.streamStates = [];
2089
+ while (reader.pos < end) {
2090
+ const tag = reader.uint32();
2091
+ switch (tag >>> 3) {
2092
+ case 1:
2093
+ message.streamStates.push(exports.StreamStateInfo.decode(reader, reader.uint32()));
2094
+ break;
2095
+ default:
2096
+ reader.skipType(tag & 7);
2097
+ break;
2098
+ }
2099
+ }
2100
+ return message;
2101
+ },
2102
+ fromJSON(object) {
2103
+ const message = Object.assign({}, baseStreamStateUpdate);
2104
+ message.streamStates = [];
2105
+ if (object.streamStates !== undefined && object.streamStates !== null) {
2106
+ for (const e of object.streamStates) {
2107
+ message.streamStates.push(exports.StreamStateInfo.fromJSON(e));
2108
+ }
2109
+ }
2110
+ return message;
2111
+ },
2112
+ toJSON(message) {
2113
+ const obj = {};
2114
+ if (message.streamStates) {
2115
+ obj.streamStates = message.streamStates.map((e) => e ? exports.StreamStateInfo.toJSON(e) : undefined);
2116
+ }
2117
+ else {
2118
+ obj.streamStates = [];
2119
+ }
2120
+ return obj;
2121
+ },
2122
+ fromPartial(object) {
2123
+ const message = Object.assign({}, baseStreamStateUpdate);
2124
+ message.streamStates = [];
2125
+ if (object.streamStates !== undefined && object.streamStates !== null) {
2126
+ for (const e of object.streamStates) {
2127
+ message.streamStates.push(exports.StreamStateInfo.fromPartial(e));
2128
+ }
2129
+ }
2130
+ return message;
2131
+ },
2132
+ };
2133
+ const baseSubscribedQuality = { quality: 0, enabled: false };
2134
+ exports.SubscribedQuality = {
2135
+ encode(message, writer = minimal_1.default.Writer.create()) {
2136
+ if (message.quality !== 0) {
2137
+ writer.uint32(8).int32(message.quality);
2138
+ }
2139
+ if (message.enabled === true) {
2140
+ writer.uint32(16).bool(message.enabled);
2141
+ }
2142
+ return writer;
2143
+ },
2144
+ decode(input, length) {
2145
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
2146
+ let end = length === undefined ? reader.len : reader.pos + length;
2147
+ const message = Object.assign({}, baseSubscribedQuality);
2148
+ while (reader.pos < end) {
2149
+ const tag = reader.uint32();
2150
+ switch (tag >>> 3) {
2151
+ case 1:
2152
+ message.quality = reader.int32();
2153
+ break;
2154
+ case 2:
2155
+ message.enabled = reader.bool();
2156
+ break;
2157
+ default:
2158
+ reader.skipType(tag & 7);
2159
+ break;
2160
+ }
2161
+ }
2162
+ return message;
2163
+ },
2164
+ fromJSON(object) {
2165
+ const message = Object.assign({}, baseSubscribedQuality);
2166
+ if (object.quality !== undefined && object.quality !== null) {
2167
+ message.quality = livekit_models_1.videoQualityFromJSON(object.quality);
2168
+ }
2169
+ else {
2170
+ message.quality = 0;
2171
+ }
2172
+ if (object.enabled !== undefined && object.enabled !== null) {
2173
+ message.enabled = Boolean(object.enabled);
2174
+ }
2175
+ else {
2176
+ message.enabled = false;
2177
+ }
2178
+ return message;
2179
+ },
2180
+ toJSON(message) {
2181
+ const obj = {};
2182
+ message.quality !== undefined &&
2183
+ (obj.quality = livekit_models_1.videoQualityToJSON(message.quality));
2184
+ message.enabled !== undefined && (obj.enabled = message.enabled);
2185
+ return obj;
2186
+ },
2187
+ fromPartial(object) {
2188
+ var _a, _b;
2189
+ const message = Object.assign({}, baseSubscribedQuality);
2190
+ message.quality = (_a = object.quality) !== null && _a !== void 0 ? _a : 0;
2191
+ message.enabled = (_b = object.enabled) !== null && _b !== void 0 ? _b : false;
2192
+ return message;
2193
+ },
2194
+ };
2195
+ const baseSubscribedQualityUpdate = { trackSid: "" };
2196
+ exports.SubscribedQualityUpdate = {
2197
+ encode(message, writer = minimal_1.default.Writer.create()) {
2198
+ if (message.trackSid !== "") {
2199
+ writer.uint32(10).string(message.trackSid);
2200
+ }
2201
+ for (const v of message.subscribedQualities) {
2202
+ exports.SubscribedQuality.encode(v, writer.uint32(18).fork()).ldelim();
2203
+ }
2204
+ return writer;
2205
+ },
2206
+ decode(input, length) {
2207
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
2208
+ let end = length === undefined ? reader.len : reader.pos + length;
2209
+ const message = Object.assign({}, baseSubscribedQualityUpdate);
2210
+ message.subscribedQualities = [];
2211
+ while (reader.pos < end) {
2212
+ const tag = reader.uint32();
2213
+ switch (tag >>> 3) {
2214
+ case 1:
2215
+ message.trackSid = reader.string();
2216
+ break;
2217
+ case 2:
2218
+ message.subscribedQualities.push(exports.SubscribedQuality.decode(reader, reader.uint32()));
2219
+ break;
2220
+ default:
2221
+ reader.skipType(tag & 7);
2222
+ break;
2223
+ }
2224
+ }
2225
+ return message;
2226
+ },
2227
+ fromJSON(object) {
2228
+ const message = Object.assign({}, baseSubscribedQualityUpdate);
2229
+ message.subscribedQualities = [];
2230
+ if (object.trackSid !== undefined && object.trackSid !== null) {
2231
+ message.trackSid = String(object.trackSid);
2232
+ }
2233
+ else {
2234
+ message.trackSid = "";
2235
+ }
2236
+ if (object.subscribedQualities !== undefined &&
2237
+ object.subscribedQualities !== null) {
2238
+ for (const e of object.subscribedQualities) {
2239
+ message.subscribedQualities.push(exports.SubscribedQuality.fromJSON(e));
2240
+ }
2241
+ }
2242
+ return message;
2243
+ },
2244
+ toJSON(message) {
2245
+ const obj = {};
2246
+ message.trackSid !== undefined && (obj.trackSid = message.trackSid);
2247
+ if (message.subscribedQualities) {
2248
+ obj.subscribedQualities = message.subscribedQualities.map((e) => e ? exports.SubscribedQuality.toJSON(e) : undefined);
2249
+ }
2250
+ else {
2251
+ obj.subscribedQualities = [];
2252
+ }
2253
+ return obj;
2254
+ },
2255
+ fromPartial(object) {
2256
+ var _a;
2257
+ const message = Object.assign({}, baseSubscribedQualityUpdate);
2258
+ message.trackSid = (_a = object.trackSid) !== null && _a !== void 0 ? _a : "";
2259
+ message.subscribedQualities = [];
2260
+ if (object.subscribedQualities !== undefined &&
2261
+ object.subscribedQualities !== null) {
2262
+ for (const e of object.subscribedQualities) {
2263
+ message.subscribedQualities.push(exports.SubscribedQuality.fromPartial(e));
2264
+ }
2265
+ }
2266
+ return message;
2267
+ },
2268
+ };
2269
+ const baseTrackPermission = {
2270
+ participantSid: "",
2271
+ allTracks: false,
2272
+ trackSids: "",
2273
+ };
2274
+ exports.TrackPermission = {
2275
+ encode(message, writer = minimal_1.default.Writer.create()) {
2276
+ if (message.participantSid !== "") {
2277
+ writer.uint32(10).string(message.participantSid);
2278
+ }
2279
+ if (message.allTracks === true) {
2280
+ writer.uint32(16).bool(message.allTracks);
2281
+ }
2282
+ for (const v of message.trackSids) {
2283
+ writer.uint32(26).string(v);
2284
+ }
2285
+ return writer;
2286
+ },
2287
+ decode(input, length) {
2288
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
2289
+ let end = length === undefined ? reader.len : reader.pos + length;
2290
+ const message = Object.assign({}, baseTrackPermission);
2291
+ message.trackSids = [];
2292
+ while (reader.pos < end) {
2293
+ const tag = reader.uint32();
2294
+ switch (tag >>> 3) {
2295
+ case 1:
2296
+ message.participantSid = reader.string();
2297
+ break;
2298
+ case 2:
2299
+ message.allTracks = reader.bool();
2300
+ break;
2301
+ case 3:
2302
+ message.trackSids.push(reader.string());
2303
+ break;
2304
+ default:
2305
+ reader.skipType(tag & 7);
2306
+ break;
2307
+ }
2308
+ }
2309
+ return message;
2310
+ },
2311
+ fromJSON(object) {
2312
+ const message = Object.assign({}, baseTrackPermission);
2313
+ message.trackSids = [];
2314
+ if (object.participantSid !== undefined && object.participantSid !== null) {
2315
+ message.participantSid = String(object.participantSid);
2316
+ }
2317
+ else {
2318
+ message.participantSid = "";
2319
+ }
2320
+ if (object.allTracks !== undefined && object.allTracks !== null) {
2321
+ message.allTracks = Boolean(object.allTracks);
2322
+ }
2323
+ else {
2324
+ message.allTracks = false;
2325
+ }
2326
+ if (object.trackSids !== undefined && object.trackSids !== null) {
2327
+ for (const e of object.trackSids) {
2328
+ message.trackSids.push(String(e));
2329
+ }
2330
+ }
2331
+ return message;
2332
+ },
2333
+ toJSON(message) {
2334
+ const obj = {};
2335
+ message.participantSid !== undefined &&
2336
+ (obj.participantSid = message.participantSid);
2337
+ message.allTracks !== undefined && (obj.allTracks = message.allTracks);
2338
+ if (message.trackSids) {
2339
+ obj.trackSids = message.trackSids.map((e) => e);
2340
+ }
2341
+ else {
2342
+ obj.trackSids = [];
2343
+ }
2344
+ return obj;
2345
+ },
2346
+ fromPartial(object) {
2347
+ var _a, _b;
2348
+ const message = Object.assign({}, baseTrackPermission);
2349
+ message.participantSid = (_a = object.participantSid) !== null && _a !== void 0 ? _a : "";
2350
+ message.allTracks = (_b = object.allTracks) !== null && _b !== void 0 ? _b : false;
2351
+ message.trackSids = [];
2352
+ if (object.trackSids !== undefined && object.trackSids !== null) {
2353
+ for (const e of object.trackSids) {
2354
+ message.trackSids.push(e);
2355
+ }
2356
+ }
2357
+ return message;
2358
+ },
2359
+ };
2360
+ const baseUpdateSubscriptionPermissions = { allParticipants: false };
2361
+ exports.UpdateSubscriptionPermissions = {
2362
+ encode(message, writer = minimal_1.default.Writer.create()) {
2363
+ if (message.allParticipants === true) {
2364
+ writer.uint32(8).bool(message.allParticipants);
2365
+ }
2366
+ for (const v of message.trackPermissions) {
2367
+ exports.TrackPermission.encode(v, writer.uint32(18).fork()).ldelim();
2368
+ }
2369
+ return writer;
2370
+ },
2371
+ decode(input, length) {
2372
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
2373
+ let end = length === undefined ? reader.len : reader.pos + length;
2374
+ const message = Object.assign({}, baseUpdateSubscriptionPermissions);
2375
+ message.trackPermissions = [];
2376
+ while (reader.pos < end) {
2377
+ const tag = reader.uint32();
2378
+ switch (tag >>> 3) {
2379
+ case 1:
2380
+ message.allParticipants = reader.bool();
2381
+ break;
2382
+ case 2:
2383
+ message.trackPermissions.push(exports.TrackPermission.decode(reader, reader.uint32()));
2384
+ break;
2385
+ default:
2386
+ reader.skipType(tag & 7);
2387
+ break;
2388
+ }
2389
+ }
2390
+ return message;
2391
+ },
2392
+ fromJSON(object) {
2393
+ const message = Object.assign({}, baseUpdateSubscriptionPermissions);
2394
+ message.trackPermissions = [];
2395
+ if (object.allParticipants !== undefined &&
2396
+ object.allParticipants !== null) {
2397
+ message.allParticipants = Boolean(object.allParticipants);
2398
+ }
2399
+ else {
2400
+ message.allParticipants = false;
2401
+ }
2402
+ if (object.trackPermissions !== undefined &&
2403
+ object.trackPermissions !== null) {
2404
+ for (const e of object.trackPermissions) {
2405
+ message.trackPermissions.push(exports.TrackPermission.fromJSON(e));
2406
+ }
2407
+ }
2408
+ return message;
2409
+ },
2410
+ toJSON(message) {
2411
+ const obj = {};
2412
+ message.allParticipants !== undefined &&
2413
+ (obj.allParticipants = message.allParticipants);
2414
+ if (message.trackPermissions) {
2415
+ obj.trackPermissions = message.trackPermissions.map((e) => e ? exports.TrackPermission.toJSON(e) : undefined);
2416
+ }
2417
+ else {
2418
+ obj.trackPermissions = [];
2419
+ }
2420
+ return obj;
2421
+ },
2422
+ fromPartial(object) {
2423
+ var _a;
2424
+ const message = Object.assign({}, baseUpdateSubscriptionPermissions);
2425
+ message.allParticipants = (_a = object.allParticipants) !== null && _a !== void 0 ? _a : false;
2426
+ message.trackPermissions = [];
2427
+ if (object.trackPermissions !== undefined &&
2428
+ object.trackPermissions !== null) {
2429
+ for (const e of object.trackPermissions) {
2430
+ message.trackPermissions.push(exports.TrackPermission.fromPartial(e));
2431
+ }
2432
+ }
2433
+ return message;
2434
+ },
2435
+ };
2436
+ const baseSubscriptionPermissionUpdate = {
2437
+ participantSid: "",
2438
+ trackSid: "",
2439
+ allowed: false,
2440
+ };
2441
+ exports.SubscriptionPermissionUpdate = {
2442
+ encode(message, writer = minimal_1.default.Writer.create()) {
2443
+ if (message.participantSid !== "") {
2444
+ writer.uint32(10).string(message.participantSid);
2445
+ }
2446
+ if (message.trackSid !== "") {
2447
+ writer.uint32(18).string(message.trackSid);
2448
+ }
2449
+ if (message.allowed === true) {
2450
+ writer.uint32(24).bool(message.allowed);
2451
+ }
2452
+ return writer;
2453
+ },
2454
+ decode(input, length) {
2455
+ const reader = input instanceof minimal_1.default.Reader ? input : new minimal_1.default.Reader(input);
2456
+ let end = length === undefined ? reader.len : reader.pos + length;
2457
+ const message = Object.assign({}, baseSubscriptionPermissionUpdate);
2458
+ while (reader.pos < end) {
2459
+ const tag = reader.uint32();
2460
+ switch (tag >>> 3) {
2461
+ case 1:
2462
+ message.participantSid = reader.string();
2463
+ break;
2464
+ case 2:
2465
+ message.trackSid = reader.string();
2466
+ break;
2467
+ case 3:
2468
+ message.allowed = reader.bool();
2469
+ break;
2470
+ default:
2471
+ reader.skipType(tag & 7);
2472
+ break;
2473
+ }
2474
+ }
2475
+ return message;
2476
+ },
2477
+ fromJSON(object) {
2478
+ const message = Object.assign({}, baseSubscriptionPermissionUpdate);
2479
+ if (object.participantSid !== undefined && object.participantSid !== null) {
2480
+ message.participantSid = String(object.participantSid);
2481
+ }
2482
+ else {
2483
+ message.participantSid = "";
2484
+ }
2485
+ if (object.trackSid !== undefined && object.trackSid !== null) {
2486
+ message.trackSid = String(object.trackSid);
2487
+ }
2488
+ else {
2489
+ message.trackSid = "";
2490
+ }
2491
+ if (object.allowed !== undefined && object.allowed !== null) {
2492
+ message.allowed = Boolean(object.allowed);
2493
+ }
2494
+ else {
2495
+ message.allowed = false;
2496
+ }
2497
+ return message;
2498
+ },
2499
+ toJSON(message) {
2500
+ const obj = {};
2501
+ message.participantSid !== undefined &&
2502
+ (obj.participantSid = message.participantSid);
2503
+ message.trackSid !== undefined && (obj.trackSid = message.trackSid);
2504
+ message.allowed !== undefined && (obj.allowed = message.allowed);
2505
+ return obj;
2506
+ },
2507
+ fromPartial(object) {
2508
+ var _a, _b, _c;
2509
+ const message = Object.assign({}, baseSubscriptionPermissionUpdate);
2510
+ message.participantSid = (_a = object.participantSid) !== null && _a !== void 0 ? _a : "";
2511
+ message.trackSid = (_b = object.trackSid) !== null && _b !== void 0 ? _b : "";
2512
+ message.allowed = (_c = object.allowed) !== null && _c !== void 0 ? _c : false;
2513
+ return message;
2514
+ },
2515
+ };
1763
2516
  if (minimal_1.default.util.Long !== long_1.default) {
1764
2517
  minimal_1.default.util.Long = long_1.default;
1765
2518
  minimal_1.default.configure();