@livekit/rtc-node 0.12.2 → 0.13.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 (217) hide show
  1. package/dist/audio_frame.cjs +2 -2
  2. package/dist/audio_frame.cjs.map +1 -1
  3. package/dist/audio_frame.d.cts +2 -3
  4. package/dist/audio_frame.d.ts +2 -3
  5. package/dist/audio_frame.d.ts.map +1 -1
  6. package/dist/audio_frame.js +3 -3
  7. package/dist/audio_frame.js.map +1 -1
  8. package/dist/audio_resampler.cjs +10 -7
  9. package/dist/audio_resampler.cjs.map +1 -1
  10. package/dist/audio_resampler.d.cts +2 -3
  11. package/dist/audio_resampler.d.ts +2 -3
  12. package/dist/audio_resampler.d.ts.map +1 -1
  13. package/dist/audio_resampler.js +13 -10
  14. package/dist/audio_resampler.js.map +1 -1
  15. package/dist/audio_source.cjs +6 -4
  16. package/dist/audio_source.cjs.map +1 -1
  17. package/dist/audio_source.d.cts +3 -3
  18. package/dist/audio_source.d.ts +3 -3
  19. package/dist/audio_source.d.ts.map +1 -1
  20. package/dist/audio_source.js +9 -7
  21. package/dist/audio_source.js.map +1 -1
  22. package/dist/audio_stream.cjs +1 -2
  23. package/dist/audio_stream.cjs.map +1 -1
  24. package/dist/audio_stream.d.cts +2 -3
  25. package/dist/audio_stream.d.ts +2 -3
  26. package/dist/audio_stream.d.ts.map +1 -1
  27. package/dist/audio_stream.js +2 -3
  28. package/dist/audio_stream.js.map +1 -1
  29. package/dist/e2ee.cjs +19 -20
  30. package/dist/e2ee.cjs.map +1 -1
  31. package/dist/e2ee.d.cts +0 -1
  32. package/dist/e2ee.d.ts +0 -1
  33. package/dist/e2ee.d.ts.map +1 -1
  34. package/dist/e2ee.js +29 -30
  35. package/dist/e2ee.js.map +1 -1
  36. package/dist/ffi_client.cjs +6 -5
  37. package/dist/ffi_client.cjs.map +1 -1
  38. package/dist/ffi_client.d.cts +10 -10
  39. package/dist/ffi_client.d.ts +10 -10
  40. package/dist/ffi_client.d.ts.map +1 -1
  41. package/dist/ffi_client.js +6 -10
  42. package/dist/ffi_client.js.map +1 -1
  43. package/dist/index.cjs +16 -49
  44. package/dist/index.cjs.map +1 -1
  45. package/dist/index.d.cts +6 -35
  46. package/dist/index.d.ts +6 -35
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +7 -46
  49. package/dist/index.js.map +1 -1
  50. package/dist/napi/native.d.cjs.map +1 -1
  51. package/dist/napi/native.d.ts +5 -5
  52. package/dist/native.d.ts +5 -5
  53. package/dist/participant.cjs +57 -34
  54. package/dist/participant.cjs.map +1 -1
  55. package/dist/participant.d.cts +10 -10
  56. package/dist/participant.d.ts +10 -10
  57. package/dist/participant.d.ts.map +1 -1
  58. package/dist/participant.js +75 -50
  59. package/dist/participant.js.map +1 -1
  60. package/dist/proto/audio_frame_pb.cjs +977 -125
  61. package/dist/proto/audio_frame_pb.cjs.map +1 -1
  62. package/dist/proto/audio_frame_pb.d.cts +502 -417
  63. package/dist/proto/audio_frame_pb.d.ts +502 -417
  64. package/dist/proto/audio_frame_pb.d.ts.map +1 -1
  65. package/dist/proto/audio_frame_pb.js +943 -85
  66. package/dist/proto/audio_frame_pb.js.map +1 -1
  67. package/dist/proto/e2ee_pb.cjs +700 -85
  68. package/dist/proto/e2ee_pb.cjs.map +1 -1
  69. package/dist/proto/e2ee_pb.d.cts +331 -263
  70. package/dist/proto/e2ee_pb.d.ts +331 -263
  71. package/dist/proto/e2ee_pb.d.ts.map +1 -1
  72. package/dist/proto/e2ee_pb.js +675 -57
  73. package/dist/proto/e2ee_pb.js.map +1 -1
  74. package/dist/proto/ffi_pb.cjs +369 -36
  75. package/dist/proto/ffi_pb.cjs.map +1 -1
  76. package/dist/proto/ffi_pb.d.cts +156 -109
  77. package/dist/proto/ffi_pb.d.ts +156 -109
  78. package/dist/proto/ffi_pb.d.ts.map +1 -1
  79. package/dist/proto/ffi_pb.js +364 -29
  80. package/dist/proto/ffi_pb.js.map +1 -1
  81. package/dist/proto/handle_pb.cjs +27 -7
  82. package/dist/proto/handle_pb.cjs.map +1 -1
  83. package/dist/proto/handle_pb.d.cts +13 -15
  84. package/dist/proto/handle_pb.d.ts +13 -15
  85. package/dist/proto/handle_pb.d.ts.map +1 -1
  86. package/dist/proto/handle_pb.js +26 -5
  87. package/dist/proto/handle_pb.js.map +1 -1
  88. package/dist/proto/participant_pb.cjs +112 -15
  89. package/dist/proto/participant_pb.cjs.map +1 -1
  90. package/dist/proto/participant_pb.d.cts +140 -52
  91. package/dist/proto/participant_pb.d.ts +140 -52
  92. package/dist/proto/participant_pb.d.ts.map +1 -1
  93. package/dist/proto/participant_pb.js +109 -11
  94. package/dist/proto/participant_pb.js.map +1 -1
  95. package/dist/proto/room_pb.cjs +2693 -302
  96. package/dist/proto/room_pb.cjs.map +1 -1
  97. package/dist/proto/room_pb.d.cts +1265 -862
  98. package/dist/proto/room_pb.d.ts +1265 -862
  99. package/dist/proto/room_pb.d.ts.map +1 -1
  100. package/dist/proto/room_pb.js +2603 -210
  101. package/dist/proto/room_pb.js.map +1 -1
  102. package/dist/proto/rpc_pb.cjs +302 -37
  103. package/dist/proto/rpc_pb.cjs.map +1 -1
  104. package/dist/proto/rpc_pb.d.cts +138 -108
  105. package/dist/proto/rpc_pb.d.ts +138 -108
  106. package/dist/proto/rpc_pb.d.ts.map +1 -1
  107. package/dist/proto/rpc_pb.js +291 -25
  108. package/dist/proto/rpc_pb.js.map +1 -1
  109. package/dist/proto/stats_pb.cjs +1253 -139
  110. package/dist/proto/stats_pb.cjs.map +1 -1
  111. package/dist/proto/stats_pb.d.cts +803 -692
  112. package/dist/proto/stats_pb.d.ts +803 -692
  113. package/dist/proto/stats_pb.d.ts.map +1 -1
  114. package/dist/proto/stats_pb.js +1216 -93
  115. package/dist/proto/stats_pb.js.map +1 -1
  116. package/dist/proto/track_pb.cjs +462 -64
  117. package/dist/proto/track_pb.cjs.map +1 -1
  118. package/dist/proto/track_pb.d.cts +250 -218
  119. package/dist/proto/track_pb.d.ts +250 -218
  120. package/dist/proto/track_pb.d.ts.map +1 -1
  121. package/dist/proto/track_pb.js +447 -45
  122. package/dist/proto/track_pb.js.map +1 -1
  123. package/dist/proto/track_publication_pb.cjs +130 -0
  124. package/dist/proto/track_publication_pb.cjs.map +1 -0
  125. package/dist/proto/track_publication_pb.d.cts +80 -0
  126. package/dist/proto/track_publication_pb.d.ts +80 -0
  127. package/dist/proto/track_publication_pb.d.ts.map +1 -0
  128. package/dist/proto/track_publication_pb.js +103 -0
  129. package/dist/proto/track_publication_pb.js.map +1 -0
  130. package/dist/proto/video_frame_pb.cjs +648 -88
  131. package/dist/proto/video_frame_pb.cjs.map +1 -1
  132. package/dist/proto/video_frame_pb.d.cts +371 -328
  133. package/dist/proto/video_frame_pb.d.ts +371 -328
  134. package/dist/proto/video_frame_pb.d.ts.map +1 -1
  135. package/dist/proto/video_frame_pb.js +626 -60
  136. package/dist/proto/video_frame_pb.js.map +1 -1
  137. package/dist/room.cjs +93 -125
  138. package/dist/room.cjs.map +1 -1
  139. package/dist/room.d.cts +6 -17
  140. package/dist/room.d.ts +6 -17
  141. package/dist/room.d.ts.map +1 -1
  142. package/dist/room.js +92 -122
  143. package/dist/room.js.map +1 -1
  144. package/dist/rpc.cjs.map +1 -1
  145. package/dist/rpc.d.cts +0 -1
  146. package/dist/rpc.d.ts +0 -1
  147. package/dist/rpc.js.map +1 -1
  148. package/dist/track.cjs +12 -8
  149. package/dist/track.cjs.map +1 -1
  150. package/dist/track.d.cts +8 -9
  151. package/dist/track.d.ts +8 -9
  152. package/dist/track.d.ts.map +1 -1
  153. package/dist/track.js +13 -9
  154. package/dist/track.js.map +1 -1
  155. package/dist/track_publication.cjs +21 -12
  156. package/dist/track_publication.cjs.map +1 -1
  157. package/dist/track_publication.d.cts +12 -13
  158. package/dist/track_publication.d.ts +12 -13
  159. package/dist/track_publication.d.ts.map +1 -1
  160. package/dist/track_publication.js +22 -13
  161. package/dist/track_publication.js.map +1 -1
  162. package/dist/version.cjs +1 -1
  163. package/dist/version.cjs.map +1 -1
  164. package/dist/version.d.cts +1 -1
  165. package/dist/version.d.ts +1 -1
  166. package/dist/version.js +1 -1
  167. package/dist/version.js.map +1 -1
  168. package/dist/video_frame.cjs +26 -45
  169. package/dist/video_frame.cjs.map +1 -1
  170. package/dist/video_frame.d.cts +2 -3
  171. package/dist/video_frame.d.ts +2 -3
  172. package/dist/video_frame.d.ts.map +1 -1
  173. package/dist/video_frame.js +29 -48
  174. package/dist/video_frame.js.map +1 -1
  175. package/dist/video_source.cjs +7 -4
  176. package/dist/video_source.cjs.map +1 -1
  177. package/dist/video_source.d.cts +4 -4
  178. package/dist/video_source.d.ts +4 -4
  179. package/dist/video_source.d.ts.map +1 -1
  180. package/dist/video_source.js +9 -6
  181. package/dist/video_source.js.map +1 -1
  182. package/dist/video_stream.cjs +16 -5
  183. package/dist/video_stream.cjs.map +1 -1
  184. package/dist/video_stream.d.cts +3 -4
  185. package/dist/video_stream.d.ts +3 -4
  186. package/dist/video_stream.d.ts.map +1 -1
  187. package/dist/video_stream.js +17 -6
  188. package/dist/video_stream.js.map +1 -1
  189. package/package.json +9 -9
  190. package/src/audio_frame.ts +10 -10
  191. package/src/audio_resampler.ts +15 -13
  192. package/src/audio_source.ts +11 -8
  193. package/src/audio_stream.ts +3 -4
  194. package/src/e2ee.ts +36 -37
  195. package/src/ffi_client.ts +8 -16
  196. package/src/index.ts +5 -68
  197. package/src/napi/native.d.ts +5 -5
  198. package/src/participant.ts +100 -72
  199. package/src/proto/audio_frame_pb.ts +1220 -496
  200. package/src/proto/e2ee_pb.ts +858 -337
  201. package/src/proto/ffi_pb.ts +442 -135
  202. package/src/proto/handle_pb.ts +33 -19
  203. package/src/proto/participant_pb.ts +225 -60
  204. package/src/proto/room_pb.ts +3149 -1013
  205. package/src/proto/rpc_pb.ts +358 -129
  206. package/src/proto/stats_pb.ts +1891 -877
  207. package/src/proto/track_pb.ts +587 -253
  208. package/src/proto/track_publication_pb.ts +180 -0
  209. package/src/proto/video_frame_pb.ts +861 -394
  210. package/src/room.ts +143 -188
  211. package/src/rpc.ts +1 -1
  212. package/src/track.ts +16 -17
  213. package/src/track_publication.ts +25 -26
  214. package/src/version.ts +1 -1
  215. package/src/video_frame.ts +48 -72
  216. package/src/video_source.ts +11 -8
  217. package/src/video_stream.ts +18 -8
@@ -12,24 +12,344 @@
12
12
  // See the License for the specific language governing permissions and
13
13
  // limitations under the License.
14
14
 
15
- // @generated by protoc-gen-es v2.2.0 with parameter "target=ts,import_extension=js"
15
+ // @generated by protoc-gen-es v1.10.0 with parameter "target=ts,import_extension=.js"
16
16
  // @generated from file stats.proto (package livekit.proto, syntax proto2)
17
17
  /* eslint-disable */
18
+ // @ts-nocheck
18
19
 
19
- import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
20
- import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
21
- import type { Message } from "@bufbuild/protobuf";
20
+ import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf";
21
+ import { Message, proto2 } from "@bufbuild/protobuf";
22
22
 
23
23
  /**
24
- * Describes the file stats.proto.
24
+ * @generated from enum livekit.proto.DataChannelState
25
+ */
26
+ export enum DataChannelState {
27
+ /**
28
+ * @generated from enum value: DC_CONNECTING = 0;
29
+ */
30
+ DC_CONNECTING = 0,
31
+
32
+ /**
33
+ * @generated from enum value: DC_OPEN = 1;
34
+ */
35
+ DC_OPEN = 1,
36
+
37
+ /**
38
+ * @generated from enum value: DC_CLOSING = 2;
39
+ */
40
+ DC_CLOSING = 2,
41
+
42
+ /**
43
+ * @generated from enum value: DC_CLOSED = 3;
44
+ */
45
+ DC_CLOSED = 3,
46
+ }
47
+ // Retrieve enum metadata with: proto2.getEnumType(DataChannelState)
48
+ proto2.util.setEnumType(DataChannelState, "livekit.proto.DataChannelState", [
49
+ { no: 0, name: "DC_CONNECTING" },
50
+ { no: 1, name: "DC_OPEN" },
51
+ { no: 2, name: "DC_CLOSING" },
52
+ { no: 3, name: "DC_CLOSED" },
53
+ ]);
54
+
55
+ /**
56
+ * @generated from enum livekit.proto.QualityLimitationReason
57
+ */
58
+ export enum QualityLimitationReason {
59
+ /**
60
+ * @generated from enum value: LIMITATION_NONE = 0;
61
+ */
62
+ LIMITATION_NONE = 0,
63
+
64
+ /**
65
+ * @generated from enum value: LIMITATION_CPU = 1;
66
+ */
67
+ LIMITATION_CPU = 1,
68
+
69
+ /**
70
+ * @generated from enum value: LIMITATION_BANDWIDTH = 2;
71
+ */
72
+ LIMITATION_BANDWIDTH = 2,
73
+
74
+ /**
75
+ * @generated from enum value: LIMITATION_OTHER = 3;
76
+ */
77
+ LIMITATION_OTHER = 3,
78
+ }
79
+ // Retrieve enum metadata with: proto2.getEnumType(QualityLimitationReason)
80
+ proto2.util.setEnumType(QualityLimitationReason, "livekit.proto.QualityLimitationReason", [
81
+ { no: 0, name: "LIMITATION_NONE" },
82
+ { no: 1, name: "LIMITATION_CPU" },
83
+ { no: 2, name: "LIMITATION_BANDWIDTH" },
84
+ { no: 3, name: "LIMITATION_OTHER" },
85
+ ]);
86
+
87
+ /**
88
+ * @generated from enum livekit.proto.IceRole
89
+ */
90
+ export enum IceRole {
91
+ /**
92
+ * @generated from enum value: ICE_UNKNOWN = 0;
93
+ */
94
+ ICE_UNKNOWN = 0,
95
+
96
+ /**
97
+ * @generated from enum value: ICE_CONTROLLING = 1;
98
+ */
99
+ ICE_CONTROLLING = 1,
100
+
101
+ /**
102
+ * @generated from enum value: ICE_CONTROLLED = 2;
103
+ */
104
+ ICE_CONTROLLED = 2,
105
+ }
106
+ // Retrieve enum metadata with: proto2.getEnumType(IceRole)
107
+ proto2.util.setEnumType(IceRole, "livekit.proto.IceRole", [
108
+ { no: 0, name: "ICE_UNKNOWN" },
109
+ { no: 1, name: "ICE_CONTROLLING" },
110
+ { no: 2, name: "ICE_CONTROLLED" },
111
+ ]);
112
+
113
+ /**
114
+ * @generated from enum livekit.proto.DtlsTransportState
115
+ */
116
+ export enum DtlsTransportState {
117
+ /**
118
+ * @generated from enum value: DTLS_TRANSPORT_NEW = 0;
119
+ */
120
+ DTLS_TRANSPORT_NEW = 0,
121
+
122
+ /**
123
+ * @generated from enum value: DTLS_TRANSPORT_CONNECTING = 1;
124
+ */
125
+ DTLS_TRANSPORT_CONNECTING = 1,
126
+
127
+ /**
128
+ * @generated from enum value: DTLS_TRANSPORT_CONNECTED = 2;
129
+ */
130
+ DTLS_TRANSPORT_CONNECTED = 2,
131
+
132
+ /**
133
+ * @generated from enum value: DTLS_TRANSPORT_CLOSED = 3;
134
+ */
135
+ DTLS_TRANSPORT_CLOSED = 3,
136
+
137
+ /**
138
+ * @generated from enum value: DTLS_TRANSPORT_FAILED = 4;
139
+ */
140
+ DTLS_TRANSPORT_FAILED = 4,
141
+ }
142
+ // Retrieve enum metadata with: proto2.getEnumType(DtlsTransportState)
143
+ proto2.util.setEnumType(DtlsTransportState, "livekit.proto.DtlsTransportState", [
144
+ { no: 0, name: "DTLS_TRANSPORT_NEW" },
145
+ { no: 1, name: "DTLS_TRANSPORT_CONNECTING" },
146
+ { no: 2, name: "DTLS_TRANSPORT_CONNECTED" },
147
+ { no: 3, name: "DTLS_TRANSPORT_CLOSED" },
148
+ { no: 4, name: "DTLS_TRANSPORT_FAILED" },
149
+ ]);
150
+
151
+ /**
152
+ * @generated from enum livekit.proto.IceTransportState
153
+ */
154
+ export enum IceTransportState {
155
+ /**
156
+ * @generated from enum value: ICE_TRANSPORT_NEW = 0;
157
+ */
158
+ ICE_TRANSPORT_NEW = 0,
159
+
160
+ /**
161
+ * @generated from enum value: ICE_TRANSPORT_CHECKING = 1;
162
+ */
163
+ ICE_TRANSPORT_CHECKING = 1,
164
+
165
+ /**
166
+ * @generated from enum value: ICE_TRANSPORT_CONNECTED = 2;
167
+ */
168
+ ICE_TRANSPORT_CONNECTED = 2,
169
+
170
+ /**
171
+ * @generated from enum value: ICE_TRANSPORT_COMPLETED = 3;
172
+ */
173
+ ICE_TRANSPORT_COMPLETED = 3,
174
+
175
+ /**
176
+ * @generated from enum value: ICE_TRANSPORT_DISCONNECTED = 4;
177
+ */
178
+ ICE_TRANSPORT_DISCONNECTED = 4,
179
+
180
+ /**
181
+ * @generated from enum value: ICE_TRANSPORT_FAILED = 5;
182
+ */
183
+ ICE_TRANSPORT_FAILED = 5,
184
+
185
+ /**
186
+ * @generated from enum value: ICE_TRANSPORT_CLOSED = 6;
187
+ */
188
+ ICE_TRANSPORT_CLOSED = 6,
189
+ }
190
+ // Retrieve enum metadata with: proto2.getEnumType(IceTransportState)
191
+ proto2.util.setEnumType(IceTransportState, "livekit.proto.IceTransportState", [
192
+ { no: 0, name: "ICE_TRANSPORT_NEW" },
193
+ { no: 1, name: "ICE_TRANSPORT_CHECKING" },
194
+ { no: 2, name: "ICE_TRANSPORT_CONNECTED" },
195
+ { no: 3, name: "ICE_TRANSPORT_COMPLETED" },
196
+ { no: 4, name: "ICE_TRANSPORT_DISCONNECTED" },
197
+ { no: 5, name: "ICE_TRANSPORT_FAILED" },
198
+ { no: 6, name: "ICE_TRANSPORT_CLOSED" },
199
+ ]);
200
+
201
+ /**
202
+ * @generated from enum livekit.proto.DtlsRole
203
+ */
204
+ export enum DtlsRole {
205
+ /**
206
+ * @generated from enum value: DTLS_CLIENT = 0;
207
+ */
208
+ DTLS_CLIENT = 0,
209
+
210
+ /**
211
+ * @generated from enum value: DTLS_SERVER = 1;
212
+ */
213
+ DTLS_SERVER = 1,
214
+
215
+ /**
216
+ * @generated from enum value: DTLS_UNKNOWN = 2;
217
+ */
218
+ DTLS_UNKNOWN = 2,
219
+ }
220
+ // Retrieve enum metadata with: proto2.getEnumType(DtlsRole)
221
+ proto2.util.setEnumType(DtlsRole, "livekit.proto.DtlsRole", [
222
+ { no: 0, name: "DTLS_CLIENT" },
223
+ { no: 1, name: "DTLS_SERVER" },
224
+ { no: 2, name: "DTLS_UNKNOWN" },
225
+ ]);
226
+
227
+ /**
228
+ * @generated from enum livekit.proto.IceCandidatePairState
229
+ */
230
+ export enum IceCandidatePairState {
231
+ /**
232
+ * @generated from enum value: PAIR_FROZEN = 0;
233
+ */
234
+ PAIR_FROZEN = 0,
235
+
236
+ /**
237
+ * @generated from enum value: PAIR_WAITING = 1;
238
+ */
239
+ PAIR_WAITING = 1,
240
+
241
+ /**
242
+ * @generated from enum value: PAIR_IN_PROGRESS = 2;
243
+ */
244
+ PAIR_IN_PROGRESS = 2,
245
+
246
+ /**
247
+ * @generated from enum value: PAIR_FAILED = 3;
248
+ */
249
+ PAIR_FAILED = 3,
250
+
251
+ /**
252
+ * @generated from enum value: PAIR_SUCCEEDED = 4;
253
+ */
254
+ PAIR_SUCCEEDED = 4,
255
+ }
256
+ // Retrieve enum metadata with: proto2.getEnumType(IceCandidatePairState)
257
+ proto2.util.setEnumType(IceCandidatePairState, "livekit.proto.IceCandidatePairState", [
258
+ { no: 0, name: "PAIR_FROZEN" },
259
+ { no: 1, name: "PAIR_WAITING" },
260
+ { no: 2, name: "PAIR_IN_PROGRESS" },
261
+ { no: 3, name: "PAIR_FAILED" },
262
+ { no: 4, name: "PAIR_SUCCEEDED" },
263
+ ]);
264
+
265
+ /**
266
+ * @generated from enum livekit.proto.IceCandidateType
25
267
  */
