livekit-client 2.18.0 → 2.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/dist/livekit-client.e2ee.worker.js +1 -1
  2. package/dist/livekit-client.e2ee.worker.js.map +1 -1
  3. package/dist/livekit-client.e2ee.worker.mjs +8 -7
  4. package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
  5. package/dist/livekit-client.esm.mjs +7832 -5799
  6. package/dist/livekit-client.esm.mjs.map +1 -1
  7. package/dist/livekit-client.umd.js +1 -1
  8. package/dist/livekit-client.umd.js.map +1 -1
  9. package/dist/src/api/SignalClient.d.ts +12 -4
  10. package/dist/src/api/SignalClient.d.ts.map +1 -1
  11. package/dist/src/e2ee/constants.d.ts.map +1 -1
  12. package/dist/src/e2ee/types.d.ts +6 -0
  13. package/dist/src/e2ee/types.d.ts.map +1 -1
  14. package/dist/src/e2ee/utils.d.ts +2 -1
  15. package/dist/src/e2ee/utils.d.ts.map +1 -1
  16. package/dist/src/e2ee/worker/DataCryptor.d.ts.map +1 -1
  17. package/dist/src/e2ee/worker/FrameCryptor.d.ts.map +1 -1
  18. package/dist/src/index.d.ts +5 -4
  19. package/dist/src/index.d.ts.map +1 -1
  20. package/dist/src/room/PCTransport.d.ts +5 -0
  21. package/dist/src/room/PCTransport.d.ts.map +1 -1
  22. package/dist/src/room/PCTransportManager.d.ts +1 -1
  23. package/dist/src/room/PCTransportManager.d.ts.map +1 -1
  24. package/dist/src/room/RTCEngine.d.ts +24 -8
  25. package/dist/src/room/RTCEngine.d.ts.map +1 -1
  26. package/dist/src/room/Room.d.ts +13 -3
  27. package/dist/src/room/Room.d.ts.map +1 -1
  28. package/dist/src/room/data-stream/outgoing/OutgoingDataStreamManager.d.ts.map +1 -1
  29. package/dist/src/room/data-track/LocalDataTrack.d.ts +28 -5
  30. package/dist/src/room/data-track/LocalDataTrack.d.ts.map +1 -1
  31. package/dist/src/room/data-track/RemoteDataTrack.d.ts +5 -5
  32. package/dist/src/room/data-track/RemoteDataTrack.d.ts.map +1 -1
  33. package/dist/src/room/data-track/depacketizer.d.ts +4 -4
  34. package/dist/src/room/data-track/depacketizer.d.ts.map +1 -1
  35. package/dist/src/room/data-track/frame.d.ts +14 -0
  36. package/dist/src/room/data-track/frame.d.ts.map +1 -1
  37. package/dist/src/room/data-track/incoming/IncomingDataTrackManager.d.ts +19 -11
  38. package/dist/src/room/data-track/incoming/IncomingDataTrackManager.d.ts.map +1 -1
  39. package/dist/src/room/data-track/incoming/pipeline.d.ts +6 -5
  40. package/dist/src/room/data-track/incoming/pipeline.d.ts.map +1 -1
  41. package/dist/src/room/data-track/outgoing/OutgoingDataTrackManager.d.ts +57 -23
  42. package/dist/src/room/data-track/outgoing/OutgoingDataTrackManager.d.ts.map +1 -1
  43. package/dist/src/room/data-track/outgoing/errors.d.ts +16 -6
  44. package/dist/src/room/data-track/outgoing/errors.d.ts.map +1 -1
  45. package/dist/src/room/data-track/outgoing/pipeline.d.ts +7 -6
  46. package/dist/src/room/data-track/outgoing/pipeline.d.ts.map +1 -1
  47. package/dist/src/room/data-track/outgoing/types.d.ts +14 -4
  48. package/dist/src/room/data-track/outgoing/types.d.ts.map +1 -1
  49. package/dist/src/room/data-track/packet/extensions.d.ts.map +1 -1
  50. package/dist/src/room/data-track/packetizer.d.ts +4 -4
  51. package/dist/src/room/data-track/packetizer.d.ts.map +1 -1
  52. package/dist/src/room/data-track/track-interfaces.d.ts +1 -1
  53. package/dist/src/room/data-track/track-interfaces.d.ts.map +1 -1
  54. package/dist/src/room/data-track/types.d.ts +6 -1
  55. package/dist/src/room/data-track/types.d.ts.map +1 -1
  56. package/dist/src/room/events.d.ts +24 -3
  57. package/dist/src/room/events.d.ts.map +1 -1
  58. package/dist/src/room/participant/LocalParticipant.d.ts +11 -1
  59. package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
  60. package/dist/src/room/participant/RemoteParticipant.d.ts +13 -0
  61. package/dist/src/room/participant/RemoteParticipant.d.ts.map +1 -1
  62. package/dist/src/room/utils.d.ts +1 -0
  63. package/dist/src/room/utils.d.ts.map +1 -1
  64. package/dist/src/utils/deferrable-map.d.ts +32 -0
  65. package/dist/src/utils/deferrable-map.d.ts.map +1 -0
  66. package/dist/ts4.2/api/SignalClient.d.ts +12 -4
  67. package/dist/ts4.2/e2ee/types.d.ts +6 -0
  68. package/dist/ts4.2/e2ee/utils.d.ts +2 -1
  69. package/dist/ts4.2/index.d.ts +5 -4
  70. package/dist/ts4.2/room/PCTransport.d.ts +5 -0
  71. package/dist/ts4.2/room/PCTransportManager.d.ts +1 -1
  72. package/dist/ts4.2/room/RTCEngine.d.ts +24 -8
  73. package/dist/ts4.2/room/Room.d.ts +13 -3
  74. package/dist/ts4.2/room/data-track/LocalDataTrack.d.ts +27 -4
  75. package/dist/ts4.2/room/data-track/RemoteDataTrack.d.ts +4 -4
  76. package/dist/ts4.2/room/data-track/depacketizer.d.ts +4 -4
  77. package/dist/ts4.2/room/data-track/frame.d.ts +14 -0
  78. package/dist/ts4.2/room/data-track/incoming/IncomingDataTrackManager.d.ts +21 -10
  79. package/dist/ts4.2/room/data-track/incoming/pipeline.d.ts +6 -5
  80. package/dist/ts4.2/room/data-track/outgoing/OutgoingDataTrackManager.d.ts +57 -23
  81. package/dist/ts4.2/room/data-track/outgoing/errors.d.ts +16 -6
  82. package/dist/ts4.2/room/data-track/outgoing/pipeline.d.ts +7 -6
  83. package/dist/ts4.2/room/data-track/outgoing/types.d.ts +14 -4
  84. package/dist/ts4.2/room/data-track/packetizer.d.ts +4 -4
  85. package/dist/ts4.2/room/data-track/track-interfaces.d.ts +1 -1
  86. package/dist/ts4.2/room/data-track/types.d.ts +6 -1
  87. package/dist/ts4.2/room/events.d.ts +24 -3
  88. package/dist/ts4.2/room/participant/LocalParticipant.d.ts +11 -1
  89. package/dist/ts4.2/room/participant/RemoteParticipant.d.ts +13 -0
  90. package/dist/ts4.2/room/utils.d.ts +1 -0
  91. package/dist/ts4.2/utils/deferrable-map.d.ts +32 -0
  92. package/package.json +1 -1
  93. package/src/api/SignalClient.test.ts +9 -4
  94. package/src/api/SignalClient.ts +116 -9
  95. package/src/e2ee/constants.ts +1 -0
  96. package/src/e2ee/types.ts +6 -0
  97. package/src/e2ee/utils.ts +4 -3
  98. package/src/e2ee/worker/DataCryptor.ts +1 -4
  99. package/src/e2ee/worker/FrameCryptor.ts +1 -4
  100. package/src/e2ee/worker/ParticipantKeyHandler.ts +1 -1
  101. package/src/index.ts +6 -4
  102. package/src/room/PCTransport.ts +41 -1
  103. package/src/room/PCTransportManager.ts +1 -1
  104. package/src/room/RTCEngine.ts +266 -111
  105. package/src/room/Room.ts +149 -12
  106. package/src/room/data-stream/outgoing/OutgoingDataStreamManager.ts +7 -7
  107. package/src/room/data-track/LocalDataTrack.ts +83 -10
  108. package/src/room/data-track/RemoteDataTrack.ts +7 -9
  109. package/src/room/data-track/depacketizer.ts +21 -12
  110. package/src/room/data-track/frame.ts +28 -2
  111. package/src/room/data-track/incoming/IncomingDataTrackManager.test.ts +58 -73
  112. package/src/room/data-track/incoming/IncomingDataTrackManager.ts +132 -80
  113. package/src/room/data-track/incoming/pipeline.ts +29 -24
  114. package/src/room/data-track/outgoing/OutgoingDataTrackManager.test.ts +225 -32
  115. package/src/room/data-track/outgoing/OutgoingDataTrackManager.ts +150 -75
  116. package/src/room/data-track/outgoing/errors.ts +36 -7
  117. package/src/room/data-track/outgoing/pipeline.ts +23 -17
  118. package/src/room/data-track/outgoing/types.ts +12 -3
  119. package/src/room/data-track/packet/extensions.ts +17 -22
  120. package/src/room/data-track/packet/index.test.ts +22 -33
  121. package/src/room/data-track/packetizer.test.ts +2 -2
  122. package/src/room/data-track/packetizer.ts +4 -4
  123. package/src/room/data-track/track-interfaces.ts +1 -1
  124. package/src/room/data-track/types.ts +21 -1
  125. package/src/room/events.ts +26 -1
  126. package/src/room/participant/LocalParticipant.ts +57 -6
  127. package/src/room/participant/RemoteParticipant.ts +25 -0
  128. package/src/room/utils.ts +4 -0
  129. package/src/utils/deferrable-map.ts +109 -0
  130. package/dist/src/room/data-track/e2ee.d.ts +0 -12
  131. package/dist/src/room/data-track/e2ee.d.ts.map +0 -1
  132. package/dist/ts4.2/room/data-track/e2ee.d.ts +0 -12
  133. package/src/room/data-track/e2ee.ts +0 -15
