livekit-client 2.22.3 → 2.23.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 (272) hide show
  1. package/README.md +35 -0
  2. package/dist/livekit-client.e2ee.worker.js +1 -1
  3. package/dist/livekit-client.e2ee.worker.js.map +1 -1
  4. package/dist/livekit-client.e2ee.worker.mjs +71 -8
  5. package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
  6. package/dist/livekit-client.esm.mjs +1746 -547
  7. package/dist/livekit-client.esm.mjs.map +1 -1
  8. package/dist/livekit-client.fm.worker.js +1 -1
  9. package/dist/livekit-client.fm.worker.js.map +1 -1
  10. package/dist/livekit-client.fm.worker.mjs +2 -1
  11. package/dist/livekit-client.fm.worker.mjs.map +1 -1
  12. package/dist/livekit-client.umd.js +1 -1
  13. package/dist/livekit-client.umd.js.map +1 -1
  14. package/dist/src/api/SignalClient.d.ts +4 -2
  15. package/dist/src/api/SignalClient.d.ts.map +1 -1
  16. package/dist/src/api/WebSocketStream.d.ts +1 -0
  17. package/dist/src/api/WebSocketStream.d.ts.map +1 -1
  18. package/dist/src/api/utils.d.ts +1 -1
  19. package/dist/src/api/utils.d.ts.map +1 -1
  20. package/dist/src/e2ee/E2eeManager.d.ts.map +1 -1
  21. package/dist/src/e2ee/worker/FrameCryptor.d.ts.map +1 -1
  22. package/dist/src/e2ee/worker/naluUtils.d.ts +12 -1
  23. package/dist/src/e2ee/worker/naluUtils.d.ts.map +1 -1
  24. package/dist/src/index.d.ts +2 -2
  25. package/dist/src/index.d.ts.map +1 -1
  26. package/dist/src/options.d.ts +14 -0
  27. package/dist/src/options.d.ts.map +1 -1
  28. package/dist/src/room/DefaultReconnectPolicy.d.ts.map +1 -1
  29. package/dist/src/room/PCTransport.d.ts +100 -7
  30. package/dist/src/room/PCTransport.d.ts.map +1 -1
  31. package/dist/src/room/PCTransportManager.d.ts.map +1 -1
  32. package/dist/src/room/RTCEngine.d.ts +16 -0
  33. package/dist/src/room/RTCEngine.d.ts.map +1 -1
  34. package/dist/src/room/Room.d.ts +54 -1
  35. package/dist/src/room/Room.d.ts.map +1 -1
  36. package/dist/src/room/data-channel/DataChannelManager.d.ts +9 -8
  37. package/dist/src/room/data-channel/DataChannelManager.d.ts.map +1 -1
  38. package/dist/src/room/data-channel/FlowControlledDataChannel.d.ts +25 -12
  39. package/dist/src/room/data-channel/FlowControlledDataChannel.d.ts.map +1 -1
  40. package/dist/src/room/data-channel/LossyDataChannel.d.ts.map +1 -1
  41. package/dist/src/room/data-channel/ReliableDataChannel.d.ts.map +1 -1
  42. package/dist/src/room/data-stream/incoming/IncomingDataStreamManager.d.ts.map +1 -1
  43. package/dist/src/room/defaults.d.ts.map +1 -1
  44. package/dist/src/room/errors.d.ts +18 -0
  45. package/dist/src/room/errors.d.ts.map +1 -1
  46. package/dist/src/room/events.d.ts +3 -2
  47. package/dist/src/room/events.d.ts.map +1 -1
  48. package/dist/src/room/participant/LocalParticipant.d.ts +4 -0
  49. package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
  50. package/dist/src/room/participant/Participant.d.ts +1 -1
  51. package/dist/src/room/participant/Participant.d.ts.map +1 -1
  52. package/dist/src/room/participant/publishUtils.d.ts.map +1 -1
  53. package/dist/src/room/rpc/client/RpcClientManager.d.ts.map +1 -1
  54. package/dist/src/room/rpc/utils.d.ts.map +1 -1
  55. package/dist/src/room/track/LocalAudioTrack.d.ts +24 -1
  56. package/dist/src/room/track/LocalAudioTrack.d.ts.map +1 -1
  57. package/dist/src/room/track/LocalTrack.d.ts +18 -0
  58. package/dist/src/room/track/LocalTrack.d.ts.map +1 -1
  59. package/dist/src/room/track/LocalVideoTrack.d.ts +9 -0
  60. package/dist/src/room/track/LocalVideoTrack.d.ts.map +1 -1
  61. package/dist/src/room/track/RemoteAudioTrack.d.ts +6 -0
  62. package/dist/src/room/track/RemoteAudioTrack.d.ts.map +1 -1
  63. package/dist/src/room/track/processor/types.d.ts +11 -0
  64. package/dist/src/room/track/processor/types.d.ts.map +1 -1
  65. package/dist/src/room/track/utils.d.ts +13 -0
  66. package/dist/src/room/track/utils.d.ts.map +1 -1
  67. package/dist/src/room/utils.d.ts +60 -1
  68. package/dist/src/room/utils.d.ts.map +1 -1
  69. package/dist/src/test/compressionStreamStubs.d.ts +12 -0
  70. package/dist/src/test/compressionStreamStubs.d.ts.map +1 -0
  71. package/dist/ts4.2/api/SignalClient.d.ts +187 -185
  72. package/dist/ts4.2/api/SignalClientStateMachine.d.ts +85 -85
  73. package/dist/ts4.2/api/WebSocketStream.d.ts +34 -33
  74. package/dist/ts4.2/api/utils.d.ts +9 -9
  75. package/dist/ts4.2/connectionHelper/ConnectionCheck.d.ts +30 -30
  76. package/dist/ts4.2/connectionHelper/checks/Checker.d.ts +62 -62
  77. package/dist/ts4.2/connectionHelper/checks/cloudRegion.d.ts +18 -18
  78. package/dist/ts4.2/connectionHelper/checks/connectionProtocol.d.ts +20 -20
  79. package/dist/ts4.2/connectionHelper/checks/publishAudio.d.ts +6 -6
  80. package/dist/ts4.2/connectionHelper/checks/publishVideo.d.ts +7 -7
  81. package/dist/ts4.2/connectionHelper/checks/reconnect.d.ts +6 -6
  82. package/dist/ts4.2/connectionHelper/checks/turn.d.ts +6 -6
  83. package/dist/ts4.2/connectionHelper/checks/webrtc.d.ts +6 -6
  84. package/dist/ts4.2/connectionHelper/checks/websocket.d.ts +6 -6
  85. package/dist/ts4.2/e2ee/E2eeManager.d.ts +111 -111
  86. package/dist/ts4.2/e2ee/KeyProvider.d.ts +54 -54
  87. package/dist/ts4.2/e2ee/constants.d.ts +21 -21
  88. package/dist/ts4.2/e2ee/errors.d.ts +12 -12
  89. package/dist/ts4.2/e2ee/events.d.ts +39 -39
  90. package/dist/ts4.2/e2ee/index.d.ts +6 -6
  91. package/dist/ts4.2/e2ee/types.d.ts +231 -231
  92. package/dist/ts4.2/e2ee/utils.d.ts +32 -32
  93. package/dist/ts4.2/e2ee/worker/DataCryptor.d.ts +16 -16
  94. package/dist/ts4.2/e2ee/worker/ErrorRateLimiter.d.ts +21 -21
  95. package/dist/ts4.2/e2ee/worker/FrameCryptor.d.ts +209 -209
  96. package/dist/ts4.2/e2ee/worker/ParticipantKeyHandler.d.ts +81 -84
  97. package/dist/ts4.2/e2ee/worker/e2ee.worker.d.ts +2 -2
  98. package/dist/ts4.2/e2ee/worker/naluUtils.d.ts +39 -28
  99. package/dist/ts4.2/e2ee/worker/sifPayload.d.ts +23 -23
  100. package/dist/ts4.2/frameMetadata/FrameMetadataManager.d.ts +53 -53
  101. package/dist/ts4.2/frameMetadata/frameMetadata.d.ts +33 -33
  102. package/dist/ts4.2/frameMetadata/types.d.ts +62 -62
  103. package/dist/ts4.2/frameMetadata/utils.d.ts +9 -9
  104. package/dist/ts4.2/frameMetadata/worker/frameMetadata.worker.d.ts +2 -2
  105. package/dist/ts4.2/index.d.ts +76 -76
  106. package/dist/ts4.2/logger.d.ts +66 -66
  107. package/dist/ts4.2/options.d.ts +163 -149
  108. package/dist/ts4.2/room/BackOffStrategy.d.ts +27 -27
  109. package/dist/ts4.2/room/DefaultReconnectPolicy.d.ts +8 -8
  110. package/dist/ts4.2/room/DeviceManager.d.ts +12 -12
  111. package/dist/ts4.2/room/PCTransport.d.ts +268 -175
  112. package/dist/ts4.2/room/PCTransportManager.d.ts +77 -77
  113. package/dist/ts4.2/room/RTCEngine.d.ts +277 -262
  114. package/dist/ts4.2/room/ReconnectPolicy.d.ts +24 -24
  115. package/dist/ts4.2/room/RegionUrlProvider.d.ts +36 -36
  116. package/dist/ts4.2/room/Room.d.ts +407 -365
  117. package/dist/ts4.2/room/attribute-typings.d.ts +35 -35
  118. package/dist/ts4.2/room/data-channel/DataChannelManager.d.ts +63 -62
  119. package/dist/ts4.2/room/data-channel/FlowControlledDataChannel.d.ts +107 -95
  120. package/dist/ts4.2/room/data-channel/LossyDataChannel.d.ts +41 -41
  121. package/dist/ts4.2/room/data-channel/ReliableDataChannel.d.ts +57 -57
  122. package/dist/ts4.2/room/data-channel/types.d.ts +12 -12
  123. package/dist/ts4.2/room/data-stream/compression.d.ts +49 -49
  124. package/dist/ts4.2/room/data-stream/constants.d.ts +18 -18
  125. package/dist/ts4.2/room/data-stream/incoming/IncomingDataStreamManager.d.ts +29 -29
  126. package/dist/ts4.2/room/data-stream/incoming/StreamReader.d.ts +80 -80
  127. package/dist/ts4.2/room/data-stream/outgoing/OutgoingDataStreamManager.d.ts +73 -73
  128. package/dist/ts4.2/room/data-stream/outgoing/StreamWriter.d.ts +16 -16
  129. package/dist/ts4.2/room/data-stream/outgoing/header-utils.d.ts +18 -18
  130. package/dist/ts4.2/room/data-track/LocalDataTrack.d.ts +79 -80
  131. package/dist/ts4.2/room/data-track/RemoteDataTrack.d.ts +50 -50
  132. package/dist/ts4.2/room/data-track/depacketizer.d.ts +59 -59
  133. package/dist/ts4.2/room/data-track/frame.d.ts +22 -22
  134. package/dist/ts4.2/room/data-track/handle.d.ts +27 -27
  135. package/dist/ts4.2/room/data-track/incoming/IncomingDataTrackManager.d.ts +124 -124
  136. package/dist/ts4.2/room/data-track/incoming/errors.d.ts +24 -24
  137. package/dist/ts4.2/room/data-track/incoming/pipeline.d.ts +41 -41
  138. package/dist/ts4.2/room/data-track/incoming/types.d.ts +20 -20
  139. package/dist/ts4.2/room/data-track/outgoing/OutgoingDataTrackManager.d.ts +126 -126
  140. package/dist/ts4.2/room/data-track/outgoing/errors.d.ts +74 -74
  141. package/dist/ts4.2/room/data-track/outgoing/pipeline.d.ts +23 -23
  142. package/dist/ts4.2/room/data-track/outgoing/types.d.ts +48 -48
  143. package/dist/ts4.2/room/data-track/packet/constants.d.ts +20 -20
  144. package/dist/ts4.2/room/data-track/packet/errors.d.ts +40 -40
  145. package/dist/ts4.2/room/data-track/packet/extensions.d.ts +69 -69
  146. package/dist/ts4.2/room/data-track/packet/index.d.ts +98 -98
  147. package/dist/ts4.2/room/data-track/packet/serializable.d.ts +13 -13
  148. package/dist/ts4.2/room/data-track/packetizer.d.ts +43 -43
  149. package/dist/ts4.2/room/data-track/track-interfaces.d.ts +23 -23
  150. package/dist/ts4.2/room/data-track/types.d.ts +22 -22
  151. package/dist/ts4.2/room/data-track/utils.d.ts +60 -60
  152. package/dist/ts4.2/room/debounce.d.ts +11 -11
  153. package/dist/ts4.2/room/defaults.d.ts +9 -9
  154. package/dist/ts4.2/room/errors.d.ts +180 -162
  155. package/dist/ts4.2/room/events.d.ts +638 -637
  156. package/dist/ts4.2/room/participant/LocalParticipant.d.ts +291 -287
  157. package/dist/ts4.2/room/participant/Participant.d.ts +142 -144
  158. package/dist/ts4.2/room/participant/ParticipantTrackPermission.d.ts +26 -26
  159. package/dist/ts4.2/room/participant/RemoteParticipant.d.ts +85 -86
  160. package/dist/ts4.2/room/participant/publishUtils.d.ts +53 -53
  161. package/dist/ts4.2/room/rpc/client/RpcClientManager.d.ts +43 -43
  162. package/dist/ts4.2/room/rpc/client/events.d.ts +8 -8
  163. package/dist/ts4.2/room/rpc/index.d.ts +7 -7
  164. package/dist/ts4.2/room/rpc/server/RpcServerManager.d.ts +44 -44
  165. package/dist/ts4.2/room/rpc/server/events.d.ts +8 -8
  166. package/dist/ts4.2/room/rpc/utils.d.ts +131 -131
  167. package/dist/ts4.2/room/stats.d.ts +71 -71
  168. package/dist/ts4.2/room/statsSummary.d.ts +13 -13
  169. package/dist/ts4.2/room/timers.d.ts +12 -12
  170. package/dist/ts4.2/room/token-source/TokenSource.d.ts +82 -82
  171. package/dist/ts4.2/room/token-source/types.d.ts +70 -70
  172. package/dist/ts4.2/room/token-source/utils.d.ts +8 -8
  173. package/dist/ts4.2/room/track/FrameMetadataExtractor.d.ts +19 -19
  174. package/dist/ts4.2/room/track/LocalAudioTrack.d.ts +62 -42
  175. package/dist/ts4.2/room/track/LocalTrack.d.ts +143 -125
  176. package/dist/ts4.2/room/track/LocalTrackPublication.d.ts +42 -42
  177. package/dist/ts4.2/room/track/LocalVideoTrack.d.ts +109 -100
  178. package/dist/ts4.2/room/track/RemoteAudioTrack.d.ts +61 -55
  179. package/dist/ts4.2/room/track/RemoteTrack.d.ts +38 -38
  180. package/dist/ts4.2/room/track/RemoteTrackPublication.d.ts +72 -75
  181. package/dist/ts4.2/room/track/RemoteVideoTrack.d.ts +73 -76
  182. package/dist/ts4.2/room/track/Track.d.ts +156 -166
  183. package/dist/ts4.2/room/track/TrackPublication.d.ts +75 -81
  184. package/dist/ts4.2/room/track/create.d.ts +25 -25
  185. package/dist/ts4.2/room/track/facingMode.d.ts +41 -41
  186. package/dist/ts4.2/room/track/options.d.ts +403 -403
  187. package/dist/ts4.2/room/track/processor/types.d.ts +42 -31
  188. package/dist/ts4.2/room/track/record.d.ts +13 -13
  189. package/dist/ts4.2/room/track/types.d.ts +28 -28
  190. package/dist/ts4.2/room/track/utils.d.ts +60 -47
  191. package/dist/ts4.2/room/types.d.ts +127 -127
  192. package/dist/ts4.2/room/utils.d.ts +273 -214
  193. package/dist/ts4.2/test/MockMediaStreamTrack.d.ts +26 -26
  194. package/dist/ts4.2/test/compressionStreamStubs.d.ts +12 -0
  195. package/dist/ts4.2/test/mocks.d.ts +12 -12
  196. package/dist/ts4.2/test/promiseState.d.ts +12 -12
  197. package/dist/ts4.2/test/signalToken.d.ts +26 -26
  198. package/dist/ts4.2/type-polyfills/non-shared-typed-arrays.d.ts +2 -2
  199. package/dist/ts4.2/utils/AsyncQueue.d.ts +23 -23
  200. package/dist/ts4.2/utils/TypedPromise.d.ts +17 -17
  201. package/dist/ts4.2/utils/abort-signal-polyfill.d.ts +13 -13
  202. package/dist/ts4.2/utils/browserParser.d.ts +13 -13
  203. package/dist/ts4.2/utils/camelToSnakeCase.d.ts +8 -8
  204. package/dist/ts4.2/utils/cloneDeep.d.ts +2 -2
  205. package/dist/ts4.2/utils/dataPacketBuffer.d.ts +34 -34
  206. package/dist/ts4.2/utils/deferrable-map.d.ts +32 -32
  207. package/dist/ts4.2/utils/machineInspector.d.ts +54 -54
  208. package/dist/ts4.2/utils/serializer.d.ts +48 -48
  209. package/dist/ts4.2/utils/subscribeToEvents.d.ts +15 -15
  210. package/dist/ts4.2/utils/ttlmap.d.ts +20 -20
  211. package/dist/ts4.2/version.d.ts +15 -15
  212. package/package.json +5 -4
  213. package/src/api/SignalClient.e2e.test.ts +1 -3
  214. package/src/api/SignalClient.test.ts +394 -10
  215. package/src/api/SignalClient.ts +132 -76
  216. package/src/api/WebSocketStream.test.ts +11 -0
  217. package/src/api/WebSocketStream.ts +22 -1
  218. package/src/api/utils.ts +1 -1
  219. package/src/e2ee/E2eeManager.test.ts +43 -0
  220. package/src/e2ee/E2eeManager.ts +6 -2
  221. package/src/e2ee/worker/FrameCryptor.test.ts +212 -90
  222. package/src/e2ee/worker/FrameCryptor.ts +21 -4
  223. package/src/e2ee/worker/naluUtils.test.ts +123 -0
  224. package/src/e2ee/worker/naluUtils.ts +57 -2
  225. package/src/index.ts +2 -0
  226. package/src/options.ts +16 -0
  227. package/src/room/DefaultReconnectPolicy.test.ts +58 -0
  228. package/src/room/DefaultReconnectPolicy.ts +14 -2
  229. package/src/room/PCTransport.test.ts +327 -9
  230. package/src/room/PCTransport.ts +339 -36
  231. package/src/room/PCTransportManager.ts +3 -1
  232. package/src/room/RTCEngine.test.ts +318 -2
  233. package/src/room/RTCEngine.ts +126 -12
  234. package/src/room/Room.test.ts +148 -6
  235. package/src/room/Room.ts +312 -80
  236. package/src/room/data-channel/DataChannelManager.test.ts +24 -7
  237. package/src/room/data-channel/DataChannelManager.ts +43 -38
  238. package/src/room/data-channel/FlowControlledDataChannel.test.ts +60 -18
  239. package/src/room/data-channel/FlowControlledDataChannel.ts +40 -22
  240. package/src/room/data-channel/LossyDataChannel.test.ts +38 -0
  241. package/src/room/data-channel/LossyDataChannel.ts +10 -1
  242. package/src/room/data-channel/ReliableDataChannel.test.ts +72 -0
  243. package/src/room/data-channel/ReliableDataChannel.ts +16 -5
  244. package/src/room/data-stream/incoming/IncomingDataStreamManager.test.ts +47 -20
  245. package/src/room/data-stream/incoming/IncomingDataStreamManager.ts +16 -5
  246. package/src/room/data-stream/outgoing/OutgoingDataStreamManager.test.ts +60 -39
  247. package/src/room/data-stream/outgoing/OutgoingDataStreamManager.ts +4 -4
  248. package/src/room/defaults.ts +1 -0
  249. package/src/room/errors.test.ts +36 -0
  250. package/src/room/errors.ts +27 -0
  251. package/src/room/events.ts +2 -1
  252. package/src/room/participant/LocalParticipant.test.ts +136 -1
  253. package/src/room/participant/LocalParticipant.ts +66 -17
  254. package/src/room/participant/Participant.ts +6 -3
  255. package/src/room/participant/publishUtils.ts +0 -19
  256. package/src/room/participant/restartOnDefaultAudioDevice.test.ts +177 -0
  257. package/src/room/rpc/client/RpcClientManager.test.ts +51 -0
  258. package/src/room/rpc/client/RpcClientManager.ts +32 -15
  259. package/src/room/rpc/utils.test.ts +32 -0
  260. package/src/room/rpc/utils.ts +7 -0
  261. package/src/room/track/LocalAudioTrack.ts +101 -10
  262. package/src/room/track/LocalTrack.ts +87 -19
  263. package/src/room/track/LocalVideoTrack.ts +17 -3
  264. package/src/room/track/RemoteAudioTrack.ts +59 -14
  265. package/src/room/track/RemoteVideoTrack.test.ts +210 -0
  266. package/src/room/track/RemoteVideoTrack.ts +29 -3
  267. package/src/room/track/processor/types.ts +11 -0
  268. package/src/room/track/utils.test.ts +206 -2
  269. package/src/room/track/utils.ts +117 -5
  270. package/src/room/utils.test.ts +250 -0
  271. package/src/room/utils.ts +152 -19
  272. package/src/test/compressionStreamStubs.ts +53 -0
