livekit-server-sdk 0.5.8 → 1.0.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 (44) hide show
  1. package/.eslintrc.js +1 -1
  2. package/.github/workflows/test.yaml +3 -0
  3. package/.prettierignore +7 -0
  4. package/README.md +13 -9
  5. package/dist/AccessToken.d.ts +5 -0
  6. package/dist/AccessToken.js +7 -1
  7. package/dist/AccessToken.js.map +1 -1
  8. package/dist/AccessToken.test.js +4 -0
  9. package/dist/AccessToken.test.js.map +1 -1
  10. package/dist/EgressClient.d.ts +60 -0
  11. package/dist/EgressClient.js +198 -0
  12. package/dist/EgressClient.js.map +1 -0
  13. package/dist/RecordingServiceClient.js +5 -1
  14. package/dist/RecordingServiceClient.js.map +1 -1
  15. package/dist/RoomServiceClient.d.ts +1 -2
  16. package/dist/RoomServiceClient.js.map +1 -1
  17. package/dist/TwirpRPC.js.map +1 -1
  18. package/dist/WebhookReceiver.test.js.map +1 -1
  19. package/dist/grants.d.ts +4 -1
  20. package/dist/index.d.ts +3 -2
  21. package/dist/index.js +5 -2
  22. package/dist/index.js.map +1 -1
  23. package/dist/proto/google/protobuf/empty.d.ts +6 -2
  24. package/dist/proto/google/protobuf/empty.js +32 -12
  25. package/dist/proto/google/protobuf/empty.js.map +1 -1
  26. package/dist/proto/google/protobuf/timestamp.d.ts +132 -0
  27. package/dist/proto/google/protobuf/timestamp.js +107 -0
  28. package/dist/proto/google/protobuf/timestamp.js.map +1 -0
  29. package/dist/proto/livekit_egress.d.ts +2283 -0
  30. package/dist/proto/livekit_egress.js +1819 -0
  31. package/dist/proto/livekit_egress.js.map +1 -0
  32. package/dist/proto/livekit_models.d.ts +675 -13
  33. package/dist/proto/livekit_models.js +1414 -838
  34. package/dist/proto/livekit_models.js.map +1 -1
  35. package/dist/proto/livekit_recording.d.ts +199 -17
  36. package/dist/proto/livekit_recording.js +284 -570
  37. package/dist/proto/livekit_recording.js.map +1 -1
  38. package/dist/proto/livekit_room.d.ts +566 -34
  39. package/dist/proto/livekit_room.js +302 -671
  40. package/dist/proto/livekit_room.js.map +1 -1
  41. package/dist/proto/livekit_webhook.d.ts +1031 -6
  42. package/dist/proto/livekit_webhook.js +106 -95
  43. package/dist/proto/livekit_webhook.js.map +1 -1
  44. package/package.json +12 -7
@@ -1,4 +1,4 @@
1
- import _m0 from "protobufjs/minimal";
1
+ import * as _m0 from 'protobufjs/minimal';
2
2
  export declare const protobufPackage = "livekit";