@@ -1,10 +1,15 @@
1
+ import { DataTrackInfo as ProtocolDataTrackInfo } from '@livekit/protocol';
1
2
  import { type DataTrackHandle } from './handle';
2
3
  export type DataTrackSid = string;
3
4
  /** Information about a published data track. */
4
5
  export type DataTrackInfo = {
5
6
  sid: DataTrackSid;
6
7
  pubHandle: DataTrackHandle;
7
- name: String;
8
+ name: string;
8
9
  usesE2ee: boolean;
9
10
  };
11
+ export declare const DataTrackInfo: {
12
+ from(protocolInfo: ProtocolDataTrackInfo): DataTrackInfo;
13
+ toProtobuf(info: DataTrackInfo): ProtocolDataTrackInfo;
14
+ };
10
15
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC,gDAAgD;AAChD,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,YAAY,CAAC;IAClB,SAAS,EAAE,eAAe,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,aAAa,IAAI,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC,gDAAgD;AAChD,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,EAAE,YAAY,CAAC;IAClB,SAAS,EAAE,eAAe,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,aAAa;uBACL,qBAAqB,GAAG,aAAa;qBAQvC,aAAa,GAAG,qBAAqB;CAQvD,CAAC"}
@@ -291,7 +291,7 @@ export declare enum RoomEvent {
291
291
  EncryptionError = "encryptionError",
292
292
  /**
293
293
  * Emits whenever the current buffer status of a data channel changes
294
- * args: (isLow: boolean, kind: [[DataPacket_Kind]])
294
+ * args: (isLow: boolean, kind: [[DataChannelKind]])
295
295
  */
296
296
  DCBufferStatusChanged = "dcBufferStatusChanged",
297
297
  /**
@@ -307,7 +307,23 @@ export declare enum RoomEvent {
307
307
  /**
308
308
  * fired when the client receives connection metrics from other participants
309
309
  */
310
- MetricsReceived = "metricsReceived"
310
+ MetricsReceived = "metricsReceived",
311
+ /**
312
+ * Emits when a new data track has been published by a downstream participant.
313
+ */
314
+ DataTrackPublished = "dataTrackPublished",
315
+ /**
316
+ * Emits when a new data track has been unpublished by a downstream participant.
317
+ */
318
+ DataTrackUnpublished = "dataTrackUnpublished",
319
+ /**
320
+ * Emits when a new data track has been published locally.
321
+ */
322
+ LocalDataTrackPublished = "localDataTrackPublished",
323
+ /**
324
+ * Emits when a new data track has been unpublished locally.
325
+ */
326
+ LocalDataTrackUnpublished = "localDataTrackUnpublished"
311
327
  }