26
- export const file_stats: GenFile = /*@__PURE__*/
27
- fileDesc("CgtzdGF0cy5wcm90bxINbGl2ZWtpdC5wcm90byLZFwoIUnRjU3RhdHMSLgoFY29kZWMYAyABKAsyHS5saXZla2l0LnByb3RvLlJ0Y1N0YXRzLkNvZGVjSAASOQoLaW5ib3VuZF9ydHAYBCABKAsyIi5saXZla2l0LnByb3RvLlJ0Y1N0YXRzLkluYm91bmRSdHBIABI7CgxvdXRib3VuZF9ydHAYBSABKAsyIy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzLk91dGJvdW5kUnRwSAASRgoScmVtb3RlX2luYm91bmRfcnRwGAYgASgLMigubGl2ZWtpdC5wcm90by5SdGNTdGF0cy5SZW1vdGVJbmJvdW5kUnRwSAASSAoTcmVtb3RlX291dGJvdW5kX3J0cBgHIAEoCzIpLmxpdmVraXQucHJvdG8uUnRjU3RhdHMuUmVtb3RlT3V0Ym91bmRSdHBIABI7CgxtZWRpYV9zb3VyY2UYCCABKAsyIy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzLk1lZGlhU291cmNlSAASPQoNbWVkaWFfcGxheW91dBgJIAEoCzIkLmxpdmVraXQucHJvdG8uUnRjU3RhdHMuTWVkaWFQbGF5b3V0SAASQQoPcGVlcl9jb25uZWN0aW9uGAogASgLMiYubGl2ZWtpdC5wcm90by5SdGNTdGF0cy5QZWVyQ29ubmVjdGlvbkgAEjsKDGRhdGFfY2hhbm5lbBgLIAEoCzIjLmxpdmVraXQucHJvdG8uUnRjU3RhdHMuRGF0YUNoYW5uZWxIABI2Cgl0cmFuc3BvcnQYDCABKAsyIS5saXZla2l0LnByb3RvLlJ0Y1N0YXRzLlRyYW5zcG9ydEgAEj8KDmNhbmRpZGF0ZV9wYWlyGA0gASgLMiUubGl2ZWtpdC5wcm90by5SdGNTdGF0cy5DYW5kaWRhdGVQYWlySAASQQoPbG9jYWxfY2FuZGlkYXRlGA4gASgLMiYubGl2ZWtpdC5wcm90by5SdGNTdGF0cy5Mb2NhbENhbmRpZGF0ZUgAEkMKEHJlbW90ZV9jYW5kaWRhdGUYDyABKAsyJy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzLlJlbW90ZUNhbmRpZGF0ZUgAEjoKC2NlcnRpZmljYXRlGBAgASgLMiMubGl2ZWtpdC5wcm90by5SdGNTdGF0cy5DZXJ0aWZpY2F0ZUgAEi4KBXRyYWNrGBEgASgLMh0ubGl2ZWtpdC5wcm90by5SdGNTdGF0cy5UcmFja0gAGlsKBUNvZGVjEigKA3J0YxgBIAIoCzIbLmxpdmVraXQucHJvdG8uUnRjU3RhdHNEYXRhEigKBWNvZGVjGAIgAigLMhkubGl2ZWtpdC5wcm90by5Db2RlY1N0YXRzGtUBCgpJbmJvdW5kUnRwEigKA3J0YxgBIAIoCzIbLmxpdmVraXQucHJvdG8uUnRjU3RhdHNEYXRhEi0KBnN0cmVhbRgCIAIoCzIdLmxpdmVraXQucHJvdG8uUnRwU3RyZWFtU3RhdHMSNwoIcmVjZWl2ZWQYAyACKAsyJS5saXZla2l0LnByb3RvLlJlY2VpdmVkUnRwU3RyZWFtU3RhdHMSNQoHaW5ib3VuZBgEIAIoCzIkLmxpdmVraXQucHJvdG8uSW5ib3VuZFJ0cFN0cmVhbVN0YXRzGtABCgtPdXRib3VuZFJ0cBIoCgNydGMYASACKAsyGy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzRGF0YRItCgZzdHJlYW0YAiACKAsyHS5saXZla2l0LnByb3RvLlJ0cFN0cmVhbVN0YXRzEi8KBHNlbnQYAyACKAsyIS5saXZla2l0LnByb3RvLlNlbnRSdHBTdHJlYW1TdGF0cxI3CghvdXRib3VuZBgEIAIoCzIlLmxpdmVraXQucHJvdG8uT3V0Ym91bmRSdHBTdHJlYW1TdGF0cxroAQoQUmVtb3RlSW5ib3VuZFJ0cBIoCgNydGMYASACKAsyGy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzRGF0YRItCgZzdHJlYW0YAiACKAsyHS5saXZla2l0LnByb3RvLlJ0cFN0cmVhbVN0YXRzEjcKCHJlY2VpdmVkGAMgAigLMiUubGl2ZWtpdC5wcm90by5SZWNlaXZlZFJ0cFN0cmVhbVN0YXRzEkIKDnJlbW90ZV9pbmJvdW5kGAQgAigLMioubGl2ZWtpdC5wcm90by5SZW1vdGVJbmJvdW5kUnRwU3RyZWFtU3RhdHMa4wEKEVJlbW90ZU91dGJvdW5kUnRwEigKA3J0YxgBIAIoCzIbLmxpdmVraXQucHJvdG8uUnRjU3RhdHNEYXRhEi0KBnN0cmVhbRgCIAIoCzIdLmxpdmVraXQucHJvdG8uUnRwU3RyZWFtU3RhdHMSLwoEc2VudBgDIAIoCzIhLmxpdmVraXQucHJvdG8uU2VudFJ0cFN0cmVhbVN0YXRzEkQKD3JlbW90ZV9vdXRib3VuZBgEIAIoCzIrLmxpdmVraXQucHJvdG8uUmVtb3RlT3V0Ym91bmRSdHBTdHJlYW1TdGF0cxrIAQoLTWVkaWFTb3VyY2USKAoDcnRjGAEgAigLMhsubGl2ZWtpdC5wcm90by5SdGNTdGF0c0RhdGESLwoGc291cmNlGAIgAigLMh8ubGl2ZWtpdC5wcm90by5NZWRpYVNvdXJjZVN0YXRzEi4KBWF1ZGlvGAMgAigLMh8ubGl2ZWtpdC5wcm90by5BdWRpb1NvdXJjZVN0YXRzEi4KBXZpZGVvGAQgAigLMh8ubGl2ZWtpdC5wcm90by5WaWRlb1NvdXJjZVN0YXRzGnEKDE1lZGlhUGxheW91dBIoCgNydGMYASACKAsyGy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzRGF0YRI3Cg1hdWRpb19wbGF5b3V0GAIgAigLMiAubGl2ZWtpdC5wcm90by5BdWRpb1BsYXlvdXRTdGF0cxpqCg5QZWVyQ29ubmVjdGlvbhIoCgNydGMYASACKAsyGy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzRGF0YRIuCgJwYxgCIAIoCzIiLmxpdmVraXQucHJvdG8uUGVlckNvbm5lY3Rpb25TdGF0cxpkCgtEYXRhQ2hhbm5lbBIoCgNydGMYASACKAsyGy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzRGF0YRIrCgJkYxgCIAIoCzIfLmxpdmVraXQucHJvdG8uRGF0YUNoYW5uZWxTdGF0cxpnCglUcmFuc3BvcnQSKAoDcnRjGAEgAigLMhsubGl2ZWtpdC5wcm90by5SdGNTdGF0c0RhdGESMAoJdHJhbnNwb3J0GAIgAigLMh0ubGl2ZWtpdC5wcm90by5UcmFuc3BvcnRTdGF0cxp0Cg1DYW5kaWRhdGVQYWlyEigKA3J0YxgBIAIoCzIbLmxpdmVraXQucHJvdG8uUnRjU3RhdHNEYXRhEjkKDmNhbmRpZGF0ZV9wYWlyGAIgAigLMiEubGl2ZWtpdC5wcm90by5DYW5kaWRhdGVQYWlyU3RhdHMabwoOTG9jYWxDYW5kaWRhdGUSKAoDcnRjGAEgAigLMhsubGl2ZWtpdC5wcm90by5SdGNTdGF0c0RhdGESMwoJY2FuZGlkYXRlGAIgAigLMiAubGl2ZWtpdC5wcm90by5JY2VDYW5kaWRhdGVTdGF0cxpwCg9SZW1vdGVDYW5kaWRhdGUSKAoDcnRjGAEgAigLMhsubGl2ZWtpdC5wcm90by5SdGNTdGF0c0RhdGESMwoJY2FuZGlkYXRlGAIgAigLMiAubGl2ZWtpdC5wcm90by5JY2VDYW5kaWRhdGVTdGF0cxptCgtDZXJ0aWZpY2F0ZRIoCgNydGMYASACKAsyGy5saXZla2l0LnByb3RvLlJ0Y1N0YXRzRGF0YRI0CgtjZXJ0aWZpY2F0ZRgCIAIoCzIfLmxpdmVraXQucHJvdG8uQ2VydGlmaWNhdGVTdGF0cxoHCgVUcmFja0IHCgVzdGF0cyItCgxSdGNTdGF0c0RhdGESCgoCaWQYASACKAkSEQoJdGltZXN0YW1wGAIgAigDIogBCgpDb2RlY1N0YXRzEhQKDHBheWxvYWRfdHlwZRgBIAIoDRIUCgx0cmFuc3BvcnRfaWQYAiACKAkSEQoJbWltZV90eXBlGAMgAigJEhIKCmNsb2NrX3JhdGUYBCACKA0SEAoIY2hhbm5lbHMYBSACKA0SFQoNc2RwX2ZtdHBfbGluZRgGIAIoCSJUCg5SdHBTdHJlYW1TdGF0cxIMCgRzc3JjGAEgAigNEgwKBGtpbmQYAiACKAkSFAoMdHJhbnNwb3J0X2lkGAMgAigJEhAKCGNvZGVjX2lkGAQgAigJIlgKFlJlY2VpdmVkUnRwU3RyZWFtU3RhdHMSGAoQcGFja2V0c19yZWNlaXZlZBgBIAIoBBIUCgxwYWNrZXRzX2xvc3QYAiACKAMSDgoGaml0dGVyGAMgAigBIoIMChVJbmJvdW5kUnRwU3RyZWFtU3RhdHMSGAoQdHJhY2tfaWRlbnRpZmllchgBIAIoCRILCgNtaWQYAiACKAkSEQoJcmVtb3RlX2lkGAMgAigJEhYKDmZyYW1lc19kZWNvZGVkGAQgAigNEhoKEmtleV9mcmFtZXNfZGVjb2RlZBgFIAIoDRIXCg9mcmFtZXNfcmVuZGVyZWQYBiACKA0SFgoOZnJhbWVzX2Ryb3BwZWQYByACKA0SEwoLZnJhbWVfd2lkdGgYCCACKA0SFAoMZnJhbWVfaGVpZ2h0GAkgAigNEhkKEWZyYW1lc19wZXJfc2Vjb25kGAogAigBEg4KBnFwX3N1bRgLIAIoBBIZChF0b3RhbF9kZWNvZGVfdGltZRgMIAIoARIfChd0b3RhbF9pbnRlcl9mcmFtZV9kZWxheRgNIAIoARInCh90b3RhbF9zcXVhcmVkX2ludGVyX2ZyYW1lX2RlbGF5GA4gAigBEhMKC3BhdXNlX2NvdW50GA8gAigNEhwKFHRvdGFsX3BhdXNlX2R1cmF0aW9uGBAgAigBEhQKDGZyZWV6ZV9jb3VudBgRIAIoDRIdChV0b3RhbF9mcmVlemVfZHVyYXRpb24YEiACKAESJgoebGFzdF9wYWNrZXRfcmVjZWl2ZWRfdGltZXN0YW1wGBMgAigBEh0KFWhlYWRlcl9ieXRlc19yZWNlaXZlZBgUIAIoBBIZChFwYWNrZXRzX2Rpc2NhcmRlZBgVIAIoBBIaChJmZWNfYnl0ZXNfcmVjZWl2ZWQYFiACKAQSHAoUZmVjX3BhY2tldHNfcmVjZWl2ZWQYFyACKAQSHQoVZmVjX3BhY2tldHNfZGlzY2FyZGVkGBggAigEEhYKDmJ5dGVzX3JlY2VpdmVkGBkgAigEEhIKCm5hY2tfY291bnQYGiACKA0SEQoJZmlyX2NvdW50GBsgAigNEhEKCXBsaV9jb3VudBgcIAIoDRIeChZ0b3RhbF9wcm9jZXNzaW5nX2RlbGF5GB0gAigBEiMKG2VzdGltYXRlZF9wbGF5b3V0X3RpbWVzdGFtcBgeIAIoARIbChNqaXR0ZXJfYnVmZmVyX2RlbGF5GB8gAigBEiIKGmppdHRlcl9idWZmZXJfdGFyZ2V0X2RlbGF5GCAgAigBEiMKG2ppdHRlcl9idWZmZXJfZW1pdHRlZF9jb3VudBghIAIoBBIjChtqaXR0ZXJfYnVmZmVyX21pbmltdW1fZGVsYXkYIiACKAESHgoWdG90YWxfc2FtcGxlc19yZWNlaXZlZBgjIAIoBBIZChFjb25jZWFsZWRfc2FtcGxlcxgkIAIoBBIgChhzaWxlbnRfY29uY2VhbGVkX3NhbXBsZXMYJSACKAQSGgoSY29uY2VhbG1lbnRfZXZlbnRzGCYgAigEEikKIWluc2VydGVkX3NhbXBsZXNfZm9yX2RlY2VsZXJhdGlvbhgnIAIoBBIoCiByZW1vdmVkX3NhbXBsZXNfZm9yX2FjY2VsZXJhdGlvbhgoIAIoBBITCgthdWRpb19sZXZlbBgpIAIoARIaChJ0b3RhbF9hdWRpb19lbmVyZ3kYKiACKAESHgoWdG90YWxfc2FtcGxlc19kdXJhdGlvbhgrIAIoARIXCg9mcmFtZXNfcmVjZWl2ZWQYLCACKAQSHgoWZGVjb2Rlcl9pbXBsZW1lbnRhdGlvbhgtIAIoCRISCgpwbGF5b3V0X2lkGC4gAigJEh8KF3Bvd2VyX2VmZmljaWVudF9kZWNvZGVyGC8gAigIEi4KJmZyYW1lc19hc3NlbWJsZWRfZnJvbV9tdWx0aXBsZV9wYWNrZXRzGDAgAigEEhsKE3RvdGFsX2Fzc2VtYmx5X3RpbWUYMSACKAESJgoecmV0cmFuc21pdHRlZF9wYWNrZXRzX3JlY2VpdmVkGDIgAigEEiQKHHJldHJhbnNtaXR0ZWRfYnl0ZXNfcmVjZWl2ZWQYMyACKAQSEAoIcnR4X3NzcmMYNCACKA0SEAoIZmVjX3NzcmMYNSACKA0iPgoSU2VudFJ0cFN0cmVhbVN0YXRzEhQKDHBhY2tldHNfc2VudBgBIAIoBBISCgpieXRlc19zZW50GAIgAigEItEHChZPdXRib3VuZFJ0cFN0cmVhbVN0YXRzEgsKA21pZBgBIAIoCRIXCg9tZWRpYV9zb3VyY2VfaWQYAiACKAkSEQoJcmVtb3RlX2lkGAMgAigJEgsKA3JpZBgEIAIoCRIZChFoZWFkZXJfYnl0ZXNfc2VudBgFIAIoBBIiChpyZXRyYW5zbWl0dGVkX3BhY2tldHNfc2VudBgGIAIoBBIgChhyZXRyYW5zbWl0dGVkX2J5dGVzX3NlbnQYByACKAQSEAoIcnR4X3NzcmMYCCACKA0SFgoOdGFyZ2V0X2JpdHJhdGUYCSACKAESIgoadG90YWxfZW5jb2RlZF9ieXRlc190YXJnZXQYCiACKAQSEwoLZnJhbWVfd2lkdGgYCyACKA0SFAoMZnJhbWVfaGVpZ2h0GAwgAigNEhkKEWZyYW1lc19wZXJfc2Vjb25kGA0gAigBEhMKC2ZyYW1lc19zZW50GA4gAigNEhgKEGh1Z2VfZnJhbWVzX3NlbnQYDyACKA0SFgoOZnJhbWVzX2VuY29kZWQYECACKA0SGgoSa2V5X2ZyYW1lc19lbmNvZGVkGBEgAigNEg4KBnFwX3N1bRgSIAIoBBIZChF0b3RhbF9lbmNvZGVfdGltZRgTIAIoARIfChd0b3RhbF9wYWNrZXRfc2VuZF9kZWxheRgUIAIoARJJChlxdWFsaXR5X2xpbWl0YXRpb25fcmVhc29uGBUgAigOMiYubGl2ZWtpdC5wcm90by5RdWFsaXR5TGltaXRhdGlvblJlYXNvbhJrChxxdWFsaXR5X2xpbWl0YXRpb25fZHVyYXRpb25zGBYgAygLMkUubGl2ZWtpdC5wcm90by5PdXRib3VuZFJ0cFN0cmVhbVN0YXRzLlF1YWxpdHlMaW1pdGF0aW9uRHVyYXRpb25zRW50cnkSLQolcXVhbGl0eV9saW1pdGF0aW9uX3Jlc29sdXRpb25fY2hhbmdlcxgXIAIoDRISCgpuYWNrX2NvdW50GBggAigNEhEKCWZpcl9jb3VudBgZIAIoDRIRCglwbGlfY291bnQYGiACKA0SHgoWZW5jb2Rlcl9pbXBsZW1lbnRhdGlvbhgbIAIoCRIfChdwb3dlcl9lZmZpY2llbnRfZW5jb2RlchgcIAIoCBIOCgZhY3RpdmUYHSACKAgSGAoQc2NhbGFiaWxpdHlfbW9kZRgeIAIoCRpBCh9RdWFsaXR5TGltaXRhdGlvbkR1cmF0aW9uc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoAToCOAEipAEKG1JlbW90ZUluYm91bmRSdHBTdHJlYW1TdGF0cxIQCghsb2NhbF9pZBgBIAIoCRIXCg9yb3VuZF90cmlwX3RpbWUYAiACKAESHQoVdG90YWxfcm91bmRfdHJpcF90aW1lGAMgAigBEhUKDWZyYWN0aW9uX2xvc3QYBCACKAESJAoccm91bmRfdHJpcF90aW1lX21lYXN1cmVtZW50cxgFIAIoBCK+AQocUmVtb3RlT3V0Ym91bmRSdHBTdHJlYW1TdGF0cxIQCghsb2NhbF9pZBgBIAIoCRIYChByZW1vdGVfdGltZXN0YW1wGAIgAigBEhQKDHJlcG9ydHNfc2VudBgDIAIoBBIXCg9yb3VuZF90cmlwX3RpbWUYBCACKAESHQoVdG90YWxfcm91bmRfdHJpcF90aW1lGAUgAigBEiQKHHJvdW5kX3RyaXBfdGltZV9tZWFzdXJlbWVudHMYBiACKAQiOgoQTWVkaWFTb3VyY2VTdGF0cxIYChB0cmFja19pZGVudGlmaWVyGAEgAigJEgwKBGtpbmQYAiACKAkiogIKEEF1ZGlvU291cmNlU3RhdHMSEwoLYXVkaW9fbGV2ZWwYASACKAESGgoSdG90YWxfYXVkaW9fZW5lcmd5GAIgAigBEh4KFnRvdGFsX3NhbXBsZXNfZHVyYXRpb24YAyACKAESGAoQZWNob19yZXR1cm5fbG9zcxgEIAIoARIkChxlY2hvX3JldHVybl9sb3NzX2VuaGFuY2VtZW50GAUgAigBEiAKGGRyb3BwZWRfc2FtcGxlc19kdXJhdGlvbhgGIAIoARIeChZkcm9wcGVkX3NhbXBsZXNfZXZlbnRzGAcgAigNEhsKE3RvdGFsX2NhcHR1cmVfZGVsYXkYCCACKAESHgoWdG90YWxfc2FtcGxlc19jYXB0dXJlZBgJIAIoBCJcChBWaWRlb1NvdXJjZVN0YXRzEg0KBXdpZHRoGAEgAigNEg4KBmhlaWdodBgCIAIoDRIOCgZmcmFtZXMYAyACKA0SGQoRZnJhbWVzX3Blcl9zZWNvbmQYBCACKAEixQEKEUF1ZGlvUGxheW91dFN0YXRzEgwKBGtpbmQYASACKAkSJAocc3ludGhlc2l6ZWRfc2FtcGxlc19kdXJhdGlvbhgCIAIoARIiChpzeW50aGVzaXplZF9zYW1wbGVzX2V2ZW50cxgDIAIoDRIeChZ0b3RhbF9zYW1wbGVzX2R1cmF0aW9uGAQgAigBEhsKE3RvdGFsX3BsYXlvdXRfZGVsYXkYBSACKAESGwoTdG90YWxfc2FtcGxlc19jb3VudBgGIAIoBCJRChNQZWVyQ29ubmVjdGlvblN0YXRzEhwKFGRhdGFfY2hhbm5lbHNfb3BlbmVkGAEgAigNEhwKFGRhdGFfY2hhbm5lbHNfY2xvc2VkGAIgAigNIuIBChBEYXRhQ2hhbm5lbFN0YXRzEg0KBWxhYmVsGAEgAigJEhAKCHByb3RvY29sGAIgAigJEh8KF2RhdGFfY2hhbm5lbF9pZGVudGlmaWVyGAMgAigFEi4KBXN0YXRlGAQgASgOMh8ubGl2ZWtpdC5wcm90by5EYXRhQ2hhbm5lbFN0YXRlEhUKDW1lc3NhZ2VzX3NlbnQYBSACKA0SEgoKYnl0ZXNfc2VudBgGIAIoBBIZChFtZXNzYWdlc19yZWNlaXZlZBgHIAIoDRIWCg5ieXRlc19yZWNlaXZlZBgIIAIoBCKcBAoOVHJhbnNwb3J0U3RhdHMSFAoMcGFja2V0c19zZW50GAEgAigEEhgKEHBhY2tldHNfcmVjZWl2ZWQYAiACKAQSEgoKYnl0ZXNfc2VudBgDIAIoBBIWCg5ieXRlc19yZWNlaXZlZBgEIAIoBBIoCghpY2Vfcm9sZRgFIAIoDjIWLmxpdmVraXQucHJvdG8uSWNlUm9sZRIjChtpY2VfbG9jYWxfdXNlcm5hbWVfZnJhZ21lbnQYBiACKAkSNQoKZHRsc19zdGF0ZRgHIAEoDjIhLmxpdmVraXQucHJvdG8uRHRsc1RyYW5zcG9ydFN0YXRlEjMKCWljZV9zdGF0ZRgIIAEoDjIgLmxpdmVraXQucHJvdG8uSWNlVHJhbnNwb3J0U3RhdGUSIgoac2VsZWN0ZWRfY2FuZGlkYXRlX3BhaXJfaWQYCSACKAkSHAoUbG9jYWxfY2VydGlmaWNhdGVfaWQYCiACKAkSHQoVcmVtb3RlX2NlcnRpZmljYXRlX2lkGAsgAigJEhMKC3Rsc192ZXJzaW9uGAwgAigJEhMKC2R0bHNfY2lwaGVyGA0gAigJEioKCWR0bHNfcm9sZRgOIAIoDjIXLmxpdmVraXQucHJvdG8uRHRsc1JvbGUSEwoLc3J0cF9jaXBoZXIYDyACKAkSJwofc2VsZWN0ZWRfY2FuZGlkYXRlX3BhaXJfY2hhbmdlcxgQIAIoDSKkBQoSQ2FuZGlkYXRlUGFpclN0YXRzEhQKDHRyYW5zcG9ydF9pZBgBIAIoCRIaChJsb2NhbF9jYW5kaWRhdGVfaWQYAiACKAkSGwoTcmVtb3RlX2NhbmRpZGF0ZV9pZBgDIAIoCRIzCgVzdGF0ZRgEIAEoDjIkLmxpdmVraXQucHJvdG8uSWNlQ2FuZGlkYXRlUGFpclN0YXRlEhEKCW5vbWluYXRlZBgFIAIoCBIUCgxwYWNrZXRzX3NlbnQYBiACKAQSGAoQcGFja2V0c19yZWNlaXZlZBgHIAIoBBISCgpieXRlc19zZW50GAggAigEEhYKDmJ5dGVzX3JlY2VpdmVkGAkgAigEEiIKGmxhc3RfcGFja2V0X3NlbnRfdGltZXN0YW1wGAogAigBEiYKHmxhc3RfcGFja2V0X3JlY2VpdmVkX3RpbWVzdGFtcBgLIAIoARIdChV0b3RhbF9yb3VuZF90cmlwX3RpbWUYDCACKAESHwoXY3VycmVudF9yb3VuZF90cmlwX3RpbWUYDSACKAESIgoaYXZhaWxhYmxlX291dGdvaW5nX2JpdHJhdGUYDiACKAESIgoaYXZhaWxhYmxlX2luY29taW5nX2JpdHJhdGUYDyACKAESGQoRcmVxdWVzdHNfcmVjZWl2ZWQYECACKAQSFQoNcmVxdWVzdHNfc2VudBgRIAIoBBIaChJyZXNwb25zZXNfcmVjZWl2ZWQYEiACKAQSFgoOcmVzcG9uc2VzX3NlbnQYEyACKAQSHQoVY29uc2VudF9yZXF1ZXN0c19zZW50GBQgAigEEiEKGXBhY2tldHNfZGlzY2FyZGVkX29uX3NlbmQYFSACKA0SHwoXYnl0ZXNfZGlzY2FyZGVkX29uX3NlbmQYFiACKAQiiQMKEUljZUNhbmRpZGF0ZVN0YXRzEhQKDHRyYW5zcG9ydF9pZBgBIAIoCRIPCgdhZGRyZXNzGAIgAigJEgwKBHBvcnQYAyACKAUSEAoIcHJvdG9jb2wYBCACKAkSNwoOY2FuZGlkYXRlX3R5cGUYBSABKA4yHy5saXZla2l0LnByb3RvLkljZUNhbmRpZGF0ZVR5cGUSEAoIcHJpb3JpdHkYBiACKAUSCwoDdXJsGAcgAigJEkEKDnJlbGF5X3Byb3RvY29sGAggASgOMikubGl2ZWtpdC5wcm90by5JY2VTZXJ2ZXJUcmFuc3BvcnRQcm90b2NvbBISCgpmb3VuZGF0aW9uGAkgAigJEhcKD3JlbGF0ZWRfYWRkcmVzcxgKIAIoCRIUCgxyZWxhdGVkX3BvcnQYCyACKAUSGQoRdXNlcm5hbWVfZnJhZ21lbnQYDCACKAkSNAoIdGNwX3R5cGUYDSABKA4yIi5saXZla2l0LnByb3RvLkljZVRjcENhbmRpZGF0ZVR5cGUigQEKEENlcnRpZmljYXRlU3RhdHMSEwoLZmluZ2VycHJpbnQYASACKAkSHQoVZmluZ2VycHJpbnRfYWxnb3JpdGhtGAIgAigJEhoKEmJhc2U2NF9jZXJ0aWZpY2F0ZRgDIAIoCRIdChVpc3N1ZXJfY2VydGlmaWNhdGVfaWQYBCACKAkqUQoQRGF0YUNoYW5uZWxTdGF0ZRIRCg1EQ19DT05ORUNUSU5HEAASCwoHRENfT1BFThABEg4KCkRDX0NMT1NJTkcQAhINCglEQ19DTE9TRUQQAypyChdRdWFsaXR5TGltaXRhdGlvblJlYXNvbhITCg9MSU1JVEFUSU9OX05PTkUQABISCg5MSU1JVEFUSU9OX0NQVRABEhgKFExJTUlUQVRJT05fQkFORFdJRFRIEAISFAoQTElNSVRBVElPTl9PVEhFUhADKkMKB0ljZVJvbGUSDwoLSUNFX1VOS05PV04QABITCg9JQ0VfQ09OVFJPTExJTkcQARISCg5JQ0VfQ09OVFJPTExFRBACKp8BChJEdGxzVHJhbnNwb3J0U3RhdGUSFgoSRFRMU19UUkFOU1BPUlRfTkVXEAASHQoZRFRMU19UUkFOU1BPUlRfQ09OTkVDVElORxABEhwKGERUTFNfVFJBTlNQT1JUX0NPTk5FQ1RFRBACEhkKFURUTFNfVFJBTlNQT1JUX0NMT1NFRBADEhkKFURUTFNfVFJBTlNQT1JUX0ZBSUxFRBAEKtQBChFJY2VUcmFuc3BvcnRTdGF0ZRIVChFJQ0VfVFJBTlNQT1JUX05FVxAAEhoKFklDRV9UUkFOU1BPUlRfQ0hFQ0tJTkcQARIbChdJQ0VfVFJBTlNQT1JUX0NPTk5FQ1RFRBACEhsKF0lDRV9UUkFOU1BPUlRfQ09NUExFVEVEEAMSHgoaSUNFX1RSQU5TUE9SVF9ESVNDT05ORUNURUQQBBIYChRJQ0VfVFJBTlNQT1JUX0ZBSUxFRBAFEhgKFElDRV9UUkFOU1BPUlRfQ0xPU0VEEAYqPgoIRHRsc1JvbGUSDwoLRFRMU19DTElFTlQQABIPCgtEVExTX1NFUlZFUhABEhAKDERUTFNfVU5LTk9XThACKnUKFUljZUNhbmRpZGF0ZVBhaXJTdGF0ZRIPCgtQQUlSX0ZST1pFThAAEhAKDFBBSVJfV0FJVElORxABEhQKEFBBSVJfSU5fUFJPR1JFU1MQAhIPCgtQQUlSX0ZBSUxFRBADEhIKDlBBSVJfU1VDQ0VFREVEEAQqPQoQSWNlQ2FuZGlkYXRlVHlwZRIICgRIT1NUEAASCQoFU1JGTFgQARIJCgVQUkZMWBACEgkKBVJFTEFZEAMqVQoaSWNlU2VydmVyVHJhbnNwb3J0UHJvdG9jb2wSEQoNVFJBTlNQT1JUX1VEUBAAEhEKDVRSQU5TUE9SVF9UQ1AQARIRCg1UUkFOU1BPUlRfVExTEAIqVAoTSWNlVGNwQ2FuZGlkYXRlVHlwZRIUChBDQU5ESURBVEVfQUNUSVZFEAASFQoRQ0FORElEQVRFX1BBU1NJVkUQARIQCgxDQU5ESURBVEVfU08QAkIQqgINTGl2ZUtpdC5Qcm90bw");
268
+ export enum IceCandidateType {
269
+ /**
270
+ * @generated from enum value: HOST = 0;
271
+ */
272
+ HOST = 0,
273
+
274
+ /**
275
+ * @generated from enum value: SRFLX = 1;
276
+ */
277
+ SRFLX = 1,
278
+
279
+ /**
280
+ * @generated from enum value: PRFLX = 2;
281
+ */
282
+ PRFLX = 2,
283
+
284
+ /**
285
+ * @generated from enum value: RELAY = 3;
286
+ */
287
+ RELAY = 3,
288
+ }
289
+ // Retrieve enum metadata with: proto2.getEnumType(IceCandidateType)
290
+ proto2.util.setEnumType(IceCandidateType, "livekit.proto.IceCandidateType", [
291
+ { no: 0, name: "HOST" },
292
+ { no: 1, name: "SRFLX" },
293
+ { no: 2, name: "PRFLX" },
294
+ { no: 3, name: "RELAY" },
295
+ ]);
296
+
297
+ /**
298
+ * @generated from enum livekit.proto.IceServerTransportProtocol
299
+ */
300
+ export enum IceServerTransportProtocol {
301
+ /**
302
+ * @generated from enum value: TRANSPORT_UDP = 0;
303
+ */
304
+ TRANSPORT_UDP = 0,
305
+
306
+ /**
307
+ * @generated from enum value: TRANSPORT_TCP = 1;
308
+ */
309
+ TRANSPORT_TCP = 1,
310
+
311
+ /**
312
+ * @generated from enum value: TRANSPORT_TLS = 2;
313
+ */
314
+ TRANSPORT_TLS = 2,
315
+ }
316
+ // Retrieve enum metadata with: proto2.getEnumType(IceServerTransportProtocol)
317
+ proto2.util.setEnumType(IceServerTransportProtocol, "livekit.proto.IceServerTransportProtocol", [
318
+ { no: 0, name: "TRANSPORT_UDP" },
319
+ { no: 1, name: "TRANSPORT_TCP" },
320
+ { no: 2, name: "TRANSPORT_TLS" },
321
+ ]);
322
+
323
+ /**
324
+ * @generated from enum livekit.proto.IceTcpCandidateType
325
+ */
326
+ export enum IceTcpCandidateType {
327
+ /**
328
+ * @generated from enum value: CANDIDATE_ACTIVE = 0;
329
+ */
330
+ CANDIDATE_ACTIVE = 0,
331
+
332
+ /**
333
+ * @generated from enum value: CANDIDATE_PASSIVE = 1;
334
+ */
335
+ CANDIDATE_PASSIVE = 1,
336
+
337
+ /**
338
+ * @generated from enum value: CANDIDATE_SO = 2;
339
+ */
340
+ CANDIDATE_SO = 2,
341
+ }
342
+ // Retrieve enum metadata with: proto2.getEnumType(IceTcpCandidateType)
343
+ proto2.util.setEnumType(IceTcpCandidateType, "livekit.proto.IceTcpCandidateType", [
344
+ { no: 0, name: "CANDIDATE_ACTIVE" },
345
+ { no: 1, name: "CANDIDATE_PASSIVE" },
346
+ { no: 2, name: "CANDIDATE_SO" },
347
+ ]);
28
348
 