3
3
  export declare enum TrackType {
4
4
  AUDIO = 0,
@@ -22,6 +22,7 @@ export declare enum VideoQuality {
22
22
  LOW = 0,
23
23
  MEDIUM = 1,
24
24
  HIGH = 2,
25
+ OFF = 3,
25
26
  UNRECOGNIZED = -1
26
27
  }
27
28
  export declare function videoQualityFromJSON(object: any): VideoQuality;
@@ -34,6 +35,14 @@ export declare enum ConnectionQuality {
34
35
  }
35
36
  export declare function connectionQualityFromJSON(object: any): ConnectionQuality;
36
37
  export declare function connectionQualityToJSON(object: ConnectionQuality): string;
38
+ export declare enum ClientConfigSetting {
39
+ UNSET = 0,
40
+ DISABLED = 1,
41
+ ENABLED = 2,
42
+ UNRECOGNIZED = -1
43
+ }
44
+ export declare function clientConfigSettingFromJSON(object: any): ClientConfigSetting;
45
+ export declare function clientConfigSettingToJSON(object: ClientConfigSetting): string;
37
46
  export interface Room {
38
47
  sid: string;
39
48
  name: string;
@@ -50,6 +59,18 @@ export interface Codec {
50
59
  mime: string;
51
60
  fmtpLine: string;
52
61
  }
62
+ export interface ParticipantPermission {
63
+ /** allow participant to subscribe to other tracks in the room */
64
+ canSubscribe: boolean;
65
+ /** allow participant to publish new tracks to room */
66
+ canPublish: boolean;
67
+ /** allow participant to publish data */
68
+ canPublishData: boolean;
69
+ /** indicates that it's hidden to others */
70
+ hidden: boolean;
71
+ /** indicates it's a recorder instance */
72
+ recorder: boolean;
73
+ }
53
74
  export interface ParticipantInfo {
54
75
  sid: string;
55
76
  identity: string;
@@ -58,9 +79,15 @@ export interface ParticipantInfo {
58
79
  metadata: string;
59
80
  /** timestamp when participant joined room, in seconds */
60
81
  joinedAt: number;
61
- hidden: boolean;
62
- recorder: boolean;
63
82
  name: string;
83
+ version: number;
84
+ permission?: ParticipantPermission;
85
+ region: string;
86
+ /**
87
+ * indicates the participant has an active publisher connection
88
+ * and can publish to the server
89
+ */
90
+ isPublisher: boolean;
64
91
  }
65
92
  export declare enum ParticipantInfo_State {
66
93
  /** JOINING - websocket' connected, but not offered yet */
@@ -96,6 +123,7 @@ export interface TrackInfo {
96
123
  layers: VideoLayer[];
97
124
  /** mime type of codec */
98
125
  mimeType: string;
126
+ mid: string;
99
127
  }
100
128
  /** provide information about available spatial layers */
101
129
  export interface VideoLayer {
@@ -105,6 +133,7 @@ export interface VideoLayer {
105
133
  height: number;
106
134
  /** target bitrate, server will measure actual */
107
135
  bitrate: number;
136
+ ssrc: number;
108
137
  }
109
138
  /** new DataPacket API */
110
139
  export interface DataPacket {
@@ -142,78 +171,711 @@ export interface ParticipantTracks {
142
171
  participantSid: string;
143
172
  trackSids: string[];
144
173
  }
174
+ /** details about the client */
175
+ export interface ClientInfo {
176
+ sdk: ClientInfo_SDK;
177
+ version: string;
178
+ protocol: number;
179
+ os: string;
180
+ osVersion: string;
181
+ deviceModel: string;
182
+ browser: string;
183
+ browserVersion: string;
184
+ address: string;
185
+ }
186
+ export declare enum ClientInfo_SDK {
187
+ UNKNOWN = 0,
188
+ JS = 1,
189
+ SWIFT = 2,
190
+ ANDROID = 3,
191
+ FLUTTER = 4,
192
+ GO = 5,
193
+ UNITY = 6,
194
+ UNRECOGNIZED = -1
195
+ }
196
+ export declare function clientInfo_SDKFromJSON(object: any): ClientInfo_SDK;
197
+ export declare function clientInfo_SDKToJSON(object: ClientInfo_SDK): string;
198
+ /** server provided client configuration */
199
+ export interface ClientConfiguration {
200
+ video?: VideoConfiguration;
201
+ screen?: VideoConfiguration;
202
+ resumeConnection: ClientConfigSetting;
203
+ }
204
+ export interface VideoConfiguration {
205
+ hardwareEncoder: ClientConfigSetting;
206
+ }
207
+ export interface RTPStats {
208
+ startTime?: Date;
209
+ endTime?: Date;
210
+ duration: number;
211
+ packets: number;
212
+ packetRate: number;
213
+ bytes: number;
214
+ bitrate: number;
215
+ packetsLost: number;
216
+ packetLossRate: number;
217
+ packetLossPercentage: number;
218
+ packetsDuplicate: number;
219
+ packetDuplicateRate: number;
220
+ bytesDuplicate: number;
221
+ bitrateDuplicate: number;
222
+ packetsPadding: number;
223
+ packetPaddingRate: number;
224
+ bytesPadding: number;
225
+ bitratePadding: number;
226
+ packetsOutOfOrder: number;
227
+ frames: number;
228
+ frameRate: number;
229
+ jitterCurrent: number;
230
+ jitterMax: number;
231
+ gapHistogram: {
232
+ [key: number]: number;
233
+ };
234
+ nacks: number;
235
+ nackAcks: number;
236
+ nackMisses: number;
237
+ nackRepeated: number;
238
+ plis: number;
239
+ lastPli?: Date;
240
+ firs: number;
241
+ lastFir?: Date;
242
+ rttCurrent: number;
243
+ rttMax: number;
244
+ keyFrames: number;
245
+ lastKeyFrame?: Date;
246
+ layerLockPlis: number;
247
+ lastLayerLockPli?: Date;
248
+ }
249
+ export interface RTPStats_GapHistogramEntry {
250
+ key: number;
251
+ value: number;
252
+ }
145
253
  export declare const Room: {
146
254
  encode(message: Room, writer?: _m0.Writer): _m0.Writer;
147
255
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): Room;
148
256
  fromJSON(object: any): Room;
149
257
  toJSON(message: Room): unknown;
150
- fromPartial(object: DeepPartial<Room>): Room;
258
+ fromPartial<I extends {
259
+ sid?: string | undefined;
260
+ name?: string | undefined;
261
+ emptyTimeout?: number | undefined;
262
+ maxParticipants?: number | undefined;
263
+ creationTime?: number | undefined;
264
+ turnPassword?: string | undefined;
265
+ enabledCodecs?: {
266
+ mime?: string | undefined;
267
+ fmtpLine?: string | undefined;
268
+ }[] | undefined;
269
+ metadata?: string | undefined;
270
+ numParticipants?: number | undefined;
271
+ activeRecording?: boolean | undefined;
272
+ } & {
273
+ sid?: string | undefined;
274
+ name?: string | undefined;
275
+ emptyTimeout?: number | undefined;
276
+ maxParticipants?: number | undefined;
277
+ creationTime?: number | undefined;
278
+ turnPassword?: string | undefined;
279
+ enabledCodecs?: ({
280
+ mime?: string | undefined;
281
+ fmtpLine?: string | undefined;
282
+ }[] & ({
283
+ mime?: string | undefined;
284
+ fmtpLine?: string | undefined;
285
+ } & {
286
+ mime?: string | undefined;
287
+ fmtpLine?: string | undefined;
288
+ } & Record<Exclude<keyof I["enabledCodecs"][number], keyof Codec>, never>)[] & Record<Exclude<keyof I["enabledCodecs"], number | keyof {
289
+ mime?: string | undefined;
290
+ fmtpLine?: string | undefined;
291
+ }[]>, never>) | undefined;
292
+ metadata?: string | undefined;
293
+ numParticipants?: number | undefined;
294
+ activeRecording?: boolean | undefined;
295
+ } & Record<Exclude<keyof I, keyof Room>, never>>(object: I): Room;
151
296
  };
152
297
  export declare const Codec: {
153
298
  encode(message: Codec, writer?: _m0.Writer): _m0.Writer;
154
299
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): Codec;
155
300
  fromJSON(object: any): Codec;
156
301
  toJSON(message: Codec): unknown;
157
- fromPartial(object: DeepPartial<Codec>): Codec;
302
+ fromPartial<I extends {
303
+ mime?: string | undefined;
304
+ fmtpLine?: string | undefined;
305
+ } & {
306
+ mime?: string | undefined;
307
+ fmtpLine?: string | undefined;
308
+ } & Record<Exclude<keyof I, keyof Codec>, never>>(object: I): Codec;
309
+ };
310
+ export declare const ParticipantPermission: {
311
+ encode(message: ParticipantPermission, writer?: _m0.Writer): _m0.Writer;
312
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ParticipantPermission;
313
+ fromJSON(object: any): ParticipantPermission;
314
+ toJSON(message: ParticipantPermission): unknown;
315
+ fromPartial<I extends {
316
+ canSubscribe?: boolean | undefined;
317
+ canPublish?: boolean | undefined;
318
+ canPublishData?: boolean | undefined;
319
+ hidden?: boolean | undefined;
320
+ recorder?: boolean | undefined;
321
+ } & {
322
+ canSubscribe?: boolean | undefined;
323
+ canPublish?: boolean | undefined;
324
+ canPublishData?: boolean | undefined;
325
+ hidden?: boolean | undefined;
326
+ recorder?: boolean | undefined;
327
+ } & Record<Exclude<keyof I, keyof ParticipantPermission>, never>>(object: I): ParticipantPermission;
158
328
  };
159
329
  export declare const ParticipantInfo: {
160
330
  encode(message: ParticipantInfo, writer?: _m0.Writer): _m0.Writer;
161
331
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ParticipantInfo;
162
332
  fromJSON(object: any): ParticipantInfo;
163
333
  toJSON(message: ParticipantInfo): unknown;
164
- fromPartial(object: DeepPartial<ParticipantInfo>): ParticipantInfo;
334
+ fromPartial<I extends {
335
+ sid?: string | undefined;
336
+ identity?: string | undefined;
337
+ state?: ParticipantInfo_State | undefined;
338
+ tracks?: {
339
+ sid?: string | undefined;
340
+ type?: TrackType | undefined;
341
+ name?: string | undefined;
342
+ muted?: boolean | undefined;
343
+ width?: number | undefined;
344
+ height?: number | undefined;
345
+ simulcast?: boolean | undefined;
346
+ disableDtx?: boolean | undefined;
347
+ source?: TrackSource | undefined;
348
+ layers?: {
349
+ quality?: VideoQuality | undefined;
350
+ width?: number | undefined;
351
+ height?: number | undefined;
352
+ bitrate?: number | undefined;
353
+ ssrc?: number | undefined;
354
+ }[] | undefined;
355
+ mimeType?: string | undefined;
356
+ mid?: string | undefined;
357
+ }[] | undefined;
358
+ metadata?: string | undefined;
359
+ joinedAt?: number | undefined;
360
+ name?: string | undefined;
361
+ version?: number | undefined;
362
+ permission?: {
363
+ canSubscribe?: boolean | undefined;
364
+ canPublish?: boolean | undefined;
365
+ canPublishData?: boolean | undefined;
366
+ hidden?: boolean | undefined;
367
+ recorder?: boolean | undefined;
368
+ } | undefined;
369
+ region?: string | undefined;
370
+ isPublisher?: boolean | undefined;
371
+ } & {
372
+ sid?: string | undefined;
373
+ identity?: string | undefined;
374
+ state?: ParticipantInfo_State | undefined;
375
+ tracks?: ({
376
+ sid?: string | undefined;
377
+ type?: TrackType | undefined;
378
+ name?: string | undefined;
379
+ muted?: boolean | undefined;
380
+ width?: number | undefined;
381
+ height?: number | undefined;
382
+ simulcast?: boolean | undefined;
383
+ disableDtx?: boolean | undefined;
384
+ source?: TrackSource | undefined;
385
+ layers?: {
386
+ quality?: VideoQuality | undefined;
387
+ width?: number | undefined;
388
+ height?: number | undefined;
389
+ bitrate?: number | undefined;
390
+ ssrc?: number | undefined;
391
+ }[] | undefined;
392
+ mimeType?: string | undefined;
393
+ mid?: string | undefined;
394
+ }[] & ({
395
+ sid?: string | undefined;
396
+ type?: TrackType | undefined;
397
+ name?: string | undefined;
398
+ muted?: boolean | undefined;
399
+ width?: number | undefined;
400
+ height?: number | undefined;
401
+ simulcast?: boolean | undefined;
402
+ disableDtx?: boolean | undefined;
403
+ source?: TrackSource | undefined;
404
+ layers?: {
405
+ quality?: VideoQuality | undefined;
406
+ width?: number | undefined;
407
+ height?: number | undefined;
408
+ bitrate?: number | undefined;
409
+ ssrc?: number | undefined;
410
+ }[] | undefined;
411
+ mimeType?: string | undefined;
412
+ mid?: string | undefined;
413
+ } & {
414
+ sid?: string | undefined;
415
+ type?: TrackType | undefined;
416
+ name?: string | undefined;
417
+ muted?: boolean | undefined;
418
+ width?: number | undefined;
419
+ height?: number | undefined;
420
+ simulcast?: boolean | undefined;
421
+ disableDtx?: boolean | undefined;
422
+ source?: TrackSource | undefined;
423
+ layers?: ({
424
+ quality?: VideoQuality | undefined;
425
+ width?: number | undefined;
426
+ height?: number | undefined;
427
+ bitrate?: number | undefined;
428
+ ssrc?: number | undefined;
429
+ }[] & ({
430
+ quality?: VideoQuality | undefined;
431
+ width?: number | undefined;
432
+ height?: number | undefined;
433
+ bitrate?: number | undefined;
434
+ ssrc?: number | undefined;
435
+ } & {
436
+ quality?: VideoQuality | undefined;
437
+ width?: number | undefined;
438
+ height?: number | undefined;
439
+ bitrate?: number | undefined;
440
+ ssrc?: number | undefined;
441
+ } & Record<Exclude<keyof I["tracks"][number]["layers"][number], keyof VideoLayer>, never>)[] & Record<Exclude<keyof I["tracks"][number]["layers"], number | keyof {
442
+ quality?: VideoQuality | undefined;
443
+ width?: number | undefined;
444
+ height?: number | undefined;
445
+ bitrate?: number | undefined;
446
+ ssrc?: number | undefined;
447
+ }[]>, never>) | undefined;
448
+ mimeType?: string | undefined;
449
+ mid?: string | undefined;
450
+ } & Record<Exclude<keyof I["tracks"][number], keyof TrackInfo>, never>)[] & Record<Exclude<keyof I["tracks"], number | keyof {
451
+ sid?: string | undefined;
452
+ type?: TrackType | undefined;
453
+ name?: string | undefined;
454
+ muted?: boolean | undefined;
455
+ width?: number | undefined;
456
+ height?: number | undefined;
457
+ simulcast?: boolean | undefined;
458
+ disableDtx?: boolean | undefined;
459
+ source?: TrackSource | undefined;
460
+ layers?: {
461
+ quality?: VideoQuality | undefined;
462
+ width?: number | undefined;
463
+ height?: number | undefined;
464
+ bitrate?: number | undefined;
465
+ ssrc?: number | undefined;
466
+ }[] | undefined;
467
+ mimeType?: string | undefined;
468
+ mid?: string | undefined;
469
+ }[]>, never>) | undefined;
470
+ metadata?: string | undefined;
471
+ joinedAt?: number | undefined;
472
+ name?: string | undefined;
473
+ version?: number | undefined;
474
+ permission?: ({
475
+ canSubscribe?: boolean | undefined;
476
+ canPublish?: boolean | undefined;
477
+ canPublishData?: boolean | undefined;
478
+ hidden?: boolean | undefined;
479
+ recorder?: boolean | undefined;
480
+ } & {
481
+ canSubscribe?: boolean | undefined;
482
+ canPublish?: boolean | undefined;
483
+ canPublishData?: boolean | undefined;
484
+ hidden?: boolean | undefined;
485
+ recorder?: boolean | undefined;
486
+ } & Record<Exclude<keyof I["permission"], keyof ParticipantPermission>, never>) | undefined;
487
+ region?: string | undefined;
488
+ isPublisher?: boolean | undefined;
489
+ } & Record<Exclude<keyof I, keyof ParticipantInfo>, never>>(object: I): ParticipantInfo;
165
490
  };
166
491
  export declare const TrackInfo: {
167
492
  encode(message: TrackInfo, writer?: _m0.Writer): _m0.Writer;
168
493
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): TrackInfo;
169
494
  fromJSON(object: any): TrackInfo;
170
495
  toJSON(message: TrackInfo): unknown;
171
- fromPartial(object: DeepPartial<TrackInfo>): TrackInfo;
496
+ fromPartial<I extends {
497
+ sid?: string | undefined;
498
+ type?: TrackType | undefined;
499
+ name?: string | undefined;
500
+ muted?: boolean | undefined;
501
+ width?: number | undefined;
502
+ height?: number | undefined;
503
+ simulcast?: boolean | undefined;
504
+ disableDtx?: boolean | undefined;
505
+ source?: TrackSource | undefined;
506
+ layers?: {
507
+ quality?: VideoQuality | undefined;
508
+ width?: number | undefined;
509
+ height?: number | undefined;
510
+ bitrate?: number | undefined;
511
+ ssrc?: number | undefined;
512
+ }[] | undefined;
513
+ mimeType?: string | undefined;
514
+ mid?: string | undefined;
515
+ } & {
516
+ sid?: string | undefined;
517
+ type?: TrackType | undefined;
518
+ name?: string | undefined;
519
+ muted?: boolean | undefined;
520
+ width?: number | undefined;
521
+ height?: number | undefined;
522
+ simulcast?: boolean | undefined;
523
+ disableDtx?: boolean | undefined;
524
+ source?: TrackSource | undefined;
525
+ layers?: ({
526
+ quality?: VideoQuality | undefined;
527
+ width?: number | undefined;
528
+ height?: number | undefined;
529
+ bitrate?: number | undefined;
530
+ ssrc?: number | undefined;
531
+ }[] & ({
532
+ quality?: VideoQuality | undefined;
533
+ width?: number | undefined;
534
+ height?: number | undefined;
535
+ bitrate?: number | undefined;
536
+ ssrc?: number | undefined;
537
+ } & {
538
+ quality?: VideoQuality | undefined;
539
+ width?: number | undefined;
540
+ height?: number | undefined;
541
+ bitrate?: number | undefined;
542
+ ssrc?: number | undefined;
543
+ } & Record<Exclude<keyof I["layers"][number], keyof VideoLayer>, never>)[] & Record<Exclude<keyof I["layers"], number | keyof {
544
+ quality?: VideoQuality | undefined;
545
+ width?: number | undefined;
546
+ height?: number | undefined;
547
+ bitrate?: number | undefined;
548
+ ssrc?: number | undefined;
549
+ }[]>, never>) | undefined;
550
+ mimeType?: string | undefined;
551
+ mid?: string | undefined;
552
+ } & Record<Exclude<keyof I, keyof TrackInfo>, never>>(object: I): TrackInfo;
172
553
  };
173
554
  export declare const VideoLayer: {
174
555
  encode(message: VideoLayer, writer?: _m0.Writer): _m0.Writer;
175
556
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): VideoLayer;
176
557
  fromJSON(object: any): VideoLayer;
177
558
  toJSON(message: VideoLayer): unknown;
178
- fromPartial(object: DeepPartial<VideoLayer>): VideoLayer;
559
+ fromPartial<I extends {
560
+ quality?: VideoQuality | undefined;
561
+ width?: number | undefined;
562
+ height?: number | undefined;
563
+ bitrate?: number | undefined;
564
+ ssrc?: number | undefined;
565
+ } & {
566
+ quality?: VideoQuality | undefined;
567
+ width?: number | undefined;
568
+ height?: number | undefined;
569
+ bitrate?: number | undefined;
570
+ ssrc?: number | undefined;
571
+ } & Record<Exclude<keyof I, keyof VideoLayer>, never>>(object: I): VideoLayer;
179
572
  };
180
573
  export declare const DataPacket: {
181
574
  encode(message: DataPacket, writer?: _m0.Writer): _m0.Writer;
182
575
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): DataPacket;
183
576
  fromJSON(object: any): DataPacket;
184
577
  toJSON(message: DataPacket): unknown;
185
- fromPartial(object: DeepPartial<DataPacket>): DataPacket;
578
+ fromPartial<I extends {
579
+ kind?: DataPacket_Kind | undefined;
580
+ user?: {
581
+ participantSid?: string | undefined;
582
+ payload?: Uint8Array | undefined;
583
+ destinationSids?: string[] | undefined;
584
+ } | undefined;
585
+ speaker?: {
586
+ speakers?: {
587
+ sid?: string | undefined;
588
+ level?: number | undefined;
589
+ active?: boolean | undefined;
590
+ }[] | undefined;
591
+ } | undefined;
592
+ } & {
593
+ kind?: DataPacket_Kind | undefined;
594
+ user?: ({
595
+ participantSid?: string | undefined;
596
+ payload?: Uint8Array | undefined;
597
+ destinationSids?: string[] | undefined;
598
+ } & {
599
+ participantSid?: string | undefined;
600
+ payload?: Uint8Array | undefined;
601
+ destinationSids?: (string[] & string[] & Record<Exclude<keyof I["user"]["destinationSids"], number | keyof string[]>, never>) | undefined;
602
+ } & Record<Exclude<keyof I["user"], keyof UserPacket>, never>) | undefined;
603
+ speaker?: ({
604
+ speakers?: {
605
+ sid?: string | undefined;
606
+ level?: number | undefined;
607
+ active?: boolean | undefined;
608
+ }[] | undefined;
609
+ } & {
610
+ speakers?: ({
611
+ sid?: string | undefined;
612
+ level?: number | undefined;
613
+ active?: boolean | undefined;
614
+ }[] & ({
615
+ sid?: string | undefined;
616
+ level?: number | undefined;
617
+ active?: boolean | undefined;
618
+ } & {
619
+ sid?: string | undefined;
620
+ level?: number | undefined;
621
+ active?: boolean | undefined;
622
+ } & Record<Exclude<keyof I["speaker"]["speakers"][number], keyof SpeakerInfo>, never>)[] & Record<Exclude<keyof I["speaker"]["speakers"], number | keyof {
623
+ sid?: string | undefined;
624
+ level?: number | undefined;
625
+ active?: boolean | undefined;
626
+ }[]>, never>) | undefined;
627
+ } & Record<Exclude<keyof I["speaker"], "speakers">, never>) | undefined;
628
+ } & Record<Exclude<keyof I, keyof DataPacket>, never>>(object: I): DataPacket;
186
629
  };
187
630
  export declare const ActiveSpeakerUpdate: {
188
631
  encode(message: ActiveSpeakerUpdate, writer?: _m0.Writer): _m0.Writer;
189
632
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ActiveSpeakerUpdate;
190
633
  fromJSON(object: any): ActiveSpeakerUpdate;
191
634
  toJSON(message: ActiveSpeakerUpdate): unknown;
192
- fromPartial(object: DeepPartial<ActiveSpeakerUpdate>): ActiveSpeakerUpdate;
635
+ fromPartial<I extends {
636
+ speakers?: {
637
+ sid?: string | undefined;
638
+ level?: number | undefined;
639
+ active?: boolean | undefined;
640
+ }[] | undefined;
641
+ } & {
642
+ speakers?: ({
643
+ sid?: string | undefined;
644
+ level?: number | undefined;
645
+ active?: boolean | undefined;
646
+ }[] & ({
647
+ sid?: string | undefined;
648
+ level?: number | undefined;
649
+ active?: boolean | undefined;
650
+ } & {
651
+ sid?: string | undefined;
652
+ level?: number | undefined;
653
+ active?: boolean | undefined;
654
+ } & Record<Exclude<keyof I["speakers"][number], keyof SpeakerInfo>, never>)[] & Record<Exclude<keyof I["speakers"], number | keyof {
655
+ sid?: string | undefined;
656
+ level?: number | undefined;
657
+ active?: boolean | undefined;
658
+ }[]>, never>) | undefined;
659
+ } & Record<Exclude<keyof I, "speakers">, never>>(object: I): ActiveSpeakerUpdate;
193
660
  };
194
661
  export declare const SpeakerInfo: {
195
662
  encode(message: SpeakerInfo, writer?: _m0.Writer): _m0.Writer;
196
663
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): SpeakerInfo;
197
664
  fromJSON(object: any): SpeakerInfo;
198
665
  toJSON(message: SpeakerInfo): unknown;
199
- fromPartial(object: DeepPartial<SpeakerInfo>): SpeakerInfo;
666
+ fromPartial<I extends {
667
+ sid?: string | undefined;
668
+ level?: number | undefined;
669
+ active?: boolean | undefined;
670
+ } & {
671
+ sid?: string | undefined;
672
+ level?: number | undefined;
673
+ active?: boolean | undefined;
674
+ } & Record<Exclude<keyof I, keyof SpeakerInfo>, never>>(object: I): SpeakerInfo;
200
675
  };