@@ -1,13 +1,13 @@
1
- /** one summarised stats entry; keys without a value are dropped */
2
- type Summary = Record<string, unknown>;
3
- /**
4
- * Picks the interesting fields out of a `getStats()` report and groups them by
5
- * RTP stream, so a stats dump can be read without unfolding the raw report.
6
- */
7
- export declare function summarizeStatsReport(report: RTCStatsReport): {
8
- connection: Summary | undefined;
9
- outbound: Summary[] | undefined;
10
- inbound: Summary[] | undefined;
11
- };
12
- export {};
13
- //# sourceMappingURL=statsSummary.d.ts.map
1
+ /** one summarised stats entry; keys without a value are dropped */
2
+ type Summary = Record<string, unknown>;
3
+ /**
4
+ * Picks the interesting fields out of a `getStats()` report and groups them by
5
+ * RTP stream, so a stats dump can be read without unfolding the raw report.
6
+ */
7
+ export declare function summarizeStatsReport(report: RTCStatsReport): {
8
+ connection: Summary | undefined;
9
+ outbound: Summary[] | undefined;
10
+ inbound: Summary[] | undefined;
11
+ };
12
+ export {};
13
+ //# sourceMappingURL=statsSummary.d.ts.map
@@ -1,12 +1,12 @@
1
- /**
2
- * Timers that can be overridden with platform specific implementations
3
- * that ensure that they are fired. These should be used when it is critical
4
- * that the timer fires on time.
5
- */
6
- export default class CriticalTimers {
7
- static setTimeout: (...args: Parameters<typeof setTimeout>) => ReturnType<typeof setTimeout>;
8
- static setInterval: (...args: Parameters<typeof setInterval>) => ReturnType<typeof setInterval>;
9
- static clearTimeout: (...args: Parameters<typeof clearTimeout>) => ReturnType<typeof clearTimeout>;
10
- static clearInterval: (...args: Parameters<typeof clearInterval>) => ReturnType<typeof clearInterval>;
11
- }
12
- //# sourceMappingURL=timers.d.ts.map
1
+ /**
2
+ * Timers that can be overridden with platform specific implementations
3
+ * that ensure that they are fired. These should be used when it is critical
4
+ * that the timer fires on time.
5
+ */
6
+ export default class CriticalTimers {
7
+ static setTimeout: (...args: Parameters<typeof setTimeout>) => ReturnType<typeof setTimeout>;
8
+ static setInterval: (...args: Parameters<typeof setInterval>) => ReturnType<typeof setInterval>;
9
+ static clearTimeout: (...args: Parameters<typeof clearTimeout>) => ReturnType<typeof clearTimeout>;
10
+ static clearInterval: (...args: Parameters<typeof clearInterval>) => ReturnType<typeof clearInterval>;
11
+ }
12
+ //# sourceMappingURL=timers.d.ts.map
@@ -1,82 +1,82 @@
1
- import { TokenSourceResponse } from '@livekit/protocol';
2
- import type { TokenSourceFetchOptions, TokenSourceResponseObject } from './types';
3
- import { TokenSourceConfigurable, TokenSourceFixed } from './types';
4
- import { areTokenSourceFetchOptionsEqual, decodeTokenPayload } from './utils';
5
- /** A TokenSourceCached is a TokenSource which caches the last {@link TokenSourceResponseObject} value and returns it
6
- * until a) it expires or b) the {@link TokenSourceFetchOptions} provided to .fetch(...) change. */
7
- declare abstract class TokenSourceCached extends TokenSourceConfigurable {
8
- private cachedFetchOptions;
9
- private cachedResponse;
10
- private fetchMutex;
11
- private isSameAsCachedFetchOptions;
12
- private shouldReturnCachedValueFromFetch;
13
- getCachedResponseJwtPayload(): import("./types").TokenPayload | null;
14
- fetch(options: TokenSourceFetchOptions, force?: boolean): Promise<TokenSourceResponseObject>;
15
- protected abstract update(options: TokenSourceFetchOptions): Promise<TokenSourceResponse>;
16
- }
17
- type LiteralOrFn = TokenSourceResponseObject | (() => TokenSourceResponseObject | Promise<TokenSourceResponseObject>);
18
- declare class TokenSourceLiteral extends TokenSourceFixed {
19
- private literalOrFn;
20
- constructor(literalOrFn: LiteralOrFn);
21
- fetch(): Promise<TokenSourceResponseObject>;
22
- }
23
- type CustomFn = (options: TokenSourceFetchOptions) => TokenSourceResponseObject | Promise<TokenSourceResponseObject>;
24
- declare class TokenSourceCustom extends TokenSourceCached {
25
- private customFn;
26
- constructor(customFn: CustomFn);
27
- protected update(options: TokenSourceFetchOptions): Promise<TokenSourceResponse>;
28
- }
29
- export type EndpointOptions = Omit<RequestInit, 'body'>;
30
- declare class TokenSourceEndpoint extends TokenSourceCached {
31
- private url;
32
- private endpointOptions;
33
- constructor(url: string, options?: EndpointOptions);
34
- private createRequestFromOptions;
35
- protected update(options: TokenSourceFetchOptions): Promise<TokenSourceResponse>;
36
- }
37
- export type DevelopmentTokenServerOptions = {
38
- baseUrl?: string;
39
- };
40
- declare class TokenSourceDevelopmentTokenServer extends TokenSourceEndpoint {
41
- constructor(tokenServerId: string, options: DevelopmentTokenServerOptions);
42
- }
43
- /** @deprecated use {@link DevelopmentTokenServerOptions} instead */
44
- export type SandboxTokenServerOptions = DevelopmentTokenServerOptions;
45
- /** @deprecated Use {@link TokenSourceDevelopmentTokenServer} instead */
46
- declare class TokenSourceSandboxTokenServer extends TokenSourceDevelopmentTokenServer {
47
- }
48
- export type { TokenSourceLiteral, TokenSourceCustom, TokenSourceEndpoint, TokenSourceSandboxTokenServer, TokenSourceDevelopmentTokenServer };
49
- export { decodeTokenPayload, areTokenSourceFetchOptionsEqual };
50
- export declare const TokenSource: {
51
- /** TokenSource.literal contains a single, literal set of {@link TokenSourceResponseObject}
52
- * credentials, either provided directly or returned from a provided function. */
53
- literal(literalOrFn: LiteralOrFn): TokenSourceLiteral;
54
- /**
55
- * TokenSource.custom allows a user to define a manual function which generates new
56
- * {@link TokenSourceResponseObject} values on demand.
57
- *
58
- * Use this to get credentials from custom backends / etc.
59
- */
60
- custom(customFn: CustomFn): TokenSourceCustom;
61
- /**
62
- * TokenSource.endpoint creates a token source that fetches credentials from a given URL using
63
- * the standard endpoint format:
64
- * @see https://docs.livekit.io/frontends/build/authentication/endpoint/
65
- */
66
- endpoint(url: string, options?: EndpointOptions): TokenSourceEndpoint;
67
- /**
68
- * @deprecated Use {@link TokenSource.developmentTokenServer} instead
69
- */
70
- sandboxTokenServer(sandboxId: string, options?: SandboxTokenServerOptions): TokenSourceSandboxTokenServer;
71
- /**
72
- * TokenSource.developmentTokenServer queries a development token server for credentials,
73
- * which supports quick prototyping / getting started types of use cases.
74
- *
75
- * This token provider is INSECURE and should NOT be used in production.
76
- *
77
- * For more info:
78
- * @see https://docs.livekit.io/frontends/build/authentication/sandbox-token-server/
79
- */
80
- developmentTokenServer(tokenServerId: string, options?: DevelopmentTokenServerOptions): TokenSourceDevelopmentTokenServer;
81
- };
82
- //# sourceMappingURL=TokenSource.d.ts.map
1
+ import { TokenSourceResponse } from '@livekit/protocol';
2
+ import type { TokenSourceFetchOptions, TokenSourceResponseObject } from './types';
3
+ import { TokenSourceConfigurable, TokenSourceFixed } from './types';
4
+ import { areTokenSourceFetchOptionsEqual, decodeTokenPayload } from './utils';
5
+ /** A TokenSourceCached is a TokenSource which caches the last {@link TokenSourceResponseObject} value and returns it
6
+ * until a) it expires or b) the {@link TokenSourceFetchOptions} provided to .fetch(...) change. */
7
+ declare abstract class TokenSourceCached extends TokenSourceConfigurable {
8
+ private cachedFetchOptions;
9
+ private cachedResponse;
10
+ private fetchMutex;
11
+ private isSameAsCachedFetchOptions;
12
+ private shouldReturnCachedValueFromFetch;
13
+ getCachedResponseJwtPayload(): import("./types").TokenPayload | null;
14
+ fetch(options: TokenSourceFetchOptions, force?: boolean): Promise<TokenSourceResponseObject>;
15
+ protected abstract update(options: TokenSourceFetchOptions): Promise<TokenSourceResponse>;
16
+ }
17
+ type LiteralOrFn = TokenSourceResponseObject | (() => TokenSourceResponseObject | Promise<TokenSourceResponseObject>);
18
+ declare class TokenSourceLiteral extends TokenSourceFixed {
19
+ private literalOrFn;
20
+ constructor(literalOrFn: LiteralOrFn);
21
+ fetch(): Promise<TokenSourceResponseObject>;
22
+ }
23
+ type CustomFn = (options: TokenSourceFetchOptions) => TokenSourceResponseObject | Promise<TokenSourceResponseObject>;
24
+ declare class TokenSourceCustom extends TokenSourceCached {
25
+ private customFn;
26
+ constructor(customFn: CustomFn);
27
+ protected update(options: TokenSourceFetchOptions): Promise<TokenSourceResponse>;
28
+ }
29
+ export type EndpointOptions = Omit<RequestInit, 'body'>;
30
+ declare class TokenSourceEndpoint extends TokenSourceCached {
31
+ private url;
32
+ private endpointOptions;
33
+ constructor(url: string, options?: EndpointOptions);
34
+ private createRequestFromOptions;
35
+ protected update(options: TokenSourceFetchOptions): Promise<TokenSourceResponse>;
36
+ }
37
+ export type DevelopmentTokenServerOptions = {
38
+ baseUrl?: string;
39
+ };
40
+ declare class TokenSourceDevelopmentTokenServer extends TokenSourceEndpoint {
41
+ constructor(tokenServerId: string, options: DevelopmentTokenServerOptions);
42
+ }
43
+ /** @deprecated use {@link DevelopmentTokenServerOptions} instead */
44
+ export type SandboxTokenServerOptions = DevelopmentTokenServerOptions;
45
+ /** @deprecated Use {@link TokenSourceDevelopmentTokenServer} instead */
46
+ declare class TokenSourceSandboxTokenServer extends TokenSourceDevelopmentTokenServer {
47
+ }
48
+ export type { TokenSourceLiteral, TokenSourceCustom, TokenSourceEndpoint, TokenSourceSandboxTokenServer, TokenSourceDevelopmentTokenServer };
49
+ export { decodeTokenPayload, areTokenSourceFetchOptionsEqual };
50
+ export declare const TokenSource: {
51
+ /** TokenSource.literal contains a single, literal set of {@link TokenSourceResponseObject}
52
+ * credentials, either provided directly or returned from a provided function. */
53
+ literal(literalOrFn: LiteralOrFn): TokenSourceLiteral;
54
+ /**
55
+ * TokenSource.custom allows a user to define a manual function which generates new
56
+ * {@link TokenSourceResponseObject} values on demand.
57
+ *
58
+ * Use this to get credentials from custom backends / etc.
59
+ */
60
+ custom(customFn: CustomFn): TokenSourceCustom;
61
+ /**
62
+ * TokenSource.endpoint creates a token source that fetches credentials from a given URL using
63
+ * the standard endpoint format:
64
+ * @see https://docs.livekit.io/frontends/build/authentication/endpoint/
65
+ */
66
+ endpoint(url: string, options?: EndpointOptions): TokenSourceEndpoint;
67
+ /**
68
+ * @deprecated Use {@link TokenSource.developmentTokenServer} instead
69
+ */
70
+ sandboxTokenServer(sandboxId: string, options?: SandboxTokenServerOptions): TokenSourceSandboxTokenServer;
71
+ /**
72
+ * TokenSource.developmentTokenServer queries a development token server for credentials,
73
+ * which supports quick prototyping / getting started types of use cases.
74
+ *
75
+ * This token provider is INSECURE and should NOT be used in production.
76
+ *
77
+ * For more info:
78
+ * @see https://docs.livekit.io/frontends/build/authentication/sandbox-token-server/
79
+ */
80
+ developmentTokenServer(tokenServerId: string, options?: DevelopmentTokenServerOptions): TokenSourceDevelopmentTokenServer;
81
+ };
82
+ //# sourceMappingURL=TokenSource.d.ts.map
@@ -1,70 +1,70 @@
1
- import { RoomConfiguration, TokenSourceRequest, TokenSourceResponse } from '@livekit/protocol';
2
- import type { JWTPayload } from 'jose';
3
- import type { ValueToSnakeCase } from '../../utils/camelToSnakeCase';
4
- export type TokenSourceRequestObject = Required<NonNullable<ConstructorParameters<typeof TokenSourceRequest>[0]>>;
5
- export type TokenSourceResponseObject = Required<NonNullable<ConstructorParameters<typeof TokenSourceResponse>[0]>>;
6
- /** The `TokenSource` request object sent to the server as part of fetching a configurable
7
- * `TokenSource` like {@link TokenSourceEndpoint}.
8
- *
9
- * Use this as a type for your request body if implementing a server endpoint in node.js.
10
- */
11
- export type TokenSourceRequestPayload = ValueToSnakeCase<TokenSourceRequestObject>;
12
- /** The `TokenSource` response object sent from the server as part of fetching a configurable
13
- * `TokenSource` like {@link TokenSourceEndpoint}.
14
- *
15
- * Use this as a type for your response body if implementing a server endpoint in node.js.
16
- */
17
- export type TokenSourceResponsePayload = ValueToSnakeCase<TokenSourceResponseObject>;
18
- /** The payload of a LiveKit JWT token. */
19
- export type TokenPayload = JWTPayload & {
20
- name?: string;
21
- metadata?: string;
22
- attributes?: Record<string, string>;
23
- video?: {
24
- room?: string;
25
- roomJoin?: boolean;
26
- canPublish?: boolean;
27
- canPublishData?: boolean;
28
- canSubscribe?: boolean;
29
- };
30
- roomConfig?: RoomConfigurationObject;
31
- };
32
- export type RoomConfigurationObject = NonNullable<ConstructorParameters<typeof RoomConfiguration>[0]>;
33
- /** A Fixed TokenSource is a token source that takes no parameters and returns a completely
34
- * independently derived value on each fetch() call.
35
- *
36
- * The most common downstream implementer is {@link TokenSourceLiteral}.
37
- */
38
- export declare abstract class TokenSourceFixed {
39
- abstract fetch(): Promise<TokenSourceResponseObject>;
40
- }
41
- export type TokenSourceFetchOptions = {
42
- roomName?: string;
43
- participantName?: string;
44
- participantIdentity?: string;
45
- participantMetadata?: string;
46
- participantAttributes?: {
47
- [key: string]: string;
48
- };
49
- agentName?: string;
50
- agentMetadata?: string;
51
- deployment?: string;
52
- };
53
- /** A Configurable TokenSource is a token source that takes a
54
- * {@link TokenSourceFetchOptions} object as input and returns a deterministic
55
- * {@link TokenSourceResponseObject} output based on the options specified.
56
- *
57
- * For example, if options.participantName is set, it should be expected that
58
- * all tokens that are generated will have participant name field set to the
59
- * provided value.
60
- *
61
- * A few common downstream implementers are {@link TokenSourceEndpoint}
62
- * and {@link TokenSourceCustom}.
63
- */
64
- export declare abstract class TokenSourceConfigurable {
65
- abstract fetch(options: TokenSourceFetchOptions): Promise<TokenSourceResponseObject>;
66
- abstract fetch(options: TokenSourceFetchOptions, force?: boolean): Promise<TokenSourceResponseObject>;
67
- }
68
- /** A TokenSource is a mechanism for fetching credentials required to connect to a LiveKit Room. */
69
- export type TokenSourceBase = TokenSourceFixed | TokenSourceConfigurable;
70
- //# sourceMappingURL=types.d.ts.map
1
+ import { RoomConfiguration, TokenSourceRequest, TokenSourceResponse } from '@livekit/protocol';
2
+ import type { JWTPayload } from 'jose';
3
+ import type { ValueToSnakeCase } from '../../utils/camelToSnakeCase';
4
+ export type TokenSourceRequestObject = Required<NonNullable<ConstructorParameters<typeof TokenSourceRequest>[0]>>;
5
+ export type TokenSourceResponseObject = Required<NonNullable<ConstructorParameters<typeof TokenSourceResponse>[0]>>;
6
+ /** The `TokenSource` request object sent to the server as part of fetching a configurable
7
+ * `TokenSource` like {@link TokenSourceEndpoint}.
8
+ *
9
+ * Use this as a type for your request body if implementing a server endpoint in node.js.
10
+ */
11
+ export type TokenSourceRequestPayload = ValueToSnakeCase<TokenSourceRequestObject>;
12
+ /** The `TokenSource` response object sent from the server as part of fetching a configurable
13
+ * `TokenSource` like {@link TokenSourceEndpoint}.
14
+ *
15
+ * Use this as a type for your response body if implementing a server endpoint in node.js.
16
+ */
17
+ export type TokenSourceResponsePayload = ValueToSnakeCase<TokenSourceResponseObject>;
18
+ /** The payload of a LiveKit JWT token. */
19
+ export type TokenPayload = JWTPayload & {
20
+ name?: string;
21
+ metadata?: string;
22
+ attributes?: Record<string, string>;
23
+ video?: {
24
+ room?: string;
25
+ roomJoin?: boolean;
26
+ canPublish?: boolean;
27
+ canPublishData?: boolean;
28
+ canSubscribe?: boolean;
29
+ };
30
+ roomConfig?: RoomConfigurationObject;
31
+ };
32
+ export type RoomConfigurationObject = NonNullable<ConstructorParameters<typeof RoomConfiguration>[0]>;
33
+ /** A Fixed TokenSource is a token source that takes no parameters and returns a completely
34
+ * independently derived value on each fetch() call.
35
+ *
36
+ * The most common downstream implementer is {@link TokenSourceLiteral}.
37
+ */
38
+ export declare abstract class TokenSourceFixed {
39
+ abstract fetch(): Promise<TokenSourceResponseObject>;
40
+ }
41
+ export type TokenSourceFetchOptions = {
42
+ roomName?: string;
43
+ participantName?: string;
44
+ participantIdentity?: string;
45
+ participantMetadata?: string;
46
+ participantAttributes?: {
47
+ [key: string]: string;
48
+ };
49
+ agentName?: string;
50
+ agentMetadata?: string;
51
+ deployment?: string;
52
+ };
53
+ /** A Configurable TokenSource is a token source that takes a
54
+ * {@link TokenSourceFetchOptions} object as input and returns a deterministic
55
+ * {@link TokenSourceResponseObject} output based on the options specified.
56
+ *
57
+ * For example, if options.participantName is set, it should be expected that
58
+ * all tokens that are generated will have participant name field set to the
59
+ * provided value.
60
+ *
61
+ * A few common downstream implementers are {@link TokenSourceEndpoint}
62
+ * and {@link TokenSourceCustom}.
63
+ */
64
+ export declare abstract class TokenSourceConfigurable {
65
+ abstract fetch(options: TokenSourceFetchOptions): Promise<TokenSourceResponseObject>;
66
+ abstract fetch(options: TokenSourceFetchOptions, force?: boolean): Promise<TokenSourceResponseObject>;
67
+ }
68
+ /** A TokenSource is a mechanism for fetching credentials required to connect to a LiveKit Room. */
69
+ export type TokenSourceBase = TokenSourceFixed | TokenSourceConfigurable;
70
+ //# sourceMappingURL=types.d.ts.map
@@ -1,8 +1,8 @@
1
- import type { TokenSourceResponse } from '@livekit/protocol';
2
- import type { TokenPayload, TokenSourceFetchOptions } from './types';
3
- export declare function isResponseTokenValid(response: TokenSourceResponse): boolean;
4
- /** Given a LiveKit generated participant token, decodes and returns the associated {@link TokenPayload} data. */
5
- export declare function decodeTokenPayload(token: string): TokenPayload;
6
- /** Given two TokenSourceFetchOptions values, check to see if they are deep equal. */
7
- export declare function areTokenSourceFetchOptionsEqual(a: TokenSourceFetchOptions, b: TokenSourceFetchOptions): boolean;
8
- //# sourceMappingURL=utils.d.ts.map
1
+ import type { TokenSourceResponse } from '@livekit/protocol';
2
+ import type { TokenPayload, TokenSourceFetchOptions } from './types';
3
+ export declare function isResponseTokenValid(response: TokenSourceResponse): boolean;
4
+ /** Given a LiveKit generated participant token, decodes and returns the associated {@link TokenPayload} data. */
5
+ export declare function decodeTokenPayload(token: string): TokenPayload;
6
+ /** Given two TokenSourceFetchOptions values, check to see if they are deep equal. */
7
+ export declare function areTokenSourceFetchOptionsEqual(a: TokenSourceFetchOptions, b: TokenSourceFetchOptions): boolean;
8
+ //# sourceMappingURL=utils.d.ts.map
@@ -1,19 +1,19 @@
1
- import type { FrameMetadata } from '../../frameMetadata/types';
2
- /**
3
- * Caches frame metadata extracted from received video frames,
4
- * keyed by RTP timestamp so it can be looked up when the frame is displayed.
5
- *
6
- * Metadata is populated either by the frame metadata worker managed by
7
- * `FrameMetadataManager` (non-E2EE) or by the E2EE FrameCryptor worker
8
- * after decryption (E2EE).
9
- *
10
- * @experimental
11
- */
12
- export declare class FrameMetadataExtractor {
13
- private metadataMap;
14
- private activeSsrc;
15
- storeMetadata(rtpTimestamp: number, ssrc: number, metadata: FrameMetadata): void;
16
- lookupMetadata(rtpTimestamp: number): FrameMetadata | undefined;
17
- dispose(): void;
18
- }
19
- //# sourceMappingURL=FrameMetadataExtractor.d.ts.map
1
+ import type { FrameMetadata } from '../../frameMetadata/types';
2
+ /**
3
+ * Caches frame metadata extracted from received video frames,
4
+ * keyed by RTP timestamp so it can be looked up when the frame is displayed.
5
+ *
6
+ * Metadata is populated either by the frame metadata worker managed by
7
+ * `FrameMetadataManager` (non-E2EE) or by the E2EE FrameCryptor worker
8
+ * after decryption (E2EE).
9
+ *
10
+ * @experimental
11
+ */
12
+ export declare class FrameMetadataExtractor {
13
+ private metadataMap;
14
+ private activeSsrc;
15
+ storeMetadata(rtpTimestamp: number, ssrc: number, metadata: FrameMetadata): void;
16
+ lookupMetadata(rtpTimestamp: number): FrameMetadata | undefined;
17
+ dispose(): void;
18
+ }
19
+ //# sourceMappingURL=FrameMetadataExtractor.d.ts.map
@@ -1,42 +1,62 @@
1
- import type { AudioSenderStats } from '../stats';
2
- import type { LoggerOptions } from '../types';
3
- import LocalTrack from './LocalTrack';
4
- import { Track } from './Track';
5
- import type { AudioCaptureOptions } from './options';
6
- import type { AudioProcessorOptions, TrackProcessor } from './processor/types';
7
- export default class LocalAudioTrack extends LocalTrack<Track.Kind.Audio> {
8
- /** @internal */
9
- stopOnMute: boolean;
10
- private prevStats?;
11
- private isKrispNoiseFilterEnabled;
12
- protected processor?: TrackProcessor<Track.Kind.Audio, AudioProcessorOptions> | undefined;
13
- /**
14
- * boolean indicating whether enhanced noise cancellation is currently being used on this track
15
- */
16
- get enhancedNoiseCancellation(): boolean;
17
- /**
18
- *
19
- * @param mediaTrack
20
- * @param constraints MediaTrackConstraints that are being used when restarting or reacquiring tracks
21
- * @param userProvidedTrack Signals to the SDK whether or not the mediaTrack should be managed (i.e. released and reacquired) internally by the SDK
22
- */
23
- constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints, userProvidedTrack?: boolean, audioContext?: AudioContext, loggerOptions?: LoggerOptions);
24
- mute(): Promise<typeof this>;
25
- unmute(): Promise<typeof this>;
26
- restartTrack(options?: AudioCaptureOptions): Promise<void>;
27
- applyConstraints(constraints: Pick<AudioCaptureOptions, 'autoGainControl' | 'noiseSuppression' | 'echoCancellation' | 'voiceIsolation'>): Promise<void>;
28
- protected restart(constraints?: MediaTrackConstraints, isUnmuting?: boolean): Promise<typeof this>;
29
- startMonitor(): void;
30
- protected monitorSender: () => Promise<void>;
31
- private handleKrispNoiseFilterEnable;
32
- private handleKrispNoiseFilterDisable;
33
- setProcessor(processor: TrackProcessor<Track.Kind.Audio, AudioProcessorOptions>): Promise<void>;
34
- /**
35
- * @internal
36
- * @experimental
37
- */
38
- setAudioContext(audioContext: AudioContext | undefined): void;
39
- getSenderStats(): Promise<AudioSenderStats | undefined>;
40
- checkForSilence(): Promise<boolean>;
41
- }
42
- //# sourceMappingURL=LocalAudioTrack.d.ts.map
1
+ import type { AudioSenderStats } from '../stats';
2
+ import type { LoggerOptions } from '../types';
3
+ import LocalTrack from './LocalTrack';
4
+ import { Track } from './Track';
5
+ import type { AudioCaptureOptions } from './options';
6
+ import type { AudioProcessorOptions, TrackProcessor } from './processor/types';
7
+ export default class LocalAudioTrack extends LocalTrack<Track.Kind.Audio> {
8
+ /** @internal */
9
+ stopOnMute: boolean;
10
+ private prevStats?;
11
+ private isKrispNoiseFilterEnabled;
12
+ /**
13
+ * the processed track we currently have krisp feature listeners registered on. Tracked
14
+ * separately, as `processor.processedTrack` can be swapped out while we hold the listeners.
15
+ */
16
+ private observedProcessedTrack?;
17
+ protected processor?: TrackProcessor<Track.Kind.Audio, AudioProcessorOptions> | undefined;
18
+ get enhancedNoiseCancellation(): boolean;
19
+ /**
20
+ *
21
+ * @param mediaTrack
22
+ * @param constraints MediaTrackConstraints that are being used when restarting or reacquiring tracks
23
+ * @param userProvidedTrack Signals to the SDK whether or not the mediaTrack should be managed (i.e. released and reacquired) internally by the SDK
24
+ */
25
+ constructor(mediaTrack: MediaStreamTrack, constraints?: MediaTrackConstraints, userProvidedTrack?: boolean, audioContext?: AudioContext, loggerOptions?: LoggerOptions);
26
+ mute(): Promise<typeof this>;
27
+ unmute(): Promise<typeof this>;
28
+ restartTrack(options?: AudioCaptureOptions): Promise<void>;
29
+ applyConstraints(constraints: Pick<AudioCaptureOptions, 'autoGainControl' | 'noiseSuppression' | 'echoCancellation' | 'voiceIsolation'>): Promise<void>;
30
+ protected restart(constraints?: MediaTrackConstraints, isUnmuting?: boolean): Promise<typeof this>;
31
+ startMonitor(): void;
32
+ protected monitorSender: () => Promise<void>;
33
+ private handleKrispNoiseFilterEnable;
34
+ private handleKrispNoiseFilterDisable;
35
+ /**
36
+ * registers the krisp feature listeners on the given processed track, moving them over from
37
+ * a previously observed one. Passing `undefined` just removes the existing listeners.
38
+ */
39
+ private observeProcessedTrack;
40
+ /**
41
+ * Sets a processor on this track.
42
+ *
43
+ * The processor is destroyed when the track is stopped, and also when the audio context goes
44
+ * away, so a disconnect ends it on both counts and it has to be set again after reconnecting.
45
+ * See {@link TrackProcessor} for the full lifecycle.
46
+ */
47
+ setProcessor(processor: TrackProcessor<Track.Kind.Audio, AudioProcessorOptions>): Promise<void>;
48
+ protected onMediaStreamTrackChanged(): Promise<void>;
49
+ protected internalStopProcessor(keepElement?: boolean): Promise<void>;
50
+ stop(): void;
51
+ /**
52
+ * @internal
53
+ * @experimental
54
+ *
55
+ * A processor's nodes (`AudioWorkletNode`, ...) can't move between contexts, so the processor
56
+ * is rebuilt whenever the context changes and torn down when there is none left to run in.
57
+ */
58
+ setAudioContext(audioContext: AudioContext | undefined): Promise<void>;
59
+ getSenderStats(): Promise<AudioSenderStats | undefined>;
60
+ checkForSilence(): Promise<boolean>;
61
+ }
62
+ //# sourceMappingURL=LocalAudioTrack.d.ts.map