29
349
  /**
30
350
  * @generated from message livekit.proto.RtcStats
31
351
  */
32
- export type RtcStats = Message<"livekit.proto.RtcStats"> & {
352
+ export class RtcStats extends Message<RtcStats> {
33
353
  /**
34
354
  * @generated from oneof livekit.proto.RtcStats.stats
35
355
  */
@@ -119,24 +439,65 @@ export type RtcStats = Message<"livekit.proto.RtcStats"> & {
119
439
  case: "certificate";
120
440
  } | {
121
441
  /**
122
- * @generated from field: livekit.proto.RtcStats.Track track = 17;
442
+ * @generated from field: livekit.proto.RtcStats.Stream stream = 17;
443
+ */
444
+ value: RtcStats_Stream;
445
+ case: "stream";
446
+ } | {
447
+ /**
448
+ * @generated from field: livekit.proto.RtcStats.Track track = 18;
123
449
  */
124
450
  value: RtcStats_Track;
125
451
  case: "track";
126
- } | { case: undefined; value?: undefined };
127
- };
128
-
129
- /**
130
- * Describes the message livekit.proto.RtcStats.
131
- * Use `create(RtcStatsSchema)` to create a new message.
132
- */
133
- export const RtcStatsSchema: GenMessage<RtcStats> = /*@__PURE__*/
134
- messageDesc(file_stats, 0);
452
+ } | { case: undefined; value?: undefined } = { case: undefined };
453
+
454
+ constructor(data?: PartialMessage<RtcStats>) {
455
+ super();
456
+ proto2.util.initPartial(data, this);
457
+ }
458
+
459
+ static readonly runtime: typeof proto2 = proto2;
460
+ static readonly typeName = "livekit.proto.RtcStats";
461
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
462
+ { no: 3, name: "codec", kind: "message", T: RtcStats_Codec, oneof: "stats" },
463
+ { no: 4, name: "inbound_rtp", kind: "message", T: RtcStats_InboundRtp, oneof: "stats" },
464
+ { no: 5, name: "outbound_rtp", kind: "message", T: RtcStats_OutboundRtp, oneof: "stats" },
465
+ { no: 6, name: "remote_inbound_rtp", kind: "message", T: RtcStats_RemoteInboundRtp, oneof: "stats" },
466
+ { no: 7, name: "remote_outbound_rtp", kind: "message", T: RtcStats_RemoteOutboundRtp, oneof: "stats" },
467
+ { no: 8, name: "media_source", kind: "message", T: RtcStats_MediaSource, oneof: "stats" },
468
+ { no: 9, name: "media_playout", kind: "message", T: RtcStats_MediaPlayout, oneof: "stats" },
469
+ { no: 10, name: "peer_connection", kind: "message", T: RtcStats_PeerConnection, oneof: "stats" },
470
+ { no: 11, name: "data_channel", kind: "message", T: RtcStats_DataChannel, oneof: "stats" },
471
+ { no: 12, name: "transport", kind: "message", T: RtcStats_Transport, oneof: "stats" },
472
+ { no: 13, name: "candidate_pair", kind: "message", T: RtcStats_CandidatePair, oneof: "stats" },
473
+ { no: 14, name: "local_candidate", kind: "message", T: RtcStats_LocalCandidate, oneof: "stats" },
474
+ { no: 15, name: "remote_candidate", kind: "message", T: RtcStats_RemoteCandidate, oneof: "stats" },
475
+ { no: 16, name: "certificate", kind: "message", T: RtcStats_Certificate, oneof: "stats" },
476
+ { no: 17, name: "stream", kind: "message", T: RtcStats_Stream, oneof: "stats" },
477
+ { no: 18, name: "track", kind: "message", T: RtcStats_Track, oneof: "stats" },
478
+ ]);
479
+
480
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats {
481
+ return new RtcStats().fromBinary(bytes, options);
482
+ }
483
+
484
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats {
485
+ return new RtcStats().fromJson(jsonValue, options);
486
+ }
487
+
488
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats {
489
+ return new RtcStats().fromJsonString(jsonString, options);
490
+ }
491
+
492
+ static equals(a: RtcStats | PlainMessage<RtcStats> | undefined, b: RtcStats | PlainMessage<RtcStats> | undefined): boolean {
493
+ return proto2.util.equals(RtcStats, a, b);
494
+ }
495
+ }
135
496
 
136
497
  /**
137
498
  * @generated from message livekit.proto.RtcStats.Codec
138
499
  */
139
- export type RtcStats_Codec = Message<"livekit.proto.RtcStats.Codec"> & {
500
+ export class RtcStats_Codec extends Message<RtcStats_Codec> {
140
501
  /**
141
502
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
142
503
  */
@@ -146,19 +507,40 @@ export type RtcStats_Codec = Message<"livekit.proto.RtcStats.Codec"> & {
146
507
  * @generated from field: required livekit.proto.CodecStats codec = 2;
147
508
  */
148
509
  codec?: CodecStats;
149
- };
150
510
 
151
- /**
152
- * Describes the message livekit.proto.RtcStats.Codec.
153
- * Use `create(RtcStats_CodecSchema)` to create a new message.
154
- */
155
- export const RtcStats_CodecSchema: GenMessage<RtcStats_Codec> = /*@__PURE__*/
156
- messageDesc(file_stats, 0, 0);
511
+ constructor(data?: PartialMessage<RtcStats_Codec>) {
512
+ super();
513
+ proto2.util.initPartial(data, this);
514
+ }
515
+
516
+ static readonly runtime: typeof proto2 = proto2;
517
+ static readonly typeName = "livekit.proto.RtcStats.Codec";
518
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
519
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
520
+ { no: 2, name: "codec", kind: "message", T: CodecStats, req: true },
521
+ ]);
522
+
523
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_Codec {
524
+ return new RtcStats_Codec().fromBinary(bytes, options);
525
+ }
526
+
527
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_Codec {
528
+ return new RtcStats_Codec().fromJson(jsonValue, options);
529
+ }
530
+
531
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_Codec {
532
+ return new RtcStats_Codec().fromJsonString(jsonString, options);
533
+ }
534
+
535
+ static equals(a: RtcStats_Codec | PlainMessage<RtcStats_Codec> | undefined, b: RtcStats_Codec | PlainMessage<RtcStats_Codec> | undefined): boolean {
536
+ return proto2.util.equals(RtcStats_Codec, a, b);
537
+ }
538
+ }
157
539
 
158
540
  /**
159
541
  * @generated from message livekit.proto.RtcStats.InboundRtp
160
542
  */
161
- export type RtcStats_InboundRtp = Message<"livekit.proto.RtcStats.InboundRtp"> & {
543
+ export class RtcStats_InboundRtp extends Message<RtcStats_InboundRtp> {
162
544
  /**
163
545
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
164
546
  */
@@ -178,19 +560,42 @@ export type RtcStats_InboundRtp = Message<"livekit.proto.RtcStats.InboundRtp"> &
178
560
  * @generated from field: required livekit.proto.InboundRtpStreamStats inbound = 4;
179
561
  */
180
562
  inbound?: InboundRtpStreamStats;
181
- };
182
563
 
183
- /**
184
- * Describes the message livekit.proto.RtcStats.InboundRtp.
185
- * Use `create(RtcStats_InboundRtpSchema)` to create a new message.
186
- */
187
- export const RtcStats_InboundRtpSchema: GenMessage<RtcStats_InboundRtp> = /*@__PURE__*/
188
- messageDesc(file_stats, 0, 1);
564
+ constructor(data?: PartialMessage<RtcStats_InboundRtp>) {
565
+ super();
566
+ proto2.util.initPartial(data, this);
567
+ }
568
+
569
+ static readonly runtime: typeof proto2 = proto2;
570
+ static readonly typeName = "livekit.proto.RtcStats.InboundRtp";
571
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
572
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
573
+ { no: 2, name: "stream", kind: "message", T: RtpStreamStats, req: true },
574
+ { no: 3, name: "received", kind: "message", T: ReceivedRtpStreamStats, req: true },
575
+ { no: 4, name: "inbound", kind: "message", T: InboundRtpStreamStats, req: true },
576
+ ]);
577
+
578
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_InboundRtp {
579
+ return new RtcStats_InboundRtp().fromBinary(bytes, options);
580
+ }
581
+
582
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_InboundRtp {
583
+ return new RtcStats_InboundRtp().fromJson(jsonValue, options);
584
+ }
585
+
586
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_InboundRtp {
587
+ return new RtcStats_InboundRtp().fromJsonString(jsonString, options);
588
+ }
589
+
590
+ static equals(a: RtcStats_InboundRtp | PlainMessage<RtcStats_InboundRtp> | undefined, b: RtcStats_InboundRtp | PlainMessage<RtcStats_InboundRtp> | undefined): boolean {
591
+ return proto2.util.equals(RtcStats_InboundRtp, a, b);
592
+ }
593
+ }
189
594
 
190
595
  /**
191
596
  * @generated from message livekit.proto.RtcStats.OutboundRtp
192
597
  */
193
- export type RtcStats_OutboundRtp = Message<"livekit.proto.RtcStats.OutboundRtp"> & {
598
+ export class RtcStats_OutboundRtp extends Message<RtcStats_OutboundRtp> {
194
599
  /**
195
600
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
196
601
  */
@@ -210,19 +615,42 @@ export type RtcStats_OutboundRtp = Message<"livekit.proto.RtcStats.OutboundRtp">
210
615
  * @generated from field: required livekit.proto.OutboundRtpStreamStats outbound = 4;
211
616
  */
212
617
  outbound?: OutboundRtpStreamStats;
213
- };
214
618
 
215
- /**
216
- * Describes the message livekit.proto.RtcStats.OutboundRtp.
217
- * Use `create(RtcStats_OutboundRtpSchema)` to create a new message.
218
- */
219
- export const RtcStats_OutboundRtpSchema: GenMessage<RtcStats_OutboundRtp> = /*@__PURE__*/
220
- messageDesc(file_stats, 0, 2);
619
+ constructor(data?: PartialMessage<RtcStats_OutboundRtp>) {
620
+ super();
621
+ proto2.util.initPartial(data, this);
622
+ }
623
+
624
+ static readonly runtime: typeof proto2 = proto2;
625
+ static readonly typeName = "livekit.proto.RtcStats.OutboundRtp";
626
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
627
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
628
+ { no: 2, name: "stream", kind: "message", T: RtpStreamStats, req: true },
629
+ { no: 3, name: "sent", kind: "message", T: SentRtpStreamStats, req: true },
630
+ { no: 4, name: "outbound", kind: "message", T: OutboundRtpStreamStats, req: true },
631
+ ]);
632
+
633
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_OutboundRtp {
634
+ return new RtcStats_OutboundRtp().fromBinary(bytes, options);
635
+ }
636
+
637
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_OutboundRtp {
638
+ return new RtcStats_OutboundRtp().fromJson(jsonValue, options);
639
+ }
640
+
641
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_OutboundRtp {
642
+ return new RtcStats_OutboundRtp().fromJsonString(jsonString, options);
643
+ }
644
+
645
+ static equals(a: RtcStats_OutboundRtp | PlainMessage<RtcStats_OutboundRtp> | undefined, b: RtcStats_OutboundRtp | PlainMessage<RtcStats_OutboundRtp> | undefined): boolean {
646
+ return proto2.util.equals(RtcStats_OutboundRtp, a, b);
647
+ }
648
+ }
221
649
 
222
650
  /**
223
651
  * @generated from message livekit.proto.RtcStats.RemoteInboundRtp
224
652
  */
225
- export type RtcStats_RemoteInboundRtp = Message<"livekit.proto.RtcStats.RemoteInboundRtp"> & {
653
+ export class RtcStats_RemoteInboundRtp extends Message<RtcStats_RemoteInboundRtp> {
226
654
  /**
227
655
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
228
656
  */
@@ -242,19 +670,42 @@ export type RtcStats_RemoteInboundRtp = Message<"livekit.proto.RtcStats.RemoteIn
242
670
  * @generated from field: required livekit.proto.RemoteInboundRtpStreamStats remote_inbound = 4;
243
671
  */
244
672
  remoteInbound?: RemoteInboundRtpStreamStats;
245
- };
246
673
 
247
- /**
248
- * Describes the message livekit.proto.RtcStats.RemoteInboundRtp.
249
- * Use `create(RtcStats_RemoteInboundRtpSchema)` to create a new message.
250
- */
251
- export const RtcStats_RemoteInboundRtpSchema: GenMessage<RtcStats_RemoteInboundRtp> = /*@__PURE__*/
252
- messageDesc(file_stats, 0, 3);
674
+ constructor(data?: PartialMessage<RtcStats_RemoteInboundRtp>) {
675
+ super();
676
+ proto2.util.initPartial(data, this);
677
+ }
678
+
679
+ static readonly runtime: typeof proto2 = proto2;
680
+ static readonly typeName = "livekit.proto.RtcStats.RemoteInboundRtp";
681
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
682
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
683
+ { no: 2, name: "stream", kind: "message", T: RtpStreamStats, req: true },
684
+ { no: 3, name: "received", kind: "message", T: ReceivedRtpStreamStats, req: true },
685
+ { no: 4, name: "remote_inbound", kind: "message", T: RemoteInboundRtpStreamStats, req: true },
686
+ ]);
687
+
688
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_RemoteInboundRtp {
689
+ return new RtcStats_RemoteInboundRtp().fromBinary(bytes, options);
690
+ }
691
+
692
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_RemoteInboundRtp {
693
+ return new RtcStats_RemoteInboundRtp().fromJson(jsonValue, options);
694
+ }
695
+
696
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_RemoteInboundRtp {
697
+ return new RtcStats_RemoteInboundRtp().fromJsonString(jsonString, options);
698
+ }
699
+
700
+ static equals(a: RtcStats_RemoteInboundRtp | PlainMessage<RtcStats_RemoteInboundRtp> | undefined, b: RtcStats_RemoteInboundRtp | PlainMessage<RtcStats_RemoteInboundRtp> | undefined): boolean {
701
+ return proto2.util.equals(RtcStats_RemoteInboundRtp, a, b);
702
+ }
703
+ }
253
704
 
254
705
  /**
255
706
  * @generated from message livekit.proto.RtcStats.RemoteOutboundRtp
256
707
  */
257
- export type RtcStats_RemoteOutboundRtp = Message<"livekit.proto.RtcStats.RemoteOutboundRtp"> & {
708
+ export class RtcStats_RemoteOutboundRtp extends Message<RtcStats_RemoteOutboundRtp> {
258
709
  /**
259
710
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
260
711
  */
@@ -274,19 +725,42 @@ export type RtcStats_RemoteOutboundRtp = Message<"livekit.proto.RtcStats.RemoteO
274
725
  * @generated from field: required livekit.proto.RemoteOutboundRtpStreamStats remote_outbound = 4;
275
726
  */
276
727
  remoteOutbound?: RemoteOutboundRtpStreamStats;
277
- };
278
728
 
279
- /**
280
- * Describes the message livekit.proto.RtcStats.RemoteOutboundRtp.
281
- * Use `create(RtcStats_RemoteOutboundRtpSchema)` to create a new message.
282
- */
283
- export const RtcStats_RemoteOutboundRtpSchema: GenMessage<RtcStats_RemoteOutboundRtp> = /*@__PURE__*/
284
- messageDesc(file_stats, 0, 4);
729
+ constructor(data?: PartialMessage<RtcStats_RemoteOutboundRtp>) {
730
+ super();
731
+ proto2.util.initPartial(data, this);
732
+ }
733
+
734
+ static readonly runtime: typeof proto2 = proto2;
735
+ static readonly typeName = "livekit.proto.RtcStats.RemoteOutboundRtp";
736
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
737
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
738
+ { no: 2, name: "stream", kind: "message", T: RtpStreamStats, req: true },
739
+ { no: 3, name: "sent", kind: "message", T: SentRtpStreamStats, req: true },
740
+ { no: 4, name: "remote_outbound", kind: "message", T: RemoteOutboundRtpStreamStats, req: true },
741
+ ]);
742
+
743
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_RemoteOutboundRtp {
744
+ return new RtcStats_RemoteOutboundRtp().fromBinary(bytes, options);
745
+ }
746
+
747
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_RemoteOutboundRtp {
748
+ return new RtcStats_RemoteOutboundRtp().fromJson(jsonValue, options);
749
+ }
750
+
751
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_RemoteOutboundRtp {
752
+ return new RtcStats_RemoteOutboundRtp().fromJsonString(jsonString, options);
753
+ }
754
+
755
+ static equals(a: RtcStats_RemoteOutboundRtp | PlainMessage<RtcStats_RemoteOutboundRtp> | undefined, b: RtcStats_RemoteOutboundRtp | PlainMessage<RtcStats_RemoteOutboundRtp> | undefined): boolean {
756
+ return proto2.util.equals(RtcStats_RemoteOutboundRtp, a, b);
757
+ }
758
+ }
285
759
 
286
760
  /**
287
761
  * @generated from message livekit.proto.RtcStats.MediaSource
288
762
  */
289
- export type RtcStats_MediaSource = Message<"livekit.proto.RtcStats.MediaSource"> & {
763
+ export class RtcStats_MediaSource extends Message<RtcStats_MediaSource> {
290
764
  /**
291
765
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
292
766
  */
@@ -306,19 +780,42 @@ export type RtcStats_MediaSource = Message<"livekit.proto.RtcStats.MediaSource">
306
780
  * @generated from field: required livekit.proto.VideoSourceStats video = 4;
307
781
  */
308
782
  video?: VideoSourceStats;
309
- };
310
783
 
311
- /**
312
- * Describes the message livekit.proto.RtcStats.MediaSource.
313
- * Use `create(RtcStats_MediaSourceSchema)` to create a new message.
314
- */
315
- export const RtcStats_MediaSourceSchema: GenMessage<RtcStats_MediaSource> = /*@__PURE__*/
316
- messageDesc(file_stats, 0, 5);
784
+ constructor(data?: PartialMessage<RtcStats_MediaSource>) {
785
+ super();
786
+ proto2.util.initPartial(data, this);
787
+ }
788
+
789
+ static readonly runtime: typeof proto2 = proto2;
790
+ static readonly typeName = "livekit.proto.RtcStats.MediaSource";
791
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
792
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
793
+ { no: 2, name: "source", kind: "message", T: MediaSourceStats, req: true },
794
+ { no: 3, name: "audio", kind: "message", T: AudioSourceStats, req: true },
795
+ { no: 4, name: "video", kind: "message", T: VideoSourceStats, req: true },
796
+ ]);
797
+
798
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_MediaSource {
799
+ return new RtcStats_MediaSource().fromBinary(bytes, options);
800
+ }
801
+
802
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_MediaSource {
803
+ return new RtcStats_MediaSource().fromJson(jsonValue, options);
804
+ }
805
+
806
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_MediaSource {
807
+ return new RtcStats_MediaSource().fromJsonString(jsonString, options);
808
+ }
809
+
810
+ static equals(a: RtcStats_MediaSource | PlainMessage<RtcStats_MediaSource> | undefined, b: RtcStats_MediaSource | PlainMessage<RtcStats_MediaSource> | undefined): boolean {
811
+ return proto2.util.equals(RtcStats_MediaSource, a, b);
812
+ }
813
+ }
317
814
 