201
676
  export declare const UserPacket: {
202
677
  encode(message: UserPacket, writer?: _m0.Writer): _m0.Writer;
203
678
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): UserPacket;
204
679
  fromJSON(object: any): UserPacket;
205
680
  toJSON(message: UserPacket): unknown;
206
- fromPartial(object: DeepPartial<UserPacket>): UserPacket;
681
+ fromPartial<I extends {
682
+ participantSid?: string | undefined;
683
+ payload?: Uint8Array | undefined;
684
+ destinationSids?: string[] | undefined;
685
+ } & {
686
+ participantSid?: string | undefined;
687
+ payload?: Uint8Array | undefined;
688
+ destinationSids?: (string[] & string[] & Record<Exclude<keyof I["destinationSids"], number | keyof string[]>, never>) | undefined;
689
+ } & Record<Exclude<keyof I, keyof UserPacket>, never>>(object: I): UserPacket;
207
690
  };
208
691
  export declare const ParticipantTracks: {
209
692
  encode(message: ParticipantTracks, writer?: _m0.Writer): _m0.Writer;
210
693
  decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ParticipantTracks;
211
694
  fromJSON(object: any): ParticipantTracks;
212
695
  toJSON(message: ParticipantTracks): unknown;
213
- fromPartial(object: DeepPartial<ParticipantTracks>): ParticipantTracks;
696
+ fromPartial<I extends {
697
+ participantSid?: string | undefined;
698
+ trackSids?: string[] | undefined;
699
+ } & {
700
+ participantSid?: string | undefined;
701
+ trackSids?: (string[] & string[] & Record<Exclude<keyof I["trackSids"], number | keyof string[]>, never>) | undefined;
702
+ } & Record<Exclude<keyof I, keyof ParticipantTracks>, never>>(object: I): ParticipantTracks;
703
+ };
704
+ export declare const ClientInfo: {
705
+ encode(message: ClientInfo, writer?: _m0.Writer): _m0.Writer;
706
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ClientInfo;
707
+ fromJSON(object: any): ClientInfo;
708
+ toJSON(message: ClientInfo): unknown;
709
+ fromPartial<I extends {
710
+ sdk?: ClientInfo_SDK | undefined;
711
+ version?: string | undefined;
712
+ protocol?: number | undefined;
713
+ os?: string | undefined;
714
+ osVersion?: string | undefined;
715
+ deviceModel?: string | undefined;
716
+ browser?: string | undefined;
717
+ browserVersion?: string | undefined;
718
+ address?: string | undefined;
719
+ } & {
720
+ sdk?: ClientInfo_SDK | undefined;
721
+ version?: string | undefined;
722
+ protocol?: number | undefined;
723
+ os?: string | undefined;
724
+ osVersion?: string | undefined;
725
+ deviceModel?: string | undefined;
726
+ browser?: string | undefined;
727
+ browserVersion?: string | undefined;
728
+ address?: string | undefined;
729
+ } & Record<Exclude<keyof I, keyof ClientInfo>, never>>(object: I): ClientInfo;
730
+ };
731
+ export declare const ClientConfiguration: {
732
+ encode(message: ClientConfiguration, writer?: _m0.Writer): _m0.Writer;
733
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ClientConfiguration;
734
+ fromJSON(object: any): ClientConfiguration;
735
+ toJSON(message: ClientConfiguration): unknown;
736
+ fromPartial<I extends {
737
+ video?: {
738
+ hardwareEncoder?: ClientConfigSetting | undefined;
739
+ } | undefined;
740
+ screen?: {
741
+ hardwareEncoder?: ClientConfigSetting | undefined;
742
+ } | undefined;
743
+ resumeConnection?: ClientConfigSetting | undefined;
744
+ } & {
745
+ video?: ({
746
+ hardwareEncoder?: ClientConfigSetting | undefined;
747
+ } & {
748
+ hardwareEncoder?: ClientConfigSetting | undefined;
749
+ } & Record<Exclude<keyof I["video"], "hardwareEncoder">, never>) | undefined;
750
+ screen?: ({
751
+ hardwareEncoder?: ClientConfigSetting | undefined;
752
+ } & {
753
+ hardwareEncoder?: ClientConfigSetting | undefined;
754
+ } & Record<Exclude<keyof I["screen"], "hardwareEncoder">, never>) | undefined;
755
+ resumeConnection?: ClientConfigSetting | undefined;
756
+ } & Record<Exclude<keyof I, keyof ClientConfiguration>, never>>(object: I): ClientConfiguration;
757
+ };
758
+ export declare const VideoConfiguration: {
759
+ encode(message: VideoConfiguration, writer?: _m0.Writer): _m0.Writer;
760
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): VideoConfiguration;
761
+ fromJSON(object: any): VideoConfiguration;
762
+ toJSON(message: VideoConfiguration): unknown;
763
+ fromPartial<I extends {
764
+ hardwareEncoder?: ClientConfigSetting | undefined;
765
+ } & {
766
+ hardwareEncoder?: ClientConfigSetting | undefined;
767
+ } & Record<Exclude<keyof I, "hardwareEncoder">, never>>(object: I): VideoConfiguration;
768
+ };
769
+ export declare const RTPStats: {
770
+ encode(message: RTPStats, writer?: _m0.Writer): _m0.Writer;
771
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): RTPStats;
772
+ fromJSON(object: any): RTPStats;
773
+ toJSON(message: RTPStats): unknown;
774
+ fromPartial<I extends {
775
+ startTime?: Date | undefined;
776
+ endTime?: Date | undefined;
777
+ duration?: number | undefined;
778
+ packets?: number | undefined;
779
+ packetRate?: number | undefined;
780
+ bytes?: number | undefined;
781
+ bitrate?: number | undefined;
782
+ packetsLost?: number | undefined;
783
+ packetLossRate?: number | undefined;
784
+ packetLossPercentage?: number | undefined;
785
+ packetsDuplicate?: number | undefined;
786
+ packetDuplicateRate?: number | undefined;
787
+ bytesDuplicate?: number | undefined;
788
+ bitrateDuplicate?: number | undefined;
789
+ packetsPadding?: number | undefined;
790
+ packetPaddingRate?: number | undefined;
791
+ bytesPadding?: number | undefined;
792
+ bitratePadding?: number | undefined;
793
+ packetsOutOfOrder?: number | undefined;
794
+ frames?: number | undefined;
795
+ frameRate?: number | undefined;
796
+ jitterCurrent?: number | undefined;
797
+ jitterMax?: number | undefined;
798
+ gapHistogram?: {
799
+ [x: number]: number | undefined;
800
+ } | undefined;
801
+ nacks?: number | undefined;
802
+ nackAcks?: number | undefined;
803
+ nackMisses?: number | undefined;
804
+ nackRepeated?: number | undefined;
805
+ plis?: number | undefined;
806
+ lastPli?: Date | undefined;
807
+ firs?: number | undefined;
808
+ lastFir?: Date | undefined;
809
+ rttCurrent?: number | undefined;
810
+ rttMax?: number | undefined;
811
+ keyFrames?: number | undefined;
812
+ lastKeyFrame?: Date | undefined;
813
+ layerLockPlis?: number | undefined;
814
+ lastLayerLockPli?: Date | undefined;
815
+ } & {
816
+ startTime?: Date | undefined;
817
+ endTime?: Date | undefined;
818
+ duration?: number | undefined;
819
+ packets?: number | undefined;
820
+ packetRate?: number | undefined;
821
+ bytes?: number | undefined;
822
+ bitrate?: number | undefined;
823
+ packetsLost?: number | undefined;
824
+ packetLossRate?: number | undefined;
825
+ packetLossPercentage?: number | undefined;
826
+ packetsDuplicate?: number | undefined;
827
+ packetDuplicateRate?: number | undefined;
828
+ bytesDuplicate?: number | undefined;
829
+ bitrateDuplicate?: number | undefined;
830
+ packetsPadding?: number | undefined;
831
+ packetPaddingRate?: number | undefined;
832
+ bytesPadding?: number | undefined;
833
+ bitratePadding?: number | undefined;
834
+ packetsOutOfOrder?: number | undefined;
835
+ frames?: number | undefined;
836
+ frameRate?: number | undefined;
837
+ jitterCurrent?: number | undefined;
838
+ jitterMax?: number | undefined;
839
+ gapHistogram?: ({
840
+ [x: number]: number | undefined;
841
+ } & {
842
+ [x: number]: number | undefined;
843
+ } & Record<Exclude<keyof I["gapHistogram"], number>, never>) | undefined;
844
+ nacks?: number | undefined;
845
+ nackAcks?: number | undefined;
846
+ nackMisses?: number | undefined;
847
+ nackRepeated?: number | undefined;
848
+ plis?: number | undefined;
849
+ lastPli?: Date | undefined;
850
+ firs?: number | undefined;
851
+ lastFir?: Date | undefined;
852
+ rttCurrent?: number | undefined;
853
+ rttMax?: number | undefined;
854
+ keyFrames?: number | undefined;
855
+ lastKeyFrame?: Date | undefined;
856
+ layerLockPlis?: number | undefined;
857
+ lastLayerLockPli?: Date | undefined;
858
+ } & Record<Exclude<keyof I, keyof RTPStats>, never>>(object: I): RTPStats;
859
+ };
860
+ export declare const RTPStats_GapHistogramEntry: {
861
+ encode(message: RTPStats_GapHistogramEntry, writer?: _m0.Writer): _m0.Writer;
862
+ decode(input: _m0.Reader | Uint8Array, length?: number | undefined): RTPStats_GapHistogramEntry;
863
+ fromJSON(object: any): RTPStats_GapHistogramEntry;
864
+ toJSON(message: RTPStats_GapHistogramEntry): unknown;
865
+ fromPartial<I extends {
866
+ key?: number | undefined;
867
+ value?: number | undefined;
868
+ } & {
869
+ key?: number | undefined;
870
+ value?: number | undefined;
871
+ } & Record<Exclude<keyof I, keyof RTPStats_GapHistogramEntry>, never>>(object: I): RTPStats_GapHistogramEntry;
214
872
  };
215
873
  declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
216
874
  export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
217
875
  [K in keyof T]?: DeepPartial<T[K]>;
218
876
  } : Partial<T>;
877
+ declare type KeysOfUnion<T> = T extends T ? keyof T : never;
878
+ export declare type Exact<P, I extends P> = P extends Builtin ? P : P & {
879
+ [K in keyof P]: Exact<P[K], I[K]>;
880
+ } & Record<Exclude<keyof I, KeysOfUnion<P>>, never>;
219
881
  export {};