openrtc 2.0.1 → 2.2.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.
- package/README.md +11 -8
- package/dist/{DelegatingRuntimeAdapter-fgz5OPQx.d.ts → DelegatingRuntimeAdapter-BkLR3TNN.d.ts} +33 -31
- package/dist/{ITransport-UNOXiRJD.d.ts → ITransport-yaruAmx3.d.ts} +48 -84
- package/dist/{IpcRuntimeAdapter-CI3vCzk0.d.ts → IpcRuntimeAdapter-DDKeQ6UC.d.ts} +6 -6
- package/dist/WasmBridge-DVQ2YPRB.js +1 -0
- package/dist/{assembly-CLdwe5T-.d.ts → assembly-BTzwQuwI.d.ts} +67 -74
- package/dist/{capabilities-BUe5YldR.d.ts → capabilities-BwzPe51I.d.ts} +19 -19
- package/dist/chunk-2IRNZN3N.js +1 -0
- package/dist/chunk-4MLJXEVV.js +2 -0
- package/dist/chunk-AJQVMVYW.js +1 -0
- package/dist/chunk-BOS554IK.js +2 -0
- package/dist/chunk-DI5VSZ2T.js +2 -0
- package/dist/chunk-F4BJ72HN.js +1 -0
- package/dist/{chunk-LRT5GEGH.js → chunk-FKEKINIM.js} +2 -2
- package/dist/chunk-GND6UW37.js +1 -0
- package/dist/{chunk-Z2WVSXPW.js → chunk-HUG5AX7R.js} +1 -1
- package/dist/chunk-LN4ALFT6.js +1 -0
- package/dist/chunk-NXM5ZGHD.js +2 -0
- package/dist/chunk-OUFHVLDQ.js +2 -0
- package/dist/chunk-SUWCBTBQ.js +1 -0
- package/dist/chunk-UGZJJQPM.js +3 -0
- package/dist/chunk-ZA44REGI.js +2 -0
- package/dist/controlPlane-JJFURVOX.js +1 -0
- package/dist/{OpenRTCShared.d.ts → coreClient.d.ts} +61 -66
- package/dist/coreClient.js +1 -0
- package/dist/{deviceEnrollment-33NZEARB.js → deviceEnrollment-Z2EHP2EX.js} +1 -1
- package/dist/deviceKey-Y35WSEQQ.js +1 -0
- package/dist/deviceProfile-CR2C7OYR.js +2 -0
- package/dist/index.d.ts +30 -30
- package/dist/index.js +1 -1
- package/dist/{ipc-CflAVodw.d.ts → ipc-CPnNwv6f.d.ts} +3 -3
- package/dist/ipcFactory-DQFK65VE.js +1 -0
- package/dist/openrtc-INQDCF23.js +2 -0
- package/dist/openrtc_bg.wasm +0 -0
- package/dist/runtime/WasmRuntimeAdapter.d.ts +4 -4
- package/dist/runtime/WasmRuntimeAdapter.js +1 -1
- package/dist/runtime/device-status.d.ts +10 -10
- package/dist/runtime/device-status.js +1 -1
- package/dist/runtime/factories.d.ts +8 -8
- package/dist/runtime/factories.js +1 -1
- package/dist/runtime/index.d.ts +50 -50
- package/dist/runtime/index.js +1 -1
- package/dist/testing.d.ts +29 -28
- package/dist/testing.js +1 -1
- package/dist/transport/index.d.ts +24 -24
- package/dist/transport/index.js +1 -1
- package/dist/{types-DhmY9hBy.d.ts → types-C4TIUgOJ.d.ts} +74 -70
- package/dist/{types-l3m3GrOe.d.ts → types-D67HlF0p.d.ts} +58 -102
- package/package.json +2 -6
- package/dist/OpenRTCShared.js +0 -1
- package/dist/WasmBridge-P5646IVR.js +0 -1
- package/dist/chunk-45WBH7E3.js +0 -1
- package/dist/chunk-5OTF7W2N.js +0 -3
- package/dist/chunk-7FPG3MFF.js +0 -2
- package/dist/chunk-AG2F6MOB.js +0 -1
- package/dist/chunk-CWGKLGJZ.js +0 -1
- package/dist/chunk-HIXXBEWX.js +0 -1
- package/dist/chunk-IKZ33R7R.js +0 -2
- package/dist/chunk-KJTJLLJE.js +0 -2
- package/dist/chunk-QCPSLUKO.js +0 -1
- package/dist/chunk-VBUDERMM.js +0 -2
- package/dist/chunk-XPL7PUBW.js +0 -2
- package/dist/chunk-Y35AKFCM.js +0 -1
- package/dist/chunk-ZQF5KSOK.js +0 -2
- package/dist/controlPlane-YAMXWHAF.js +0 -1
- package/dist/deviceKey-SBNKLVYF.js +0 -1
- package/dist/deviceProfile-3BEQZLJF.js +0 -2
- package/dist/ipcFactory-JTMNUTZI.js +0 -1
- package/dist/native.d.ts +0 -15
- package/dist/native.js +0 -1
- package/dist/openrtc-JUV7TOTL.js +0 -2
- /package/dist/{deviceManagement-PHY5TIOS.js → deviceManagement-SUMBRXXC.js} +0 -0
- /package/dist/{deviceRoster-VZA3TQOR.js → deviceRoster-EUF6BBF5.js} +0 -0
package/README.md
CHANGED
|
@@ -106,13 +106,13 @@ Attestation is evaluated at device enrollment, key rotation, recovery, or risk
|
|
|
106
106
|
escalation—not as a connection heartbeat.
|
|
107
107
|
|
|
108
108
|
```ts
|
|
109
|
-
import {
|
|
109
|
+
import { AppCheckProvider } from 'openrtc-trust-firebase-app-check';
|
|
110
110
|
|
|
111
111
|
const rtc = OpenRTC({
|
|
112
112
|
apiKey,
|
|
113
113
|
auth,
|
|
114
114
|
trust: {
|
|
115
|
-
attestation: new
|
|
115
|
+
attestation: new AppCheckProvider({ appCheck }),
|
|
116
116
|
},
|
|
117
117
|
});
|
|
118
118
|
```
|
|
@@ -143,10 +143,10 @@ manifest limits remain authoritative.
|
|
|
143
143
|
## Native and WASM
|
|
144
144
|
|
|
145
145
|
```ts
|
|
146
|
-
import {
|
|
147
|
-
import {
|
|
146
|
+
import { OpenRTC } from 'openrtc';
|
|
147
|
+
import { createBridge } from 'openrtc-tauri/ipc';
|
|
148
148
|
|
|
149
|
-
const rtc =
|
|
149
|
+
const rtc = OpenRTC.native({ apiKey, auth }, createBridge());
|
|
150
150
|
```
|
|
151
151
|
|
|
152
152
|
Native hosts keep one Ed25519 installation key in host secure storage. Browsers
|
|
@@ -165,6 +165,9 @@ overrides live only in `openrtc/testing`.
|
|
|
165
165
|
- `openrtc-file-transfer` owns bounded, acknowledged, resumable file transfer.
|
|
166
166
|
|
|
167
167
|
Relay, durable membership, managed attestation, MoQ, and BLE require both
|
|
168
|
-
portal enablement and explicit runtime opt-in.
|
|
169
|
-
|
|
170
|
-
|
|
168
|
+
portal enablement and explicit runtime opt-in. Avenues default to 8 peers.
|
|
169
|
+
Reviewed non-room avenues may request 9-12 peers. Reviewed rooms may request up
|
|
170
|
+
to 99 peers with `advancedFanout: true`; OpenRTC then maintains a symmetric
|
|
171
|
+
four-neighbor overlay and forwards named-channel messages with bounded hops and
|
|
172
|
+
duplicate suppression. `state()` is intentionally unavailable in sparse rooms;
|
|
173
|
+
use a named channel with application-owned latest-state revisions.
|
package/dist/{DelegatingRuntimeAdapter-fgz5OPQx.d.ts → DelegatingRuntimeAdapter-BkLR3TNN.d.ts}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { D as Device,
|
|
2
|
-
import {
|
|
3
|
-
import { R as RuntimeCapabilities } from './capabilities-
|
|
1
|
+
import { D as Device, k as DiscoveryMode, A as AuthMode, S as SignalingMode, h as ClientOptions, E as ExplicitFileDataSendParams, I as ISignalingBackend, L as LocalDeviceInfo, l as RoomMember, m as RuntimeIdentity, n as SignalingEnvelope, o as DeviceStatusSnapshot, d as PeerSessionSnapshot, B as BackendPeerBiStream, p as BackendPeerUniStream, M as ManagedConnectionRecord, e as ResolvedPeerIdentity, q as DeviceEvent, r as DesiredPeerProjection, s as CoreClientBridgeHost, N as NativeConnectParams, t as NativeConnectResult, u as SignalingSession, v as SessionEvent, w as BackendConnectionState, x as NativeManagedSessionStartResult, G as GrantScope } from './ITransport-yaruAmx3.js';
|
|
2
|
+
import { B as BrowserProtocolStore, N as NamespaceDescriptor, p as IrohMutationReceipt, q as IrohDocEntry, A as AuthContext } from './types-D67HlF0p.js';
|
|
3
|
+
import { R as RuntimeCapabilities } from './capabilities-BwzPe51I.js';
|
|
4
4
|
|
|
5
5
|
interface NativeTrustToken {
|
|
6
6
|
token: string;
|
|
@@ -23,7 +23,8 @@ interface WasmBridgeOptions {
|
|
|
23
23
|
projectId?: string;
|
|
24
24
|
coordinationGateway?: ClientOptions['coordinationGateway'];
|
|
25
25
|
coordinationAvenueOverride?: ClientOptions['coordinationAvenueOverride'];
|
|
26
|
-
|
|
26
|
+
coordinationRoomGossipFanout?: ClientOptions['coordinationRoomGossipFanout'];
|
|
27
|
+
attestationTokenProvider?: ClientOptions['attestationTokenProvider'];
|
|
27
28
|
/** Internal host hint used by the provider-neutral gateway projection. */
|
|
28
29
|
coordinationPlatformType?: string;
|
|
29
30
|
storagePrefix?: string;
|
|
@@ -78,7 +79,8 @@ declare class WasmBridge implements ISignalingBackend {
|
|
|
78
79
|
projectId: string;
|
|
79
80
|
coordinationGateway?: ClientOptions['coordinationGateway'];
|
|
80
81
|
coordinationAvenueOverride?: ClientOptions['coordinationAvenueOverride'];
|
|
81
|
-
|
|
82
|
+
coordinationRoomGossipFanout?: ClientOptions['coordinationRoomGossipFanout'];
|
|
83
|
+
attestationTokenProvider?: ClientOptions['attestationTokenProvider'];
|
|
82
84
|
coordinationPlatformType?: string;
|
|
83
85
|
storagePrefix?: string;
|
|
84
86
|
deviceIdPersistence?: 'persistent' | 'ephemeral';
|
|
@@ -127,11 +129,11 @@ declare class WasmBridge implements ISignalingBackend {
|
|
|
127
129
|
private readonly applicationRouteEscalations;
|
|
128
130
|
private applicationRouteEscalationAttemptKeys;
|
|
129
131
|
private applicationRouteEscalationUnsubscribe;
|
|
130
|
-
private
|
|
132
|
+
private routeSubscriptionGeneration;
|
|
131
133
|
private applicationRouteEscalationSubscriptionEpoch;
|
|
132
134
|
constructor(options: WasmBridgeOptions);
|
|
133
135
|
get tag(): string;
|
|
134
|
-
|
|
136
|
+
capabilities(): RuntimeCapabilities;
|
|
135
137
|
private static readonly WEB_DEVICE_ID_STORAGE_PREFIX;
|
|
136
138
|
private static readonly EPHEMERAL_DEVICE_ID_TTL_MS;
|
|
137
139
|
private getDeviceIdentityStorageKey;
|
|
@@ -186,12 +188,12 @@ declare class WasmBridge implements ISignalingBackend {
|
|
|
186
188
|
matchesLegacyOrCurrentTag(device: Pick<RawDeviceDoc, 'tag' | 'appTag'>): boolean;
|
|
187
189
|
private stopSessionSubscriptions;
|
|
188
190
|
private stopRuntimeAuthScopedLoops;
|
|
189
|
-
|
|
191
|
+
stopAuthActivity(options?: {
|
|
190
192
|
userId?: string | null;
|
|
191
193
|
}): Promise<void>;
|
|
192
194
|
setWasmClient(client: any): void;
|
|
193
|
-
initializePersistentIrohProtocols(store:
|
|
194
|
-
createPersistentIrohNamespace(generation: number, shareRevision: number): Promise<
|
|
195
|
+
initializePersistentIrohProtocols(store: BrowserProtocolStore): Promise<void>;
|
|
196
|
+
createPersistentIrohNamespace(generation: number, shareRevision: number): Promise<NamespaceDescriptor>;
|
|
195
197
|
importPersistentIrohTicket(ticket: string, generation: number, shareRevision: number): Promise<string>;
|
|
196
198
|
sharePersistentIrohNamespace(namespaceId: string, writable: boolean): Promise<string>;
|
|
197
199
|
removePersistentIrohNamespace(namespaceId: string, generation: number, shareRevision: number): Promise<void>;
|
|
@@ -215,7 +217,7 @@ declare class WasmBridge implements ISignalingBackend {
|
|
|
215
217
|
private normalizeDeviceStatusSnapshot;
|
|
216
218
|
private normalizePeerSessionSnapshot;
|
|
217
219
|
private toBackendConnectionStateFromPeerSession;
|
|
218
|
-
private
|
|
220
|
+
private normalizeStateSnapshot;
|
|
219
221
|
private stabilizeConnectionState;
|
|
220
222
|
private sameConnectionState;
|
|
221
223
|
private deliverConnectionState;
|
|
@@ -243,22 +245,22 @@ declare class WasmBridge implements ISignalingBackend {
|
|
|
243
245
|
sendMessage(targetId: string, payload: string, state?: string, replyPayload?: string): Promise<string>;
|
|
244
246
|
pollMessages(targetId: string): Promise<SignalingEnvelope[]>;
|
|
245
247
|
searchDevices(excludeNodeId?: string): Promise<Device[]>;
|
|
246
|
-
|
|
248
|
+
listDeviceStatus(): Promise<DeviceStatusSnapshot[]>;
|
|
247
249
|
getPeerSession(id: string): Promise<PeerSessionSnapshot | null>;
|
|
248
250
|
listPeerSessions(): Promise<PeerSessionSnapshot[]>;
|
|
249
251
|
waitForSettledPeer(id: string, timeoutMs?: number): Promise<PeerSessionSnapshot | null>;
|
|
250
252
|
openPeerBi(id: string, timeoutMs?: number): Promise<BackendPeerBiStream>;
|
|
251
253
|
openPeerNativeBi(id: string, label: string, timeoutMs?: number): Promise<BackendPeerBiStream>;
|
|
252
|
-
|
|
254
|
+
openPeerBiRaw(id: string, timeoutMs?: number): Promise<BackendPeerBiStream>;
|
|
253
255
|
openPeerUni(id: string, timeoutMs?: number): Promise<BackendPeerUniStream>;
|
|
254
|
-
|
|
256
|
+
resolvePeerRecords(id: string): Promise<ManagedConnectionRecord[]>;
|
|
255
257
|
resolvePeerIdentity(id: string): Promise<ResolvedPeerIdentity>;
|
|
256
258
|
onDevicesChange(callback: (devices: Device[]) => void, excludeNodeId?: string): () => void;
|
|
257
259
|
subscribeDevices(userId: string): Promise<ReadableStream<DeviceEvent[]>>;
|
|
258
260
|
startAutoConnect(userId: string, localDeviceId: string): Promise<void>;
|
|
259
261
|
startAutoConnectOnce(userId: string, localDeviceId: string): Promise<void>;
|
|
260
262
|
notifyDisconnectRequested(remoteNodeId: string): void;
|
|
261
|
-
|
|
263
|
+
excludeAutoConnect(deviceId: string, excluded: boolean): Promise<void>;
|
|
262
264
|
disconnectDevice(deviceId: string): Promise<void>;
|
|
263
265
|
submitDesiredPeerProjection(revision: number, peers: DesiredPeerProjection[]): Promise<void>;
|
|
264
266
|
setCoreClient(client: CoreClientBridgeHost | null): void;
|
|
@@ -267,7 +269,7 @@ declare class WasmBridge implements ISignalingBackend {
|
|
|
267
269
|
private retryManagedApplicationRouteEscalations;
|
|
268
270
|
private escalateManagedApplicationRoute;
|
|
269
271
|
connectToDevice(params: NativeConnectParams): Promise<NativeConnectResult>;
|
|
270
|
-
|
|
272
|
+
forceReconnect(): void;
|
|
271
273
|
startPresenceLoop(userId: string, localNodeId: string, deviceName: string, ticket: string, metadata?: string): void;
|
|
272
274
|
private ensureSpaceNamespaceIdPromise;
|
|
273
275
|
createSession(session: SignalingSession): Promise<void>;
|
|
@@ -277,7 +279,7 @@ declare class WasmBridge implements ISignalingBackend {
|
|
|
277
279
|
isConnected(node_id: string): Promise<boolean>;
|
|
278
280
|
private hasConnectedIndependentPeerRoute;
|
|
279
281
|
getConnectionStates(): Promise<BackendConnectionState[]>;
|
|
280
|
-
|
|
282
|
+
onStateChange(callback: (state: BackendConnectionState) => void): Promise<() => void> | (() => void);
|
|
281
283
|
sendExplicitFilePath(connectionId: string, filePath: string, transferId?: string): Promise<string>;
|
|
282
284
|
private sanitizeExplicitFileName;
|
|
283
285
|
private sanitizeExplicitMimeType;
|
|
@@ -299,7 +301,7 @@ declare abstract class DelegatingRuntimeAdapter implements ISignalingBackend {
|
|
|
299
301
|
signInAnonymously(): Promise<void>;
|
|
300
302
|
signInWithPluto(): Promise<void>;
|
|
301
303
|
signOut(): Promise<void>;
|
|
302
|
-
|
|
304
|
+
stopAuthActivity(): Promise<void>;
|
|
303
305
|
usesCoordinationGateway(): boolean;
|
|
304
306
|
joinCoordinationRoom(roomId: string, nodeId: string, ticket: string): Promise<void>;
|
|
305
307
|
leaveCoordinationRoom(roomId: string): Promise<void>;
|
|
@@ -311,12 +313,12 @@ declare abstract class DelegatingRuntimeAdapter implements ISignalingBackend {
|
|
|
311
313
|
setOffline(localNodeId: string): Promise<void>;
|
|
312
314
|
cleanupStaleDevices(): Promise<void>;
|
|
313
315
|
searchDevices(excludeNodeId?: string): Promise<Device[]>;
|
|
314
|
-
|
|
316
|
+
listDeviceStatus(): Promise<DeviceStatusSnapshot[]>;
|
|
315
317
|
getPeerSession(id: string): Promise<PeerSessionSnapshot | null>;
|
|
316
318
|
listPeerSessions(): Promise<PeerSessionSnapshot[]>;
|
|
317
319
|
waitForSettledPeer(id: string, timeoutMs?: number): Promise<PeerSessionSnapshot | null>;
|
|
318
320
|
resolvePeerIdentity(id: string): Promise<ResolvedPeerIdentity>;
|
|
319
|
-
|
|
321
|
+
resolvePeerRecords(id: string): Promise<ManagedConnectionRecord[]>;
|
|
320
322
|
updateDevice(deviceId: string, updates: {
|
|
321
323
|
deviceName?: string;
|
|
322
324
|
capabilities?: Device['capabilities'];
|
|
@@ -338,11 +340,11 @@ declare abstract class DelegatingRuntimeAdapter implements ISignalingBackend {
|
|
|
338
340
|
createSession(session: SignalingSession): Promise<void>;
|
|
339
341
|
updateSession(sessionId: string, updateData: any): Promise<void>;
|
|
340
342
|
subscribeSessions(localDeviceId: string): Promise<ReadableStream<SessionEvent[]>>;
|
|
341
|
-
|
|
343
|
+
forceReconnect(): void;
|
|
342
344
|
getLocalDeviceId(): Promise<string | null>;
|
|
343
345
|
getLocalDeviceInfo(): Promise<LocalDeviceInfo | null>;
|
|
344
|
-
|
|
345
|
-
|
|
346
|
+
updateDeviceName(deviceName: string): Promise<LocalDeviceInfo | null>;
|
|
347
|
+
startNativeSession(options: {
|
|
346
348
|
userId: string;
|
|
347
349
|
deviceName?: string;
|
|
348
350
|
localDeviceId?: string | null;
|
|
@@ -356,24 +358,24 @@ declare abstract class DelegatingRuntimeAdapter implements ISignalingBackend {
|
|
|
356
358
|
getManagedNodeId(options?: {
|
|
357
359
|
initializeIfMissing?: boolean;
|
|
358
360
|
}): Promise<string | null>;
|
|
359
|
-
|
|
361
|
+
startPresence(userId: string, localNodeId: string, deviceName: string, ticket: string, metadata?: string): Promise<void>;
|
|
360
362
|
startAutoConnectOnce(userId: string, localDeviceId: string): Promise<void>;
|
|
361
363
|
getEndpointTicket(): Promise<string>;
|
|
362
|
-
|
|
364
|
+
getTicketWithToken(scope: GrantScope, maxConnections: number): Promise<string | null>;
|
|
363
365
|
registerSessionToken(token: string, scope: GrantScope, maxConnections: number, expiresAtMs?: number): Promise<void>;
|
|
364
|
-
|
|
366
|
+
revokeTokens(scope: GrantScope): Promise<string[]>;
|
|
365
367
|
openPeerBi(id: string, timeoutMs?: number): Promise<BackendPeerBiStream>;
|
|
366
368
|
incoming_streams(): Promise<ReadableStream<unknown>>;
|
|
367
|
-
|
|
369
|
+
isCurrentTransport(endpointId: string, transportStableId: bigint): Promise<boolean>;
|
|
368
370
|
openPeerNativeBi(id: string, label: string, timeoutMs?: number): Promise<BackendPeerBiStream>;
|
|
369
|
-
|
|
371
|
+
openPeerBiRaw(id: string, timeoutMs?: number): Promise<BackendPeerBiStream>;
|
|
370
372
|
openPeerUni(id: string, timeoutMs?: number): Promise<BackendPeerUniStream>;
|
|
371
373
|
connectToDevice(params: NativeConnectParams): Promise<NativeConnectResult>;
|
|
372
374
|
disconnectDevice(deviceId: string): Promise<void>;
|
|
373
|
-
|
|
375
|
+
excludeAutoConnect(deviceId: string, excluded: boolean): Promise<void>;
|
|
374
376
|
isConnected(nodeId: string): Promise<boolean>;
|
|
375
377
|
getConnectionStates(): Promise<BackendConnectionState[]>;
|
|
376
|
-
|
|
378
|
+
onStateChange(callback: (state: BackendConnectionState) => void): Promise<() => void> | (() => void);
|
|
377
379
|
/** @deprecated Use named channels or `openrtc-file-transfer`. */
|
|
378
380
|
sendExplicitFilePath(connectionId: string, filePath: string, transferId?: string): Promise<string>;
|
|
379
381
|
/** @deprecated Use named channels or `openrtc-file-transfer`. */
|
|
@@ -382,7 +384,7 @@ declare abstract class DelegatingRuntimeAdapter implements ISignalingBackend {
|
|
|
382
384
|
getTransferHistory(limit?: number): Promise<Array<[string, unknown]>>;
|
|
383
385
|
/** @deprecated Transfer history belongs to the consumer application. */
|
|
384
386
|
deleteTransferJob(jobId: string): Promise<void>;
|
|
385
|
-
|
|
387
|
+
capabilities(): RuntimeCapabilities;
|
|
386
388
|
onIncomingNativeMessage(callback: (connectionId: string, remoteNodeId: string | null, message: any) => void): Promise<() => void>;
|
|
387
389
|
unwrap(): ISignalingBackend;
|
|
388
390
|
/**
|
|
@@ -17,14 +17,6 @@ interface CoordinationGatewayOptions {
|
|
|
17
17
|
* verify the matching identity tenant and token audience.
|
|
18
18
|
*/
|
|
19
19
|
environment: 'staging' | 'production';
|
|
20
|
-
/**
|
|
21
|
-
* Test-runtime authority for an insecure loopback gateway. The public v2
|
|
22
|
-
* constructor never sets this flag; `openrtc/testing` owns it for local
|
|
23
|
-
* emulator harnesses. Non-loopback HTTP/WS endpoints still fail closed.
|
|
24
|
-
*
|
|
25
|
-
* @internal
|
|
26
|
-
*/
|
|
27
|
-
testingAllowInsecureLoopback?: boolean;
|
|
28
20
|
/**
|
|
29
21
|
* Opaque native trust token loader.
|
|
30
22
|
*
|
|
@@ -37,14 +29,6 @@ interface CoordinationGatewayOptions {
|
|
|
37
29
|
token: string;
|
|
38
30
|
expiresAtMs: number;
|
|
39
31
|
} | null | undefined>;
|
|
40
|
-
/**
|
|
41
|
-
* OpenRTC 2.0's provider-neutral grant source. This is installed by the
|
|
42
|
-
* public capability client, never supplied as a public endpoint or token
|
|
43
|
-
* hook by application code.
|
|
44
|
-
*
|
|
45
|
-
* @internal
|
|
46
|
-
*/
|
|
47
|
-
grantProvider?: (input: CoordinationGatewayGrantRequest) => Promise<CoordinationGatewayGrant>;
|
|
48
32
|
}
|
|
49
33
|
interface CoordinationGatewayGrantRequest {
|
|
50
34
|
avenue: {
|
|
@@ -78,7 +62,7 @@ interface AppLimits {
|
|
|
78
62
|
}
|
|
79
63
|
interface PlutoRTCConfiguration extends RTCConfiguration {
|
|
80
64
|
/** Keep the legacy route, carry Iroh packets, or try the carrier before fallback. */
|
|
81
|
-
implementation?:
|
|
65
|
+
implementation?: TransportImpl;
|
|
82
66
|
iceServers?: RTCIceServer[];
|
|
83
67
|
/**
|
|
84
68
|
* Populate public STUN defaults when no ICE servers are configured.
|
|
@@ -100,7 +84,7 @@ interface PlutoMoQServerCertificateHash {
|
|
|
100
84
|
value: ArrayBuffer;
|
|
101
85
|
}
|
|
102
86
|
interface PlutoMoQConfiguration {
|
|
103
|
-
implementation?:
|
|
87
|
+
implementation?: TransportImpl;
|
|
104
88
|
relayUrl?: string;
|
|
105
89
|
/** Relay JWT appended only at WebTransport connection time. Never include it in relayUrl. */
|
|
106
90
|
accessToken?: string;
|
|
@@ -175,29 +159,29 @@ interface ChannelDescriptor {
|
|
|
175
159
|
}
|
|
176
160
|
type ProtocolName = 'iroh' | 'iroh-quic' | 'iroh-relay' | 'iroh-lan' | 'iroh-webrtc' | 'iroh-moq' | 'ble' | 'webrtc' | 'webrtc-lan' | 'webrtc-turn' | 'moq';
|
|
177
161
|
type ProtocolMaturity = 'stable' | 'experimental' | 'unsupported';
|
|
178
|
-
type
|
|
162
|
+
type TransportImpl = 'external' | 'iroh-carrier' | 'auto';
|
|
179
163
|
type TransportPrivacy = 'direct' | 'relay-only';
|
|
180
|
-
type
|
|
164
|
+
type RouteOptimization = 'balanced' | 'lowest-latency';
|
|
181
165
|
type ProtocolBaseName = 'iroh' | 'webrtc' | 'moq';
|
|
182
166
|
type RouteFamily = 'iroh-path' | 'iroh-physical' | 'optional-route';
|
|
183
|
-
type
|
|
167
|
+
type RouteKind = 'core' | 'host-installed' | 'carrier-adapter' | 'route-adapter' | 'path-label';
|
|
184
168
|
/**
|
|
185
169
|
* Public compatibility type. `native` and `plugin` are legacy capability
|
|
186
|
-
* labels; generated route descriptors use `
|
|
170
|
+
* labels; generated route descriptors use `RouteKind`.
|
|
187
171
|
*/
|
|
188
|
-
type ProtocolImplementationKind =
|
|
172
|
+
type ProtocolImplementationKind = RouteKind | 'native' | 'plugin';
|
|
189
173
|
type ProtocolLocality = 'nearby' | 'direct-internet' | 'relay' | 'mixed';
|
|
190
174
|
interface RouteDescriptor {
|
|
191
175
|
id: ProtocolName;
|
|
192
176
|
baseProtocol: ProtocolBaseName;
|
|
193
177
|
family: RouteFamily;
|
|
194
|
-
implementation:
|
|
178
|
+
implementation: RouteKind;
|
|
195
179
|
locality: ProtocolLocality;
|
|
196
180
|
maturity: ProtocolMaturity;
|
|
197
181
|
defaultRank: number;
|
|
198
182
|
browser: boolean;
|
|
199
183
|
native: boolean;
|
|
200
|
-
|
|
184
|
+
independent: boolean;
|
|
201
185
|
}
|
|
202
186
|
interface ProtocolCapability {
|
|
203
187
|
/** Canonical descriptor id; additive to the legacy capability shape. */
|
|
@@ -213,13 +197,13 @@ interface ProtocolCapability {
|
|
|
213
197
|
/** Canonical descriptor rank; additive to the legacy capability shape. */
|
|
214
198
|
defaultRank?: number;
|
|
215
199
|
/** Canonical implementation taxonomy; `implementation` retains legacy values. */
|
|
216
|
-
routeImplementation?:
|
|
200
|
+
routeImplementation?: RouteKind;
|
|
217
201
|
/** Compatibility alias for `defaultRank`. */
|
|
218
202
|
preferredRank: number;
|
|
219
203
|
browser: boolean;
|
|
220
204
|
native: boolean;
|
|
221
205
|
/** Canonical descriptor flag; additive to the legacy capability shape. */
|
|
222
|
-
|
|
206
|
+
independent?: boolean;
|
|
223
207
|
configured?: boolean;
|
|
224
208
|
available: boolean;
|
|
225
209
|
reason?: string;
|
|
@@ -283,13 +267,6 @@ interface ClientOptions {
|
|
|
283
267
|
* Hosted production clients receive the managed production default.
|
|
284
268
|
*/
|
|
285
269
|
coordinationGateway?: CoordinationGatewayOptions;
|
|
286
|
-
/** @internal One capability maps to exactly one gateway avenue. */
|
|
287
|
-
coordinationAvenueOverride?: {
|
|
288
|
-
kind: 'user' | 'space' | 'room' | 'session';
|
|
289
|
-
id: string;
|
|
290
|
-
};
|
|
291
|
-
/** @internal Raw host platform metadata used only for roster presentation. */
|
|
292
|
-
coordinationPlatformType?: string;
|
|
293
270
|
/**
|
|
294
271
|
* Supplies the provider-neutral platform-attestation token used by the
|
|
295
272
|
* configured coordination control plane.
|
|
@@ -298,7 +275,7 @@ interface ClientOptions {
|
|
|
298
275
|
* deterministic harnesses can inject their own provider without coupling
|
|
299
276
|
* gateway coordination to Firebase-specific SDK state.
|
|
300
277
|
*/
|
|
301
|
-
|
|
278
|
+
attestationTokenProvider?: (forceRefresh?: boolean) => Promise<string | null>;
|
|
302
279
|
storagePrefix?: string;
|
|
303
280
|
deviceTTL?: number;
|
|
304
281
|
deviceName?: string;
|
|
@@ -328,7 +305,7 @@ interface ClientOptions {
|
|
|
328
305
|
* Rust protocol dispatcher. A native host must never enable both consumers:
|
|
329
306
|
* the underlying stream queue is ordered and each raw stream has one owner.
|
|
330
307
|
*/
|
|
331
|
-
|
|
308
|
+
nativeStreamConsumer?: 'runtime' | 'host';
|
|
332
309
|
/**
|
|
333
310
|
* Optional application-provided TURN credential loader.
|
|
334
311
|
*
|
|
@@ -350,7 +327,7 @@ interface ClientOptions {
|
|
|
350
327
|
/** Hard route-eligibility policy. Relay-only fails closed. */
|
|
351
328
|
privacy?: TransportPrivacy;
|
|
352
329
|
/** Route objective applied after privacy and capability filtering. */
|
|
353
|
-
optimizeFor?:
|
|
330
|
+
optimizeFor?: RouteOptimization;
|
|
354
331
|
/** Exact-route fallback and tie-break order. Unsupported routes are skipped. */
|
|
355
332
|
priority?: ProtocolName[];
|
|
356
333
|
};
|
|
@@ -363,20 +340,7 @@ interface ClientOptions {
|
|
|
363
340
|
* protects public message/media payload bytes before they are handed to
|
|
364
341
|
* iroh, WebRTC, or MoQ and opens them before app callbacks fire.
|
|
365
342
|
*/
|
|
366
|
-
applicationCrypto?:
|
|
367
|
-
/**
|
|
368
|
-
* When manual `applicationCrypto` is not set, peers must negotiate an
|
|
369
|
-
* ephemeral X25519 ECDH key during transport handshake. Disabling is not
|
|
370
|
-
* supported in secure deployments.
|
|
371
|
-
*/
|
|
372
|
-
automaticApplicationKeyAgreement?: boolean;
|
|
373
|
-
/**
|
|
374
|
-
* @internal Overrides orphan drift grace windows for tests and diagnostics.
|
|
375
|
-
*/
|
|
376
|
-
orphanReconciliationGrace?: {
|
|
377
|
-
tsConnectionMs?: number;
|
|
378
|
-
rustRecordMs?: number;
|
|
379
|
-
};
|
|
343
|
+
applicationCrypto?: PayloadCrypto;
|
|
380
344
|
/**
|
|
381
345
|
* Mints a namespace-scoped Firebase custom token for space discovery.
|
|
382
346
|
* Required when `discoveryMode` is `space` and `space`/`spaceKey` is set.
|
|
@@ -441,7 +405,7 @@ interface PeerState {
|
|
|
441
405
|
readinessReason?: string;
|
|
442
406
|
webrtcState?: PeerWebRtcState;
|
|
443
407
|
routable?: boolean;
|
|
444
|
-
|
|
408
|
+
transportStableId?: number | null;
|
|
445
409
|
transportGeneration?: number;
|
|
446
410
|
routeGeneration?: number;
|
|
447
411
|
activeTransport?: ProtocolName;
|
|
@@ -476,11 +440,11 @@ interface BackendConnectionState {
|
|
|
476
440
|
readinessReason?: string;
|
|
477
441
|
transportGeneration?: number;
|
|
478
442
|
routeGeneration?: number;
|
|
479
|
-
|
|
443
|
+
transportStableId?: number | null;
|
|
480
444
|
replacementInProgress?: boolean;
|
|
481
|
-
|
|
445
|
+
lastTransitionAtMs?: number;
|
|
482
446
|
transitionCount?: number;
|
|
483
|
-
|
|
447
|
+
connectTransitions?: number;
|
|
484
448
|
replacementCount?: number;
|
|
485
449
|
retireCount?: number;
|
|
486
450
|
lastDisconnectReason?: string | null;
|
|
@@ -513,7 +477,7 @@ interface BackendPeerBiStream {
|
|
|
513
477
|
interface BackendPeerUniStream {
|
|
514
478
|
writable: WritableStream<Uint8Array>;
|
|
515
479
|
}
|
|
516
|
-
interface
|
|
480
|
+
interface ChannelMetadata {
|
|
517
481
|
channelId: string;
|
|
518
482
|
metadata?: Record<string, unknown> | null;
|
|
519
483
|
}
|
|
@@ -671,7 +635,7 @@ interface DeviceStatusSnapshot extends Device {
|
|
|
671
635
|
scopes: PeerScope[];
|
|
672
636
|
connectionId?: string;
|
|
673
637
|
deviceIdHint?: string;
|
|
674
|
-
|
|
638
|
+
transportStableId?: number | null;
|
|
675
639
|
transportGeneration?: number;
|
|
676
640
|
routeGeneration?: number;
|
|
677
641
|
activeTransport?: ProtocolName;
|
|
@@ -680,9 +644,9 @@ interface DeviceStatusSnapshot extends Device {
|
|
|
680
644
|
/** Latest transport-owned RTT sample for the active route. */
|
|
681
645
|
latencyMs?: number | null;
|
|
682
646
|
/** Passive RTT samples keyed by the exact usable route label. */
|
|
683
|
-
latencyByTransport?:
|
|
647
|
+
latencyByTransport?: LatencySnapshot;
|
|
684
648
|
}
|
|
685
|
-
interface
|
|
649
|
+
interface LatencySnapshot {
|
|
686
650
|
webrtc?: number | null;
|
|
687
651
|
webrtcLan?: number | null;
|
|
688
652
|
webrtcTurn?: number | null;
|
|
@@ -709,7 +673,7 @@ interface ManagedConnectionRecord {
|
|
|
709
673
|
state: string;
|
|
710
674
|
statusReason?: string | null;
|
|
711
675
|
transitionCount?: number;
|
|
712
|
-
|
|
676
|
+
connectTransitions?: number;
|
|
713
677
|
replacementCount?: number;
|
|
714
678
|
retireCount?: number;
|
|
715
679
|
lastDisconnectReason?: string | null;
|
|
@@ -729,21 +693,21 @@ interface PeerSessionSnapshot {
|
|
|
729
693
|
deviceIdHint?: string | null;
|
|
730
694
|
nodeId?: string | null;
|
|
731
695
|
activeConnectionId?: string | null;
|
|
732
|
-
|
|
696
|
+
candidates: string[];
|
|
733
697
|
status: PeerLifecycleStatus;
|
|
734
698
|
health: PeerHealth;
|
|
735
699
|
settledReady?: boolean;
|
|
736
700
|
readinessState?: string;
|
|
737
|
-
|
|
701
|
+
transportStableId?: number | null;
|
|
738
702
|
transportGeneration?: number;
|
|
739
703
|
routeGeneration?: number;
|
|
740
704
|
activeTransport?: ProtocolName;
|
|
741
705
|
parallelTransport?: ProtocolName | null;
|
|
742
706
|
replacementPending?: boolean;
|
|
743
|
-
|
|
707
|
+
lastTransitionAtMs?: number;
|
|
744
708
|
readinessReason?: string;
|
|
745
709
|
transitionCount?: number;
|
|
746
|
-
|
|
710
|
+
connectTransitions?: number;
|
|
747
711
|
replacementCount?: number;
|
|
748
712
|
retireCount?: number;
|
|
749
713
|
lastDisconnectReason?: string | null;
|
|
@@ -819,7 +783,7 @@ interface ExplicitFileDataSendParams {
|
|
|
819
783
|
transferId: string;
|
|
820
784
|
channelId?: string;
|
|
821
785
|
receiverPlatformType?: string | null;
|
|
822
|
-
applicationCrypto?:
|
|
786
|
+
applicationCrypto?: PayloadCrypto;
|
|
823
787
|
requireApplicationCrypto?: boolean;
|
|
824
788
|
}
|
|
825
789
|
/**
|
|
@@ -842,7 +806,7 @@ interface ISignalingBackend {
|
|
|
842
806
|
signInAnonymously(): Promise<void>;
|
|
843
807
|
signInWithPluto?(): Promise<void>;
|
|
844
808
|
signOut(): Promise<void>;
|
|
845
|
-
|
|
809
|
+
stopAuthActivity?(): Promise<void>;
|
|
846
810
|
setCoordinationHostAvailability?(input: {
|
|
847
811
|
available: boolean;
|
|
848
812
|
reason: string;
|
|
@@ -858,12 +822,12 @@ interface ISignalingBackend {
|
|
|
858
822
|
setOffline(localNodeId: string): Promise<void>;
|
|
859
823
|
cleanupStaleDevices(): Promise<void>;
|
|
860
824
|
searchDevices(excludeNodeId?: string): Promise<Device[]>;
|
|
861
|
-
|
|
825
|
+
listDeviceStatus?(): Promise<DeviceStatusSnapshot[]>;
|
|
862
826
|
getPeerSession?(id: string): Promise<PeerSessionSnapshot | null>;
|
|
863
827
|
listPeerSessions?(): Promise<PeerSessionSnapshot[]>;
|
|
864
828
|
waitForSettledPeer?(id: string, timeoutMs?: number): Promise<PeerSessionSnapshot | null>;
|
|
865
829
|
resolvePeerIdentity?(id: string): Promise<ResolvedPeerIdentity>;
|
|
866
|
-
|
|
830
|
+
resolvePeerRecords?(id: string): Promise<ManagedConnectionRecord[]>;
|
|
867
831
|
updateDevice(deviceId: string, updates: {
|
|
868
832
|
deviceName?: string;
|
|
869
833
|
capabilities?: Device['capabilities'];
|
|
@@ -881,16 +845,16 @@ interface ISignalingBackend {
|
|
|
881
845
|
startAutoConnect(userId: string, localDeviceId: string): void;
|
|
882
846
|
submitDesiredPeerProjection?(revision: number, peers: DesiredPeerProjection[]): Promise<void>;
|
|
883
847
|
notifyDisconnectRequested?(remoteNodeId: string): void;
|
|
884
|
-
|
|
848
|
+
startPresence?(userId: string, localNodeId: string, deviceName: string, ticket: string, metadata?: string): Promise<void>;
|
|
885
849
|
startPresenceLoop(userId: string, localNodeId: string, deviceName: string, ticket: string, metadata?: string): void;
|
|
886
850
|
createSession(session: SignalingSession): Promise<void>;
|
|
887
851
|
updateSession(sessionId: string, updateData: any): Promise<void>;
|
|
888
852
|
subscribeSessions(localDeviceId: string): Promise<ReadableStream<SessionEvent[]>>;
|
|
889
|
-
|
|
853
|
+
forceReconnect(): void;
|
|
890
854
|
getLocalDeviceId?(): Promise<string | null>;
|
|
891
855
|
getLocalDeviceInfo?(): Promise<LocalDeviceInfo | null>;
|
|
892
|
-
|
|
893
|
-
|
|
856
|
+
updateDeviceName?(deviceName: string): Promise<LocalDeviceInfo | null>;
|
|
857
|
+
startNativeSession?(options: {
|
|
894
858
|
userId: string;
|
|
895
859
|
deviceName?: string;
|
|
896
860
|
localDeviceId?: string | null;
|
|
@@ -898,7 +862,7 @@ interface ISignalingBackend {
|
|
|
898
862
|
autoConnect?: boolean;
|
|
899
863
|
presence?: boolean;
|
|
900
864
|
}): Promise<NativeManagedSessionStartResult>;
|
|
901
|
-
|
|
865
|
+
syncNativeSession?(options?: {
|
|
902
866
|
reason?: string;
|
|
903
867
|
}): Promise<unknown>;
|
|
904
868
|
notifyNetworkChange?(options?: {
|
|
@@ -922,10 +886,10 @@ interface ISignalingBackend {
|
|
|
922
886
|
*/
|
|
923
887
|
setCoreClient?(client: CoreClientBridgeHost | null): void;
|
|
924
888
|
disconnectDevice?(deviceId: string): Promise<void>;
|
|
925
|
-
|
|
889
|
+
excludeAutoConnect?(deviceId: string, excluded: boolean): Promise<void>;
|
|
926
890
|
isConnected(nodeId: string): Promise<boolean>;
|
|
927
891
|
getConnectionStates?(): Promise<BackendConnectionState[]>;
|
|
928
|
-
|
|
892
|
+
onStateChange?(callback: (state: BackendConnectionState) => void): Promise<() => void> | (() => void);
|
|
929
893
|
/** @deprecated Implement file protocols over named channels, or use `openrtc-file-transfer`. */
|
|
930
894
|
sendExplicitFilePath?(connectionId: string, filePath: string, transferId?: string): Promise<string>;
|
|
931
895
|
/** @deprecated Implement file protocols over named channels, or use `openrtc-file-transfer`. */
|
|
@@ -995,7 +959,7 @@ interface TransportContext {
|
|
|
995
959
|
runtimeFlow?: 'default' | 'ticket-only';
|
|
996
960
|
readerCloseStrategy?: 'cancel' | 'release-lock';
|
|
997
961
|
}
|
|
998
|
-
interface
|
|
962
|
+
interface PayloadCrypto {
|
|
999
963
|
/**
|
|
1000
964
|
* When true, incoming application payloads that are not encrypted by this
|
|
1001
965
|
* envelope are dropped before app callbacks fire.
|
|
@@ -1004,20 +968,20 @@ interface ApplicationPayloadCrypto {
|
|
|
1004
968
|
protectPayload: (typeId: number, payload: Uint8Array) => Uint8Array;
|
|
1005
969
|
openPayload: (expectedTypeId: number, payload: Uint8Array) => Uint8Array | null;
|
|
1006
970
|
}
|
|
1007
|
-
interface
|
|
971
|
+
interface CryptoBiStream {
|
|
1008
972
|
send: WritableStream<Uint8Array>;
|
|
1009
973
|
recv: ReadableStream<Uint8Array>;
|
|
1010
974
|
endpoint_id?: string;
|
|
1011
975
|
}
|
|
1012
|
-
interface
|
|
976
|
+
interface CryptoStreams {
|
|
1013
977
|
readonly typeId: number;
|
|
1014
978
|
protectFrame: (payload: Uint8Array) => Uint8Array;
|
|
1015
979
|
openFrame: (payload: Uint8Array) => Uint8Array | null;
|
|
1016
|
-
|
|
1017
|
-
|
|
980
|
+
outboundTransform: () => TransformStream<Uint8Array, Uint8Array>;
|
|
981
|
+
inboundTransform: () => TransformStream<Uint8Array, Uint8Array>;
|
|
1018
982
|
wrapReadable: (readable: ReadableStream<Uint8Array>) => ReadableStream<Uint8Array>;
|
|
1019
983
|
wrapWritable: (writable: WritableStream<Uint8Array>) => WritableStream<Uint8Array>;
|
|
1020
|
-
wrapBiStream: <T extends
|
|
984
|
+
wrapBiStream: <T extends CryptoBiStream>(stream: T) => T;
|
|
1021
985
|
}
|
|
1022
986
|
interface ApplicationPayloadReadinessOptions {
|
|
1023
987
|
/**
|
|
@@ -1029,7 +993,7 @@ interface ApplicationPayloadReadinessOptions {
|
|
|
1029
993
|
* If a preferred upgraded route cannot be established, allow the connection's
|
|
1030
994
|
* proven application route to carry payloads instead of remaining pending.
|
|
1031
995
|
*/
|
|
1032
|
-
|
|
996
|
+
allowFallback?: boolean;
|
|
1033
997
|
}
|
|
1034
998
|
interface ApplicationPayloadRouteOptions extends ApplicationPayloadReadinessOptions {
|
|
1035
999
|
/**
|
|
@@ -1055,7 +1019,7 @@ interface ConnectionOptions {
|
|
|
1055
1019
|
reliable?: boolean;
|
|
1056
1020
|
rtcConfig?: PlutoRTCConfiguration;
|
|
1057
1021
|
transportContext?: TransportContext;
|
|
1058
|
-
applicationCrypto?:
|
|
1022
|
+
applicationCrypto?: PayloadCrypto;
|
|
1059
1023
|
/**
|
|
1060
1024
|
* Whether the constructor's reader/writer represent a routable base
|
|
1061
1025
|
* application stream. Transport-only ticket channels set this to false:
|
|
@@ -1119,4 +1083,4 @@ interface ITransport {
|
|
|
1119
1083
|
getDataChannelReadyState?(): string | null;
|
|
1120
1084
|
}
|
|
1121
1085
|
|
|
1122
|
-
export type { RouteDescriptor as $, AuthMode as A, BackendPeerBiStream as B, ConnectDeviceResult as C, Device as D, ExplicitFileDataSendParams as E,
|
|
1086
|
+
export type { RouteDescriptor as $, AuthMode as A, BackendPeerBiStream as B, ConnectDeviceResult as C, Device as D, ExplicitFileDataSendParams as E, ApplicationPayloadReadinessOptions as F, GrantScope as G, ApplicationPayloadRouteOptions as H, ISignalingBackend as I, ApplicationPayloadSendOptions as J, ITransport as K, LocalDeviceInfo as L, ManagedConnectionRecord as M, NativeConnectParams as N, LatencySnapshot as O, PlutoIrohConfiguration as P, PeerState as Q, RouteOptimization as R, SignalingMode as S, PeerScope as T, PeerHealth as U, ChannelDescriptor as V, ChannelMetadata as W, ManagedDeviceConnectOptions as X, JoinRoomOptions as Y, DevicePresenceStatus as Z, PeerLifecycleStatus as _, PlutoRTCConfiguration as a, ProtocolCapability as a0, ProtocolCapabilityMap as a1, CryptoStreams as a2, CryptoBiStream as a3, RouteFamily as a4, RouteKind as a5, AppLimits as a6, SignalingOptions as a7, RoomCreationMode as a8, ScanningLoopOptions as a9, ScanningLoopHandle as aa, RuntimeBootstrapOptions as ab, RuntimeBootstrapResult as ac, ManagedApplicationRouteOptions as ad, JoinRequest as ae, PlutoMoQConfiguration as b, ProtocolName as c, PeerSessionSnapshot as d, ResolvedPeerIdentity as e, ConnectDeviceHooks as f, ConnectDeviceOptions as g, ClientOptions as h, CoordinationGatewayGrantRequest as i, CoordinationGatewayGrant as j, DiscoveryMode as k, RoomMember as l, RuntimeIdentity as m, SignalingEnvelope as n, DeviceStatusSnapshot as o, BackendPeerUniStream as p, DeviceEvent as q, DesiredPeerProjection as r, CoreClientBridgeHost as s, NativeConnectResult as t, SignalingSession as u, SessionEvent as v, BackendConnectionState as w, NativeManagedSessionStartResult as x, ConnectionOptions as y, PayloadCrypto as z };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { a as WasmBridgeOptions, D as DelegatingRuntimeAdapter } from './DelegatingRuntimeAdapter-
|
|
3
|
-
import { P as PlutoIpcBridge } from './ipc-
|
|
1
|
+
import { h as ClientOptions } from './ITransport-yaruAmx3.js';
|
|
2
|
+
import { a as WasmBridgeOptions, D as DelegatingRuntimeAdapter } from './DelegatingRuntimeAdapter-BkLR3TNN.js';
|
|
3
|
+
import { P as PlutoIpcBridge } from './ipc-CPnNwv6f.js';
|
|
4
4
|
|
|
5
5
|
interface NativeIpcBridgeOptions extends WasmBridgeOptions {
|
|
6
6
|
allowWasmFallback?: boolean;
|
|
@@ -9,11 +9,11 @@ interface NativeIpcBridgeOptions extends WasmBridgeOptions {
|
|
|
9
9
|
strictMode?: boolean;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
interface
|
|
12
|
+
interface IpcAdapterOptions extends NativeIpcBridgeOptions {
|
|
13
13
|
bridge: PlutoIpcBridge;
|
|
14
14
|
}
|
|
15
15
|
declare class IpcRuntimeAdapter extends DelegatingRuntimeAdapter {
|
|
16
|
-
constructor(options:
|
|
16
|
+
constructor(options: IpcAdapterOptions);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
-
export { IpcRuntimeAdapter as I, type
|
|
19
|
+
export { IpcRuntimeAdapter as I, type IpcAdapterOptions as a };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{z as WasmBridge}from'./chunk-OUFHVLDQ.js';import'./chunk-AJQVMVYW.js';import'./chunk-NXM5ZGHD.js';import'./chunk-NRXEG5GQ.js';import'./chunk-SUWCBTBQ.js';import'./chunk-LN4ALFT6.js';
|