318
815
  /**
319
816
  * @generated from message livekit.proto.RtcStats.MediaPlayout
320
817
  */
321
- export type RtcStats_MediaPlayout = Message<"livekit.proto.RtcStats.MediaPlayout"> & {
818
+ export class RtcStats_MediaPlayout extends Message<RtcStats_MediaPlayout> {
322
819
  /**
323
820
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
324
821
  */
@@ -328,19 +825,40 @@ export type RtcStats_MediaPlayout = Message<"livekit.proto.RtcStats.MediaPlayout
328
825
  * @generated from field: required livekit.proto.AudioPlayoutStats audio_playout = 2;
329
826
  */
330
827
  audioPlayout?: AudioPlayoutStats;
331
- };
332
828
 
333
- /**
334
- * Describes the message livekit.proto.RtcStats.MediaPlayout.
335
- * Use `create(RtcStats_MediaPlayoutSchema)` to create a new message.
336
- */
337
- export const RtcStats_MediaPlayoutSchema: GenMessage<RtcStats_MediaPlayout> = /*@__PURE__*/
338
- messageDesc(file_stats, 0, 6);
829
+ constructor(data?: PartialMessage<RtcStats_MediaPlayout>) {
830
+ super();
831
+ proto2.util.initPartial(data, this);
832
+ }
833
+
834
+ static readonly runtime: typeof proto2 = proto2;
835
+ static readonly typeName = "livekit.proto.RtcStats.MediaPlayout";
836
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
837
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
838
+ { no: 2, name: "audio_playout", kind: "message", T: AudioPlayoutStats, req: true },
839
+ ]);
840
+
841
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_MediaPlayout {
842
+ return new RtcStats_MediaPlayout().fromBinary(bytes, options);
843
+ }
844
+
845
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_MediaPlayout {
846
+ return new RtcStats_MediaPlayout().fromJson(jsonValue, options);
847
+ }
848
+
849
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_MediaPlayout {
850
+ return new RtcStats_MediaPlayout().fromJsonString(jsonString, options);
851
+ }
852
+
853
+ static equals(a: RtcStats_MediaPlayout | PlainMessage<RtcStats_MediaPlayout> | undefined, b: RtcStats_MediaPlayout | PlainMessage<RtcStats_MediaPlayout> | undefined): boolean {
854
+ return proto2.util.equals(RtcStats_MediaPlayout, a, b);
855
+ }
856
+ }
339
857
 
340
858
  /**
341
859
  * @generated from message livekit.proto.RtcStats.PeerConnection
342
860
  */
343
- export type RtcStats_PeerConnection = Message<"livekit.proto.RtcStats.PeerConnection"> & {
861
+ export class RtcStats_PeerConnection extends Message<RtcStats_PeerConnection> {
344
862
  /**
345
863
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
346
864
  */
@@ -350,19 +868,40 @@ export type RtcStats_PeerConnection = Message<"livekit.proto.RtcStats.PeerConnec
350
868
  * @generated from field: required livekit.proto.PeerConnectionStats pc = 2;
351
869
  */
352
870
  pc?: PeerConnectionStats;
353
- };
354
871
 
355
- /**
356
- * Describes the message livekit.proto.RtcStats.PeerConnection.
357
- * Use `create(RtcStats_PeerConnectionSchema)` to create a new message.
358
- */
359
- export const RtcStats_PeerConnectionSchema: GenMessage<RtcStats_PeerConnection> = /*@__PURE__*/
360
- messageDesc(file_stats, 0, 7);
872
+ constructor(data?: PartialMessage<RtcStats_PeerConnection>) {
873
+ super();
874
+ proto2.util.initPartial(data, this);
875
+ }
876
+
877
+ static readonly runtime: typeof proto2 = proto2;
878
+ static readonly typeName = "livekit.proto.RtcStats.PeerConnection";
879
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
880
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
881
+ { no: 2, name: "pc", kind: "message", T: PeerConnectionStats, req: true },
882
+ ]);
883
+
884
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_PeerConnection {
885
+ return new RtcStats_PeerConnection().fromBinary(bytes, options);
886
+ }
887
+
888
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_PeerConnection {
889
+ return new RtcStats_PeerConnection().fromJson(jsonValue, options);
890
+ }
891
+
892
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_PeerConnection {
893
+ return new RtcStats_PeerConnection().fromJsonString(jsonString, options);
894
+ }
895
+
896
+ static equals(a: RtcStats_PeerConnection | PlainMessage<RtcStats_PeerConnection> | undefined, b: RtcStats_PeerConnection | PlainMessage<RtcStats_PeerConnection> | undefined): boolean {
897
+ return proto2.util.equals(RtcStats_PeerConnection, a, b);
898
+ }
899
+ }
361
900
 
362
901
  /**
363
902
  * @generated from message livekit.proto.RtcStats.DataChannel
364
903
  */
365
- export type RtcStats_DataChannel = Message<"livekit.proto.RtcStats.DataChannel"> & {
904
+ export class RtcStats_DataChannel extends Message<RtcStats_DataChannel> {
366
905
  /**
367
906
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
368
907
  */
@@ -372,19 +911,40 @@ export type RtcStats_DataChannel = Message<"livekit.proto.RtcStats.DataChannel">
372
911
  * @generated from field: required livekit.proto.DataChannelStats dc = 2;
373
912
  */
374
913
  dc?: DataChannelStats;
375
- };
376
914
 
377
- /**
378
- * Describes the message livekit.proto.RtcStats.DataChannel.
379
- * Use `create(RtcStats_DataChannelSchema)` to create a new message.
380
- */
381
- export const RtcStats_DataChannelSchema: GenMessage<RtcStats_DataChannel> = /*@__PURE__*/
382
- messageDesc(file_stats, 0, 8);
915
+ constructor(data?: PartialMessage<RtcStats_DataChannel>) {
916
+ super();
917
+ proto2.util.initPartial(data, this);
918
+ }
919
+
920
+ static readonly runtime: typeof proto2 = proto2;
921
+ static readonly typeName = "livekit.proto.RtcStats.DataChannel";
922
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
923
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
924
+ { no: 2, name: "dc", kind: "message", T: DataChannelStats, req: true },
925
+ ]);
926
+
927
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_DataChannel {
928
+ return new RtcStats_DataChannel().fromBinary(bytes, options);
929
+ }
930
+
931
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_DataChannel {
932
+ return new RtcStats_DataChannel().fromJson(jsonValue, options);
933
+ }
934
+
935
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_DataChannel {
936
+ return new RtcStats_DataChannel().fromJsonString(jsonString, options);
937
+ }
938
+
939
+ static equals(a: RtcStats_DataChannel | PlainMessage<RtcStats_DataChannel> | undefined, b: RtcStats_DataChannel | PlainMessage<RtcStats_DataChannel> | undefined): boolean {
940
+ return proto2.util.equals(RtcStats_DataChannel, a, b);
941
+ }
942
+ }
383
943
 
384
944
  /**
385
945
  * @generated from message livekit.proto.RtcStats.Transport
386
946
  */
387
- export type RtcStats_Transport = Message<"livekit.proto.RtcStats.Transport"> & {
947
+ export class RtcStats_Transport extends Message<RtcStats_Transport> {
388
948
  /**
389
949
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
390
950
  */
@@ -394,19 +954,40 @@ export type RtcStats_Transport = Message<"livekit.proto.RtcStats.Transport"> & {
394
954
  * @generated from field: required livekit.proto.TransportStats transport = 2;
395
955
  */
396
956
  transport?: TransportStats;
397
- };
398
957
 
399
- /**
400
- * Describes the message livekit.proto.RtcStats.Transport.
401
- * Use `create(RtcStats_TransportSchema)` to create a new message.
402
- */
403
- export const RtcStats_TransportSchema: GenMessage<RtcStats_Transport> = /*@__PURE__*/
404
- messageDesc(file_stats, 0, 9);
958
+ constructor(data?: PartialMessage<RtcStats_Transport>) {
959
+ super();
960
+ proto2.util.initPartial(data, this);
961
+ }
962
+
963
+ static readonly runtime: typeof proto2 = proto2;
964
+ static readonly typeName = "livekit.proto.RtcStats.Transport";
965
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
966
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
967
+ { no: 2, name: "transport", kind: "message", T: TransportStats, req: true },
968
+ ]);
969
+
970
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_Transport {
971
+ return new RtcStats_Transport().fromBinary(bytes, options);
972
+ }
973
+
974
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_Transport {
975
+ return new RtcStats_Transport().fromJson(jsonValue, options);
976
+ }
977
+
978
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_Transport {
979
+ return new RtcStats_Transport().fromJsonString(jsonString, options);
980
+ }
981
+
982
+ static equals(a: RtcStats_Transport | PlainMessage<RtcStats_Transport> | undefined, b: RtcStats_Transport | PlainMessage<RtcStats_Transport> | undefined): boolean {
983
+ return proto2.util.equals(RtcStats_Transport, a, b);
984
+ }
985
+ }
405
986
 
406
987
  /**
407
988
  * @generated from message livekit.proto.RtcStats.CandidatePair
408
989
  */
409
- export type RtcStats_CandidatePair = Message<"livekit.proto.RtcStats.CandidatePair"> & {
990
+ export class RtcStats_CandidatePair extends Message<RtcStats_CandidatePair> {
410
991
  /**
411
992
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
412
993
  */
@@ -416,19 +997,40 @@ export type RtcStats_CandidatePair = Message<"livekit.proto.RtcStats.CandidatePa
416
997
  * @generated from field: required livekit.proto.CandidatePairStats candidate_pair = 2;
417
998
  */
418
999
  candidatePair?: CandidatePairStats;
419
- };
420
1000
 
421
- /**
422
- * Describes the message livekit.proto.RtcStats.CandidatePair.
423
- * Use `create(RtcStats_CandidatePairSchema)` to create a new message.
424
- */
425
- export const RtcStats_CandidatePairSchema: GenMessage<RtcStats_CandidatePair> = /*@__PURE__*/
426
- messageDesc(file_stats, 0, 10);
1001
+ constructor(data?: PartialMessage<RtcStats_CandidatePair>) {
1002
+ super();
1003
+ proto2.util.initPartial(data, this);
1004
+ }
1005
+
1006
+ static readonly runtime: typeof proto2 = proto2;
1007
+ static readonly typeName = "livekit.proto.RtcStats.CandidatePair";
1008
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1009
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
1010
+ { no: 2, name: "candidate_pair", kind: "message", T: CandidatePairStats, req: true },
1011
+ ]);
1012
+
1013
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_CandidatePair {
1014
+ return new RtcStats_CandidatePair().fromBinary(bytes, options);
1015
+ }
1016
+
1017
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_CandidatePair {
1018
+ return new RtcStats_CandidatePair().fromJson(jsonValue, options);
1019
+ }
1020
+
1021
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_CandidatePair {
1022
+ return new RtcStats_CandidatePair().fromJsonString(jsonString, options);
1023
+ }
1024
+
1025
+ static equals(a: RtcStats_CandidatePair | PlainMessage<RtcStats_CandidatePair> | undefined, b: RtcStats_CandidatePair | PlainMessage<RtcStats_CandidatePair> | undefined): boolean {
1026
+ return proto2.util.equals(RtcStats_CandidatePair, a, b);
1027
+ }
1028
+ }
427
1029
 
428
1030
  /**
429
1031
  * @generated from message livekit.proto.RtcStats.LocalCandidate
430
1032
  */
431
- export type RtcStats_LocalCandidate = Message<"livekit.proto.RtcStats.LocalCandidate"> & {
1033
+ export class RtcStats_LocalCandidate extends Message<RtcStats_LocalCandidate> {
432
1034
  /**
433
1035
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
434
1036
  */
@@ -438,19 +1040,40 @@ export type RtcStats_LocalCandidate = Message<"livekit.proto.RtcStats.LocalCandi
438
1040
  * @generated from field: required livekit.proto.IceCandidateStats candidate = 2;
439
1041
  */
440
1042
  candidate?: IceCandidateStats;
441
- };
442
1043
 
443
- /**
444
- * Describes the message livekit.proto.RtcStats.LocalCandidate.
445
- * Use `create(RtcStats_LocalCandidateSchema)` to create a new message.
446
- */
447
- export const RtcStats_LocalCandidateSchema: GenMessage<RtcStats_LocalCandidate> = /*@__PURE__*/
448
- messageDesc(file_stats, 0, 11);
1044
+ constructor(data?: PartialMessage<RtcStats_LocalCandidate>) {
1045
+ super();
1046
+ proto2.util.initPartial(data, this);
1047
+ }
1048
+
1049
+ static readonly runtime: typeof proto2 = proto2;
1050
+ static readonly typeName = "livekit.proto.RtcStats.LocalCandidate";
1051
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1052
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
1053
+ { no: 2, name: "candidate", kind: "message", T: IceCandidateStats, req: true },
1054
+ ]);
1055
+
1056
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_LocalCandidate {
1057
+ return new RtcStats_LocalCandidate().fromBinary(bytes, options);
1058
+ }
1059
+
1060
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_LocalCandidate {
1061
+ return new RtcStats_LocalCandidate().fromJson(jsonValue, options);
1062
+ }
1063
+
1064
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_LocalCandidate {
1065
+ return new RtcStats_LocalCandidate().fromJsonString(jsonString, options);
1066
+ }
1067
+
1068
+ static equals(a: RtcStats_LocalCandidate | PlainMessage<RtcStats_LocalCandidate> | undefined, b: RtcStats_LocalCandidate | PlainMessage<RtcStats_LocalCandidate> | undefined): boolean {
1069
+ return proto2.util.equals(RtcStats_LocalCandidate, a, b);
1070
+ }
1071
+ }
449
1072
 
450
1073
  /**
451
1074
  * @generated from message livekit.proto.RtcStats.RemoteCandidate
452
1075
  */
453
- export type RtcStats_RemoteCandidate = Message<"livekit.proto.RtcStats.RemoteCandidate"> & {
1076
+ export class RtcStats_RemoteCandidate extends Message<RtcStats_RemoteCandidate> {
454
1077
  /**
455
1078
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
456
1079
  */
@@ -460,19 +1083,40 @@ export type RtcStats_RemoteCandidate = Message<"livekit.proto.RtcStats.RemoteCan
460
1083
  * @generated from field: required livekit.proto.IceCandidateStats candidate = 2;
461
1084
  */
462
1085
  candidate?: IceCandidateStats;
463
- };
464
1086
 
465
- /**
466
- * Describes the message livekit.proto.RtcStats.RemoteCandidate.
467
- * Use `create(RtcStats_RemoteCandidateSchema)` to create a new message.
468
- */
469
- export const RtcStats_RemoteCandidateSchema: GenMessage<RtcStats_RemoteCandidate> = /*@__PURE__*/
470
- messageDesc(file_stats, 0, 12);
1087
+ constructor(data?: PartialMessage<RtcStats_RemoteCandidate>) {
1088
+ super();
1089
+ proto2.util.initPartial(data, this);
1090
+ }
1091
+
1092
+ static readonly runtime: typeof proto2 = proto2;
1093
+ static readonly typeName = "livekit.proto.RtcStats.RemoteCandidate";
1094
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1095
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
1096
+ { no: 2, name: "candidate", kind: "message", T: IceCandidateStats, req: true },
1097
+ ]);
1098
+
1099
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_RemoteCandidate {
1100
+ return new RtcStats_RemoteCandidate().fromBinary(bytes, options);
1101
+ }
1102
+
1103
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_RemoteCandidate {
1104
+ return new RtcStats_RemoteCandidate().fromJson(jsonValue, options);
1105
+ }
1106
+
1107
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_RemoteCandidate {
1108
+ return new RtcStats_RemoteCandidate().fromJsonString(jsonString, options);
1109
+ }
1110
+
1111
+ static equals(a: RtcStats_RemoteCandidate | PlainMessage<RtcStats_RemoteCandidate> | undefined, b: RtcStats_RemoteCandidate | PlainMessage<RtcStats_RemoteCandidate> | undefined): boolean {
1112
+ return proto2.util.equals(RtcStats_RemoteCandidate, a, b);
1113
+ }
1114
+ }
471
1115
 
472
1116
  /**
473
1117
  * @generated from message livekit.proto.RtcStats.Certificate
474
1118
  */
475
- export type RtcStats_Certificate = Message<"livekit.proto.RtcStats.Certificate"> & {
1119
+ export class RtcStats_Certificate extends Message<RtcStats_Certificate> {
476
1120
  /**
477
1121
  * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
478
1122
  */
@@ -482,1555 +1126,1925 @@ export type RtcStats_Certificate = Message<"livekit.proto.RtcStats.Certificate">
482
1126
  * @generated from field: required livekit.proto.CertificateStats certificate = 2;
483
1127
  */
484
1128
  certificate?: CertificateStats;
485
- };
1129
+
1130
+ constructor(data?: PartialMessage<RtcStats_Certificate>) {
1131
+ super();
1132
+ proto2.util.initPartial(data, this);
1133
+ }
1134
+
1135
+ static readonly runtime: typeof proto2 = proto2;
1136
+ static readonly typeName = "livekit.proto.RtcStats.Certificate";
1137
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1138
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
1139
+ { no: 2, name: "certificate", kind: "message", T: CertificateStats, req: true },
1140
+ ]);
1141
+
1142
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_Certificate {
1143
+ return new RtcStats_Certificate().fromBinary(bytes, options);
1144
+ }
1145
+
1146
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_Certificate {
1147
+ return new RtcStats_Certificate().fromJson(jsonValue, options);
1148
+ }
1149
+
1150
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_Certificate {
1151
+ return new RtcStats_Certificate().fromJsonString(jsonString, options);
1152
+ }
1153
+
1154
+ static equals(a: RtcStats_Certificate | PlainMessage<RtcStats_Certificate> | undefined, b: RtcStats_Certificate | PlainMessage<RtcStats_Certificate> | undefined): boolean {
1155
+ return proto2.util.equals(RtcStats_Certificate, a, b);
1156
+ }
1157
+ }
486
1158
 
487
1159
  /**
488
- * Describes the message livekit.proto.RtcStats.Certificate.
489
- * Use `create(RtcStats_CertificateSchema)` to create a new message.
1160
+ * @generated from message livekit.proto.RtcStats.Stream
490
1161
  */
491
- export const RtcStats_CertificateSchema: GenMessage<RtcStats_Certificate> = /*@__PURE__*/
492
- messageDesc(file_stats, 0, 13);
1162
+ export class RtcStats_Stream extends Message<RtcStats_Stream> {
1163
+ /**
1164
+ * @generated from field: required livekit.proto.RtcStatsData rtc = 1;
1165
+ */
1166
+ rtc?: RtcStatsData;
1167
+
1168
+ /**
1169
+ * @generated from field: required livekit.proto.StreamStats stream = 2;
1170
+ */
1171
+ stream?: StreamStats;
1172
+
1173
+ constructor(data?: PartialMessage<RtcStats_Stream>) {
1174
+ super();
1175
+ proto2.util.initPartial(data, this);
1176
+ }
1177
+
1178
+ static readonly runtime: typeof proto2 = proto2;
1179
+ static readonly typeName = "livekit.proto.RtcStats.Stream";
1180
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1181
+ { no: 1, name: "rtc", kind: "message", T: RtcStatsData, req: true },
1182
+ { no: 2, name: "stream", kind: "message", T: StreamStats, req: true },
1183
+ ]);
1184
+
1185
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_Stream {
1186
+ return new RtcStats_Stream().fromBinary(bytes, options);
1187
+ }
1188
+
1189
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_Stream {
1190
+ return new RtcStats_Stream().fromJson(jsonValue, options);
1191
+ }
1192
+
1193
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_Stream {
1194
+ return new RtcStats_Stream().fromJsonString(jsonString, options);
1195
+ }
1196
+
1197
+ static equals(a: RtcStats_Stream | PlainMessage<RtcStats_Stream> | undefined, b: RtcStats_Stream | PlainMessage<RtcStats_Stream> | undefined): boolean {
1198
+ return proto2.util.equals(RtcStats_Stream, a, b);
1199
+ }
1200
+ }
493
1201
 
494
1202
  /**
495
1203
  * Deprecated
496
1204
  *
497
1205
  * @generated from message livekit.proto.RtcStats.Track
498
1206
  */
499
- export type RtcStats_Track = Message<"livekit.proto.RtcStats.Track"> & {
500
- };
1207
+ export class RtcStats_Track extends Message<RtcStats_Track> {
1208
+ constructor(data?: PartialMessage<RtcStats_Track>) {
1209
+ super();
1210
+ proto2.util.initPartial(data, this);
1211
+ }
501
1212
 
502
- /**
503
- * Describes the message livekit.proto.RtcStats.Track.
504
- * Use `create(RtcStats_TrackSchema)` to create a new message.
505
- */
506
- export const RtcStats_TrackSchema: GenMessage<RtcStats_Track> = /*@__PURE__*/
507
- messageDesc(file_stats, 0, 14);
1213
+ static readonly runtime: typeof proto2 = proto2;
1214
+ static readonly typeName = "livekit.proto.RtcStats.Track";
1215
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1216
+ ]);
1217
+
1218
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStats_Track {
1219
+ return new RtcStats_Track().fromBinary(bytes, options);
1220
+ }
1221
+
1222
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStats_Track {
1223
+ return new RtcStats_Track().fromJson(jsonValue, options);
1224
+ }
1225
+
1226
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStats_Track {
1227
+ return new RtcStats_Track().fromJsonString(jsonString, options);
1228
+ }
1229
+
1230
+ static equals(a: RtcStats_Track | PlainMessage<RtcStats_Track> | undefined, b: RtcStats_Track | PlainMessage<RtcStats_Track> | undefined): boolean {
1231
+ return proto2.util.equals(RtcStats_Track, a, b);
1232
+ }
1233
+ }
508
1234
 
509
1235
  /**
510
1236
  * @generated from message livekit.proto.RtcStatsData
511
1237
  */
512
- export type RtcStatsData = Message<"livekit.proto.RtcStatsData"> & {
1238
+ export class RtcStatsData extends Message<RtcStatsData> {
513
1239
  /**
514
1240
  * @generated from field: required string id = 1;
515
1241
  */
516
- id: string;
1242
+ id?: string;
517
1243
 
518
1244
  /**
519
1245
  * @generated from field: required int64 timestamp = 2;
520
1246
  */
521
- timestamp: bigint;
522
- };
1247
+ timestamp?: bigint;
523
1248
 
524
- /**
525
- * Describes the message livekit.proto.RtcStatsData.
526
- * Use `create(RtcStatsDataSchema)` to create a new message.
527
- */
528
- export const RtcStatsDataSchema: GenMessage<RtcStatsData> = /*@__PURE__*/
529
- messageDesc(file_stats, 1);
1249
+ constructor(data?: PartialMessage<RtcStatsData>) {
1250
+ super();
1251
+ proto2.util.initPartial(data, this);
1252
+ }
1253
+
1254
+ static readonly runtime: typeof proto2 = proto2;
1255
+ static readonly typeName = "livekit.proto.RtcStatsData";
1256
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1257
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1258
+ { no: 2, name: "timestamp", kind: "scalar", T: 3 /* ScalarType.INT64 */, req: true },
1259
+ ]);
1260
+
1261
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtcStatsData {
1262
+ return new RtcStatsData().fromBinary(bytes, options);
1263
+ }
1264
+
1265
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtcStatsData {
1266
+ return new RtcStatsData().fromJson(jsonValue, options);
1267
+ }
1268
+
1269
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtcStatsData {
1270
+ return new RtcStatsData().fromJsonString(jsonString, options);
1271
+ }
1272
+
1273
+ static equals(a: RtcStatsData | PlainMessage<RtcStatsData> | undefined, b: RtcStatsData | PlainMessage<RtcStatsData> | undefined): boolean {
1274
+ return proto2.util.equals(RtcStatsData, a, b);
1275
+ }
1276
+ }
530
1277
 
531
1278
  /**
532
1279
  * @generated from message livekit.proto.CodecStats
533
1280
  */