312
328
  export declare enum ParticipantEvent {
313
329
  /**
@@ -528,7 +544,12 @@ export declare enum EngineEvent {
528
544
  Offline = "offline",
529
545
  SignalRequestResponse = "signalRequestResponse",
530
546
  SignalConnected = "signalConnected",
531
- RoomMoved = "roomMoved"
547
+ RoomMoved = "roomMoved",
548
+ PublishDataTrackResponse = "publishDataTrackResponse",
549
+ UnPublishDataTrackResponse = "unPublishDataTrackResponse",
550
+ DataTrackSubscriberHandles = "dataTrackSubscriberHandles",
551
+ DataTrackPacketReceived = "dataTrackPacketReceived",
552
+ Joined = "joined"
532
553
  }
533
554
  export declare enum TrackEvent {
534
555
  Message = "message",
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/room/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/room/events.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,9 @@ import TypedPromise from '../../utils/TypedPromise';
4
4
  import type RTCEngine from '../RTCEngine';
5
5
  import type OutgoingDataStreamManager from '../data-stream/outgoing/OutgoingDataStreamManager';
6
6
  import type { TextStreamWriter } from '../data-stream/outgoing/StreamWriter';
7
+ import LocalDataTrack from '../data-track/LocalDataTrack';
8
+ import type OutgoingDataTrackManager from '../data-track/outgoing/OutgoingDataTrackManager';
9
+ import type { DataTrackOptions } from '../data-track/outgoing/types';
7
10
  import { type PerformRpcParams, RpcError, type RpcInvocationData } from '../rpc';
8
11
  import LocalTrack from '../track/LocalTrack';
9
12
  import LocalTrackPublication from '../track/LocalTrackPublication';
@@ -37,12 +40,13 @@ export default class LocalParticipant extends Participant {
37
40
  private firstActiveAgent?;
38
41
  private rpcHandlers;
39
42
  private roomOutgoingDataStreamManager;
43
+ private roomOutgoingDataTrackManager;
40
44
  private pendingSignalRequests;
41
45
  private enabledPublishVideoCodecs;
42
46
  private pendingAcks;
43
47
  private pendingResponses;
44
48
  /** @internal */
45
- constructor(sid: string, identity: string, engine: RTCEngine, options: InternalRoomOptions, roomRpcHandlers: Map<string, (data: RpcInvocationData) => Promise<string>>, roomOutgoingDataStreamManager: OutgoingDataStreamManager);
49
+ constructor(sid: string, identity: string, engine: RTCEngine, options: InternalRoomOptions, roomRpcHandlers: Map<string, (data: RpcInvocationData) => Promise<string>>, roomOutgoingDataStreamManager: OutgoingDataStreamManager, roomOutgoingDataTrackManager: OutgoingDataTrackManager);
46
50
  get lastCameraError(): Error | undefined;
47
51
  get lastMicrophoneError(): Error | undefined;
48
52
  get isE2EEEnabled(): boolean;
@@ -260,5 +264,11 @@ export default class LocalParticipant extends Participant {
260
264
  private handleTrackEnded;
261
265
  private getPublicationForTrack;
262
266
  private waitForPendingPublicationOfSource;
267
+ /** Publishes a data track.
268
+ *
269
+ * Returns the published data track if successful. Use {@link LocalDataTrack#tryPush}
270
+ * to send data frames on the track.
271
+ */
272
+ publishDataTrack(options: DataTrackOptions): Promise<LocalDataTrack>;
263
273
  }
264
274
  //# sourceMappingURL=LocalParticipant.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import type { ParticipantInfo } from '@livekit/protocol';
2
2
  import type { SignalClient } from '../../api/SignalClient';
3
+ import { DeferrableMap } from '../../utils/deferrable-map';
4
+ import type RemoteDataTrack from '../data-track/RemoteDataTrack';
3
5
  import RemoteTrackPublication from '../track/RemoteTrackPublication';
4
6
  import { Track } from '../track/Track';
5
7
  import type { AudioOutputOptions } from '../track/options';
@@ -11,6 +13,13 @@ export default class RemoteParticipant extends Participant {
11
13
  audioTrackPublications: Map<string, RemoteTrackPublication>;
12
14
  videoTrackPublications: Map<string, RemoteTrackPublication>;
13
15
  trackPublications: Map<string, RemoteTrackPublication>;
16
+ /** A map of data track name to the corresponding {@link RemoteDataTrack}.
17
+ * @example
18
+ * // An already existing data track:
19
+ * const track = remoteParticipant.dataTracks.get("data track name");
20
+ * // Wait for a data track which will be published soon:
21
+ * const track = await remoteParticipant.dataTracks.getDeferred("data track name"); */
22
+ dataTracks: DeferrableMap<RemoteDataTrack['info']['name'], RemoteDataTrack>;
14
23
  signalClient: SignalClient;
15
24
  private volumeMap;
16
25
  private audioOutput?;
@@ -53,6 +62,10 @@ export default class RemoteParticipant extends Participant {
53
62
  */
54
63
  setAudioOutput(output: AudioOutputOptions): Promise<void>;
55
64
  /** @internal */
65
+ addRemoteDataTrack(remoteDataTrack: RemoteDataTrack): void;
66
+ /** @internal */
67
+ removeRemoteDataTrack(remoteDataTrackSid: RemoteDataTrack['info']['sid']): void;
68
+ /** @internal */
56
69
  emit<E extends keyof ParticipantEventCallbacks>(event: E, ...args: Parameters<ParticipantEventCallbacks[E]>): boolean;
57
70
  }
58
71
  //# sourceMappingURL=RemoteParticipant.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RemoteParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/RemoteParticipant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RemoteParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/RemoteParticipant.ts"],"names":[],"mappings":"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"}
@@ -145,4 +145,5 @@ export declare function isLocalParticipant(p: Participant): p is LocalParticipan
145
145
  export declare function isRemoteParticipant(p: Participant): p is RemoteParticipant;
146
146
  export declare function splitUtf8(s: string, n: number): Uint8Array[];
147
147
  export declare function extractMaxAgeFromRequestHeaders(headers: Headers): number | undefined;
148
+ export declare function isCompressionStreamSupported(): boolean;
148
149
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/room/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/room/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { type Throws } from '@livekit/throws-transformer/throws';
2
+ /** An error which is thrown if a {@link DeferrableMap#getDeferred} call is aborted midway
3
+ * through. */
4
+ export declare class DeferrableMapAbortError extends DOMException {
5
+ reason: unknown;
6
+ constructor(message: string, reason?: unknown);
7
+ }
8
+ /**
9
+ * A Map-like container keyed by unique strings that supports the ability to wait
10
+ * for future keys to show up in the map.
11
+ *
12
+ * @example
13
+ * // An already existing key:
14
+ * const value = map.get("key");
15
+ * // Wait for a key which will be added soon:
16
+ * const value = await map.getDeferred("key");
17
+ */
18
+ export declare class DeferrableMap<K, V> extends Map<K, V> {
19
+ private pending;
20
+ set(key: K, value: V): this;
21
+ get [Symbol.toStringTag](): string;
22
+ /**
23
+ * Returns the value for `key` immediately if it exists, otherwise returns a
24
+ * promise that resolves once `set(key, value)` is called.
25
+ *
26
+ * If an `AbortSignal` is provided and it is aborted before the key appears,
27
+ * the returned promise rejects with an {@link DeferrableMapAbortError}.
28
+ */
29
+ getDeferred(key: K): Promise<V>;
30
+ getDeferred(key: K, signal: AbortSignal): Promise<Throws<V, DeferrableMapAbortError>>;
31
+ }
32
+ //# sourceMappingURL=deferrable-map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deferrable-map.d.ts","sourceRoot":"","sources":["../../../src/utils/deferrable-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAGjE;cACc;AACd,qBAAa,uBAAwB,SAAQ,YAAY;IACvD,MAAM,EAAE,OAAO,CAAC;gBAEJ,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO;CAI9C;AAED;;;;;;;;;GASG;AACH,qBAAa,aAAa,CAAC,CAAC,EAAE,CAAC,CAAE,SAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAChD,OAAO,CAAC,OAAO,CAAgE;IAE/E,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAiB3B,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,MAAM,CAEjC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAC/B,WAAW,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC;CAoDtF"}
@@ -1,4 +1,6 @@
1
- import { AddTrackRequest, AudioTrackFeature, ConnectionQualityUpdate, JoinResponse, LeaveRequest, MediaSectionsRequirement, ParticipantInfo, ReconnectReason, ReconnectResponse, RequestResponse, Room, RoomMovedResponse, SessionDescription, SignalRequest, SignalResponse, SignalTarget, SimulateScenario, SpeakerInfo, StreamStateUpdate, SubscribedQualityUpdate, SubscriptionPermissionUpdate, SubscriptionResponse, SyncState, TrackPermission, TrackPublishedResponse, TrackUnpublishedResponse, UpdateSubscription, UpdateTrackSettings, VideoLayer } from '@livekit/protocol';
1
+ import { AddTrackRequest, AudioTrackFeature, ConnectionQualityUpdate, DataTrackSubscriberHandles, JoinResponse, LeaveRequest, MediaSectionsRequirement, ParticipantInfo, PublishDataTrackResponse, ReconnectReason, ReconnectResponse, RequestResponse, Room, RoomMovedResponse, SessionDescription, SignalResponse, SignalTarget, SimulateScenario, SpeakerInfo, StreamStateUpdate, SubscribedQualityUpdate, SubscriptionPermissionUpdate, SubscriptionResponse, SyncState, TrackPermission, TrackPublishedResponse, TrackUnpublishedResponse, UnpublishDataTrackResponse, UpdateSubscription, UpdateTrackSettings, VideoLayer } from '@livekit/protocol';
2
+ import type { DataTrackHandle } from '../room/data-track/handle';
3
+ import type { DataTrackSid } from '../room/data-track/types';
2
4
  import type { LoggerOptions } from '../room/types';
3
5
  import { AsyncQueue } from '../utils/AsyncQueue';
4
6
  import { WebSocketStream } from './WebSocketStream';
@@ -17,7 +19,6 @@ export interface SignalOptions {
17
19
  e2eeEnabled: boolean;
18
20
  websocketTimeout: number;
19
21
  }
20
- type SignalMessage = SignalRequest['message'];
21
22
  export declare enum SignalConnectionState {
22
23
  CONNECTING = 0,
23
24
  CONNECTED = 1,
@@ -60,6 +61,10 @@ export declare class SignalClient {
60
61
  onLocalTrackSubscribed?: (trackSid: string) => void;
61
62
  onRoomMoved?: (res: RoomMovedResponse) => void;
62
63
  onMediaSectionsRequirement?: (requirement: MediaSectionsRequirement) => void;
64
+ onPublishDataTrackResponse?: (event: PublishDataTrackResponse) => void;
65
+ onUnPublishDataTrackResponse?: (event: UnpublishDataTrackResponse) => void;
66
+ onDataTrackSubscriberHandles?: (event: DataTrackSubscriberHandles) => void;
67
+ onJoined?: (event: JoinResponse) => void;
63
68
  connectOptions?: ConnectOpts;
64
69
  ws?: WebSocketStream;
65
70
  get currentState(): SignalConnectionState;
@@ -81,7 +86,7 @@ export declare class SignalClient {
81
86
  private useV0SignalPath;
82
87
  constructor(useJSON?: boolean, loggerOptions?: LoggerOptions);
83
88
  private get logContext();
84
- join(url: string, token: string, opts: SignalOptions, abortSignal?: AbortSignal, useV0Path?: boolean): Promise<JoinResponse>;
89
+ join(url: string, token: string, opts: SignalOptions, abortSignal?: AbortSignal, useV0Path?: boolean, publisherOffer?: SessionDescription): Promise<JoinResponse>;
85
90
  reconnect(url: string, token: string, sid?: string, reason?: ReconnectReason): Promise<ReconnectResponse | undefined>;
86
91
  private connect;
87
92
  startReadingLoop(signalReader: ReadableStreamDefaultReader<string | ArrayBuffer>, firstMessage?: SignalResponse): Promise<void>;
@@ -106,7 +111,10 @@ export declare class SignalClient {
106
111
  ]>;
107
112
  sendUpdateLocalAudioTrack(trackSid: string, features: AudioTrackFeature[]): Promise<void>;
108
113
  sendLeave(): Promise<void>;
109
- sendRequest(message: SignalMessage, fromQueue?: boolean): Promise<void>;
114
+ sendPublishDataTrackRequest(handle: DataTrackHandle, name: string, usesE2ee: boolean): Promise<void>;
115
+ sendUnPublishDataTrackRequest(handle: DataTrackHandle): Promise<void>;
116
+ sendUpdateDataSubscription(sid: DataTrackSid, subscribe: boolean): Promise<void>;
117
+ private sendRequest;
110
118
  private handleSignalResponse;
111
119
  setReconnected(): void;
112
120
  private handleOnClose;
@@ -147,6 +147,12 @@ export type KeyProviderOptions = {
147
147
  ratchetWindowSize: number;
148
148
  failureTolerance: number;
149
149
  keyringSize: number;
150
+ /**
151
+ * Size of the encryption key in bits.
152
+ * Defaults to 128. Note that 128 is currently the only value
153
+ * supported by non-web SDKs.
154
+ */
155
+ keySize: 128 | 256;
150
156
  };
151
157
  export type KeyInfo = {
152
158
  key: CryptoKey;
@@ -1,5 +1,6 @@
1
1
  import type { DataPacket } from '@livekit/protocol';
2
2
  import { EncryptedPacketPayload } from '@livekit/protocol';
3
+ import type { KeyProviderOptions } from './types';
3
4
  export declare function isE2EESupported(): boolean;
4
5
  export declare function isScriptTransformSupported(): boolean;
5
6
  export declare function isInsertableStreamSupported(): boolean;
@@ -13,7 +14,7 @@ export declare function createKeyMaterialFromBuffer(cryptoBuffer: ArrayBuffer):
13
14
  * Derives a set of keys from the master key.
14
15
  * See https://tools.ietf.org/html/draft-omara-sframe-00#section-4.3.1
15
16
  */
16
- export declare function deriveKeys(material: CryptoKey, salt: string): Promise<{
17
+ export declare function deriveKeys(material: CryptoKey, options: KeyProviderOptions): Promise<{
17
18
  material: CryptoKey;
18
19
  encryptionKey: CryptoKey;
19
20
  }>;
@@ -6,8 +6,8 @@ import type { ReconnectContext, ReconnectPolicy } from './room/ReconnectPolicy';
6
6
  import type Room, { RoomEventCallbacks } from './room/Room';
7
7
  import Room, { ConnectionState } from './room/Room';
8
8
  import * as attributes from './room/attribute-typings';
9
- import './room/data-track/incoming/IncomingDataTrackManager';
10
- import './room/data-track/outgoing/OutgoingDataTrackManager';
9
+ import LocalDataTrack from './room/data-track/LocalDataTrack';
10
+ import type RemoteDataTrack, { DataTrackSubscribeOptions } from './room/data-track/RemoteDataTrack';
11
11
  import LocalParticipant from './room/participant/LocalParticipant';
12
12
  import type Participant, { ParticipantEventCallbacks } from './room/participant/Participant';
13
13
  import Participant, { ConnectionQuality, ParticipantKind } from './room/participant/Participant';
@@ -53,10 +53,11 @@ export type { DataPublishOptions, SimulationScenario, TranscriptionSegment, Chat
53
53
  export * from './version';
54
54
  export {
55
55
  /** @internal */
56
- attributes, ConnectionQuality, ConnectionState, CriticalTimers, DataPacket_Kind, Encryption_Type, DefaultReconnectPolicy, DisconnectReason, LocalAudioTrack, LocalParticipant, LocalTrack, LocalTrackPublication, LocalVideoTrack, LogLevel, LoggerNames, Participant, RemoteAudioTrack, RemoteParticipant, ParticipantKind, RemoteTrack, RemoteTrackPublication, RemoteVideoTrack, Room, SubscriptionError, TrackPublication, TrackType, compareVersions, createAudioAnalyser, getBrowser, getEmptyAudioStreamTrack, getEmptyVideoStreamTrack, getLogger, isBrowserSupported, setLogExtension, setLogLevel, supportsAV1, supportsAdaptiveStream, supportsAudioOutputSelection, supportsDynacast, supportsVP9, Mutex, isAudioCodec, isAudioTrack, isLocalTrack, isRemoteTrack, isVideoCodec, isVideoTrack, isLocalParticipant, isRemoteParticipant, };
57
- export type { AudioAnalyserOptions, ElementInfo, LiveKitReactNativeInfo, TextStreamInfo, ParticipantTrackPermission, AudioReceiverStats, AudioSenderStats, VideoReceiverStats, VideoSenderStats, ReconnectContext, ReconnectPolicy, RoomEventCallbacks, ParticipantEventCallbacks, PublicationEventCallbacks, };
56
+ attributes, ConnectionQuality, ConnectionState, CriticalTimers, DataPacket_Kind, Encryption_Type, DefaultReconnectPolicy, DisconnectReason, LocalAudioTrack, LocalParticipant, LocalTrack, LocalTrackPublication, LocalVideoTrack, LogLevel, LoggerNames, Participant, RemoteAudioTrack, RemoteParticipant, ParticipantKind, RemoteTrack, RemoteTrackPublication, RemoteVideoTrack, Room, SubscriptionError, TrackPublication, TrackType, compareVersions, createAudioAnalyser, getBrowser, getEmptyAudioStreamTrack, getEmptyVideoStreamTrack, getLogger, isBrowserSupported, setLogExtension, setLogLevel, supportsAV1, supportsAdaptiveStream, supportsAudioOutputSelection, supportsDynacast, supportsVP9, Mutex, isAudioCodec, isAudioTrack, isLocalTrack, isRemoteTrack, isVideoCodec, isVideoTrack, isLocalParticipant, isRemoteParticipant, LocalDataTrack, RemoteDataTrack, };
57
+ export type { AudioAnalyserOptions, ElementInfo, LiveKitReactNativeInfo, TextStreamInfo, ParticipantTrackPermission, AudioReceiverStats, AudioSenderStats, VideoReceiverStats, VideoSenderStats, ReconnectContext, ReconnectPolicy, RoomEventCallbacks, ParticipantEventCallbacks, PublicationEventCallbacks, DataTrackSubscribeOptions, };
58
58
  export type { DataTrackPacketHeader } from './room/data-track/packet';
59
59
  export { DataTrackPacket } from './room/data-track/packet';
60
60
  export type { DataTrackExtensions, DataTrackUserTimestampExtension, DataTrackE2eeExtension } from './room/data-track/packet/extensions';
61
+ export type { DataChannelKind } from './room/RTCEngine';
61
62
  export { LocalTrackRecorder } from './room/track/record';
62
63
  //# sourceMappingURL=index.d.ts.map
@@ -22,6 +22,7 @@ export default class PCTransport extends EventEmitter {
22
22
  private ddExtID;
23
23
  private latestOfferId;
24
24
  private offerLock;
25
+ private pendingInitialOffer?;
25
26
  pendingCandidates: RTCIceCandidateInit[];
26
27
  restartingIce: boolean;
27
28
  renegotiate: boolean;
@@ -43,6 +44,10 @@ export default class PCTransport extends EventEmitter {
43
44
  addIceCandidate(candidate: RTCIceCandidateInit): Promise<void>;
44
45
  setRemoteDescription(sd: RTCSessionDescriptionInit, offerId: number): Promise<boolean>;
45
46
  negotiate: import("./debounce").DebouncedFunction<any[], (onError?: (e: Error) => void) => Promise<void>>;
47
+ createInitialOffer(): Promise<{
48
+ offer: RTCSessionDescriptionInit;
49
+ offerId: number;
50
+ } | undefined>;
46
51
  createAndSendOffer(options?: RTCOfferOptions): Promise<void>;
47
52
  createAndSetAnswer(): Promise<RTCSessionDescriptionInit>;
48
53
  createDataChannel(label: string, dataChannelDict: RTCDataChannelInit): RTCDataChannel;
@@ -31,7 +31,7 @@ export declare class PCTransportManager {
31
31
  private loggerOptions;
32
32
  private _mode;
33
33
  get mode(): PCMode;
34
- constructor(rtcConfig: RTCConfiguration, mode: PCMode, loggerOptions: LoggerOptions);
34
+ constructor(mode: PCMode, loggerOptions: LoggerOptions, rtcConfig?: RTCConfiguration);
35
35
  private get logContext();
36
36
  requirePublisher(require?: boolean): void;
37
37
  createAndSendPublisherOffer(options?: RTCOfferOptions): Promise<void>;
@@ -1,5 +1,5 @@
1
1
  import type { AddTrackRequest, ConnectionQualityUpdate, JoinResponse, StreamStateUpdate, SubscriptionPermissionUpdate, SubscriptionResponse } from '@livekit/protocol';
2
- import { DataPacket, DataPacket_Kind, DisconnectReason, Encryption_Type, ParticipantInfo, RequestResponse, Room as RoomModel, RoomMovedResponse, SpeakerInfo, SubscribedQualityUpdate, TrackInfo, TrackUnpublishedResponse, Transcription } from '@livekit/protocol';
2
+ import { DataPacket, DataTrackSubscriberHandles, DisconnectReason, Encryption_Type, ParticipantInfo, PublishDataTrackResponse, RequestResponse, Room as RoomModel, RoomMovedResponse, SpeakerInfo, SubscribedQualityUpdate, TrackInfo, TrackUnpublishedResponse, Transcription, UnpublishDataTrackResponse } from '@livekit/protocol';
3
3
  import type TypedEventEmitter from 'typed-emitter';
4
4
  import type { SignalOptions } from '../api/SignalClient';
5
5
  import { SignalClient } from '../api/SignalClient';
@@ -9,6 +9,7 @@ import TypedPromise from '../utils/TypedPromise';
9
9
  import PCTransport from './PCTransport';
10
10
  import { PCTransportManager } from './PCTransportManager';
11
11
  import type { RegionUrlProvider } from './RegionUrlProvider';
12
+ import { DataTrackInfo } from './data-track/types';
12
13
  import { UnexpectedConnectionState } from './errors';
13
14
  import { RpcError } from './rpc';
14
15
  import type LocalTrack from './track/LocalTrack';
@@ -18,6 +19,11 @@ import type { SimulcastTrackInfo } from './track/LocalVideoTrack';
18
19
  import type RemoteTrackPublication from './track/RemoteTrackPublication';
19
20
  import type { Track } from './track/Track';
20
21
  import type { TrackPublishOptions, VideoCodec } from './track/options';
22
+ export declare enum DataChannelKind {
23
+ RELIABLE = 0,
24
+ LOSSY = 1,
25
+ DATA_TRACK_LOSSY = 2
26
+ }
21
27
  declare const RTCEngine_base: new () => TypedEventEmitter<EngineEventCallbacks>;
22
28
  /** @internal */
23
29
  export default class RTCEngine extends RTCEngine_base {
@@ -43,8 +49,10 @@ export default class RTCEngine extends RTCEngine_base {
43
49
  private lossyDC?;
44
50
  private lossyDCSub?;
45
51
  private reliableDC?;
46
- private dcBufferStatus;
47
52
  private reliableDCSub?;
53
+ private dataTrackDC?;
54
+ private dataTrackDCSub?;
55
+ private dcBufferStatus;
48
56
  private subscriberPrimary;
49
57
  private pcState;
50
58
  private _isClosed;
@@ -111,9 +119,11 @@ export default class RTCEngine extends RTCEngine_base {
111
119
  private configure;
112
120
  private setupSignalClientCallbacks;
113
121
  private makeRTCConfiguration;
122
+ private addMediaSections;
114
123
  private createDataChannels;
115
124
  private handleDataChannel;
116
125
  private handleDataMessage;
126
+ private handleDataTrackMessage;
117
127
  private handleDataError;
118
128
  private handleBufferedAmountLow;
119
129
  createSender(track: LocalTrack, opts: TrackPublishOptions, encodings?: RTCRtpEncodingParameters[]): Promise<RTCRtpSender>;
@@ -133,22 +143,23 @@ export default class RTCEngine extends RTCEngine_base {
133
143
  publishRpcResponse(destinationIdentity: string, requestId: string, payload: string | null, error: RpcError | null): Promise<void>;
134
144
  /** @internal */
135
145
  publishRpcAck(destinationIdentity: string, requestId: string): Promise<void>;
136
- sendDataPacket(packet: DataPacket, kind: DataPacket_Kind): Promise<void>;
146
+ sendDataPacket(packet: DataPacket, kind: DataChannelKind): Promise<void>;
147
+ sendLossyBytes(bytes: Uint8Array, kind: Exclude<DataChannelKind, DataChannelKind.RELIABLE>, bufferStatusLowBehavior?: 'drop' | 'wait'): Promise<void>;
137
148
  private resendReliableMessagesForResume;
138
149
  private updateAndEmitDCBufferStatus;
139
150
  private isBufferStatusLow;
140
- waitForBufferStatusLow(kind: DataPacket_Kind): TypedPromise<void, UnexpectedConnectionState>;
151
+ waitForBufferStatusLow(kind: DataChannelKind): TypedPromise<void, UnexpectedConnectionState>;
141
152
  /**
142
153
  * @internal
143
154
  */
144
- ensureDataTransportConnected(kind: DataPacket_Kind, subscriber?: boolean): Promise<void>;
155
+ ensureDataTransportConnected(kind: DataChannelKind, subscriber?: boolean): Promise<void>;
145
156
  private ensurePublisherConnected;
146
157
  verifyTransport(): boolean;
147
158
  /** @internal */
148
159
  negotiate(): Promise<void>;
149
- dataChannelForKind(kind: DataPacket_Kind, sub?: boolean): RTCDataChannel | undefined;
160
+ dataChannelForKind(kind: DataChannelKind, sub?: boolean): RTCDataChannel | undefined;
150
161
  /** @internal */
151
- sendSyncState(remoteTracks: RemoteTrackPublication[], localTracks: LocalTrackPublication[]): void;
162
+ sendSyncState(remoteTracks: RemoteTrackPublication[], localTracks: LocalTrackPublication[], localDataTrackInfos: Array<DataTrackInfo>): void;
152
163
  failNext(): void;
153
164
  private dataChannelsInfo;
154
165
  private clearReconnectTimeout;
@@ -177,7 +188,7 @@ export type EngineEventCallbacks = {
177
188
  /** @internal */
178
189
  trackSenderAdded: (track: Track, sender: RTCRtpSender) => void;
179
190
  rtpVideoMapUpdate: (rtpMap: Map<number, VideoCodec>) => void;
180
- dcBufferStatusChanged: (isLow: boolean, kind: DataPacket_Kind) => void;
191
+ dcBufferStatusChanged: (isLow: boolean, kind: DataChannelKind) => void;
181
192
  participantUpdate: (infos: ParticipantInfo[]) => void;
182
193
  roomUpdate: (room: RoomModel) => void;
183
194
  roomMoved: (room: RoomMovedResponse) => void;
@@ -193,6 +204,11 @@ export type EngineEventCallbacks = {
193
204
  offline: () => void;
194
205
  signalRequestResponse: (response: RequestResponse) => void;
195
206
  signalConnected: (joinResp: JoinResponse) => void;
207
+ publishDataTrackResponse: (event: PublishDataTrackResponse) => void;
208
+ unPublishDataTrackResponse: (event: UnpublishDataTrackResponse) => void;
209
+ dataTrackSubscriberHandles: (event: DataTrackSubscriberHandles) => void;
210
+ dataTrackPacketReceived: (packet: Uint8Array) => void;
211
+ joined: (joinResponse: JoinResponse) => void;
196
212
  };
197
213
  export {};
198
214
  //# sourceMappingURL=RTCEngine.d.ts.map
@@ -3,11 +3,14 @@ import 'webrtc-adapter';
3
3
  import type TypedEmitter from 'typed-emitter';
4
4
  import type { InternalRoomOptions, RoomConnectOptions, RoomOptions } from '../options';
5
5
  import TypedPromise from '../utils/TypedPromise';
6
- import RTCEngine from './RTCEngine';
6
+ import RTCEngine, { DataChannelKind } from './RTCEngine';
7
7
  import type { ByteStreamHandler, TextStreamHandler } from './data-stream/incoming/StreamReader';
8
+ import type LocalDataTrack from './data-track/LocalDataTrack';
9
+ import type RemoteDataTrack from './data-track/RemoteDataTrack';
10
+ import type { DataTrackSid } from './data-track/types';
8
11
  import { UnexpectedConnectionState } from './errors';
9
12
  import LocalParticipant from './participant/LocalParticipant';
10
- import type Participant from './participant/Participant';
13
+ import Participant from './participant/Participant';
11
14
  import type { ConnectionQuality } from './participant/Participant';
12
15
  import RemoteParticipant from './participant/RemoteParticipant';
13
16
  import type { RpcInvocationData } from './rpc';
@@ -78,6 +81,8 @@ declare class Room extends Room_base {
78
81
  private transcriptionReceivedTimes;
79
82
  private incomingDataStreamManager;
80
83
  private outgoingDataStreamManager;
84
+ private incomingDataTrackManager;
85
+ private outgoingDataTrackManager;
81
86
  private rpcHandlers;
82
87
  get hasE2EESetup(): boolean;
83
88
  /**
@@ -216,6 +221,7 @@ declare class Room extends Room_base {
216
221
  private recreateEngine;
217
222
  private onTrackAdded;
218
223
  private handleRestarting;
224
+ private handleRestarted;
219
225
  private handleSignalRestarted;
220
226
  private handleDisconnect;
221
227
  private handleParticipantUpdates;
@@ -323,11 +329,15 @@ export type RoomEventCallbacks = {
323
329
  recordingStatusChanged: (recording: boolean) => void;
324
330
  participantEncryptionStatusChanged: (encrypted: boolean, participant?: Participant) => void;
325
331
  encryptionError: (error: Error, participant?: Participant) => void;
326
- dcBufferStatusChanged: (isLow: boolean, kind: DataPacket_Kind) => void;
332
+ dcBufferStatusChanged: (isLow: boolean, kind: DataChannelKind) => void;
327
333
  activeDeviceChanged: (kind: MediaDeviceKind, deviceId: string) => void;
328
334
  chatMessage: (message: ChatMessage, participant?: RemoteParticipant | LocalParticipant) => void;
329
335
  localTrackSubscribed: (publication: LocalTrackPublication, participant: LocalParticipant) => void;
330
336
  metricsReceived: (metrics: MetricsBatch, participant?: Participant) => void;
331
337
  participantActive: (participant: Participant) => void;
338
+ dataTrackPublished: (track: RemoteDataTrack) => void;
339
+ dataTrackUnpublished: (sid: DataTrackSid) => void;
340
+ localDataTrackPublished: (track: LocalDataTrack) => void;
341
+ localDataTrackUnpublished: (sid: DataTrackSid) => void;
332
342
  };
333
343
  //# sourceMappingURL=Room.d.ts.map
@@ -1,18 +1,36 @@
1
+ import type { StructuredLogger } from '../../logger';
1
2
  import type { DataTrackFrame } from './frame';
3
+ import type { DataTrackHandle } from './handle';
2
4
  import type OutgoingDataTrackManager from './outgoing/OutgoingDataTrackManager';
5
+ import { DataTrackPushFrameError } from './outgoing/errors';
6
+ import type { DataTrackOptions } from './outgoing/types';
3
7
  import type { IDataTrack, ILocalTrack } from './track-interfaces';
4
8
  import type { DataTrackInfo } from './types';
5
9
  export default class LocalDataTrack implements ILocalTrack, IDataTrack {
6
10
  readonly trackSymbol: symbol;
7
11
  readonly isLocal = true;
8
12
  readonly typeSymbol: symbol;
9
- info: DataTrackInfo;
13
+ protected options: DataTrackOptions;
14
+ /** Represents the currently active {@link DataTrackHandle} for the publication. */
15
+ protected handle: DataTrackHandle | null;
10
16
  protected manager: OutgoingDataTrackManager;
17
+ protected log: StructuredLogger;
11
18
  /** @internal */
12
- constructor(info: DataTrackInfo, manager: OutgoingDataTrackManager);
19
+ constructor(options: DataTrackOptions, manager: OutgoingDataTrackManager);
20
+ /** @internal */
21
+ static withExplicitHandle(options: DataTrackOptions, manager: OutgoingDataTrackManager, handle: DataTrackHandle): LocalDataTrack;
22
+ /** Metrics about the data track publication. */
23
+ get info(): DataTrackInfo | undefined;
13
24
  /** The raw descriptor from the manager containing the internal state for this local track. */
14
25
  protected get descriptor(): import("./outgoing/OutgoingDataTrackManager").Descriptor | null;
15
- isPublished(): boolean;
26
+ /**
27
+ * Publish the track to the SFU. This must be done before calling {@link tryPush} for the first time.
28
+ * @internal
29
+ * */
30
+ publish(signal?: AbortSignal): Promise<void>;
31
+ isPublished(): this is {
32
+ info: DataTrackInfo;
33
+ };
16
34
  /** Try pushing a frame to subscribers of the track.
17
35
  *
18
36
  * Pushing a frame can fail for several reasons:
@@ -20,6 +38,11 @@ export default class LocalDataTrack implements ILocalTrack, IDataTrack {
20
38
  * - The track has been unpublished by the local participant or SFU
21
39
  * - The room is no longer connected
22
40
  */
23
- tryPush(payload: DataTrackFrame['payload']): import("@livekit/throws-transformer/throws").Throws<void, import("./outgoing/errors").DataTrackPushFrameError<import("./outgoing/errors").DataTrackPushFrameErrorReason.Dropped> | import("./outgoing/errors").DataTrackPushFrameError<import("./outgoing/errors").DataTrackPushFrameErrorReason.TrackUnpublished>>;
41
+ tryPush(frame: DataTrackFrame): Promise<import("@livekit/throws-transformer/throws").Throws<void, DataTrackPushFrameError<import("./outgoing/errors").DataTrackPushFrameErrorReason.TrackUnpublished> | DataTrackPushFrameError<import("./outgoing/errors").DataTrackPushFrameErrorReason.Dropped>>>;
42
+ /**
43
+ * Unpublish the track from the SFU. Once this is called, any further calls to {@link tryPush}
44
+ * will fail.
45
+ * */
46
+ unpublish(): Promise<void>;
24
47
  }
25
48
  //# sourceMappingURL=LocalDataTrack.d.ts.map