534
- export type CodecStats = Message<"livekit.proto.CodecStats"> & {
1281
+ export class CodecStats extends Message<CodecStats> {
535
1282
  /**
536
1283
  * @generated from field: required uint32 payload_type = 1;
537
1284
  */
538
- payloadType: number;
1285
+ payloadType?: number;
539
1286
 
540
1287
  /**
541
1288
  * @generated from field: required string transport_id = 2;
542
1289
  */
543
- transportId: string;
1290
+ transportId?: string;
544
1291
 
545
1292
  /**
546
1293
  * @generated from field: required string mime_type = 3;
547
1294
  */
548
- mimeType: string;
1295
+ mimeType?: string;
549
1296
 
550
1297
  /**
551
1298
  * @generated from field: required uint32 clock_rate = 4;
552
1299
  */
553
- clockRate: number;
1300
+ clockRate?: number;
554
1301
 
555
1302
  /**
556
1303
  * @generated from field: required uint32 channels = 5;
557
1304
  */
558
- channels: number;
1305
+ channels?: number;
559
1306
 
560
1307
  /**
561
1308
  * @generated from field: required string sdp_fmtp_line = 6;
562
1309
  */
563
- sdpFmtpLine: string;
564
- };
565
-
566
- /**
567
- * Describes the message livekit.proto.CodecStats.
568
- * Use `create(CodecStatsSchema)` to create a new message.
569
- */
570
- export const CodecStatsSchema: GenMessage<CodecStats> = /*@__PURE__*/
571
- messageDesc(file_stats, 2);
1310
+ sdpFmtpLine?: string;
1311
+
1312
+ constructor(data?: PartialMessage<CodecStats>) {
1313
+ super();
1314
+ proto2.util.initPartial(data, this);
1315
+ }
1316
+
1317
+ static readonly runtime: typeof proto2 = proto2;
1318
+ static readonly typeName = "livekit.proto.CodecStats";
1319
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1320
+ { no: 1, name: "payload_type", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1321
+ { no: 2, name: "transport_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1322
+ { no: 3, name: "mime_type", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1323
+ { no: 4, name: "clock_rate", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1324
+ { no: 5, name: "channels", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1325
+ { no: 6, name: "sdp_fmtp_line", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1326
+ ]);
1327
+
1328
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): CodecStats {
1329
+ return new CodecStats().fromBinary(bytes, options);
1330
+ }
1331
+
1332
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): CodecStats {
1333
+ return new CodecStats().fromJson(jsonValue, options);
1334
+ }
1335
+
1336
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): CodecStats {
1337
+ return new CodecStats().fromJsonString(jsonString, options);
1338
+ }
1339
+
1340
+ static equals(a: CodecStats | PlainMessage<CodecStats> | undefined, b: CodecStats | PlainMessage<CodecStats> | undefined): boolean {
1341
+ return proto2.util.equals(CodecStats, a, b);
1342
+ }
1343
+ }
572
1344
 
573
1345
  /**
574
1346
  * @generated from message livekit.proto.RtpStreamStats
575
1347
  */
576
- export type RtpStreamStats = Message<"livekit.proto.RtpStreamStats"> & {
1348
+ export class RtpStreamStats extends Message<RtpStreamStats> {
577
1349
  /**
578
1350
  * @generated from field: required uint32 ssrc = 1;
579
1351
  */
580
- ssrc: number;
1352
+ ssrc?: number;
581
1353
 
582
1354
  /**
583
1355
  * @generated from field: required string kind = 2;
584
1356
  */
585
- kind: string;
1357
+ kind?: string;
586
1358
 
587
1359
  /**
588
1360
  * @generated from field: required string transport_id = 3;
589
1361
  */
590
- transportId: string;
1362
+ transportId?: string;
591
1363
 
592
1364
  /**
593
1365
  * @generated from field: required string codec_id = 4;
594
1366
  */
595
- codecId: string;
596
- };
597
-
598
- /**
599
- * Describes the message livekit.proto.RtpStreamStats.
600
- * Use `create(RtpStreamStatsSchema)` to create a new message.
601
- */
602
- export const RtpStreamStatsSchema: GenMessage<RtpStreamStats> = /*@__PURE__*/
603
- messageDesc(file_stats, 3);
1367
+ codecId?: string;
1368
+
1369
+ constructor(data?: PartialMessage<RtpStreamStats>) {
1370
+ super();
1371
+ proto2.util.initPartial(data, this);
1372
+ }
1373
+
1374
+ static readonly runtime: typeof proto2 = proto2;
1375
+ static readonly typeName = "livekit.proto.RtpStreamStats";
1376
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1377
+ { no: 1, name: "ssrc", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1378
+ { no: 2, name: "kind", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1379
+ { no: 3, name: "transport_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1380
+ { no: 4, name: "codec_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1381
+ ]);
1382
+
1383
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RtpStreamStats {
1384
+ return new RtpStreamStats().fromBinary(bytes, options);
1385
+ }
1386
+
1387
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RtpStreamStats {
1388
+ return new RtpStreamStats().fromJson(jsonValue, options);
1389
+ }
1390
+
1391
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RtpStreamStats {
1392
+ return new RtpStreamStats().fromJsonString(jsonString, options);
1393
+ }
1394
+
1395
+ static equals(a: RtpStreamStats | PlainMessage<RtpStreamStats> | undefined, b: RtpStreamStats | PlainMessage<RtpStreamStats> | undefined): boolean {
1396
+ return proto2.util.equals(RtpStreamStats, a, b);
1397
+ }
1398
+ }
604
1399
 
605
1400
  /**
606
1401
  * @generated from message livekit.proto.ReceivedRtpStreamStats
607
1402
  */
608
- export type ReceivedRtpStreamStats = Message<"livekit.proto.ReceivedRtpStreamStats"> & {
1403
+ export class ReceivedRtpStreamStats extends Message<ReceivedRtpStreamStats> {
609
1404
  /**
610
1405
  * @generated from field: required uint64 packets_received = 1;
611
1406
  */
612
- packetsReceived: bigint;
1407
+ packetsReceived?: bigint;
613
1408
 
614
1409
  /**
615
1410
  * @generated from field: required int64 packets_lost = 2;
616
1411
  */
617
- packetsLost: bigint;
1412
+ packetsLost?: bigint;
618
1413
 
619
1414
  /**
620
1415
  * @generated from field: required double jitter = 3;
621
1416
  */
622
- jitter: number;
623
- };
1417
+ jitter?: number;
624
1418
 
625
- /**
626
- * Describes the message livekit.proto.ReceivedRtpStreamStats.
627
- * Use `create(ReceivedRtpStreamStatsSchema)` to create a new message.
628
- */
629
- export const ReceivedRtpStreamStatsSchema: GenMessage<ReceivedRtpStreamStats> = /*@__PURE__*/
630
- messageDesc(file_stats, 4);
1419
+ constructor(data?: PartialMessage<ReceivedRtpStreamStats>) {
1420
+ super();
1421
+ proto2.util.initPartial(data, this);
1422
+ }
1423
+
1424
+ static readonly runtime: typeof proto2 = proto2;
1425
+ static readonly typeName = "livekit.proto.ReceivedRtpStreamStats";
1426
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1427
+ { no: 1, name: "packets_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1428
+ { no: 2, name: "packets_lost", kind: "scalar", T: 3 /* ScalarType.INT64 */, req: true },
1429
+ { no: 3, name: "jitter", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1430
+ ]);
1431
+
1432
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ReceivedRtpStreamStats {
1433
+ return new ReceivedRtpStreamStats().fromBinary(bytes, options);
1434
+ }
1435
+
1436
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ReceivedRtpStreamStats {
1437
+ return new ReceivedRtpStreamStats().fromJson(jsonValue, options);
1438
+ }
1439
+
1440
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ReceivedRtpStreamStats {
1441
+ return new ReceivedRtpStreamStats().fromJsonString(jsonString, options);
1442
+ }
1443
+
1444
+ static equals(a: ReceivedRtpStreamStats | PlainMessage<ReceivedRtpStreamStats> | undefined, b: ReceivedRtpStreamStats | PlainMessage<ReceivedRtpStreamStats> | undefined): boolean {
1445
+ return proto2.util.equals(ReceivedRtpStreamStats, a, b);
1446
+ }
1447
+ }
631
1448
 
632
1449
  /**
633
1450
  * @generated from message livekit.proto.InboundRtpStreamStats
634
1451
  */
635
- export type InboundRtpStreamStats = Message<"livekit.proto.InboundRtpStreamStats"> & {
1452
+ export class InboundRtpStreamStats extends Message<InboundRtpStreamStats> {
636
1453
  /**
637
1454
  * @generated from field: required string track_identifier = 1;
638
1455
  */
639
- trackIdentifier: string;
1456
+ trackIdentifier?: string;
640
1457
 
641
1458
  /**
642
1459
  * @generated from field: required string mid = 2;
643
1460
  */
644
- mid: string;
1461
+ mid?: string;
645
1462
 
646
1463
  /**
647
1464
  * @generated from field: required string remote_id = 3;
648
1465
  */
649
- remoteId: string;
1466
+ remoteId?: string;
650
1467
 
651
1468
  /**
652
1469
  * @generated from field: required uint32 frames_decoded = 4;
653
1470
  */
654
- framesDecoded: number;
1471
+ framesDecoded?: number;
655
1472
 
656
1473
  /**
657
1474
  * @generated from field: required uint32 key_frames_decoded = 5;
658
1475
  */
659
- keyFramesDecoded: number;
1476
+ keyFramesDecoded?: number;
660
1477
 
661
1478
  /**
662
1479
  * @generated from field: required uint32 frames_rendered = 6;
663
1480
  */
664
- framesRendered: number;
1481
+ framesRendered?: number;
665
1482
 
666
1483
  /**
667
1484
  * @generated from field: required uint32 frames_dropped = 7;
668
1485
  */
669
- framesDropped: number;
1486
+ framesDropped?: number;
670
1487
 
671
1488
  /**
672
1489
  * @generated from field: required uint32 frame_width = 8;
673
1490
  */
674
- frameWidth: number;
1491
+ frameWidth?: number;
675
1492
 
676
1493
  /**
677
1494
  * @generated from field: required uint32 frame_height = 9;
678
1495
  */
679
- frameHeight: number;
1496
+ frameHeight?: number;
680
1497
 
681
1498
  /**
682
1499
  * @generated from field: required double frames_per_second = 10;
683
1500
  */
684
- framesPerSecond: number;
1501
+ framesPerSecond?: number;
685
1502
 
686
1503
  /**
687
1504
  * @generated from field: required uint64 qp_sum = 11;
688
1505
  */
689
- qpSum: bigint;
1506
+ qpSum?: bigint;
690
1507
 
691
1508
  /**
692
1509
  * @generated from field: required double total_decode_time = 12;
693
1510
  */
694
- totalDecodeTime: number;
1511
+ totalDecodeTime?: number;
695
1512
 
696
1513
  /**
697
1514
  * @generated from field: required double total_inter_frame_delay = 13;
698
1515
  */
699
- totalInterFrameDelay: number;
1516
+ totalInterFrameDelay?: number;
700
1517
 
701
1518
  /**
702
1519
  * @generated from field: required double total_squared_inter_frame_delay = 14;
703
1520
  */
704
- totalSquaredInterFrameDelay: number;
1521
+ totalSquaredInterFrameDelay?: number;
705
1522
 
706
1523
  /**
707
1524
  * @generated from field: required uint32 pause_count = 15;
708
1525
  */
709
- pauseCount: number;
1526
+ pauseCount?: number;
710
1527
 
711
1528
  /**
712
1529
  * @generated from field: required double total_pause_duration = 16;
713
1530
  */
714
- totalPauseDuration: number;
1531
+ totalPauseDuration?: number;
715
1532
 
716
1533
  /**
717
1534
  * @generated from field: required uint32 freeze_count = 17;
718
1535
  */
719
- freezeCount: number;
1536
+ freezeCount?: number;
720
1537
 
721
1538
  /**
722
1539
  * @generated from field: required double total_freeze_duration = 18;
723
1540
  */
724
- totalFreezeDuration: number;
1541
+ totalFreezeDuration?: number;
725
1542
 
726
1543
  /**
727
1544
  * @generated from field: required double last_packet_received_timestamp = 19;
728
1545
  */
729
- lastPacketReceivedTimestamp: number;
1546
+ lastPacketReceivedTimestamp?: number;
730
1547
 
731
1548
  /**
732
1549
  * @generated from field: required uint64 header_bytes_received = 20;
733
1550
  */
734
- headerBytesReceived: bigint;
1551
+ headerBytesReceived?: bigint;
735
1552
 
736
1553
  /**
737
1554
  * @generated from field: required uint64 packets_discarded = 21;
738
1555
  */
739
- packetsDiscarded: bigint;
1556
+ packetsDiscarded?: bigint;
740
1557
 
741
1558
  /**
742
1559
  * @generated from field: required uint64 fec_bytes_received = 22;
743
1560
  */
744
- fecBytesReceived: bigint;
1561
+ fecBytesReceived?: bigint;
745
1562
 
746
1563
  /**
747
1564
  * @generated from field: required uint64 fec_packets_received = 23;
748
1565
  */
749
- fecPacketsReceived: bigint;
1566
+ fecPacketsReceived?: bigint;
750
1567
 
751
1568
  /**
752
1569
  * @generated from field: required uint64 fec_packets_discarded = 24;
753
1570
  */
754
- fecPacketsDiscarded: bigint;
1571
+ fecPacketsDiscarded?: bigint;
755
1572
 
756
1573
  /**
757
1574
  * @generated from field: required uint64 bytes_received = 25;
758
1575
  */
759
- bytesReceived: bigint;
1576
+ bytesReceived?: bigint;
760
1577
 
761
1578
  /**
762
1579
  * @generated from field: required uint32 nack_count = 26;
763
1580
  */
764
- nackCount: number;
1581
+ nackCount?: number;
765
1582
 
766
1583
  /**
767
1584
  * @generated from field: required uint32 fir_count = 27;
768
1585
  */
769
- firCount: number;
1586
+ firCount?: number;
770
1587
 
771
1588
  /**
772
1589
  * @generated from field: required uint32 pli_count = 28;
773
1590
  */
774
- pliCount: number;
1591
+ pliCount?: number;
775
1592
 
776
1593
  /**
777
1594
  * @generated from field: required double total_processing_delay = 29;
778
1595
  */
779
- totalProcessingDelay: number;
1596
+ totalProcessingDelay?: number;
780
1597
 
781
1598
  /**
782
1599
  * @generated from field: required double estimated_playout_timestamp = 30;
783
1600
  */
784
- estimatedPlayoutTimestamp: number;
1601
+ estimatedPlayoutTimestamp?: number;
785
1602
 
786
1603
  /**
787
1604
  * @generated from field: required double jitter_buffer_delay = 31;
788
1605
  */
789
- jitterBufferDelay: number;
1606
+ jitterBufferDelay?: number;
790
1607
 
791
1608
  /**
792
1609
  * @generated from field: required double jitter_buffer_target_delay = 32;
793
1610
  */
794
- jitterBufferTargetDelay: number;
1611
+ jitterBufferTargetDelay?: number;
795
1612
 
796
1613
  /**
797
1614
  * @generated from field: required uint64 jitter_buffer_emitted_count = 33;
798
1615
  */
799
- jitterBufferEmittedCount: bigint;
1616
+ jitterBufferEmittedCount?: bigint;
800
1617
 
801
1618
  /**
802
1619
  * @generated from field: required double jitter_buffer_minimum_delay = 34;
803
1620
  */
804
- jitterBufferMinimumDelay: number;
1621
+ jitterBufferMinimumDelay?: number;
805
1622
 
806
1623
  /**
807
1624
  * @generated from field: required uint64 total_samples_received = 35;
808
1625
  */
809
- totalSamplesReceived: bigint;
1626
+ totalSamplesReceived?: bigint;
810
1627
 
811
1628
  /**
812
1629
  * @generated from field: required uint64 concealed_samples = 36;
813
1630
  */
814
- concealedSamples: bigint;
1631
+ concealedSamples?: bigint;
815
1632
 
816
1633
  /**
817
1634
  * @generated from field: required uint64 silent_concealed_samples = 37;
818
1635
  */
819
- silentConcealedSamples: bigint;
1636
+ silentConcealedSamples?: bigint;
820
1637
 
821
1638
  /**
822
1639
  * @generated from field: required uint64 concealment_events = 38;
823
1640
  */
824
- concealmentEvents: bigint;
1641
+ concealmentEvents?: bigint;
825
1642
 
826
1643
  /**
827
1644
  * @generated from field: required uint64 inserted_samples_for_deceleration = 39;
828
1645
  */
829
- insertedSamplesForDeceleration: bigint;
1646
+ insertedSamplesForDeceleration?: bigint;
830
1647
 
831
1648
  /**
832
1649
  * @generated from field: required uint64 removed_samples_for_acceleration = 40;
833
1650
  */
834
- removedSamplesForAcceleration: bigint;
1651
+ removedSamplesForAcceleration?: bigint;
835
1652
 
836
1653
  /**
837
1654
  * @generated from field: required double audio_level = 41;
838
1655
  */
839
- audioLevel: number;
1656
+ audioLevel?: number;
840
1657
 
841
1658
  /**
842
1659
  * @generated from field: required double total_audio_energy = 42;
843
1660
  */
844
- totalAudioEnergy: number;
1661
+ totalAudioEnergy?: number;
845
1662
 
846
1663
  /**
847
1664
  * @generated from field: required double total_samples_duration = 43;
848
1665
  */
849
- totalSamplesDuration: number;
1666
+ totalSamplesDuration?: number;
850
1667
 
851
1668
  /**
852
1669
  * @generated from field: required uint64 frames_received = 44;
853
1670
  */
854
- framesReceived: bigint;
1671
+ framesReceived?: bigint;
855
1672
 
856
1673
  /**
857
1674
  * @generated from field: required string decoder_implementation = 45;
858
1675
  */
859
- decoderImplementation: string;
1676
+ decoderImplementation?: string;
860
1677
 
861
1678
  /**
862
1679
  * @generated from field: required string playout_id = 46;
863
1680
  */
864
- playoutId: string;
1681
+ playoutId?: string;
865
1682
 
866
1683
  /**
867
1684
  * @generated from field: required bool power_efficient_decoder = 47;
868
1685
  */
869
- powerEfficientDecoder: boolean;
1686
+ powerEfficientDecoder?: boolean;
870
1687
 
871
1688
  /**
872
1689
  * @generated from field: required uint64 frames_assembled_from_multiple_packets = 48;
873
1690
  */
874
- framesAssembledFromMultiplePackets: bigint;
1691
+ framesAssembledFromMultiplePackets?: bigint;
875
1692
 
876
1693
  /**
877
1694
  * @generated from field: required double total_assembly_time = 49;
878
1695
  */
879
- totalAssemblyTime: number;
1696
+ totalAssemblyTime?: number;
880
1697
 
881
1698
  /**
882
1699
  * @generated from field: required uint64 retransmitted_packets_received = 50;
883
1700
  */
884
- retransmittedPacketsReceived: bigint;
1701
+ retransmittedPacketsReceived?: bigint;
885
1702
 
886
1703
  /**
887
1704
  * @generated from field: required uint64 retransmitted_bytes_received = 51;
888
1705
  */
889
- retransmittedBytesReceived: bigint;
1706
+ retransmittedBytesReceived?: bigint;
890
1707
 
891
1708
  /**
892
1709
  * @generated from field: required uint32 rtx_ssrc = 52;
893
1710
  */
894
- rtxSsrc: number;
1711
+ rtxSsrc?: number;
895
1712
 
896
1713
  /**
897
1714
  * @generated from field: required uint32 fec_ssrc = 53;
898
1715
  */
899
- fecSsrc: number;
900
- };
901
-
902
- /**
903
- * Describes the message livekit.proto.InboundRtpStreamStats.
904
- * Use `create(InboundRtpStreamStatsSchema)` to create a new message.
905
- */
906
- export const InboundRtpStreamStatsSchema: GenMessage<InboundRtpStreamStats> = /*@__PURE__*/
907
- messageDesc(file_stats, 5);
1716
+ fecSsrc?: number;
1717
+
1718
+ constructor(data?: PartialMessage<InboundRtpStreamStats>) {
1719
+ super();
1720
+ proto2.util.initPartial(data, this);
1721
+ }
1722
+
1723
+ static readonly runtime: typeof proto2 = proto2;
1724
+ static readonly typeName = "livekit.proto.InboundRtpStreamStats";
1725
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1726
+ { no: 1, name: "track_identifier", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1727
+ { no: 2, name: "mid", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1728
+ { no: 3, name: "remote_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1729
+ { no: 4, name: "frames_decoded", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1730
+ { no: 5, name: "key_frames_decoded", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1731
+ { no: 6, name: "frames_rendered", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1732
+ { no: 7, name: "frames_dropped", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1733
+ { no: 8, name: "frame_width", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1734
+ { no: 9, name: "frame_height", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1735
+ { no: 10, name: "frames_per_second", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1736
+ { no: 11, name: "qp_sum", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1737
+ { no: 12, name: "total_decode_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1738
+ { no: 13, name: "total_inter_frame_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1739
+ { no: 14, name: "total_squared_inter_frame_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1740
+ { no: 15, name: "pause_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1741
+ { no: 16, name: "total_pause_duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1742
+ { no: 17, name: "freeze_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1743
+ { no: 18, name: "total_freeze_duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1744
+ { no: 19, name: "last_packet_received_timestamp", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1745
+ { no: 20, name: "header_bytes_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1746
+ { no: 21, name: "packets_discarded", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1747
+ { no: 22, name: "fec_bytes_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1748
+ { no: 23, name: "fec_packets_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1749
+ { no: 24, name: "fec_packets_discarded", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1750
+ { no: 25, name: "bytes_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1751
+ { no: 26, name: "nack_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1752
+ { no: 27, name: "fir_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1753
+ { no: 28, name: "pli_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1754
+ { no: 29, name: "total_processing_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1755
+ { no: 30, name: "estimated_playout_timestamp", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1756
+ { no: 31, name: "jitter_buffer_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1757
+ { no: 32, name: "jitter_buffer_target_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1758
+ { no: 33, name: "jitter_buffer_emitted_count", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1759
+ { no: 34, name: "jitter_buffer_minimum_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1760
+ { no: 35, name: "total_samples_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1761
+ { no: 36, name: "concealed_samples", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1762
+ { no: 37, name: "silent_concealed_samples", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1763
+ { no: 38, name: "concealment_events", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1764
+ { no: 39, name: "inserted_samples_for_deceleration", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1765
+ { no: 40, name: "removed_samples_for_acceleration", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1766
+ { no: 41, name: "audio_level", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1767
+ { no: 42, name: "total_audio_energy", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1768
+ { no: 43, name: "total_samples_duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1769
+ { no: 44, name: "frames_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1770
+ { no: 45, name: "decoder_implementation", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1771
+ { no: 46, name: "playout_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
1772
+ { no: 47, name: "power_efficient_decoder", kind: "scalar", T: 8 /* ScalarType.BOOL */, req: true },
1773
+ { no: 48, name: "frames_assembled_from_multiple_packets", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1774
+ { no: 49, name: "total_assembly_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
1775
+ { no: 50, name: "retransmitted_packets_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1776
+ { no: 51, name: "retransmitted_bytes_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1777
+ { no: 52, name: "rtx_ssrc", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1778
+ { no: 53, name: "fec_ssrc", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
1779
+ ]);
1780
+
1781
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): InboundRtpStreamStats {
1782
+ return new InboundRtpStreamStats().fromBinary(bytes, options);
1783
+ }
1784
+
1785
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): InboundRtpStreamStats {
1786
+ return new InboundRtpStreamStats().fromJson(jsonValue, options);
1787
+ }
1788
+
1789
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): InboundRtpStreamStats {
1790
+ return new InboundRtpStreamStats().fromJsonString(jsonString, options);
1791
+ }
1792
+
1793
+ static equals(a: InboundRtpStreamStats | PlainMessage<InboundRtpStreamStats> | undefined, b: InboundRtpStreamStats | PlainMessage<InboundRtpStreamStats> | undefined): boolean {
1794
+ return proto2.util.equals(InboundRtpStreamStats, a, b);
1795
+ }
1796
+ }
908
1797
 
909
1798
  /**
910
1799
  * @generated from message livekit.proto.SentRtpStreamStats
911
1800
  */
912
- export type SentRtpStreamStats = Message<"livekit.proto.SentRtpStreamStats"> & {
1801
+ export class SentRtpStreamStats extends Message<SentRtpStreamStats> {
913
1802
  /**
914
1803
  * @generated from field: required uint64 packets_sent = 1;
915
1804
  */
916
- packetsSent: bigint;
1805
+ packetsSent?: bigint;
917
1806
 
918
1807
  /**
919
1808
  * @generated from field: required uint64 bytes_sent = 2;
920
1809
  */
921
- bytesSent: bigint;
922
- };
1810
+ bytesSent?: bigint;
923
1811
 
924
- /**
925
- * Describes the message livekit.proto.SentRtpStreamStats.
926
- * Use `create(SentRtpStreamStatsSchema)` to create a new message.
927
- */
928
- export const SentRtpStreamStatsSchema: GenMessage<SentRtpStreamStats> = /*@__PURE__*/
929
- messageDesc(file_stats, 6);
1812
+ constructor(data?: PartialMessage<SentRtpStreamStats>) {
1813
+ super();
1814
+ proto2.util.initPartial(data, this);
1815
+ }
1816
+
1817
+ static readonly runtime: typeof proto2 = proto2;
1818
+ static readonly typeName = "livekit.proto.SentRtpStreamStats";
1819
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
1820
+ { no: 1, name: "packets_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1821
+ { no: 2, name: "bytes_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
1822
+ ]);
1823
+
1824
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): SentRtpStreamStats {
1825
+ return new SentRtpStreamStats().fromBinary(bytes, options);
1826
+ }
1827
+
1828
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): SentRtpStreamStats {
1829
+ return new SentRtpStreamStats().fromJson(jsonValue, options);
1830
+ }
1831
+
1832
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): SentRtpStreamStats {
1833
+ return new SentRtpStreamStats().fromJsonString(jsonString, options);
1834
+ }
1835
+
1836
+ static equals(a: SentRtpStreamStats | PlainMessage<SentRtpStreamStats> | undefined, b: SentRtpStreamStats | PlainMessage<SentRtpStreamStats> | undefined): boolean {
1837
+ return proto2.util.equals(SentRtpStreamStats, a, b);
1838
+ }
1839
+ }
930
1840
 
931
1841
  /**
932
1842
  * @generated from message livekit.proto.OutboundRtpStreamStats
933
1843
  */
934
- export type OutboundRtpStreamStats = Message<"livekit.proto.OutboundRtpStreamStats"> & {
1844
+ export class OutboundRtpStreamStats extends Message<OutboundRtpStreamStats> {
935
1845
  /**
936
1846
  * @generated from field: required string mid = 1;
937
1847
  */
938
- mid: string;
1848
+ mid?: string;
939
1849
 
940
1850
  /**
941
1851
  * @generated from field: required string media_source_id = 2;
942
1852
  */
943
- mediaSourceId: string;
1853
+ mediaSourceId?: string;
944
1854
 
945
1855
  /**
946
1856
  * @generated from field: required string remote_id = 3;
947
1857
  */
948
- remoteId: string;
1858
+ remoteId?: string;
949
1859
 
950
1860
  /**
951
1861
  * @generated from field: required string rid = 4;
952
1862
  */
953
- rid: string;
1863
+ rid?: string;
954
1864
 
955
1865
  /**
956
1866
  * @generated from field: required uint64 header_bytes_sent = 5;
957
1867
  */
958
- headerBytesSent: bigint;
1868
+ headerBytesSent?: bigint;
959
1869
 
960
1870
  /**
961
1871
  * @generated from field: required uint64 retransmitted_packets_sent = 6;
962
1872
  */
963
- retransmittedPacketsSent: bigint;
1873
+ retransmittedPacketsSent?: bigint;
964
1874
 
965
1875
  /**
966
1876
  * @generated from field: required uint64 retransmitted_bytes_sent = 7;
967
1877
  */
968
- retransmittedBytesSent: bigint;
1878
+ retransmittedBytesSent?: bigint;
969
1879
 
970
1880
  /**
971
1881
  * @generated from field: required uint32 rtx_ssrc = 8;
972
1882
  */
973
- rtxSsrc: number;
1883
+ rtxSsrc?: number;
974
1884
 
975
1885
  /**
976
1886
  * @generated from field: required double target_bitrate = 9;
977
1887
  */
978
- targetBitrate: number;
1888
+ targetBitrate?: number;
979
1889
 
980
1890
  /**
981
1891
  * @generated from field: required uint64 total_encoded_bytes_target = 10;
982
1892
  */
983
- totalEncodedBytesTarget: bigint;
1893
+ totalEncodedBytesTarget?: bigint;
984
1894
 
985
1895
  /**
986
1896
  * @generated from field: required uint32 frame_width = 11;
987
1897
  */
988
- frameWidth: number;
1898
+ frameWidth?: number;
989
1899
 
990
1900
  /**
991
1901
  * @generated from field: required uint32 frame_height = 12;
992
1902
  */
993
- frameHeight: number;
1903
+ frameHeight?: number;
994
1904
 
995
1905
  /**
996
1906
  * @generated from field: required double frames_per_second = 13;
997
1907
  */
998
- framesPerSecond: number;
1908
+ framesPerSecond?: number;
999
1909
 
1000
1910
  /**
1001
1911
  * @generated from field: required uint32 frames_sent = 14;
1002
1912
  */
1003
- framesSent: number;
1913
+ framesSent?: number;
1004
1914
 
1005
1915
  /**
1006
1916
  * @generated from field: required uint32 huge_frames_sent = 15;
1007
1917
  */
1008
- hugeFramesSent: number;
1918
+ hugeFramesSent?: number;
1009
1919
 
1010
1920
  /**
1011
1921
  * @generated from field: required uint32 frames_encoded = 16;
1012
1922
  */
1013
- framesEncoded: number;
1923
+ framesEncoded?: number;
1014
1924
 
1015
1925
  /**
1016
1926
  * @generated from field: required uint32 key_frames_encoded = 17;
1017
1927
  */
1018
- keyFramesEncoded: number;
1928
+ keyFramesEncoded?: number;
1019
1929
 
1020
1930
  /**
1021
1931
  * @generated from field: required uint64 qp_sum = 18;
1022
1932
  */
1023
- qpSum: bigint;
1933
+ qpSum?: bigint;
1024
1934
 
1025
1935
  /**
1026
1936
  * @generated from field: required double total_encode_time = 19;
1027
1937
  */
1028
- totalEncodeTime: number;
1938
+ totalEncodeTime?: number;
1029
1939
 
1030
1940
  /**
1031
1941
  * @generated from field: required double total_packet_send_delay = 20;
1032
1942
  */
1033
- totalPacketSendDelay: number;
1943
+ totalPacketSendDelay?: number;
1034
1944
 
1035
1945
  /**
1036
1946
  * @generated from field: required livekit.proto.QualityLimitationReason quality_limitation_reason = 21;
1037
1947
  */
1038
- qualityLimitationReason: QualityLimitationReason;
1948
+ qualityLimitationReason?: QualityLimitationReason;
1039
1949
 
1040
1950
  /**
1041
1951
  * @generated from field: map<string, double> quality_limitation_durations = 22;
1042
1952
  */
1043
- qualityLimitationDurations: { [key: string]: number };
1953
+ qualityLimitationDurations: { [key: string]: number } = {};
1044
1954
 
1045
1955
  /**
1046
1956
  * @generated from field: required uint32 quality_limitation_resolution_changes = 23;
1047
1957
  */
1048
- qualityLimitationResolutionChanges: number;
1958
+ qualityLimitationResolutionChanges?: number;
1049
1959
 
1050
1960
  /**
1051
1961
  * @generated from field: required uint32 nack_count = 24;
1052
1962
  */
1053
- nackCount: number;
1963
+ nackCount?: number;
1054
1964
 
1055
1965
  /**
1056
1966
  * @generated from field: required uint32 fir_count = 25;
1057
1967
  */
1058
- firCount: number;
1968
+ firCount?: number;
1059
1969
 
1060
1970
  /**
1061
1971
  * @generated from field: required uint32 pli_count = 26;
1062
1972
  */
1063
- pliCount: number;
1973
+ pliCount?: number;
1064
1974
 
1065
1975
  /**
1066
1976
  * @generated from field: required string encoder_implementation = 27;
1067
1977
  */
1068
- encoderImplementation: string;
1978
+ encoderImplementation?: string;
1069
1979
 
1070
1980
  /**
1071
1981
  * @generated from field: required bool power_efficient_encoder = 28;
1072
1982
  */
1073
- powerEfficientEncoder: boolean;
1983
+ powerEfficientEncoder?: boolean;
1074
1984
 
1075
1985
  /**
1076
1986
  * @generated from field: required bool active = 29;
1077
1987
  */
1078
- active: boolean;
1988
+ active?: boolean;
1079
1989
 
1080
1990
  /**
1081
1991
  * @generated from field: required string scalability_mode = 30;
1082
1992
  */
1083
- scalabilityMode: string;
1084
- };
1085
-
1086
- /**
1087
- * Describes the message livekit.proto.OutboundRtpStreamStats.
1088
- * Use `create(OutboundRtpStreamStatsSchema)` to create a new message.
1089
- */
1090
- export const OutboundRtpStreamStatsSchema: GenMessage<OutboundRtpStreamStats> = /*@__PURE__*/
1091
- messageDesc(file_stats, 7);
1993
+ scalabilityMode?: string;
1994
+
1995
+ constructor(data?: PartialMessage<OutboundRtpStreamStats>) {
1996
+ super();
1997
+ proto2.util.initPartial(data, this);
1998
+ }
1999
+
2000
+ static readonly runtime: typeof proto2 = proto2;
2001
+ static readonly typeName = "livekit.proto.OutboundRtpStreamStats";
2002
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2003
+ { no: 1, name: "mid", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2004
+ { no: 2, name: "media_source_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2005
+ { no: 3, name: "remote_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2006
+ { no: 4, name: "rid", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2007
+ { no: 5, name: "header_bytes_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2008
+ { no: 6, name: "retransmitted_packets_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2009
+ { no: 7, name: "retransmitted_bytes_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2010
+ { no: 8, name: "rtx_ssrc", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2011
+ { no: 9, name: "target_bitrate", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2012
+ { no: 10, name: "total_encoded_bytes_target", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2013
+ { no: 11, name: "frame_width", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2014
+ { no: 12, name: "frame_height", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2015
+ { no: 13, name: "frames_per_second", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2016
+ { no: 14, name: "frames_sent", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2017
+ { no: 15, name: "huge_frames_sent", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2018
+ { no: 16, name: "frames_encoded", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2019
+ { no: 17, name: "key_frames_encoded", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2020
+ { no: 18, name: "qp_sum", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2021
+ { no: 19, name: "total_encode_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2022
+ { no: 20, name: "total_packet_send_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2023
+ { no: 21, name: "quality_limitation_reason", kind: "enum", T: proto2.getEnumType(QualityLimitationReason), req: true },
2024
+ { no: 22, name: "quality_limitation_durations", kind: "map", K: 9 /* ScalarType.STRING */, V: {kind: "scalar", T: 1 /* ScalarType.DOUBLE */} },
2025
+ { no: 23, name: "quality_limitation_resolution_changes", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2026
+ { no: 24, name: "nack_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2027
+ { no: 25, name: "fir_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2028
+ { no: 26, name: "pli_count", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2029
+ { no: 27, name: "encoder_implementation", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2030
+ { no: 28, name: "power_efficient_encoder", kind: "scalar", T: 8 /* ScalarType.BOOL */, req: true },
2031
+ { no: 29, name: "active", kind: "scalar", T: 8 /* ScalarType.BOOL */, req: true },
2032
+ { no: 30, name: "scalability_mode", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2033
+ ]);
2034
+
2035
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): OutboundRtpStreamStats {
2036
+ return new OutboundRtpStreamStats().fromBinary(bytes, options);
2037
+ }
2038
+
2039
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): OutboundRtpStreamStats {
2040
+ return new OutboundRtpStreamStats().fromJson(jsonValue, options);
2041
+ }
2042
+
2043
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): OutboundRtpStreamStats {
2044
+ return new OutboundRtpStreamStats().fromJsonString(jsonString, options);
2045
+ }
2046
+
2047
+ static equals(a: OutboundRtpStreamStats | PlainMessage<OutboundRtpStreamStats> | undefined, b: OutboundRtpStreamStats | PlainMessage<OutboundRtpStreamStats> | undefined): boolean {
2048
+ return proto2.util.equals(OutboundRtpStreamStats, a, b);
2049
+ }
2050
+ }
1092
2051
 
1093
2052
  /**
1094
2053
  * @generated from message livekit.proto.RemoteInboundRtpStreamStats
1095
2054
  */
1096
- export type RemoteInboundRtpStreamStats = Message<"livekit.proto.RemoteInboundRtpStreamStats"> & {
2055
+ export class RemoteInboundRtpStreamStats extends Message<RemoteInboundRtpStreamStats> {
1097
2056
  /**
1098
2057
  * @generated from field: required string local_id = 1;
1099
2058
  */
1100
- localId: string;
2059
+ localId?: string;
1101
2060
 
1102
2061
  /**
1103
2062
  * @generated from field: required double round_trip_time = 2;
1104
2063
  */
1105
- roundTripTime: number;
2064
+ roundTripTime?: number;
1106
2065
 
1107
2066
  /**
1108
2067
  * @generated from field: required double total_round_trip_time = 3;
1109
2068
  */
1110
- totalRoundTripTime: number;
2069
+ totalRoundTripTime?: number;
1111
2070
 
1112
2071
  /**
1113
2072
  * @generated from field: required double fraction_lost = 4;
1114
2073
  */
1115
- fractionLost: number;
2074
+ fractionLost?: number;
1116
2075
 
1117
2076
  /**
1118
2077
  * @generated from field: required uint64 round_trip_time_measurements = 5;
1119
2078
  */
1120
- roundTripTimeMeasurements: bigint;
1121
- };
1122
-
1123
- /**
1124
- * Describes the message livekit.proto.RemoteInboundRtpStreamStats.
1125
- * Use `create(RemoteInboundRtpStreamStatsSchema)` to create a new message.
1126
- */
1127
- export const RemoteInboundRtpStreamStatsSchema: GenMessage<RemoteInboundRtpStreamStats> = /*@__PURE__*/
1128
- messageDesc(file_stats, 8);
2079
+ roundTripTimeMeasurements?: bigint;
2080
+
2081
+ constructor(data?: PartialMessage<RemoteInboundRtpStreamStats>) {
2082
+ super();
2083
+ proto2.util.initPartial(data, this);
2084
+ }
2085
+
2086
+ static readonly runtime: typeof proto2 = proto2;
2087
+ static readonly typeName = "livekit.proto.RemoteInboundRtpStreamStats";
2088
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2089
+ { no: 1, name: "local_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2090
+ { no: 2, name: "round_trip_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2091
+ { no: 3, name: "total_round_trip_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2092
+ { no: 4, name: "fraction_lost", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2093
+ { no: 5, name: "round_trip_time_measurements", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2094
+ ]);
2095
+
2096
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RemoteInboundRtpStreamStats {
2097
+ return new RemoteInboundRtpStreamStats().fromBinary(bytes, options);
2098
+ }
2099
+
2100
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RemoteInboundRtpStreamStats {
2101
+ return new RemoteInboundRtpStreamStats().fromJson(jsonValue, options);
2102
+ }
2103
+
2104
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RemoteInboundRtpStreamStats {
2105
+ return new RemoteInboundRtpStreamStats().fromJsonString(jsonString, options);
2106
+ }
2107
+
2108
+ static equals(a: RemoteInboundRtpStreamStats | PlainMessage<RemoteInboundRtpStreamStats> | undefined, b: RemoteInboundRtpStreamStats | PlainMessage<RemoteInboundRtpStreamStats> | undefined): boolean {
2109
+ return proto2.util.equals(RemoteInboundRtpStreamStats, a, b);
2110
+ }
2111
+ }
1129
2112
 
1130
2113
  /**
1131
2114
  * @generated from message livekit.proto.RemoteOutboundRtpStreamStats
1132
2115
  */
1133
- export type RemoteOutboundRtpStreamStats = Message<"livekit.proto.RemoteOutboundRtpStreamStats"> & {
2116
+ export class RemoteOutboundRtpStreamStats extends Message<RemoteOutboundRtpStreamStats> {
1134
2117
  /**
1135
2118
  * @generated from field: required string local_id = 1;
1136
2119
  */
1137
- localId: string;
2120
+ localId?: string;
1138
2121
 
1139
2122
  /**
1140
2123
  * @generated from field: required double remote_timestamp = 2;
1141
2124
  */
1142
- remoteTimestamp: number;
2125
+ remoteTimestamp?: number;
1143
2126
 
1144
2127
  /**
1145
2128
  * @generated from field: required uint64 reports_sent = 3;
1146
2129
  */
1147
- reportsSent: bigint;
2130
+ reportsSent?: bigint;
1148
2131
 
1149
2132
  /**
1150
2133
  * @generated from field: required double round_trip_time = 4;
1151
2134
  */
1152
- roundTripTime: number;
2135
+ roundTripTime?: number;
1153
2136
 
1154
2137
  /**
1155
2138
  * @generated from field: required double total_round_trip_time = 5;
1156
2139
  */
1157
- totalRoundTripTime: number;
2140
+ totalRoundTripTime?: number;
1158
2141
 
1159
2142
  /**
1160
2143
  * @generated from field: required uint64 round_trip_time_measurements = 6;
1161
2144
  */
1162
- roundTripTimeMeasurements: bigint;
1163
- };
1164
-
1165
- /**
1166
- * Describes the message livekit.proto.RemoteOutboundRtpStreamStats.
1167
- * Use `create(RemoteOutboundRtpStreamStatsSchema)` to create a new message.
1168
- */
1169
- export const RemoteOutboundRtpStreamStatsSchema: GenMessage<RemoteOutboundRtpStreamStats> = /*@__PURE__*/
1170
- messageDesc(file_stats, 9);
2145
+ roundTripTimeMeasurements?: bigint;
2146
+
2147
+ constructor(data?: PartialMessage<RemoteOutboundRtpStreamStats>) {
2148
+ super();
2149
+ proto2.util.initPartial(data, this);
2150
+ }
2151
+
2152
+ static readonly runtime: typeof proto2 = proto2;
2153
+ static readonly typeName = "livekit.proto.RemoteOutboundRtpStreamStats";
2154
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2155
+ { no: 1, name: "local_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2156
+ { no: 2, name: "remote_timestamp", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2157
+ { no: 3, name: "reports_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2158
+ { no: 4, name: "round_trip_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2159
+ { no: 5, name: "total_round_trip_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2160
+ { no: 6, name: "round_trip_time_measurements", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2161
+ ]);
2162
+
2163
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RemoteOutboundRtpStreamStats {
2164
+ return new RemoteOutboundRtpStreamStats().fromBinary(bytes, options);
2165
+ }
2166
+
2167
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RemoteOutboundRtpStreamStats {
2168
+ return new RemoteOutboundRtpStreamStats().fromJson(jsonValue, options);
2169
+ }
2170
+
2171
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RemoteOutboundRtpStreamStats {
2172
+ return new RemoteOutboundRtpStreamStats().fromJsonString(jsonString, options);
2173
+ }
2174
+
2175
+ static equals(a: RemoteOutboundRtpStreamStats | PlainMessage<RemoteOutboundRtpStreamStats> | undefined, b: RemoteOutboundRtpStreamStats | PlainMessage<RemoteOutboundRtpStreamStats> | undefined): boolean {
2176
+ return proto2.util.equals(RemoteOutboundRtpStreamStats, a, b);
2177
+ }
2178
+ }
1171
2179
 
1172
2180
  /**
1173
2181
  * @generated from message livekit.proto.MediaSourceStats
1174
2182
  */
1175
- export type MediaSourceStats = Message<"livekit.proto.MediaSourceStats"> & {
2183
+ export class MediaSourceStats extends Message<MediaSourceStats> {
1176
2184
  /**
1177
2185
  * @generated from field: required string track_identifier = 1;
1178
2186
  */
1179
- trackIdentifier: string;
2187
+ trackIdentifier?: string;
1180
2188
 
1181
2189
  /**
1182
2190
  * @generated from field: required string kind = 2;
1183
2191
  */
1184
- kind: string;
1185
- };
2192
+ kind?: string;
1186
2193
 
1187
- /**
1188
- * Describes the message livekit.proto.MediaSourceStats.
1189
- * Use `create(MediaSourceStatsSchema)` to create a new message.
1190
- */
1191
- export const MediaSourceStatsSchema: GenMessage<MediaSourceStats> = /*@__PURE__*/
1192
- messageDesc(file_stats, 10);
2194
+ constructor(data?: PartialMessage<MediaSourceStats>) {
2195
+ super();
2196
+ proto2.util.initPartial(data, this);
2197
+ }
2198
+
2199
+ static readonly runtime: typeof proto2 = proto2;
2200
+ static readonly typeName = "livekit.proto.MediaSourceStats";
2201
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2202
+ { no: 1, name: "track_identifier", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2203
+ { no: 2, name: "kind", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2204
+ ]);
2205
+
2206
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): MediaSourceStats {
2207
+ return new MediaSourceStats().fromBinary(bytes, options);
2208
+ }
2209
+
2210
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): MediaSourceStats {
2211
+ return new MediaSourceStats().fromJson(jsonValue, options);
2212
+ }
2213
+
2214
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): MediaSourceStats {
2215
+ return new MediaSourceStats().fromJsonString(jsonString, options);
2216
+ }
2217
+
2218
+ static equals(a: MediaSourceStats | PlainMessage<MediaSourceStats> | undefined, b: MediaSourceStats | PlainMessage<MediaSourceStats> | undefined): boolean {
2219
+ return proto2.util.equals(MediaSourceStats, a, b);
2220
+ }
2221
+ }
1193
2222
 
1194
2223
  /**
1195
2224
  * @generated from message livekit.proto.AudioSourceStats
1196
2225
  */
1197
- export type AudioSourceStats = Message<"livekit.proto.AudioSourceStats"> & {
2226
+ export class AudioSourceStats extends Message<AudioSourceStats> {
1198
2227
  /**
1199
2228
  * @generated from field: required double audio_level = 1;
1200
2229
  */
1201
- audioLevel: number;
2230
+ audioLevel?: number;
1202
2231
 
1203
2232
  /**
1204
2233
  * @generated from field: required double total_audio_energy = 2;
1205
2234
  */
1206
- totalAudioEnergy: number;
2235
+ totalAudioEnergy?: number;
1207
2236
 
1208
2237
  /**
1209
2238
  * @generated from field: required double total_samples_duration = 3;
1210
2239
  */
1211
- totalSamplesDuration: number;
2240
+ totalSamplesDuration?: number;
1212
2241
 
1213
2242
  /**
1214
2243
  * @generated from field: required double echo_return_loss = 4;
1215
2244
  */
1216
- echoReturnLoss: number;
2245
+ echoReturnLoss?: number;
1217
2246
 
1218
2247
  /**
1219
2248
  * @generated from field: required double echo_return_loss_enhancement = 5;
1220
2249
  */
1221
- echoReturnLossEnhancement: number;
2250
+ echoReturnLossEnhancement?: number;
1222
2251
 
1223
2252
  /**
1224
2253
  * @generated from field: required double dropped_samples_duration = 6;
1225
2254
  */
1226
- droppedSamplesDuration: number;
2255
+ droppedSamplesDuration?: number;
1227
2256
 
1228
2257
  /**
1229
2258
  * @generated from field: required uint32 dropped_samples_events = 7;
1230
2259
  */
1231
- droppedSamplesEvents: number;
2260
+ droppedSamplesEvents?: number;
1232
2261
 
1233
2262
  /**
1234
2263
  * @generated from field: required double total_capture_delay = 8;
1235
2264
  */
1236
- totalCaptureDelay: number;
2265
+ totalCaptureDelay?: number;
1237
2266
 
1238
2267
  /**
1239
2268
  * @generated from field: required uint64 total_samples_captured = 9;
1240
2269
  */
1241
- totalSamplesCaptured: bigint;
1242
- };
1243
-
1244
- /**
1245
- * Describes the message livekit.proto.AudioSourceStats.
1246
- * Use `create(AudioSourceStatsSchema)` to create a new message.
1247
- */
1248
- export const AudioSourceStatsSchema: GenMessage<AudioSourceStats> = /*@__PURE__*/
1249
- messageDesc(file_stats, 11);
2270
+ totalSamplesCaptured?: bigint;
2271
+
2272
+ constructor(data?: PartialMessage<AudioSourceStats>) {
2273
+ super();
2274
+ proto2.util.initPartial(data, this);
2275
+ }
2276
+
2277
+ static readonly runtime: typeof proto2 = proto2;
2278
+ static readonly typeName = "livekit.proto.AudioSourceStats";
2279
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2280
+ { no: 1, name: "audio_level", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2281
+ { no: 2, name: "total_audio_energy", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2282
+ { no: 3, name: "total_samples_duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2283
+ { no: 4, name: "echo_return_loss", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2284
+ { no: 5, name: "echo_return_loss_enhancement", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2285
+ { no: 6, name: "dropped_samples_duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2286
+ { no: 7, name: "dropped_samples_events", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2287
+ { no: 8, name: "total_capture_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2288
+ { no: 9, name: "total_samples_captured", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2289
+ ]);
2290
+
2291
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): AudioSourceStats {
2292
+ return new AudioSourceStats().fromBinary(bytes, options);
2293
+ }
2294
+
2295
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): AudioSourceStats {
2296
+ return new AudioSourceStats().fromJson(jsonValue, options);
2297
+ }
2298
+
2299
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): AudioSourceStats {
2300
+ return new AudioSourceStats().fromJsonString(jsonString, options);
2301
+ }
2302
+
2303
+ static equals(a: AudioSourceStats | PlainMessage<AudioSourceStats> | undefined, b: AudioSourceStats | PlainMessage<AudioSourceStats> | undefined): boolean {
2304
+ return proto2.util.equals(AudioSourceStats, a, b);
2305
+ }
2306
+ }
1250
2307
 
1251
2308
  /**
1252
2309
  * @generated from message livekit.proto.VideoSourceStats
1253
2310
  */
1254
- export type VideoSourceStats = Message<"livekit.proto.VideoSourceStats"> & {
2311
+ export class VideoSourceStats extends Message<VideoSourceStats> {
1255
2312
  /**
1256
2313
  * @generated from field: required uint32 width = 1;
1257
2314
  */
1258
- width: number;
2315
+ width?: number;
1259
2316
 
1260
2317
  /**
1261
2318
  * @generated from field: required uint32 height = 2;
1262
2319
  */
1263
- height: number;
2320
+ height?: number;
1264
2321
 
1265
2322
  /**
1266
2323
  * @generated from field: required uint32 frames = 3;
1267
2324
  */
1268
- frames: number;
2325
+ frames?: number;
1269
2326
 
1270
2327
  /**
1271
2328
  * @generated from field: required double frames_per_second = 4;
1272
2329
  */
1273
- framesPerSecond: number;
1274
- };
1275
-
1276
- /**
1277
- * Describes the message livekit.proto.VideoSourceStats.
1278
- * Use `create(VideoSourceStatsSchema)` to create a new message.
1279
- */
1280
- export const VideoSourceStatsSchema: GenMessage<VideoSourceStats> = /*@__PURE__*/
1281
- messageDesc(file_stats, 12);
2330
+ framesPerSecond?: number;
2331
+
2332
+ constructor(data?: PartialMessage<VideoSourceStats>) {
2333
+ super();
2334
+ proto2.util.initPartial(data, this);
2335
+ }
2336
+
2337
+ static readonly runtime: typeof proto2 = proto2;
2338
+ static readonly typeName = "livekit.proto.VideoSourceStats";
2339
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2340
+ { no: 1, name: "width", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2341
+ { no: 2, name: "height", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2342
+ { no: 3, name: "frames", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2343
+ { no: 4, name: "frames_per_second", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2344
+ ]);
2345
+
2346
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): VideoSourceStats {
2347
+ return new VideoSourceStats().fromBinary(bytes, options);
2348
+ }
2349
+
2350
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): VideoSourceStats {
2351
+ return new VideoSourceStats().fromJson(jsonValue, options);
2352
+ }
2353
+
2354
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): VideoSourceStats {
2355
+ return new VideoSourceStats().fromJsonString(jsonString, options);
2356
+ }
2357
+
2358
+ static equals(a: VideoSourceStats | PlainMessage<VideoSourceStats> | undefined, b: VideoSourceStats | PlainMessage<VideoSourceStats> | undefined): boolean {
2359
+ return proto2.util.equals(VideoSourceStats, a, b);
2360
+ }
2361
+ }
1282
2362
 
1283
2363
  /**
1284
2364
  * @generated from message livekit.proto.AudioPlayoutStats
1285
2365
  */
1286
- export type AudioPlayoutStats = Message<"livekit.proto.AudioPlayoutStats"> & {
2366
+ export class AudioPlayoutStats extends Message<AudioPlayoutStats> {
1287
2367
  /**
1288
2368
  * @generated from field: required string kind = 1;
1289
2369
  */
1290
- kind: string;
2370
+ kind?: string;
1291
2371
 
1292
2372
  /**
1293
2373
  * @generated from field: required double synthesized_samples_duration = 2;
1294
2374
  */
1295
- synthesizedSamplesDuration: number;
2375
+ synthesizedSamplesDuration?: number;
1296
2376
 
1297
2377
  /**
1298
2378
  * @generated from field: required uint32 synthesized_samples_events = 3;
1299
2379
  */
1300
- synthesizedSamplesEvents: number;
2380
+ synthesizedSamplesEvents?: number;
1301
2381
 
1302
2382
  /**
1303
2383
  * @generated from field: required double total_samples_duration = 4;
1304
2384
  */
1305
- totalSamplesDuration: number;
2385
+ totalSamplesDuration?: number;
1306
2386
 
1307
2387
  /**
1308
2388
  * @generated from field: required double total_playout_delay = 5;
1309
2389
  */
1310
- totalPlayoutDelay: number;
2390
+ totalPlayoutDelay?: number;
1311
2391
 
1312
2392
  /**
1313
2393
  * @generated from field: required uint64 total_samples_count = 6;
1314
2394
  */
1315
- totalSamplesCount: bigint;
1316
- };
1317
-
1318
- /**
1319
- * Describes the message livekit.proto.AudioPlayoutStats.
1320
- * Use `create(AudioPlayoutStatsSchema)` to create a new message.
1321
- */
1322
- export const AudioPlayoutStatsSchema: GenMessage<AudioPlayoutStats> = /*@__PURE__*/
1323
- messageDesc(file_stats, 13);
2395
+ totalSamplesCount?: bigint;
2396
+
2397
+ constructor(data?: PartialMessage<AudioPlayoutStats>) {
2398
+ super();
2399
+ proto2.util.initPartial(data, this);
2400
+ }
2401
+
2402
+ static readonly runtime: typeof proto2 = proto2;
2403
+ static readonly typeName = "livekit.proto.AudioPlayoutStats";
2404
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2405
+ { no: 1, name: "kind", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2406
+ { no: 2, name: "synthesized_samples_duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2407
+ { no: 3, name: "synthesized_samples_events", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2408
+ { no: 4, name: "total_samples_duration", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2409
+ { no: 5, name: "total_playout_delay", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2410
+ { no: 6, name: "total_samples_count", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2411
+ ]);
2412
+
2413
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): AudioPlayoutStats {
2414
+ return new AudioPlayoutStats().fromBinary(bytes, options);
2415
+ }
2416
+
2417
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): AudioPlayoutStats {
2418
+ return new AudioPlayoutStats().fromJson(jsonValue, options);
2419
+ }
2420
+
2421
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): AudioPlayoutStats {
2422
+ return new AudioPlayoutStats().fromJsonString(jsonString, options);
2423
+ }
2424
+
2425
+ static equals(a: AudioPlayoutStats | PlainMessage<AudioPlayoutStats> | undefined, b: AudioPlayoutStats | PlainMessage<AudioPlayoutStats> | undefined): boolean {
2426
+ return proto2.util.equals(AudioPlayoutStats, a, b);
2427
+ }
2428
+ }
1324
2429
 
1325
2430
  /**
1326
2431
  * @generated from message livekit.proto.PeerConnectionStats
1327
2432
  */
1328
- export type PeerConnectionStats = Message<"livekit.proto.PeerConnectionStats"> & {
2433
+ export class PeerConnectionStats extends Message<PeerConnectionStats> {
1329
2434
  /**
1330
2435
  * @generated from field: required uint32 data_channels_opened = 1;
1331
2436
  */
1332
- dataChannelsOpened: number;
2437
+ dataChannelsOpened?: number;
1333
2438
 
1334
2439
  /**
1335
2440
  * @generated from field: required uint32 data_channels_closed = 2;
1336
2441
  */
1337
- dataChannelsClosed: number;
1338
- };
1339
-
1340
- /**
1341
- * Describes the message livekit.proto.PeerConnectionStats.
1342
- * Use `create(PeerConnectionStatsSchema)` to create a new message.
1343
- */
1344
- export const PeerConnectionStatsSchema: GenMessage<PeerConnectionStats> = /*@__PURE__*/
1345
- messageDesc(file_stats, 14);
1346
-
1347
- /**
1348
- * @generated from message livekit.proto.DataChannelStats
1349
- */
1350
- export type DataChannelStats = Message<"livekit.proto.DataChannelStats"> & {
1351
- /**
1352
- * @generated from field: required string label = 1;
1353
- */
1354
- label: string;
1355
-
1356
- /**
1357
- * @generated from field: required string protocol = 2;
1358
- */
1359
- protocol: string;
1360
-
1361
- /**
1362
- * @generated from field: required int32 data_channel_identifier = 3;
1363
- */
1364
- dataChannelIdentifier: number;
1365
-
1366
- /**
1367
- * @generated from field: optional livekit.proto.DataChannelState state = 4;
1368
- */
1369
- state: DataChannelState;
1370
-
1371
- /**
1372
- * @generated from field: required uint32 messages_sent = 5;
1373
- */
1374
- messagesSent: number;
1375
-
1376
- /**
1377
- * @generated from field: required uint64 bytes_sent = 6;
1378
- */
1379
- bytesSent: bigint;
1380
-
1381
- /**
1382
- * @generated from field: required uint32 messages_received = 7;
1383
- */
1384
- messagesReceived: number;
1385
-
1386
- /**
1387
- * @generated from field: required uint64 bytes_received = 8;
1388
- */
1389
- bytesReceived: bigint;
1390
- };
1391
-
1392
- /**
1393
- * Describes the message livekit.proto.DataChannelStats.
1394
- * Use `create(DataChannelStatsSchema)` to create a new message.
1395
- */
1396
- export const DataChannelStatsSchema: GenMessage<DataChannelStats> = /*@__PURE__*/
1397
- messageDesc(file_stats, 15);
1398
-
1399
- /**
1400
- * @generated from message livekit.proto.TransportStats
1401
- */
1402
- export type TransportStats = Message<"livekit.proto.TransportStats"> & {
1403
- /**
1404
- * @generated from field: required uint64 packets_sent = 1;
1405
- */
1406
- packetsSent: bigint;
1407
-
1408
- /**
1409
- * @generated from field: required uint64 packets_received = 2;
1410
- */
1411
- packetsReceived: bigint;
1412
-
1413
- /**
1414
- * @generated from field: required uint64 bytes_sent = 3;
1415
- */
1416
- bytesSent: bigint;
1417
-
1418
- /**
1419
- * @generated from field: required uint64 bytes_received = 4;
1420
- */
1421
- bytesReceived: bigint;
1422
-
1423
- /**
1424
- * @generated from field: required livekit.proto.IceRole ice_role = 5;
1425
- */
1426
- iceRole: IceRole;
1427
-
1428
- /**
1429
- * @generated from field: required string ice_local_username_fragment = 6;
1430
- */
1431
- iceLocalUsernameFragment: string;
1432
-
1433
- /**
1434
- * @generated from field: optional livekit.proto.DtlsTransportState dtls_state = 7;
1435
- */
1436
- dtlsState: DtlsTransportState;
1437
-
1438
- /**
1439
- * @generated from field: optional livekit.proto.IceTransportState ice_state = 8;
1440
- */
1441
- iceState: IceTransportState;
1442
-
1443
- /**
1444
- * @generated from field: required string selected_candidate_pair_id = 9;
1445
- */
1446
- selectedCandidatePairId: string;
1447
-
1448
- /**
1449
- * @generated from field: required string local_certificate_id = 10;
1450
- */
1451
- localCertificateId: string;
1452
-
1453
- /**
1454
- * @generated from field: required string remote_certificate_id = 11;
1455
- */
1456
- remoteCertificateId: string;
2442
+ dataChannelsClosed?: number;
1457
2443
 
1458
- /**
1459
- * @generated from field: required string tls_version = 12;
1460
- */
1461
- tlsVersion: string;
2444
+ constructor(data?: PartialMessage<PeerConnectionStats>) {
2445
+ super();
2446
+ proto2.util.initPartial(data, this);
2447
+ }
1462
2448
 
1463
- /**
1464
- * @generated from field: required string dtls_cipher = 13;
1465
- */
1466
- dtlsCipher: string;
2449
+ static readonly runtime: typeof proto2 = proto2;
2450
+ static readonly typeName = "livekit.proto.PeerConnectionStats";
2451
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2452
+ { no: 1, name: "data_channels_opened", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2453
+ { no: 2, name: "data_channels_closed", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2454
+ ]);
1467
2455
 
1468
- /**
1469
- * @generated from field: required livekit.proto.DtlsRole dtls_role = 14;
1470
- */
1471
- dtlsRole: DtlsRole;
2456
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): PeerConnectionStats {
2457
+ return new PeerConnectionStats().fromBinary(bytes, options);
2458
+ }
1472
2459
 
1473
- /**
1474
- * @generated from field: required string srtp_cipher = 15;
1475
- */
1476
- srtpCipher: string;
2460
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): PeerConnectionStats {
2461
+ return new PeerConnectionStats().fromJson(jsonValue, options);
2462
+ }
1477
2463
 
1478
- /**
1479
- * @generated from field: required uint32 selected_candidate_pair_changes = 16;
1480
- */
1481
- selectedCandidatePairChanges: number;
1482
- };
2464
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): PeerConnectionStats {
2465
+ return new PeerConnectionStats().fromJsonString(jsonString, options);
2466
+ }
1483
2467
 
1484
- /**
1485
- * Describes the message livekit.proto.TransportStats.
1486
- * Use `create(TransportStatsSchema)` to create a new message.
1487
- */
1488
- export const TransportStatsSchema: GenMessage<TransportStats> = /*@__PURE__*/
1489
- messageDesc(file_stats, 16);
2468
+ static equals(a: PeerConnectionStats | PlainMessage<PeerConnectionStats> | undefined, b: PeerConnectionStats | PlainMessage<PeerConnectionStats> | undefined): boolean {
2469
+ return proto2.util.equals(PeerConnectionStats, a, b);
2470
+ }
2471
+ }
1490
2472
 
1491
2473
  /**
1492
- * @generated from message livekit.proto.CandidatePairStats
2474
+ * @generated from message livekit.proto.DataChannelStats
1493
2475
  */
1494
- export type CandidatePairStats = Message<"livekit.proto.CandidatePairStats"> & {
1495
- /**
1496
- * @generated from field: required string transport_id = 1;
1497
- */
1498
- transportId: string;
1499
-
1500
- /**
1501
- * @generated from field: required string local_candidate_id = 2;
1502
- */
1503
- localCandidateId: string;
1504
-
1505
- /**
1506
- * @generated from field: required string remote_candidate_id = 3;
1507
- */
1508
- remoteCandidateId: string;
1509
-
1510
- /**
1511
- * @generated from field: optional livekit.proto.IceCandidatePairState state = 4;
1512
- */
1513
- state: IceCandidatePairState;
1514
-
1515
- /**
1516
- * @generated from field: required bool nominated = 5;
1517
- */
1518
- nominated: boolean;
1519
-
1520
- /**
1521
- * @generated from field: required uint64 packets_sent = 6;
1522
- */
1523
- packetsSent: bigint;
1524
-
1525
- /**
1526
- * @generated from field: required uint64 packets_received = 7;
1527
- */
1528
- packetsReceived: bigint;
1529
-
1530
- /**
1531
- * @generated from field: required uint64 bytes_sent = 8;
1532
- */
1533
- bytesSent: bigint;
1534
-
1535
- /**
1536
- * @generated from field: required uint64 bytes_received = 9;
1537
- */
1538
- bytesReceived: bigint;
1539
-
1540
- /**
1541
- * @generated from field: required double last_packet_sent_timestamp = 10;
1542
- */
1543
- lastPacketSentTimestamp: number;
1544
-
1545
- /**
1546
- * @generated from field: required double last_packet_received_timestamp = 11;
1547
- */
1548
- lastPacketReceivedTimestamp: number;
1549
-
1550
- /**
1551
- * @generated from field: required double total_round_trip_time = 12;
1552
- */
1553
- totalRoundTripTime: number;
1554
-
1555
- /**
1556
- * @generated from field: required double current_round_trip_time = 13;
1557
- */
1558
- currentRoundTripTime: number;
1559
-
1560
- /**
1561
- * @generated from field: required double available_outgoing_bitrate = 14;
1562
- */
1563
- availableOutgoingBitrate: number;
1564
-
1565
- /**
1566
- * @generated from field: required double available_incoming_bitrate = 15;
1567
- */
1568
- availableIncomingBitrate: number;
1569
-
1570
- /**
1571
- * @generated from field: required uint64 requests_received = 16;
1572
- */
1573
- requestsReceived: bigint;
1574
-
1575
- /**
1576
- * @generated from field: required uint64 requests_sent = 17;
1577
- */
1578
- requestsSent: bigint;
1579
-
1580
- /**
1581
- * @generated from field: required uint64 responses_received = 18;
1582
- */
1583
- responsesReceived: bigint;
1584
-
1585
- /**
1586
- * @generated from field: required uint64 responses_sent = 19;
1587
- */
1588
- responsesSent: bigint;
1589
-
1590
- /**
1591
- * @generated from field: required uint64 consent_requests_sent = 20;
1592
- */
1593
- consentRequestsSent: bigint;
1594
-
2476
+ export class DataChannelStats extends Message<DataChannelStats> {
1595
2477
  /**
1596
- * @generated from field: required uint32 packets_discarded_on_send = 21;
2478
+ * @generated from field: required string label = 1;
1597
2479
  */
1598
- packetsDiscardedOnSend: number;
2480
+ label?: string;
1599
2481
 
1600
2482
  /**
1601
- * @generated from field: required uint64 bytes_discarded_on_send = 22;
2483
+ * @generated from field: required string protocol = 2;
1602
2484
  */
1603
- bytesDiscardedOnSend: bigint;
1604
- };
1605
-
1606
- /**
1607
- * Describes the message livekit.proto.CandidatePairStats.
1608
- * Use `create(CandidatePairStatsSchema)` to create a new message.
1609
- */
1610
- export const CandidatePairStatsSchema: GenMessage<CandidatePairStats> = /*@__PURE__*/
1611
- messageDesc(file_stats, 17);
2485
+ protocol?: string;
1612
2486
 
1613
- /**
1614
- * @generated from message livekit.proto.IceCandidateStats
1615
- */
1616
- export type IceCandidateStats = Message<"livekit.proto.IceCandidateStats"> & {
1617
2487
  /**
1618
- * @generated from field: required string transport_id = 1;
2488
+ * @generated from field: required int32 data_channel_identifier = 3;
1619
2489
  */
1620
- transportId: string;
2490
+ dataChannelIdentifier?: number;
1621
2491
 
1622
2492
  /**
1623
- * @generated from field: required string address = 2;
2493
+ * @generated from field: optional livekit.proto.DataChannelState state = 4;
1624
2494
  */
1625
- address: string;
2495
+ state?: DataChannelState;
1626
2496
 
1627
2497
  /**
1628
- * @generated from field: required int32 port = 3;
2498
+ * @generated from field: required uint32 messages_sent = 5;
1629
2499
  */
1630
- port: number;
2500
+ messagesSent?: number;
1631
2501
 
1632
2502
  /**
1633
- * @generated from field: required string protocol = 4;
2503
+ * @generated from field: required uint64 bytes_sent = 6;
1634
2504
  */
1635
- protocol: string;
2505
+ bytesSent?: bigint;
1636
2506
 
1637
2507
  /**
1638
- * @generated from field: optional livekit.proto.IceCandidateType candidate_type = 5;
2508
+ * @generated from field: required uint32 messages_received = 7;
1639
2509
  */
1640
- candidateType: IceCandidateType;
2510
+ messagesReceived?: number;
1641
2511
 
1642
2512
  /**
1643
- * @generated from field: required int32 priority = 6;
2513
+ * @generated from field: required uint64 bytes_received = 8;
1644
2514
  */
1645
- priority: number;
2515
+ bytesReceived?: bigint;
2516
+
2517
+ constructor(data?: PartialMessage<DataChannelStats>) {
2518
+ super();
2519
+ proto2.util.initPartial(data, this);
2520
+ }
2521
+
2522
+ static readonly runtime: typeof proto2 = proto2;
2523
+ static readonly typeName = "livekit.proto.DataChannelStats";
2524
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2525
+ { no: 1, name: "label", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2526
+ { no: 2, name: "protocol", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2527
+ { no: 3, name: "data_channel_identifier", kind: "scalar", T: 5 /* ScalarType.INT32 */, req: true },
2528
+ { no: 4, name: "state", kind: "enum", T: proto2.getEnumType(DataChannelState), opt: true },
2529
+ { no: 5, name: "messages_sent", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2530
+ { no: 6, name: "bytes_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2531
+ { no: 7, name: "messages_received", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2532
+ { no: 8, name: "bytes_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2533
+ ]);
2534
+
2535
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): DataChannelStats {
2536
+ return new DataChannelStats().fromBinary(bytes, options);
2537
+ }
2538
+
2539
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): DataChannelStats {
2540
+ return new DataChannelStats().fromJson(jsonValue, options);
2541
+ }
2542
+
2543
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): DataChannelStats {
2544
+ return new DataChannelStats().fromJsonString(jsonString, options);
2545
+ }
2546
+
2547
+ static equals(a: DataChannelStats | PlainMessage<DataChannelStats> | undefined, b: DataChannelStats | PlainMessage<DataChannelStats> | undefined): boolean {
2548
+ return proto2.util.equals(DataChannelStats, a, b);
2549
+ }
2550
+ }
1646
2551
 
2552
+ /**
2553
+ * @generated from message livekit.proto.TransportStats
2554
+ */
2555
+ export class TransportStats extends Message<TransportStats> {
1647
2556
  /**
1648
- * @generated from field: required string url = 7;
2557
+ * @generated from field: required uint64 packets_sent = 1;
1649
2558
  */
1650
- url: string;
2559
+ packetsSent?: bigint;
1651
2560
 
1652
2561
  /**
1653
- * @generated from field: optional livekit.proto.IceServerTransportProtocol relay_protocol = 8;
2562
+ * @generated from field: required uint64 packets_received = 2;
1654
2563
  */
1655
- relayProtocol: IceServerTransportProtocol;
2564
+ packetsReceived?: bigint;
1656
2565
 
1657
2566
  /**
1658
- * @generated from field: required string foundation = 9;
2567
+ * @generated from field: required uint64 bytes_sent = 3;
1659
2568
  */
1660
- foundation: string;
2569
+ bytesSent?: bigint;
1661
2570
 
1662
2571
  /**
1663
- * @generated from field: required string related_address = 10;
2572
+ * @generated from field: required uint64 bytes_received = 4;
1664
2573
  */
1665
- relatedAddress: string;
2574
+ bytesReceived?: bigint;
1666
2575
 
1667
2576
  /**
1668
- * @generated from field: required int32 related_port = 11;
2577
+ * @generated from field: required livekit.proto.IceRole ice_role = 5;
1669
2578
  */
1670
- relatedPort: number;
2579
+ iceRole?: IceRole;
1671
2580
 
1672
2581
  /**
1673
- * @generated from field: required string username_fragment = 12;
2582
+ * @generated from field: required string ice_local_username_fragment = 6;
1674
2583
  */
1675
- usernameFragment: string;
2584
+ iceLocalUsernameFragment?: string;
1676
2585
 
1677
2586
  /**
1678
- * @generated from field: optional livekit.proto.IceTcpCandidateType tcp_type = 13;
2587
+ * @generated from field: optional livekit.proto.DtlsTransportState dtls_state = 7;
1679
2588
  */
1680
- tcpType: IceTcpCandidateType;
1681
- };
1682
-
1683
- /**
1684
- * Describes the message livekit.proto.IceCandidateStats.
1685
- * Use `create(IceCandidateStatsSchema)` to create a new message.
1686
- */
1687
- export const IceCandidateStatsSchema: GenMessage<IceCandidateStats> = /*@__PURE__*/
1688
- messageDesc(file_stats, 18);
2589
+ dtlsState?: DtlsTransportState;
1689
2590
 
1690
- /**
1691
- * @generated from message livekit.proto.CertificateStats
1692
- */
1693
- export type CertificateStats = Message<"livekit.proto.CertificateStats"> & {
1694
2591
  /**
1695
- * @generated from field: required string fingerprint = 1;
2592
+ * @generated from field: optional livekit.proto.IceTransportState ice_state = 8;
1696
2593
  */
1697
- fingerprint: string;
2594
+ iceState?: IceTransportState;
1698
2595
 
1699
2596
  /**
1700
- * @generated from field: required string fingerprint_algorithm = 2;
2597
+ * @generated from field: required string selected_candidate_pair_id = 9;
1701
2598
  */
1702
- fingerprintAlgorithm: string;
2599
+ selectedCandidatePairId?: string;
1703
2600
 
1704
2601
  /**
1705
- * @generated from field: required string base64_certificate = 3;
2602
+ * @generated from field: required string local_certificate_id = 10;
1706
2603
  */
1707
- base64Certificate: string;
2604
+ localCertificateId?: string;
1708
2605
 
1709
2606
  /**
1710
- * @generated from field: required string issuer_certificate_id = 4;
2607
+ * @generated from field: required string remote_certificate_id = 11;
1711
2608
  */
1712
- issuerCertificateId: string;
1713
- };
2609
+ remoteCertificateId?: string;
1714
2610
 
1715
- /**
1716
- * Describes the message livekit.proto.CertificateStats.
1717
- * Use `create(CertificateStatsSchema)` to create a new message.
1718
- */
1719
- export const CertificateStatsSchema: GenMessage<CertificateStats> = /*@__PURE__*/
1720
- messageDesc(file_stats, 19);
2611
+ /**
2612
+ * @generated from field: required string tls_version = 12;
2613
+ */
2614
+ tlsVersion?: string;
1721
2615
 
1722
- /**
1723
- * @generated from enum livekit.proto.DataChannelState
1724
- */
1725
- export enum DataChannelState {
1726
2616
  /**
1727
- * @generated from enum value: DC_CONNECTING = 0;
2617
+ * @generated from field: required string dtls_cipher = 13;
1728
2618
  */
1729
- DC_CONNECTING = 0,
2619
+ dtlsCipher?: string;
1730
2620
 
1731
2621
  /**
1732
- * @generated from enum value: DC_OPEN = 1;
2622
+ * @generated from field: required livekit.proto.DtlsRole dtls_role = 14;
1733
2623
  */
1734
- DC_OPEN = 1,
2624
+ dtlsRole?: DtlsRole;
1735
2625
 
1736
2626
  /**
1737
- * @generated from enum value: DC_CLOSING = 2;
2627
+ * @generated from field: required string srtp_cipher = 15;
1738
2628
  */
1739
- DC_CLOSING = 2,
2629
+ srtpCipher?: string;
1740
2630
 
1741
2631
  /**
1742
- * @generated from enum value: DC_CLOSED = 3;
2632
+ * @generated from field: required uint32 selected_candidate_pair_changes = 16;
1743
2633
  */
1744
- DC_CLOSED = 3,
2634
+ selectedCandidatePairChanges?: number;
2635
+
2636
+ constructor(data?: PartialMessage<TransportStats>) {
2637
+ super();
2638
+ proto2.util.initPartial(data, this);
2639
+ }
2640
+
2641
+ static readonly runtime: typeof proto2 = proto2;
2642
+ static readonly typeName = "livekit.proto.TransportStats";
2643
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2644
+ { no: 1, name: "packets_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2645
+ { no: 2, name: "packets_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2646
+ { no: 3, name: "bytes_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2647
+ { no: 4, name: "bytes_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2648
+ { no: 5, name: "ice_role", kind: "enum", T: proto2.getEnumType(IceRole), req: true },
2649
+ { no: 6, name: "ice_local_username_fragment", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2650
+ { no: 7, name: "dtls_state", kind: "enum", T: proto2.getEnumType(DtlsTransportState), opt: true },
2651
+ { no: 8, name: "ice_state", kind: "enum", T: proto2.getEnumType(IceTransportState), opt: true },
2652
+ { no: 9, name: "selected_candidate_pair_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2653
+ { no: 10, name: "local_certificate_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2654
+ { no: 11, name: "remote_certificate_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2655
+ { no: 12, name: "tls_version", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2656
+ { no: 13, name: "dtls_cipher", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2657
+ { no: 14, name: "dtls_role", kind: "enum", T: proto2.getEnumType(DtlsRole), req: true },
2658
+ { no: 15, name: "srtp_cipher", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2659
+ { no: 16, name: "selected_candidate_pair_changes", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2660
+ ]);
2661
+
2662
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TransportStats {
2663
+ return new TransportStats().fromBinary(bytes, options);
2664
+ }
2665
+
2666
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TransportStats {
2667
+ return new TransportStats().fromJson(jsonValue, options);
2668
+ }
2669
+
2670
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TransportStats {
2671
+ return new TransportStats().fromJsonString(jsonString, options);
2672
+ }
2673
+
2674
+ static equals(a: TransportStats | PlainMessage<TransportStats> | undefined, b: TransportStats | PlainMessage<TransportStats> | undefined): boolean {
2675
+ return proto2.util.equals(TransportStats, a, b);
2676
+ }
1745
2677
  }
1746
2678
 
1747
2679
  /**
1748
- * Describes the enum livekit.proto.DataChannelState.
1749
- */
1750
- export const DataChannelStateSchema: GenEnum<DataChannelState> = /*@__PURE__*/
1751
- enumDesc(file_stats, 0);
1752
-
1753
- /**
1754
- * @generated from enum livekit.proto.QualityLimitationReason
2680
+ * @generated from message livekit.proto.CandidatePairStats
1755
2681
  */
1756
- export enum QualityLimitationReason {
2682
+ export class CandidatePairStats extends Message<CandidatePairStats> {
1757
2683
  /**
1758
- * @generated from enum value: LIMITATION_NONE = 0;
2684
+ * @generated from field: required string transport_id = 1;
1759
2685
  */
1760
- LIMITATION_NONE = 0,
2686
+ transportId?: string;
1761
2687
 
1762
2688
  /**
1763
- * @generated from enum value: LIMITATION_CPU = 1;
2689
+ * @generated from field: required string local_candidate_id = 2;
1764
2690
  */
1765
- LIMITATION_CPU = 1,
2691
+ localCandidateId?: string;
1766
2692
 
1767
2693
  /**
1768
- * @generated from enum value: LIMITATION_BANDWIDTH = 2;
2694
+ * @generated from field: required string remote_candidate_id = 3;
1769
2695
  */
1770
- LIMITATION_BANDWIDTH = 2,
2696
+ remoteCandidateId?: string;
1771
2697
 
1772
2698
  /**
1773
- * @generated from enum value: LIMITATION_OTHER = 3;
2699
+ * @generated from field: optional livekit.proto.IceCandidatePairState state = 4;
1774
2700
  */
1775
- LIMITATION_OTHER = 3,
1776
- }
2701
+ state?: IceCandidatePairState;
1777
2702
 
1778
- /**
1779
- * Describes the enum livekit.proto.QualityLimitationReason.
1780
- */
1781
- export const QualityLimitationReasonSchema: GenEnum<QualityLimitationReason> = /*@__PURE__*/
1782
- enumDesc(file_stats, 1);
2703
+ /**
2704
+ * @generated from field: required bool nominated = 5;
2705
+ */
2706
+ nominated?: boolean;
1783
2707
 
1784
- /**
1785
- * @generated from enum livekit.proto.IceRole
1786
- */
1787
- export enum IceRole {
1788
2708
  /**
1789
- * @generated from enum value: ICE_UNKNOWN = 0;
2709
+ * @generated from field: required uint64 packets_sent = 6;
1790
2710
  */
1791
- ICE_UNKNOWN = 0,
2711
+ packetsSent?: bigint;
1792
2712
 
1793
2713
  /**
1794
- * @generated from enum value: ICE_CONTROLLING = 1;
2714
+ * @generated from field: required uint64 packets_received = 7;
1795
2715
  */
1796
- ICE_CONTROLLING = 1,
2716
+ packetsReceived?: bigint;
1797
2717
 
1798
2718
  /**
1799
- * @generated from enum value: ICE_CONTROLLED = 2;
2719
+ * @generated from field: required uint64 bytes_sent = 8;
1800
2720
  */
1801
- ICE_CONTROLLED = 2,
1802
- }
2721
+ bytesSent?: bigint;
1803
2722
 
1804
- /**
1805
- * Describes the enum livekit.proto.IceRole.
1806
- */
1807
- export const IceRoleSchema: GenEnum<IceRole> = /*@__PURE__*/
1808
- enumDesc(file_stats, 2);
2723
+ /**
2724
+ * @generated from field: required uint64 bytes_received = 9;
2725
+ */
2726
+ bytesReceived?: bigint;
1809
2727
 
1810
- /**
1811
- * @generated from enum livekit.proto.DtlsTransportState
1812
- */
1813
- export enum DtlsTransportState {
1814
2728
  /**
1815
- * @generated from enum value: DTLS_TRANSPORT_NEW = 0;
2729
+ * @generated from field: required double last_packet_sent_timestamp = 10;
1816
2730
  */
1817
- DTLS_TRANSPORT_NEW = 0,
2731
+ lastPacketSentTimestamp?: number;
1818
2732
 
1819
2733
  /**
1820
- * @generated from enum value: DTLS_TRANSPORT_CONNECTING = 1;
2734
+ * @generated from field: required double last_packet_received_timestamp = 11;
1821
2735
  */
1822
- DTLS_TRANSPORT_CONNECTING = 1,
2736
+ lastPacketReceivedTimestamp?: number;
1823
2737
 
1824
2738
  /**
1825
- * @generated from enum value: DTLS_TRANSPORT_CONNECTED = 2;
2739
+ * @generated from field: required double total_round_trip_time = 12;
1826
2740
  */
1827
- DTLS_TRANSPORT_CONNECTED = 2,
2741
+ totalRoundTripTime?: number;
1828
2742
 
1829
2743
  /**
1830
- * @generated from enum value: DTLS_TRANSPORT_CLOSED = 3;
2744
+ * @generated from field: required double current_round_trip_time = 13;
1831
2745
  */
1832
- DTLS_TRANSPORT_CLOSED = 3,
2746
+ currentRoundTripTime?: number;
1833
2747
 
1834
2748
  /**
1835
- * @generated from enum value: DTLS_TRANSPORT_FAILED = 4;
2749
+ * @generated from field: required double available_outgoing_bitrate = 14;
1836
2750
  */
1837
- DTLS_TRANSPORT_FAILED = 4,
1838
- }
2751
+ availableOutgoingBitrate?: number;
1839
2752
 
1840
- /**
1841
- * Describes the enum livekit.proto.DtlsTransportState.
1842
- */
1843
- export const DtlsTransportStateSchema: GenEnum<DtlsTransportState> = /*@__PURE__*/
1844
- enumDesc(file_stats, 3);
2753
+ /**
2754
+ * @generated from field: required double available_incoming_bitrate = 15;
2755
+ */
2756
+ availableIncomingBitrate?: number;
1845
2757
 
1846
- /**
1847
- * @generated from enum livekit.proto.IceTransportState
1848
- */
1849
- export enum IceTransportState {
1850
2758
  /**
1851
- * @generated from enum value: ICE_TRANSPORT_NEW = 0;
2759
+ * @generated from field: required uint64 requests_received = 16;
1852
2760
  */
1853
- ICE_TRANSPORT_NEW = 0,
2761
+ requestsReceived?: bigint;
1854
2762
 
1855
2763
  /**
1856
- * @generated from enum value: ICE_TRANSPORT_CHECKING = 1;
2764
+ * @generated from field: required uint64 requests_sent = 17;
1857
2765
  */
1858
- ICE_TRANSPORT_CHECKING = 1,
2766
+ requestsSent?: bigint;
1859
2767
 
1860
2768
  /**
1861
- * @generated from enum value: ICE_TRANSPORT_CONNECTED = 2;
2769
+ * @generated from field: required uint64 responses_received = 18;
1862
2770
  */
1863
- ICE_TRANSPORT_CONNECTED = 2,
2771
+ responsesReceived?: bigint;
1864
2772
 
1865
2773
  /**
1866
- * @generated from enum value: ICE_TRANSPORT_COMPLETED = 3;
2774
+ * @generated from field: required uint64 responses_sent = 19;
1867
2775
  */
1868
- ICE_TRANSPORT_COMPLETED = 3,
2776
+ responsesSent?: bigint;
1869
2777
 
1870
2778
  /**
1871
- * @generated from enum value: ICE_TRANSPORT_DISCONNECTED = 4;
2779
+ * @generated from field: required uint64 consent_requests_sent = 20;
1872
2780
  */
1873
- ICE_TRANSPORT_DISCONNECTED = 4,
2781
+ consentRequestsSent?: bigint;
1874
2782
 
1875
2783
  /**
1876
- * @generated from enum value: ICE_TRANSPORT_FAILED = 5;
2784
+ * @generated from field: required uint32 packets_discarded_on_send = 21;
1877
2785
  */
1878
- ICE_TRANSPORT_FAILED = 5,
2786
+ packetsDiscardedOnSend?: number;
1879
2787
 
1880
2788
  /**
1881
- * @generated from enum value: ICE_TRANSPORT_CLOSED = 6;
2789
+ * @generated from field: required uint64 bytes_discarded_on_send = 22;
1882
2790
  */
1883
- ICE_TRANSPORT_CLOSED = 6,
2791
+ bytesDiscardedOnSend?: bigint;
2792
+
2793
+ constructor(data?: PartialMessage<CandidatePairStats>) {
2794
+ super();
2795
+ proto2.util.initPartial(data, this);
2796
+ }
2797
+
2798
+ static readonly runtime: typeof proto2 = proto2;
2799
+ static readonly typeName = "livekit.proto.CandidatePairStats";
2800
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2801
+ { no: 1, name: "transport_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2802
+ { no: 2, name: "local_candidate_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2803
+ { no: 3, name: "remote_candidate_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2804
+ { no: 4, name: "state", kind: "enum", T: proto2.getEnumType(IceCandidatePairState), opt: true },
2805
+ { no: 5, name: "nominated", kind: "scalar", T: 8 /* ScalarType.BOOL */, req: true },
2806
+ { no: 6, name: "packets_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2807
+ { no: 7, name: "packets_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2808
+ { no: 8, name: "bytes_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2809
+ { no: 9, name: "bytes_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2810
+ { no: 10, name: "last_packet_sent_timestamp", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2811
+ { no: 11, name: "last_packet_received_timestamp", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2812
+ { no: 12, name: "total_round_trip_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2813
+ { no: 13, name: "current_round_trip_time", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2814
+ { no: 14, name: "available_outgoing_bitrate", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2815
+ { no: 15, name: "available_incoming_bitrate", kind: "scalar", T: 1 /* ScalarType.DOUBLE */, req: true },
2816
+ { no: 16, name: "requests_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2817
+ { no: 17, name: "requests_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2818
+ { no: 18, name: "responses_received", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2819
+ { no: 19, name: "responses_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2820
+ { no: 20, name: "consent_requests_sent", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2821
+ { no: 21, name: "packets_discarded_on_send", kind: "scalar", T: 13 /* ScalarType.UINT32 */, req: true },
2822
+ { no: 22, name: "bytes_discarded_on_send", kind: "scalar", T: 4 /* ScalarType.UINT64 */, req: true },
2823
+ ]);
2824
+
2825
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): CandidatePairStats {
2826
+ return new CandidatePairStats().fromBinary(bytes, options);
2827
+ }
2828
+
2829
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): CandidatePairStats {
2830
+ return new CandidatePairStats().fromJson(jsonValue, options);
2831
+ }
2832
+
2833
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): CandidatePairStats {
2834
+ return new CandidatePairStats().fromJsonString(jsonString, options);
2835
+ }
2836
+
2837
+ static equals(a: CandidatePairStats | PlainMessage<CandidatePairStats> | undefined, b: CandidatePairStats | PlainMessage<CandidatePairStats> | undefined): boolean {
2838
+ return proto2.util.equals(CandidatePairStats, a, b);
2839
+ }
1884
2840
  }
1885
2841
 
1886
2842
  /**
1887
- * Describes the enum livekit.proto.IceTransportState.
1888
- */
1889
- export const IceTransportStateSchema: GenEnum<IceTransportState> = /*@__PURE__*/
1890
- enumDesc(file_stats, 4);
1891
-
1892
- /**
1893
- * @generated from enum livekit.proto.DtlsRole
2843
+ * @generated from message livekit.proto.IceCandidateStats
1894
2844
  */
1895
- export enum DtlsRole {
2845
+ export class IceCandidateStats extends Message<IceCandidateStats> {
1896
2846
  /**
1897
- * @generated from enum value: DTLS_CLIENT = 0;
2847
+ * @generated from field: required string transport_id = 1;
1898
2848
  */
1899
- DTLS_CLIENT = 0,
2849
+ transportId?: string;
1900
2850
 
1901
2851
  /**
1902
- * @generated from enum value: DTLS_SERVER = 1;
2852
+ * @generated from field: required string address = 2;
1903
2853
  */
1904
- DTLS_SERVER = 1,
2854
+ address?: string;
1905
2855
 
1906
2856
  /**
1907
- * @generated from enum value: DTLS_UNKNOWN = 2;
2857
+ * @generated from field: required int32 port = 3;
1908
2858
  */
1909
- DTLS_UNKNOWN = 2,
1910
- }
1911
-
1912
- /**
1913
- * Describes the enum livekit.proto.DtlsRole.
1914
- */
1915
- export const DtlsRoleSchema: GenEnum<DtlsRole> = /*@__PURE__*/
1916
- enumDesc(file_stats, 5);
2859
+ port?: number;
1917
2860
 
1918
- /**
1919
- * @generated from enum livekit.proto.IceCandidatePairState
1920
- */
1921
- export enum IceCandidatePairState {
1922
2861
  /**
1923
- * @generated from enum value: PAIR_FROZEN = 0;
2862
+ * @generated from field: required string protocol = 4;
1924
2863
  */
1925
- PAIR_FROZEN = 0,
2864
+ protocol?: string;
1926
2865
 
1927
2866
  /**
1928
- * @generated from enum value: PAIR_WAITING = 1;
2867
+ * @generated from field: optional livekit.proto.IceCandidateType candidate_type = 5;
1929
2868
  */
1930
- PAIR_WAITING = 1,
2869
+ candidateType?: IceCandidateType;
1931
2870
 
1932
2871
  /**
1933
- * @generated from enum value: PAIR_IN_PROGRESS = 2;
2872
+ * @generated from field: required int32 priority = 6;
1934
2873
  */
1935
- PAIR_IN_PROGRESS = 2,
2874
+ priority?: number;
1936
2875
 
1937
2876
  /**
1938
- * @generated from enum value: PAIR_FAILED = 3;
2877
+ * @generated from field: required string url = 7;
1939
2878
  */
1940
- PAIR_FAILED = 3,
2879
+ url?: string;
1941
2880
 
1942
2881
  /**
1943
- * @generated from enum value: PAIR_SUCCEEDED = 4;
2882
+ * @generated from field: optional livekit.proto.IceServerTransportProtocol relay_protocol = 8;
1944
2883
  */
1945
- PAIR_SUCCEEDED = 4,
1946
- }
2884
+ relayProtocol?: IceServerTransportProtocol;
1947
2885
 
1948
- /**
1949
- * Describes the enum livekit.proto.IceCandidatePairState.
1950
- */
1951
- export const IceCandidatePairStateSchema: GenEnum<IceCandidatePairState> = /*@__PURE__*/
1952
- enumDesc(file_stats, 6);
2886
+ /**
2887
+ * @generated from field: required string foundation = 9;
2888
+ */
2889
+ foundation?: string;
1953
2890
 
1954
- /**
1955
- * @generated from enum livekit.proto.IceCandidateType
1956
- */
1957
- export enum IceCandidateType {
1958
2891
  /**
1959
- * @generated from enum value: HOST = 0;
2892
+ * @generated from field: required string related_address = 10;
1960
2893
  */
1961
- HOST = 0,
2894
+ relatedAddress?: string;
1962
2895
 
1963
2896
  /**
1964
- * @generated from enum value: SRFLX = 1;
2897
+ * @generated from field: required int32 related_port = 11;
1965
2898
  */
1966
- SRFLX = 1,
2899
+ relatedPort?: number;
1967
2900
 
1968
2901
  /**
1969
- * @generated from enum value: PRFLX = 2;
2902
+ * @generated from field: required string username_fragment = 12;
1970
2903
  */
1971
- PRFLX = 2,
2904
+ usernameFragment?: string;
1972
2905
 
1973
2906
  /**
1974
- * @generated from enum value: RELAY = 3;
2907
+ * @generated from field: optional livekit.proto.IceTcpCandidateType tcp_type = 13;
1975
2908
  */
1976
- RELAY = 3,
2909
+ tcpType?: IceTcpCandidateType;
2910
+
2911
+ constructor(data?: PartialMessage<IceCandidateStats>) {
2912
+ super();
2913
+ proto2.util.initPartial(data, this);
2914
+ }
2915
+
2916
+ static readonly runtime: typeof proto2 = proto2;
2917
+ static readonly typeName = "livekit.proto.IceCandidateStats";
2918
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2919
+ { no: 1, name: "transport_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2920
+ { no: 2, name: "address", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2921
+ { no: 3, name: "port", kind: "scalar", T: 5 /* ScalarType.INT32 */, req: true },
2922
+ { no: 4, name: "protocol", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2923
+ { no: 5, name: "candidate_type", kind: "enum", T: proto2.getEnumType(IceCandidateType), opt: true },
2924
+ { no: 6, name: "priority", kind: "scalar", T: 5 /* ScalarType.INT32 */, req: true },
2925
+ { no: 7, name: "url", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2926
+ { no: 8, name: "relay_protocol", kind: "enum", T: proto2.getEnumType(IceServerTransportProtocol), opt: true },
2927
+ { no: 9, name: "foundation", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2928
+ { no: 10, name: "related_address", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2929
+ { no: 11, name: "related_port", kind: "scalar", T: 5 /* ScalarType.INT32 */, req: true },
2930
+ { no: 12, name: "username_fragment", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2931
+ { no: 13, name: "tcp_type", kind: "enum", T: proto2.getEnumType(IceTcpCandidateType), opt: true },
2932
+ ]);
2933
+
2934
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): IceCandidateStats {
2935
+ return new IceCandidateStats().fromBinary(bytes, options);
2936
+ }
2937
+
2938
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): IceCandidateStats {
2939
+ return new IceCandidateStats().fromJson(jsonValue, options);
2940
+ }
2941
+
2942
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): IceCandidateStats {
2943
+ return new IceCandidateStats().fromJsonString(jsonString, options);
2944
+ }
2945
+
2946
+ static equals(a: IceCandidateStats | PlainMessage<IceCandidateStats> | undefined, b: IceCandidateStats | PlainMessage<IceCandidateStats> | undefined): boolean {
2947
+ return proto2.util.equals(IceCandidateStats, a, b);
2948
+ }
1977
2949
  }
1978
2950
 
1979
2951
  /**
1980
- * Describes the enum livekit.proto.IceCandidateType.
2952
+ * @generated from message livekit.proto.CertificateStats
1981
2953
  */
1982
- export const IceCandidateTypeSchema: GenEnum<IceCandidateType> = /*@__PURE__*/
1983
- enumDesc(file_stats, 7);
2954
+ export class CertificateStats extends Message<CertificateStats> {
2955
+ /**
2956
+ * @generated from field: required string fingerprint = 1;
2957
+ */
2958
+ fingerprint?: string;
1984
2959
 
1985
- /**
1986
- * @generated from enum livekit.proto.IceServerTransportProtocol
1987
- */
1988
- export enum IceServerTransportProtocol {
1989
2960
  /**
1990
- * @generated from enum value: TRANSPORT_UDP = 0;
2961
+ * @generated from field: required string fingerprint_algorithm = 2;
1991
2962
  */
1992
- TRANSPORT_UDP = 0,
2963
+ fingerprintAlgorithm?: string;
1993
2964
 
1994
2965
  /**
1995
- * @generated from enum value: TRANSPORT_TCP = 1;
2966
+ * @generated from field: required string base64_certificate = 3;
1996
2967
  */
1997
- TRANSPORT_TCP = 1,
2968
+ base64Certificate?: string;
1998
2969
 
1999
2970
  /**
2000
- * @generated from enum value: TRANSPORT_TLS = 2;
2971
+ * @generated from field: required string issuer_certificate_id = 4;
2001
2972
  */
2002
- TRANSPORT_TLS = 2,
2973
+ issuerCertificateId?: string;
2974
+
2975
+ constructor(data?: PartialMessage<CertificateStats>) {
2976
+ super();
2977
+ proto2.util.initPartial(data, this);
2978
+ }
2979
+
2980
+ static readonly runtime: typeof proto2 = proto2;
2981
+ static readonly typeName = "livekit.proto.CertificateStats";
2982
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
2983
+ { no: 1, name: "fingerprint", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2984
+ { no: 2, name: "fingerprint_algorithm", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2985
+ { no: 3, name: "base64_certificate", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2986
+ { no: 4, name: "issuer_certificate_id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
2987
+ ]);
2988
+
2989
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): CertificateStats {
2990
+ return new CertificateStats().fromBinary(bytes, options);
2991
+ }
2992
+
2993
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): CertificateStats {
2994
+ return new CertificateStats().fromJson(jsonValue, options);
2995
+ }
2996
+
2997
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): CertificateStats {
2998
+ return new CertificateStats().fromJsonString(jsonString, options);
2999
+ }
3000
+
3001
+ static equals(a: CertificateStats | PlainMessage<CertificateStats> | undefined, b: CertificateStats | PlainMessage<CertificateStats> | undefined): boolean {
3002
+ return proto2.util.equals(CertificateStats, a, b);
3003
+ }
2003
3004
  }
2004
3005
 
2005
3006
  /**
2006
- * Describes the enum livekit.proto.IceServerTransportProtocol.
2007
- */
2008
- export const IceServerTransportProtocolSchema: GenEnum<IceServerTransportProtocol> = /*@__PURE__*/
2009
- enumDesc(file_stats, 8);
2010
-
2011
- /**
2012
- * @generated from enum livekit.proto.IceTcpCandidateType
3007
+ * @generated from message livekit.proto.StreamStats
2013
3008
  */
2014
- export enum IceTcpCandidateType {
3009
+ export class StreamStats extends Message<StreamStats> {
2015
3010
  /**
2016
- * @generated from enum value: CANDIDATE_ACTIVE = 0;
3011
+ * @generated from field: required string id = 1;
2017
3012
  */
2018
- CANDIDATE_ACTIVE = 0,
3013
+ id?: string;
2019
3014
 
2020
3015
  /**
2021
- * @generated from enum value: CANDIDATE_PASSIVE = 1;
3016
+ * required int64 timestamp = 3;
3017
+ *
3018
+ * @generated from field: required string stream_identifier = 2;
2022
3019
  */
2023
- CANDIDATE_PASSIVE = 1,
3020
+ streamIdentifier?: string;
2024
3021
 
2025
- /**
2026
- * @generated from enum value: CANDIDATE_SO = 2;
2027
- */
2028
- CANDIDATE_SO = 2,
2029
- }
3022
+ constructor(data?: PartialMessage<StreamStats>) {
3023
+ super();
3024
+ proto2.util.initPartial(data, this);
3025
+ }
2030
3026
 
2031
- /**
2032
- * Describes the enum livekit.proto.IceTcpCandidateType.
2033
- */
2034
- export const IceTcpCandidateTypeSchema: GenEnum<IceTcpCandidateType> = /*@__PURE__*/
2035
- enumDesc(file_stats, 9);
3027
+ static readonly runtime: typeof proto2 = proto2;
3028
+ static readonly typeName = "livekit.proto.StreamStats";
3029
+ static readonly fields: FieldList = proto2.util.newFieldList(() => [
3030
+ { no: 1, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
3031
+ { no: 2, name: "stream_identifier", kind: "scalar", T: 9 /* ScalarType.STRING */, req: true },
3032
+ ]);
3033
+
3034
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): StreamStats {
3035
+ return new StreamStats().fromBinary(bytes, options);
3036
+ }
3037
+
3038
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): StreamStats {
3039
+ return new StreamStats().fromJson(jsonValue, options);
3040
+ }
3041
+
3042
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): StreamStats {
3043
+ return new StreamStats().fromJsonString(jsonString, options);
3044
+ }
3045
+
3046
+ static equals(a: StreamStats | PlainMessage<StreamStats> | undefined, b: StreamStats | PlainMessage<StreamStats> | undefined): boolean {
3047
+ return proto2.util.equals(StreamStats, a, b);
3048
+ }
3049
+ }
2036
3050