openrtc 1.0.17 → 1.0.19

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 (41) hide show
  1. package/dist/{DelegatingRuntimeAdapter-BI3X2b70.d.ts → DelegatingRuntimeAdapter-B9j_lTDM.d.ts} +8 -3
  2. package/dist/IEngineBridge-BbsT8hof.d.ts +17 -0
  3. package/dist/{assembly-DVSN6YWK.d.ts → assembly-Ddq1o4NV.d.ts} +9 -9
  4. package/dist/auth/index.d.ts +2 -1
  5. package/dist/auth/index.js +1 -1
  6. package/dist/auth/internal.d.ts +1 -0
  7. package/dist/auth/internal.js +1 -1
  8. package/dist/{capabilities-C4Dqs_pB.d.ts → capabilities-CaqXOIUU.d.ts} +2 -2
  9. package/dist/{chunk-3VRPF24X.js → chunk-2QFNPBOZ.js} +2 -2
  10. package/dist/chunk-AIHDHYZP.js +2 -0
  11. package/dist/chunk-E5CLEIY6.js +2 -0
  12. package/dist/chunk-IF5JSSMC.js +1 -0
  13. package/dist/{chunk-BBZRARGN.js → chunk-JUXDXE5B.js} +1 -1
  14. package/dist/chunk-SY6YGCXA.js +2 -0
  15. package/dist/chunk-WRJ4O5QL.js +2 -0
  16. package/dist/chunk-XQD4RPMU.js +3 -0
  17. package/dist/index.d.ts +9 -9
  18. package/dist/index.js +1 -1
  19. package/dist/native.d.ts +7 -7
  20. package/dist/native.js +1 -1
  21. package/dist/openrtc_bg.wasm +0 -0
  22. package/dist/runtime/WasmRuntimeAdapter.d.ts +4 -4
  23. package/dist/runtime/WasmRuntimeAdapter.js +1 -1
  24. package/dist/runtime/device-status.d.ts +3 -3
  25. package/dist/runtime/index.d.ts +22 -171
  26. package/dist/runtime/index.js +1 -1
  27. package/dist/runtime/tauri.d.ts +5 -5
  28. package/dist/runtime/tauri.js +1 -1
  29. package/dist/{spaceTokens-ByYtj9ZL.d.ts → spaceTokens-DyOOxC7x.d.ts} +5 -5
  30. package/dist/{tauri-BSnc9fmI.d.ts → tauri-DZJ_ZEfB.d.ts} +2 -2
  31. package/dist/transport/index.d.ts +2 -2
  32. package/dist/{types-_GcCIpNA.d.ts → types-BAwo8biA.d.ts} +29 -2
  33. package/dist/{types-f694LxEL.d.ts → types-CL4Da0BR.d.ts} +45 -1
  34. package/package.json +3 -3
  35. package/dist/IEngineBridge-C7OT2CRv.d.ts +0 -10
  36. package/dist/chunk-7J4U5BRY.js +0 -1
  37. package/dist/chunk-C2CA4PGO.js +0 -3
  38. package/dist/chunk-GSRISHN4.js +0 -2
  39. package/dist/chunk-KNZQ3MD7.js +0 -2
  40. package/dist/chunk-LIEFXSLP.js +0 -2
  41. package/dist/chunk-XGTSTZEX.js +0 -2
package/dist/index.d.ts CHANGED
@@ -1,16 +1,16 @@
1
- import { R as RuntimeClientOptions, I as ITransport } from './types-_GcCIpNA.js';
2
- export { w as ChannelDescriptor, x as ConnectionEvent, y as ConnectionTarget, D as DeviceProfile, z as IncomingStream, P as PeerConnectOptions, A as PeerReadiness, B as PeerStreamOptions, E as PresenceLoopOptions, F as RawConnection, t as RuntimeApplicationPayloadReadinessOptions, G as RuntimeAuthContext, H as RuntimeAuthIdentity, J as RuntimeAutoConnectPolicy, l as RuntimeChannelDescriptor, u as RuntimeConnectionEvent, s as RuntimeConnectionStateSnapshot, K as RuntimeConnectionTarget, c as RuntimeDevice, e as RuntimeDeviceConnectOptions, L as RuntimeDevicePresenceStatus, M as RuntimeDeviceStatus, d as RuntimeDeviceStatusSnapshot, n as RuntimeIncomingStream, q as RuntimeJoinRoomOptions, f as RuntimeLocalDeviceInfo, g as RuntimeLocalDeviceProfile, N as RuntimeLogicalChannelFraming, b as RuntimeManagedSession, O as RuntimeManagedSessionKind, a as RuntimeManagedSessionOptions, Q as RuntimeManagedSessionPlatform, i as RuntimePeerConnectOptions, k as RuntimePeerHealth, S as RuntimePeerLifecycleStatus, j as RuntimePeerReadinessSnapshot, T as RuntimePeerScope, U as RuntimePeerSessionSnapshot, h as RuntimePeerState, m as RuntimePeerStreamOptions, V as RuntimePresenceLoopOptions, W as RuntimePresencePolicy, v as RuntimeRawConnection, r as RuntimeRoomMember, o as RuntimeScopedChannelOptions, p as RuntimeScopedLogicalChannel, X as RuntimeSession, Y as RuntimeUiConnectionStatus, Z as ScopedChannelOptions, _ as ScopedLogicalChannel } from './types-_GcCIpNA.js';
1
+ import { R as RuntimeClientOptions, I as ITransport } from './types-BAwo8biA.js';
2
+ export { w as ChannelDescriptor, x as ConnectionEvent, y as ConnectionTarget, D as DeviceProfile, z as IncomingStream, P as PeerConnectOptions, A as PeerReadiness, B as PeerStreamOptions, E as PresenceLoopOptions, F as RawConnection, t as RuntimeApplicationPayloadReadinessOptions, G as RuntimeAuthContext, H as RuntimeAuthIdentity, J as RuntimeAutoConnectPolicy, l as RuntimeChannelDescriptor, u as RuntimeConnectionEvent, s as RuntimeConnectionStateSnapshot, K as RuntimeConnectionTarget, c as RuntimeDevice, e as RuntimeDeviceConnectOptions, L as RuntimeDevicePresenceStatus, M as RuntimeDeviceStatus, d as RuntimeDeviceStatusSnapshot, n as RuntimeIncomingStream, q as RuntimeJoinRoomOptions, f as RuntimeLocalDeviceInfo, g as RuntimeLocalDeviceProfile, N as RuntimeLogicalChannelFraming, b as RuntimeManagedSession, O as RuntimeManagedSessionKind, a as RuntimeManagedSessionOptions, Q as RuntimeManagedSessionPlatform, i as RuntimePeerConnectOptions, k as RuntimePeerHealth, S as RuntimePeerLifecycleStatus, j as RuntimePeerReadinessSnapshot, T as RuntimePeerScope, U as RuntimePeerSessionSnapshot, h as RuntimePeerState, m as RuntimePeerStreamOptions, V as RuntimePresenceLoopOptions, W as RuntimePresencePolicy, v as RuntimeRawConnection, r as RuntimeRoomMember, o as RuntimeScopedChannelOptions, p as RuntimeScopedLogicalChannel, X as RuntimeSession, Y as RuntimeUiConnectionStatus, Z as ScopedChannelOptions, _ as ScopedLogicalChannel } from './types-BAwo8biA.js';
3
3
  import { P as PlutoIpcBridge } from './ipc-CflAVodw.js';
4
- import { O as OpenRTCClient } from './spaceTokens-ByYtj9ZL.js';
5
- export { E as EnableSpaceAuthResponse, M as MintSpaceTokenRequest, a as MintSpaceTokenResponse, b as OpenRTCChannelConnectOptions, c as OpenRTCDeviceNamespace, d as OpenRTCDeviceSessionOptions, e as OpenRTCRoomNamespace, f as OpenRTCTicketNamespace, g as createPublicSpaceTokenProvider, h as createSpaceTokenProvider, i as enableSpaceAuth, m as mintSpaceToken, s as sandboxSpaceKey, j as spaceToken } from './spaceTokens-ByYtj9ZL.js';
6
- import { v as ProtocolName, U as ProtocolCapability, V as ProtocolCapabilityMap, s as ApplicationPayloadCrypto, W as ApplicationCryptoStreamTools } from './types-f694LxEL.js';
7
- export { X as AppLimits, Y as ApplicationCryptoBiStream, t as ApplicationPayloadReadinessOptions, u as ApplicationPayloadRouteOptions, w as ApplicationPayloadSendOptions, A as AuthMode, O as DevicePresenceStatus, D as DiscoveryMode, G as GrantScope, Z as ProtocolBaseName, _ as ProtocolImplementationKind, $ as ProtocolLocality, a0 as RouteDescriptor, a1 as RouteFamily, a2 as RouteImplementationKind, d as SignalingMode, S as SpaceAuthMode, a as SpaceTokenProvider } from './types-f694LxEL.js';
4
+ import { O as OpenRTCClient } from './spaceTokens-DyOOxC7x.js';
5
+ export { E as EnableSpaceAuthResponse, M as MintSpaceTokenRequest, a as MintSpaceTokenResponse, b as OpenRTCChannelConnectOptions, c as OpenRTCDeviceNamespace, d as OpenRTCDeviceSessionOptions, e as OpenRTCRoomNamespace, f as OpenRTCTicketNamespace, g as createPublicSpaceTokenProvider, h as createSpaceTokenProvider, i as enableSpaceAuth, m as mintSpaceToken, s as sandboxSpaceKey, j as spaceToken } from './spaceTokens-DyOOxC7x.js';
6
+ import { w as ProtocolName, V as ProtocolCapability, W as ProtocolCapabilityMap, t as ApplicationPayloadCrypto, X as ApplicationCryptoStreamTools } from './types-CL4Da0BR.js';
7
+ export { Y as AppLimits, Z as ApplicationCryptoBiStream, u as ApplicationPayloadReadinessOptions, v as ApplicationPayloadRouteOptions, x as ApplicationPayloadSendOptions, A as AuthMode, Q as DevicePresenceStatus, D as DiscoveryMode, G as GrantScope, _ as ProtocolBaseName, $ as ProtocolImplementationKind, a0 as ProtocolLocality, a1 as RouteDescriptor, a2 as RouteFamily, a3 as RouteImplementationKind, d as SignalingMode, S as SpaceAuthMode, a as SpaceTokenProvider } from './types-CL4Da0BR.js';
8
8
  export { ROUTE_DESCRIPTORS, TRANSPORT_LABELS, getRouteDescriptor, isDirectIrohTransportLabel, isIndependentTransportLabel, isIrohBaseTransportLabel, isOptionalTransportLabel, isWebRtcTransportLabel, listRouteDescriptors, normalizeTransportLabel } from './transport/index.js';
9
9
  export { isRuntimeDeviceActive, isRuntimeDeviceConnectable, isRuntimeDeviceRoutable } from './runtime/device-status.js';
10
10
  export { R as RuntimeJsonFrameHandler, a as RuntimeU32BEFrameHandler, c as createRuntimeJsonFrameDecoder, b as createRuntimeU32BEFrameDecoder, d as decodeRuntimeJsonPayload, e as encodeRuntimeJsonFrame, f as encodeRuntimeJsonPayload, g as encodeRuntimeU32BEFrame } from './framing-zRvEKOld.js';
11
- export { O as OPENRTC_RUNTIME_POLICY, a as RuntimePolicySnapshot, S as ScopedSession, c as Session, d as SessionOptions, g as getRuntimePolicy } from './assembly-DVSN6YWK.js';
12
- export { b as RuntimeAdapterKind, R as RuntimeCapabilities } from './capabilities-C4Dqs_pB.js';
13
- import './IEngineBridge-C7OT2CRv.js';
11
+ export { O as OPENRTC_RUNTIME_POLICY, a as RuntimePolicySnapshot, S as ScopedSession, c as Session, d as SessionOptions, g as getRuntimePolicy } from './assembly-Ddq1o4NV.js';
12
+ export { b as RuntimeAdapterKind, R as RuntimeCapabilities } from './capabilities-CaqXOIUU.js';
13
+ import './IEngineBridge-BbsT8hof.js';
14
14
 
15
15
  /**
16
16
  * OpenRTC developer-facing browser entrypoint and compatibility native factory.
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import {a,b}from'./chunk-3VRPF24X.js';export{e as createPublicSpaceTokenProvider,h as createSpaceTokenProvider,c as enableSpaceAuth,d as mintSpaceToken,f as sandboxSpaceKey,g as spaceToken}from'./chunk-3VRPF24X.js';import {a as a$1,b as b$1}from'./chunk-KNZQ3MD7.js';export{d as KEY_AGREEMENT_ALGORITHM,c as KEY_AGREEMENT_PUBLIC_KEY_BYTES,h as ScopedSession,w as createRuntimeJsonFrameDecoder,s as createRuntimeU32BEFrameDecoder,u as decodeRuntimeJsonPayload,f as deriveApplicationCryptoKey,g as encodeApplicationKeyAgreementPayload,v as encodeRuntimeJsonFrame,t as encodeRuntimeJsonPayload,r as encodeRuntimeU32BEFrame,e as generateEphemeralKeyAgreement,b as getPreferredProtocolOrder}from'./chunk-C2CA4PGO.js';export{a as isRuntimeDeviceActive,c as isRuntimeDeviceConnectable,b as isRuntimeDeviceRoutable}from'./chunk-CK6WQV7J.js';import'./chunk-7J4U5BRY.js';import {g}from'./chunk-GSRISHN4.js';export{x as OPENRTC_RUNTIME_POLICY,o as createApplicationCryptoStreamTools,n as createSharedSecretApplicationCrypto,y as getRuntimePolicy,m as isApplicationEncryptedPayload}from'./chunk-XGTSTZEX.js';export{a as TRANSPORT_LABELS,d as isDirectIrohTransportLabel,h as isIndependentTransportLabel,c as isIrohBaseTransportLabel,e as isOptionalTransportLabel,f as isWebRtcTransportLabel,b as normalizeTransportLabel}from'./chunk-QT2ASNI3.js';import'./chunk-LIEFXSLP.js';export{a as ROUTE_DESCRIPTORS,e as getRouteDescriptor,f as listRouteDescriptors}from'./chunk-C7YN5MSV.js';function s(e){let t=a(e),o=a$1(t);return b(o,"web")}s.native=function(e,t){let o=a(e),c=t??g(),m=b$1(o,c);return b(m,"native")};export{s as OpenRTC};
1
+ import {a,b}from'./chunk-2QFNPBOZ.js';export{e as createPublicSpaceTokenProvider,h as createSpaceTokenProvider,c as enableSpaceAuth,d as mintSpaceToken,f as sandboxSpaceKey,g as spaceToken}from'./chunk-2QFNPBOZ.js';import {a as a$1,b as b$1}from'./chunk-WRJ4O5QL.js';export{d as KEY_AGREEMENT_ALGORITHM,c as KEY_AGREEMENT_PUBLIC_KEY_BYTES,h as ScopedSession,w as createRuntimeJsonFrameDecoder,s as createRuntimeU32BEFrameDecoder,u as decodeRuntimeJsonPayload,f as deriveApplicationCryptoKey,g as encodeApplicationKeyAgreementPayload,v as encodeRuntimeJsonFrame,t as encodeRuntimeJsonPayload,r as encodeRuntimeU32BEFrame,e as generateEphemeralKeyAgreement,b as getPreferredProtocolOrder}from'./chunk-XQD4RPMU.js';export{a as isRuntimeDeviceActive,c as isRuntimeDeviceConnectable,b as isRuntimeDeviceRoutable}from'./chunk-CK6WQV7J.js';import'./chunk-IF5JSSMC.js';import {g}from'./chunk-E5CLEIY6.js';export{v as OPENRTC_RUNTIME_POLICY,m as createApplicationCryptoStreamTools,l as createSharedSecretApplicationCrypto,w as getRuntimePolicy,k as isApplicationEncryptedPayload}from'./chunk-AIHDHYZP.js';export{a as TRANSPORT_LABELS,d as isDirectIrohTransportLabel,h as isIndependentTransportLabel,c as isIrohBaseTransportLabel,e as isOptionalTransportLabel,f as isWebRtcTransportLabel,b as normalizeTransportLabel}from'./chunk-QT2ASNI3.js';import'./chunk-SY6YGCXA.js';export{a as ROUTE_DESCRIPTORS,e as getRouteDescriptor,f as listRouteDescriptors}from'./chunk-C7YN5MSV.js';function s(e){let t=a(e),o=a$1(t);return b(o,"web")}s.native=function(e,t){let o=a(e),c=t??g(),m=b$1(o,c);return b(m,"native")};export{s as OpenRTC};
package/dist/native.d.ts CHANGED
@@ -1,12 +1,12 @@
1
- import { R as RuntimeClientOptions } from './types-_GcCIpNA.js';
1
+ import { R as RuntimeClientOptions } from './types-BAwo8biA.js';
2
2
  import { P as PlutoIpcBridge } from './ipc-CflAVodw.js';
3
3
  export { c as classifyNativeIpcFailure, i as isNativeIpcCommandUnavailable } from './ipc-CflAVodw.js';
4
- import { O as OpenRTCClient } from './spaceTokens-ByYtj9ZL.js';
5
- export { E as EnableSpaceAuthResponse, M as MintSpaceTokenRequest, a as MintSpaceTokenResponse, b as OpenRTCChannelConnectOptions, c as OpenRTCDeviceNamespace, d as OpenRTCDeviceSessionOptions, e as OpenRTCRoomNamespace, f as OpenRTCTicketNamespace, g as createPublicSpaceTokenProvider, h as createSpaceTokenProvider, i as enableSpaceAuth, m as mintSpaceToken, s as sandboxSpaceKey, j as spaceToken } from './spaceTokens-ByYtj9ZL.js';
6
- export { S as SpaceAuthMode, a as SpaceTokenProvider } from './types-f694LxEL.js';
7
- import './IEngineBridge-C7OT2CRv.js';
8
- import './assembly-DVSN6YWK.js';
9
- import './capabilities-C4Dqs_pB.js';
4
+ import { O as OpenRTCClient } from './spaceTokens-DyOOxC7x.js';
5
+ export { E as EnableSpaceAuthResponse, M as MintSpaceTokenRequest, a as MintSpaceTokenResponse, b as OpenRTCChannelConnectOptions, c as OpenRTCDeviceNamespace, d as OpenRTCDeviceSessionOptions, e as OpenRTCRoomNamespace, f as OpenRTCTicketNamespace, g as createPublicSpaceTokenProvider, h as createSpaceTokenProvider, i as enableSpaceAuth, m as mintSpaceToken, s as sandboxSpaceKey, j as spaceToken } from './spaceTokens-DyOOxC7x.js';
6
+ export { S as SpaceAuthMode, a as SpaceTokenProvider } from './types-CL4Da0BR.js';
7
+ import './IEngineBridge-BbsT8hof.js';
8
+ import './assembly-Ddq1o4NV.js';
9
+ import './capabilities-CaqXOIUU.js';
10
10
 
11
11
  /**
12
12
  * Native-only OpenRTC entrypoint.
package/dist/native.js CHANGED
@@ -1 +1 @@
1
- import {a,b}from'./chunk-3VRPF24X.js';export{e as createPublicSpaceTokenProvider,h as createSpaceTokenProvider,c as enableSpaceAuth,d as mintSpaceToken,f as sandboxSpaceKey,g as spaceToken}from'./chunk-3VRPF24X.js';import {A as A$1}from'./chunk-C2CA4PGO.js';import {h}from'./chunk-GSRISHN4.js';export{e as classifyNativeIpcFailure,f as isNativeIpcCommandUnavailable}from'./chunk-GSRISHN4.js';import'./chunk-XGTSTZEX.js';import'./chunk-QT2ASNI3.js';import {s}from'./chunk-LIEFXSLP.js';import'./chunk-C7YN5MSV.js';function c(t,p){let e=s(t);return A$1(e,new h({...e,bridge:p}))}function A(t,p){let e=c(a(t),p);return b(e,"native")}export{A as createNativeOpenRTC};
1
+ import {a,b}from'./chunk-2QFNPBOZ.js';export{e as createPublicSpaceTokenProvider,h as createSpaceTokenProvider,c as enableSpaceAuth,d as mintSpaceToken,f as sandboxSpaceKey,g as spaceToken}from'./chunk-2QFNPBOZ.js';import {A as A$1}from'./chunk-XQD4RPMU.js';import {h}from'./chunk-E5CLEIY6.js';export{e as classifyNativeIpcFailure,f as isNativeIpcCommandUnavailable}from'./chunk-E5CLEIY6.js';import'./chunk-AIHDHYZP.js';import'./chunk-QT2ASNI3.js';import {s}from'./chunk-SY6YGCXA.js';import'./chunk-C7YN5MSV.js';function c(t,p){let e=s(t);return A$1(e,new h({...e,bridge:p}))}function A(t,p){let e=c(a(t),p);return b(e,"native")}export{A as createNativeOpenRTC};
Binary file
@@ -1,7 +1,7 @@
1
- import { D as DelegatingRuntimeAdapter, W as WasmBridgeOptions } from '../DelegatingRuntimeAdapter-BI3X2b70.js';
2
- import '../types-f694LxEL.js';
3
- import '../IEngineBridge-C7OT2CRv.js';
4
- import '../capabilities-C4Dqs_pB.js';
1
+ import { D as DelegatingRuntimeAdapter, W as WasmBridgeOptions } from '../DelegatingRuntimeAdapter-B9j_lTDM.js';
2
+ import '../types-CL4Da0BR.js';
3
+ import '../IEngineBridge-BbsT8hof.js';
4
+ import '../capabilities-CaqXOIUU.js';
5
5
 
6
6
  declare class WasmRuntimeAdapter extends DelegatingRuntimeAdapter {
7
7
  constructor(options: WasmBridgeOptions);
@@ -1 +1 @@
1
- export{a as WasmRuntimeAdapter}from'../chunk-7J4U5BRY.js';import'../chunk-XGTSTZEX.js';import'../chunk-QT2ASNI3.js';import'../chunk-LIEFXSLP.js';import'../chunk-C7YN5MSV.js';
1
+ export{a as WasmRuntimeAdapter}from'../chunk-IF5JSSMC.js';import'../chunk-AIHDHYZP.js';import'../chunk-QT2ASNI3.js';import'../chunk-SY6YGCXA.js';import'../chunk-C7YN5MSV.js';
@@ -1,6 +1,6 @@
1
- import { c as RuntimeDevice, d as RuntimeDeviceStatusSnapshot } from '../types-_GcCIpNA.js';
2
- import '../IEngineBridge-C7OT2CRv.js';
3
- import '../types-f694LxEL.js';
1
+ import { c as RuntimeDevice, d as RuntimeDeviceStatusSnapshot } from '../types-BAwo8biA.js';
2
+ import '../IEngineBridge-BbsT8hof.js';
3
+ import '../types-CL4Da0BR.js';
4
4
 
5
5
  interface RuntimeDeviceActiveOptions {
6
6
  now?: number;
@@ -1,155 +1,20 @@
1
- import { e as RuntimeFactoryOptions, b as PlutoRuntimeAssembly, P as PeerReconciliationStats } from '../assembly-DVSN6YWK.js';
2
- export { O as OPENRTC_RUNTIME_POLICY, R as RuntimeClient, a as RuntimePolicySnapshot, D as ScopedConnectionActorError, f as ScopedConnectionActorErrorKind, h as ScopedConnectionActorHandle, i as ScopedConnectionActorHandleOptions, j as ScopedConnectionActorRegistry, k as ScopedConnectionActorState, l as ScopedConnectionClose, m as ScopedConnectionDial, n as ScopedConnectionKey, o as ScopedLogicalChannelHandle, p as ScopedPreferredTransport, g as getRuntimePolicy, q as scopedConnectionKey, r as scopedConnectionKeyToString } from '../assembly-DVSN6YWK.js';
1
+ import { e as RuntimeFactoryOptions, b as PlutoRuntimeAssembly, P as PeerReconciliationStats } from '../assembly-Ddq1o4NV.js';
2
+ export { O as OPENRTC_RUNTIME_POLICY, R as RuntimeClient, a as RuntimePolicySnapshot, D as ScopedConnectionActorError, f as ScopedConnectionActorErrorKind, h as ScopedConnectionActorHandle, i as ScopedConnectionActorHandleOptions, j as ScopedConnectionActorRegistry, k as ScopedConnectionActorState, l as ScopedConnectionClose, m as ScopedConnectionDial, n as ScopedConnectionKey, o as ScopedLogicalChannelHandle, p as ScopedPreferredTransport, g as getRuntimePolicy, q as scopedConnectionKey, r as scopedConnectionKeyToString } from '../assembly-Ddq1o4NV.js';
3
3
  import * as Draft14 from '@moq/net';
4
- import { a3 as SignalingOptions, I as ISignalingBackend, f as RuntimeIdentity, g as RoomMember, j as SignalingEnvelope, l as SignalingSession, h as Device, q as BackendConnectionState, X as AppLimits, G as GrantScope, J as JoinRoomOptions, y as IncomingStreamChannelMetadata, W as ApplicationCryptoStreamTools, a4 as RoomCreationMode, e as ClientOptions, s as ApplicationPayloadCrypto, D as DiscoveryMode, V as ProtocolCapabilityMap, a5 as ScanningLoopOptions, a6 as ScanningLoopHandle, a7 as RuntimeBootstrapOptions, a8 as RuntimeBootstrapResult, t as ApplicationPayloadReadinessOptions, a9 as ManagedApplicationRouteOptions, F as PeerState, K as PeerScope, H as PeerHealth, x as ChannelDescriptor, aa as JoinRequest, o as NativeConnectParams, p as NativeConnectResult } from '../types-f694LxEL.js';
5
- import { C as Connection, K as RuntimeConnectionTarget, v as RuntimeRawConnection } from '../types-_GcCIpNA.js';
6
- export { w as ChannelDescriptor, x as ConnectionEvent, y as ConnectionTarget, D as DeviceProfile, z as IncomingStream, P as PeerConnectOptions, A as PeerReadiness, B as PeerStreamOptions, E as PresenceLoopOptions, F as RawConnection, t as RuntimeApplicationPayloadReadinessOptions, G as RuntimeAuthContext, H as RuntimeAuthIdentity, J as RuntimeAutoConnectPolicy, l as RuntimeChannelDescriptor, R as RuntimeClientOptions, u as RuntimeConnectionEvent, s as RuntimeConnectionStateSnapshot, c as RuntimeDevice, e as RuntimeDeviceConnectOptions, L as RuntimeDevicePresenceStatus, M as RuntimeDeviceStatus, d as RuntimeDeviceStatusSnapshot, n as RuntimeIncomingStream, q as RuntimeJoinRoomOptions, f as RuntimeLocalDeviceInfo, g as RuntimeLocalDeviceProfile, N as RuntimeLogicalChannelFraming, b as RuntimeManagedSession, O as RuntimeManagedSessionKind, a as RuntimeManagedSessionOptions, Q as RuntimeManagedSessionPlatform, i as RuntimePeerConnectOptions, k as RuntimePeerHealth, S as RuntimePeerLifecycleStatus, j as RuntimePeerReadinessSnapshot, T as RuntimePeerScope, U as RuntimePeerSessionSnapshot, h as RuntimePeerState, m as RuntimePeerStreamOptions, V as RuntimePresenceLoopOptions, W as RuntimePresencePolicy, r as RuntimeRoomMember, o as RuntimeScopedChannelOptions, p as RuntimeScopedLogicalChannel, X as RuntimeSession, Y as RuntimeUiConnectionStatus, Z as ScopedChannelOptions, _ as ScopedLogicalChannel, $ as Session, a0 as SessionOptions } from '../types-_GcCIpNA.js';
7
- import { FirebaseApp } from 'firebase/app';
8
- import { R as RuntimeCapabilities } from '../capabilities-C4Dqs_pB.js';
9
- export { B as BROWSER_WASM_RUNTIME_CAPABILITIES, c as BrowserRuntimeCapabilityHost, N as NATIVE_IPC_RUNTIME_CAPABILITIES, d as NativeRuntimeStatusSnapshot, e as NativeRuntimeTransportFeatureStatus, b as RuntimeAdapterKind, a as RuntimeCapabilityProfile, f as cloneRuntimeCapabilities, r as runtimeCapabilitiesForBrowserHost, g as runtimeCapabilitiesFromNativeStatus, h as runtimeCapabilityProfile } from '../capabilities-C4Dqs_pB.js';
4
+ import { a4 as SignalingOptions, I as ISignalingBackend, f as RuntimeIdentity, g as RoomMember, j as SignalingEnvelope, m as SignalingSession, h as Device, l as DesiredPeerProjection, r as BackendConnectionState, Y as AppLimits, G as GrantScope, K as JoinRoomOptions, z as IncomingStreamChannelMetadata, X as ApplicationCryptoStreamTools, a5 as RoomCreationMode, e as ClientOptions, t as ApplicationPayloadCrypto, D as DiscoveryMode, W as ProtocolCapabilityMap, a6 as ScanningLoopOptions, a7 as ScanningLoopHandle, a8 as RuntimeBootstrapOptions, a9 as RuntimeBootstrapResult, u as ApplicationPayloadReadinessOptions, aa as ManagedApplicationRouteOptions, H as PeerState, O as PeerScope, J as PeerHealth, y as ChannelDescriptor, ab as JoinRequest, p as NativeConnectParams, q as NativeConnectResult } from '../types-CL4Da0BR.js';
5
+ import { C as Connection, K as RuntimeConnectionTarget, v as RuntimeRawConnection } from '../types-BAwo8biA.js';
6
+ export { w as ChannelDescriptor, x as ConnectionEvent, y as ConnectionTarget, D as DeviceProfile, z as IncomingStream, P as PeerConnectOptions, A as PeerReadiness, B as PeerStreamOptions, E as PresenceLoopOptions, F as RawConnection, t as RuntimeApplicationPayloadReadinessOptions, G as RuntimeAuthContext, H as RuntimeAuthIdentity, J as RuntimeAutoConnectPolicy, l as RuntimeChannelDescriptor, R as RuntimeClientOptions, u as RuntimeConnectionEvent, s as RuntimeConnectionStateSnapshot, c as RuntimeDevice, e as RuntimeDeviceConnectOptions, L as RuntimeDevicePresenceStatus, M as RuntimeDeviceStatus, d as RuntimeDeviceStatusSnapshot, n as RuntimeIncomingStream, q as RuntimeJoinRoomOptions, f as RuntimeLocalDeviceInfo, g as RuntimeLocalDeviceProfile, N as RuntimeLogicalChannelFraming, b as RuntimeManagedSession, O as RuntimeManagedSessionKind, a as RuntimeManagedSessionOptions, Q as RuntimeManagedSessionPlatform, i as RuntimePeerConnectOptions, k as RuntimePeerHealth, S as RuntimePeerLifecycleStatus, j as RuntimePeerReadinessSnapshot, T as RuntimePeerScope, U as RuntimePeerSessionSnapshot, h as RuntimePeerState, m as RuntimePeerStreamOptions, V as RuntimePresenceLoopOptions, W as RuntimePresencePolicy, r as RuntimeRoomMember, o as RuntimeScopedChannelOptions, p as RuntimeScopedLogicalChannel, X as RuntimeSession, Y as RuntimeUiConnectionStatus, Z as ScopedChannelOptions, _ as ScopedLogicalChannel, $ as Session, a0 as SessionOptions } from '../types-BAwo8biA.js';
7
+ import { R as RuntimeCapabilities } from '../capabilities-CaqXOIUU.js';
8
+ export { B as BROWSER_WASM_RUNTIME_CAPABILITIES, c as BrowserRuntimeCapabilityHost, N as NATIVE_IPC_RUNTIME_CAPABILITIES, d as NativeRuntimeStatusSnapshot, e as NativeRuntimeTransportFeatureStatus, b as RuntimeAdapterKind, a as RuntimeCapabilityProfile, f as cloneRuntimeCapabilities, r as runtimeCapabilitiesForBrowserHost, g as runtimeCapabilitiesFromNativeStatus, h as runtimeCapabilityProfile } from '../capabilities-CaqXOIUU.js';
10
9
  export { RuntimeDeviceActiveOptions, isRuntimeDeviceActive, isRuntimeDeviceConnectable, isRuntimeDeviceRoutable } from './device-status.js';
11
10
  export { h as RuntimeJsonFrameDecoderOptions, R as RuntimeJsonFrameHandler, a as RuntimeU32BEFrameHandler, i as concatRuntimeBytes, c as createRuntimeJsonFrameDecoder, b as createRuntimeU32BEFrameDecoder, d as decodeRuntimeJsonPayload, e as encodeRuntimeJsonFrame, f as encodeRuntimeJsonPayload, g as encodeRuntimeU32BEFrame, r as readRuntimeU32BE } from '../framing-zRvEKOld.js';
12
- import { I as IpcRuntimeAdapter } from '../tauri-BSnc9fmI.js';
13
- export { a as IpcRuntimeAdapterOptions, T as TauriRuntimeAdapter, b as TauriRuntimeAdapterOptions, c as createTauriIpcBridge } from '../tauri-BSnc9fmI.js';
11
+ import { I as IpcRuntimeAdapter } from '../tauri-DZJ_ZEfB.js';
12
+ export { a as IpcRuntimeAdapterOptions, T as TauriRuntimeAdapter, b as TauriRuntimeAdapterOptions, c as createTauriIpcBridge } from '../tauri-DZJ_ZEfB.js';
14
13
  import { WasmRuntimeAdapter } from './WasmRuntimeAdapter.js';
15
14
  import { P as PlutoIpcBridge } from '../ipc-CflAVodw.js';
16
15
  export { N as NativeIpcFailureKind, a as PlutoIpcUnlisten, c as classifyNativeIpcFailure, i as isNativeIpcCommandUnavailable } from '../ipc-CflAVodw.js';
17
- import '../IEngineBridge-C7OT2CRv.js';
18
- import '../DelegatingRuntimeAdapter-BI3X2b70.js';
19
-
20
- /**
21
- * RtdbPresence — Phase 1 RTDB-backed device presence.
22
- *
23
- * Replaces the 60-second Firestore heartbeat loop with Firebase Realtime
24
- * Database `onDisconnect` hooks. When a client disconnects (tab close,
25
- * crash, network loss), the RTDB server automatically writes the offline
26
- * state. A shared `.info/connected` listener republishes desired online state
27
- * after WebSocket reconnects, and server cleanup compacts old offline nodes.
28
- *
29
- * RTDB paths mirror the Firestore device collection paths:
30
- *
31
- * space/spaceKey → presence/spaces/{namespaceId}/devices/{deviceId}/instances/{runtimeInstanceId}
32
- * user-scoped → presence/{appTag}/users/{userId}/devices/{deviceId}/instances/{runtimeInstanceId}
33
- *
34
- * Space RTDB paths require scoped Firebase auth
35
- * (`namespaceId` or `space::{namespaceId}` appTag claim). If that scope is not
36
- * available, Firestore may still hold the durable ticket record, but it must
37
- * not become a recurring liveness heartbeat.
38
- *
39
- * Ticket version invalidation:
40
- * Each presence node stores a `ticketVersion` integer. WasmBridge bumps it
41
- * whenever it publishes a new endpoint ticket. Subscribers compare the
42
- * received ticketVersion against their cached value; if it differs they
43
- * re-fetch the full device doc from Firestore when needed. Presence nodes may
44
- * also carry the current ticket directly so native clients can refresh
45
- * connection data without using Firestore as a heartbeat bus.
46
- */
47
-
48
- interface RtdbDevicePresence {
49
- online: boolean;
50
- ticketVersion: number;
51
- leaseExpiresAt?: number;
52
- ticket?: string;
53
- nodeId?: string;
54
- deviceName?: string;
55
- platformType?: string;
56
- metadata?: string;
57
- excludedPeers?: string[];
58
- }
59
- type RtdbPresenceMap = Record<string, RtdbDevicePresence>;
60
- type DiscoveryPresenceScope = {
61
- kind: 'user-scoped';
62
- appTag: string;
63
- userId: string;
64
- } | {
65
- kind: 'space';
66
- namespaceId: string;
67
- };
68
- interface RtdbPresenceRosterFields {
69
- ticket?: string;
70
- nodeId?: string;
71
- deviceName?: string;
72
- platformType?: string;
73
- metadata?: string;
74
- excludedPeers?: string[];
75
- }
76
- interface RtdbMemberPresence {
77
- online: boolean;
78
- leaseExpiresAt?: number;
79
- }
80
- type RtdbRoomPresenceMap = Record<string, RtdbMemberPresence>;
81
- declare class RtdbPresence {
82
- private readonly app;
83
- private readonly auth;
84
- private readonly db;
85
- private readonly runtimeInstanceId;
86
- private readonly desiredOnlineNodes;
87
- private connected;
88
- private connectedUnsubscribe;
89
- private leaseRefreshTimer;
90
- private readonly activeSubscriptions;
91
- private readonly economicPresenceLease;
92
- constructor(app: FirebaseApp, runtimeInstanceId?: string);
93
- private ensureReconnectWatch;
94
- private publishDesiredOnline;
95
- private ensureLeaseRefresh;
96
- private stopLeaseRefreshIfIdle;
97
- private registerOnlineNode;
98
- private markNodeOffline;
99
- private subscribeIncremental;
100
- /**
101
- * Register this device as online in RTDB and set an onDisconnect handler
102
- * so the server marks it offline automatically on connection loss.
103
- *
104
- * Should be called once per session, after the durable Firestore device
105
- * record exists. Does not replace the Firestore device doc — that remains
106
- * the durable registry while RTDB owns hot liveness.
107
- */
108
- registerDevice(scope: DiscoveryPresenceScope, deviceId: string, ticketVersion?: number, fields?: RtdbPresenceRosterFields): Promise<void>;
109
- /**
110
- * Bump the ticketVersion for a device. Call this whenever a new endpoint
111
- * ticket is published (e.g. on network change / node restart). Subscribers
112
- * will see the version change and re-fetch or use the RTDB-carried ticket.
113
- */
114
- bumpTicketVersion(scope: DiscoveryPresenceScope, deviceId: string, newVersion: number, fields?: RtdbPresenceRosterFields): Promise<void>;
115
- /**
116
- * Explicitly mark a device offline (graceful disconnect / sign-out).
117
- * The onDisconnect handler would eventually fire anyway, but calling this
118
- * immediately on graceful shutdown gives instant feedback to other clients.
119
- */
120
- markOffline(scope: DiscoveryPresenceScope, deviceId: string, ticketVersion?: number): Promise<void>;
121
- /**
122
- * Register a room member as online and set an onDisconnect handler.
123
- * Managed/user-scoped room writes require roomPresenceAcl writer grants.
124
- */
125
- registerRoomMember(appTag: string, roomId: string, memberId: string): Promise<void>;
126
- /**
127
- * Explicitly mark a room member offline (graceful leave).
128
- * The onDisconnect would fire eventually, but calling this immediately
129
- * gives instant feedback to other members in the room.
130
- */
131
- markRoomMemberOffline(appTag: string, roomId: string, memberId: string): Promise<void>;
132
- /**
133
- * Subscribe to all member presence states in a room.
134
- * Returns an unsubscribe function. The callback receives a map of
135
- * memberId → { online } whenever any member's liveness changes.
136
- *
137
- * Consumers (BrowserFirestoreRooms) overlay this onto the Firestore
138
- * member roster to show which members are currently alive vs. ghost entries.
139
- */
140
- onRoomPresenceChange(appTag: string, roomId: string, callback: (presenceMap: RtdbRoomPresenceMap) => void): () => void;
141
- /**
142
- * Subscribe to all device presence states in a discovery scope.
143
- *
144
- * Returns an unsubscribe function. The callback receives the full map of
145
- * deviceId -> { online, ticketVersion, ...roster fields } whenever any
146
- * device's presence changes. Firestore remains the durable roster; RTDB
147
- * carries enough fields to keep discovery usable during short Firestore
148
- * offline windows.
149
- */
150
- onPresenceChange(scope: DiscoveryPresenceScope, callback: (presenceMap: RtdbPresenceMap) => void): () => void;
151
- readPresenceMap(scope: DiscoveryPresenceScope): Promise<RtdbPresenceMap>;
152
- }
16
+ import '../IEngineBridge-BbsT8hof.js';
17
+ import '../DelegatingRuntimeAdapter-B9j_lTDM.js';
153
18
 
154
19
  declare class Signaling {
155
20
  private readonly appTag;
@@ -158,7 +23,6 @@ declare class Signaling {
158
23
  get tag(): string;
159
24
  waitForAuth(): Promise<void>;
160
25
  get currentUser(): RuntimeIdentity | null;
161
- getRtdbPresence(): RtdbPresence | null;
162
26
  usesCoordinationGateway(): boolean;
163
27
  joinCoordinationRoom(roomId: string, nodeId: string, ticket: string): Promise<void>;
164
28
  leaveCoordinationRoom(roomId: string): Promise<void>;
@@ -187,6 +51,7 @@ declare class Signaling {
187
51
  deleteDevice(deviceId: string): Promise<void>;
188
52
  onDevicesChange(callback: (devices: Device[]) => void, excludeNodeId?: string): () => void;
189
53
  startAutoConnect(userId: string, localDeviceId: string): void;
54
+ submitDesiredPeerProjection(revision: number, peers: DesiredPeerProjection[]): Promise<void>;
190
55
  notifyDisconnectRequested(remoteNodeId: string): void;
191
56
  startPresenceLoop(userId: string, localNodeId: string, deviceName: string, ticket: string, metadata?: string): void;
192
57
  forceReconnectSnapshot(): void;
@@ -281,6 +146,12 @@ interface MoQPublisherOptions {
281
146
  maxSubscribedTracks?: number;
282
147
  maxActivePublishers?: number;
283
148
  maxTrackIdChars?: number;
149
+ /**
150
+ * Reject an application object before it reaches a relay track. This must
151
+ * match the receiver-side default so browser and native clients apply the
152
+ * same hard egress boundary.
153
+ */
154
+ maxObjectPayloadBytes?: number;
284
155
  }
285
156
  interface TrackPublisher {
286
157
  close(): void;
@@ -299,6 +170,7 @@ declare class MoQPublisher {
299
170
  private readonly maxSubscribedTracks;
300
171
  private readonly maxActivePublishers;
301
172
  private readonly maxTrackIdChars;
173
+ private readonly maxObjectPayloadBytes;
302
174
  private closed;
303
175
  constructor(session: MoQSession, options?: MoQPublisherOptions);
304
176
  announce(namespace: string): Promise<void>;
@@ -335,26 +207,14 @@ interface RoomClientHost {
335
207
  getNodeId(): Promise<string>;
336
208
  connect(ticket: string, timeoutMs?: number): Promise<Connection>;
337
209
  refreshHostedAppSettings(force?: boolean): Promise<void>;
338
- usesDirectRoomBackend(): boolean;
339
210
  getRoomBackendTag(): string;
340
211
  }
341
212
  declare class RoomManager {
342
213
  private signaling;
343
214
  private client;
344
- private readonly heartbeatStops;
345
- private browserRooms;
346
- private rtdbPresence;
347
215
  constructor(client: RoomClientHost, signaling: Signaling);
348
- private getBrowserRooms;
349
- /**
350
- * Phase 2: called by the runtime after RTDB presence is initialised
351
- * (same RtdbPresence instance used for device presence in Phase 1).
352
- */
353
- setRtdbPresence(rtdbPresence: RtdbPresence): void;
354
- private syncRtdbPresenceFromSignaling;
355
- private usesDirectRoomBackend;
356
216
  private usesCoordinationGateway;
357
- private usesManagedRoomControlPlane;
217
+ private requireCoordinationGateway;
358
218
  private get roomBackendTag();
359
219
  private resolveRoomUserId;
360
220
  private get appTag();
@@ -362,8 +222,6 @@ declare class RoomManager {
362
222
  private isAlreadyExistsError;
363
223
  private normalizeRoomId;
364
224
  private getMembersInternal;
365
- private parseMemberDocuments;
366
- private parseRoomMemberDocument;
367
225
  /**
368
226
  * Creates a new room. When `requestedRoomId` is provided, the backend will
369
227
  * try to create that exact room ID instead of generating a random one.
@@ -376,14 +234,8 @@ declare class RoomManager {
376
234
  leaveRoom(roomId: string): Promise<void>;
377
235
  getRoomMembers(roomId: string): Promise<RoomMember[]>;
378
236
  watchRoom(roomId: string, callback: (members: RoomMember[]) => void): () => void;
379
- /**
380
- * Register this device as an online room member in RTDB and store a
381
- * cleanup callback in heartbeatStops (keyed by roomId) so that
382
- * stopHeartbeat() / leaveRoom() can trigger graceful offline marking.
383
- */
384
- private registerRtdbRoomMember;
385
- private markRtdbRoomMemberOffline;
386
- stopHeartbeat(roomId?: string): void;
237
+ /** Gateway room leases and socket cleanup are owned by the coordination provider. */
238
+ stopHeartbeat(_roomId?: string): void;
387
239
  }
388
240
 
389
241
  type IncomingProtocolHint = 'control' | 'explicit' | 'native-main' | 'unknown';
@@ -424,7 +276,6 @@ declare class Client {
424
276
  dispose(): void;
425
277
  get apiKey(): string | undefined;
426
278
  get discoveryMode(): DiscoveryMode;
427
- usesDirectRoomBackend(): boolean;
428
279
  getRoomBackendTag(): string;
429
280
  refreshHostedAppSettings(force?: boolean): Promise<void>;
430
281
  setSignalingBackend(backend: ISignalingBackend): void;
@@ -1 +1 @@
1
- export{b as createIpcClient,a as createWasmClient}from'../chunk-KNZQ3MD7.js';export{z as RuntimeClient,i as RuntimeConnectionController,m as ScopedConnectionActorError,p as ScopedConnectionActorHandle,q as ScopedConnectionActorRegistry,l as clog,x as concatRuntimeBytes,k as correlationForDriveGrantScope,w as createRuntimeJsonFrameDecoder,s as createRuntimeU32BEFrameDecoder,u as decodeRuntimeJsonPayload,v as encodeRuntimeJsonFrame,t as encodeRuntimeJsonPayload,r as encodeRuntimeU32BEFrame,y as readRuntimeU32BE,j as renderCorrelationFields,n as scopedConnectionKey,o as scopedConnectionKeyToString}from'../chunk-C2CA4PGO.js';export{a as isRuntimeDeviceActive,c as isRuntimeDeviceConnectable,b as isRuntimeDeviceRoutable}from'../chunk-CK6WQV7J.js';export{a as WasmRuntimeAdapter}from'../chunk-7J4U5BRY.js';export{b as TauriRuntimeAdapter,a as createTauriIpcBridge}from'../chunk-BBZRARGN.js';export{h as IpcRuntimeAdapter,e as classifyNativeIpcFailure,f as isNativeIpcCommandUnavailable}from'../chunk-GSRISHN4.js';export{z as BROWSER_WASM_RUNTIME_CAPABILITIES,A as NATIVE_IPC_RUNTIME_CAPABILITIES,x as OPENRTC_RUNTIME_POLICY,B as cloneRuntimeCapabilities,y as getRuntimePolicy,p as logOpenRtcTeardownTrace,c as openRtcDebug,b as openRtcDebugEnabled,d as openRtcDebugInfo,e as openRtcDebugLog,C as runtimeCapabilitiesForBrowserHost,D as runtimeCapabilitiesFromNativeStatus,E as runtimeCapabilityProfile}from'../chunk-XGTSTZEX.js';import'../chunk-QT2ASNI3.js';import'../chunk-LIEFXSLP.js';import'../chunk-C7YN5MSV.js';
1
+ export{b as createIpcClient,a as createWasmClient}from'../chunk-WRJ4O5QL.js';export{z as RuntimeClient,i as RuntimeConnectionController,m as ScopedConnectionActorError,p as ScopedConnectionActorHandle,q as ScopedConnectionActorRegistry,l as clog,x as concatRuntimeBytes,k as correlationForDriveGrantScope,w as createRuntimeJsonFrameDecoder,s as createRuntimeU32BEFrameDecoder,u as decodeRuntimeJsonPayload,v as encodeRuntimeJsonFrame,t as encodeRuntimeJsonPayload,r as encodeRuntimeU32BEFrame,y as readRuntimeU32BE,j as renderCorrelationFields,n as scopedConnectionKey,o as scopedConnectionKeyToString}from'../chunk-XQD4RPMU.js';export{a as isRuntimeDeviceActive,c as isRuntimeDeviceConnectable,b as isRuntimeDeviceRoutable}from'../chunk-CK6WQV7J.js';export{a as WasmRuntimeAdapter}from'../chunk-IF5JSSMC.js';export{b as TauriRuntimeAdapter,a as createTauriIpcBridge}from'../chunk-JUXDXE5B.js';export{h as IpcRuntimeAdapter,e as classifyNativeIpcFailure,f as isNativeIpcCommandUnavailable}from'../chunk-E5CLEIY6.js';export{x as BROWSER_WASM_RUNTIME_CAPABILITIES,y as NATIVE_IPC_RUNTIME_CAPABILITIES,v as OPENRTC_RUNTIME_POLICY,z as cloneRuntimeCapabilities,w as getRuntimePolicy,n as logOpenRtcTeardownTrace,b as openRtcDebug,a as openRtcDebugEnabled,c as openRtcDebugInfo,d as openRtcDebugLog,A as runtimeCapabilitiesForBrowserHost,B as runtimeCapabilitiesFromNativeStatus,C as runtimeCapabilityProfile}from'../chunk-AIHDHYZP.js';import'../chunk-QT2ASNI3.js';import'../chunk-SY6YGCXA.js';import'../chunk-C7YN5MSV.js';
@@ -1,6 +1,6 @@
1
- export { T as TauriRuntimeAdapter, b as TauriRuntimeAdapterOptions, c as createTauriIpcBridge } from '../tauri-BSnc9fmI.js';
1
+ export { T as TauriRuntimeAdapter, b as TauriRuntimeAdapterOptions, c as createTauriIpcBridge } from '../tauri-DZJ_ZEfB.js';
2
2
  import '../ipc-CflAVodw.js';
3
- import '../types-f694LxEL.js';
4
- import '../DelegatingRuntimeAdapter-BI3X2b70.js';
5
- import '../IEngineBridge-C7OT2CRv.js';
6
- import '../capabilities-C4Dqs_pB.js';
3
+ import '../types-CL4Da0BR.js';
4
+ import '../DelegatingRuntimeAdapter-B9j_lTDM.js';
5
+ import '../IEngineBridge-BbsT8hof.js';
6
+ import '../capabilities-CaqXOIUU.js';
@@ -1 +1 @@
1
- export{b as TauriRuntimeAdapter,a as createTauriIpcBridge}from'../chunk-BBZRARGN.js';import'../chunk-GSRISHN4.js';import'../chunk-XGTSTZEX.js';import'../chunk-QT2ASNI3.js';import'../chunk-LIEFXSLP.js';import'../chunk-C7YN5MSV.js';
1
+ export{b as TauriRuntimeAdapter,a as createTauriIpcBridge}from'../chunk-JUXDXE5B.js';import'../chunk-E5CLEIY6.js';import'../chunk-AIHDHYZP.js';import'../chunk-QT2ASNI3.js';import'../chunk-SY6YGCXA.js';import'../chunk-C7YN5MSV.js';
@@ -1,8 +1,8 @@
1
- import { R as RuntimeClient, a as RuntimePolicySnapshot, P as PeerReconciliationStats, b as PlutoRuntimeAssembly } from './assembly-DVSN6YWK.js';
2
- import { C as ConnectDeviceResult, b as ConnectDeviceHooks, c as ConnectDeviceOptions, P as PeerSessionSnapshot, R as ResolvedPeerIdentity, G as GrantScope, a as SpaceTokenProvider } from './types-f694LxEL.js';
3
- import { A as AuthContext } from './IEngineBridge-C7OT2CRv.js';
4
- import { a as RuntimeManagedSessionOptions, b as RuntimeManagedSession, c as RuntimeDevice, d as RuntimeDeviceStatusSnapshot, e as RuntimeDeviceConnectOptions, f as RuntimeLocalDeviceInfo, g as RuntimeLocalDeviceProfile, h as RuntimePeerState, i as RuntimePeerConnectOptions, C as Connection, j as RuntimePeerReadinessSnapshot, k as RuntimePeerHealth, l as RuntimeChannelDescriptor, m as RuntimePeerStreamOptions, n as RuntimeIncomingStream, o as RuntimeScopedChannelOptions, p as RuntimeScopedLogicalChannel, q as RuntimeJoinRoomOptions, r as RuntimeRoomMember, s as RuntimeConnectionStateSnapshot, t as RuntimeApplicationPayloadReadinessOptions, u as RuntimeConnectionEvent, v as RuntimeRawConnection } from './types-_GcCIpNA.js';
5
- import { R as RuntimeCapabilities, a as RuntimeCapabilityProfile } from './capabilities-C4Dqs_pB.js';
1
+ import { R as RuntimeClient, a as RuntimePolicySnapshot, P as PeerReconciliationStats, b as PlutoRuntimeAssembly } from './assembly-Ddq1o4NV.js';
2
+ import { C as ConnectDeviceResult, b as ConnectDeviceHooks, c as ConnectDeviceOptions, P as PeerSessionSnapshot, R as ResolvedPeerIdentity, G as GrantScope, a as SpaceTokenProvider } from './types-CL4Da0BR.js';
3
+ import { A as AuthContext } from './IEngineBridge-BbsT8hof.js';
4
+ import { a as RuntimeManagedSessionOptions, b as RuntimeManagedSession, c as RuntimeDevice, d as RuntimeDeviceStatusSnapshot, e as RuntimeDeviceConnectOptions, f as RuntimeLocalDeviceInfo, g as RuntimeLocalDeviceProfile, h as RuntimePeerState, i as RuntimePeerConnectOptions, C as Connection, j as RuntimePeerReadinessSnapshot, k as RuntimePeerHealth, l as RuntimeChannelDescriptor, m as RuntimePeerStreamOptions, n as RuntimeIncomingStream, o as RuntimeScopedChannelOptions, p as RuntimeScopedLogicalChannel, q as RuntimeJoinRoomOptions, r as RuntimeRoomMember, s as RuntimeConnectionStateSnapshot, t as RuntimeApplicationPayloadReadinessOptions, u as RuntimeConnectionEvent, v as RuntimeRawConnection } from './types-BAwo8biA.js';
5
+ import { R as RuntimeCapabilities, a as RuntimeCapabilityProfile } from './capabilities-CaqXOIUU.js';
6
6
 
7
7
  type OpenRTCChannelConnectOptions = Omit<RuntimeScopedChannelOptions, 'scope' | 'deviceId' | 'ticket'> & {
8
8
  /**
@@ -1,5 +1,5 @@
1
- import { e as ClientOptions } from './types-f694LxEL.js';
2
- import { W as WasmBridgeOptions, D as DelegatingRuntimeAdapter } from './DelegatingRuntimeAdapter-BI3X2b70.js';
1
+ import { e as ClientOptions } from './types-CL4Da0BR.js';
2
+ import { W as WasmBridgeOptions, D as DelegatingRuntimeAdapter } from './DelegatingRuntimeAdapter-B9j_lTDM.js';
3
3
  import { P as PlutoIpcBridge } from './ipc-CflAVodw.js';
4
4
 
5
5
  interface NativeIpcBridgeOptions extends WasmBridgeOptions {
@@ -1,5 +1,5 @@
1
- import { a0 as RouteDescriptor, v as ProtocolName } from '../types-f694LxEL.js';
2
- export { a1 as RouteFamily, a2 as RouteImplementationKind } from '../types-f694LxEL.js';
1
+ import { a1 as RouteDescriptor, w as ProtocolName } from '../types-CL4Da0BR.js';
2
+ export { a2 as RouteFamily, a3 as RouteImplementationKind } from '../types-CL4Da0BR.js';
3
3
 
4
4
  declare const ROUTE_DESCRIPTORS: readonly RouteDescriptor[];
5
5
  declare function getRouteDescriptor(id: ProtocolName): RouteDescriptor;
@@ -1,5 +1,5 @@
1
- import { A as AuthContext } from './IEngineBridge-C7OT2CRv.js';
2
- import { r as ConnectionOptions, s as ApplicationPayloadCrypto, t as ApplicationPayloadReadinessOptions, u as ApplicationPayloadRouteOptions, v as ProtocolName, w as ApplicationPayloadSendOptions, T as TransportLatencySnapshot, x as ChannelDescriptor$1, L as LocalDeviceInfo, y as IncomingStreamChannelMetadata, e as ClientOptions, h as Device, l as SignalingSession, f as RuntimeIdentity, i as DeviceStatusSnapshot, z as ManagedDeviceConnectOptions, F as PeerState, H as PeerHealth, J as JoinRoomOptions, g as RoomMember, K as PeerScope, q as BackendConnectionState, O as DevicePresenceStatus, Q as PeerLifecycleStatus, P as PeerSessionSnapshot } from './types-f694LxEL.js';
1
+ import { A as AuthContext } from './IEngineBridge-BbsT8hof.js';
2
+ import { s as ConnectionOptions, t as ApplicationPayloadCrypto, u as ApplicationPayloadReadinessOptions, v as ApplicationPayloadRouteOptions, w as ProtocolName, x as ApplicationPayloadSendOptions, T as TransportLatencySnapshot, y as ChannelDescriptor$1, L as LocalDeviceInfo, z as IncomingStreamChannelMetadata, e as ClientOptions, h as Device, m as SignalingSession, f as RuntimeIdentity, i as DeviceStatusSnapshot, F as ManagedDeviceConnectOptions, H as PeerState, J as PeerHealth, K as JoinRoomOptions, g as RoomMember, O as PeerScope, r as BackendConnectionState, Q as DevicePresenceStatus, U as PeerLifecycleStatus, P as PeerSessionSnapshot } from './types-CL4Da0BR.js';
3
3
 
4
4
  interface ITransport {
5
5
  readonly name: string;
@@ -71,6 +71,7 @@ declare class Connection {
71
71
  private upgradeRetryCount;
72
72
  private lastBaseTransportGeneration;
73
73
  private lastBaseTransportStableId;
74
+ private lastNativeSessionAdmissionRecoveryGeneration;
74
75
  private upgradeReDriveCount;
75
76
  private upgradeReDriveTimer;
76
77
  private upgradeRetryTimer;
@@ -117,6 +118,17 @@ declare class Connection {
117
118
  * No-op when WebRTC is not configured or an upgrade already started.
118
119
  */
119
120
  requestWebRTCUpgrade(reason?: string): void;
121
+ /**
122
+ * Records that the current native base transport has completed session
123
+ * admission and can now accept optional-route signaling.
124
+ *
125
+ * A replacement Iroh transport is projected before its token exchange has
126
+ * necessarily completed. If a WebRTC attempt starts during that interval,
127
+ * its renegotiate/SDP frames are intentionally rejected. Admission is the
128
+ * authoritative event that makes one fresh attempt safe. The generation
129
+ * fence prevents duplicate token approvals from creating a retry storm.
130
+ */
131
+ handleNativeSessionAdmissionAvailable(reason?: string): void;
120
132
  /**
121
133
  * Whether the current WebRTC route is provably alive: an open data channel
122
134
  * plus either a recent heartbeat round trip or a freshly opened channel. An
@@ -145,6 +157,15 @@ declare class Connection {
145
157
  }): void;
146
158
  private beginWebRtcRecovery;
147
159
  getUpgradeState(): UpgradeState;
160
+ /**
161
+ * Generation fence for asynchronous native-main signaling.
162
+ *
163
+ * WebRTC callbacks and control-stream opens can complete after their
164
+ * transport has been replaced. A late SDP/candidate/renegotiate frame from
165
+ * that retired generation must not be allowed to replace the current
166
+ * negotiation on the peer.
167
+ */
168
+ isCurrentWebRtcNegotiationSignal(envelope: any): boolean;
148
169
  updateRTCConfig(rtcConfig: ConnectionOptions['rtcConfig']): void;
149
170
  onUpgradeStateChange(callback: (state: UpgradeState) => void): void;
150
171
  /**
@@ -241,6 +262,12 @@ declare class Connection {
241
262
  * Disconnect the connection
242
263
  */
243
264
  disconnect(): Promise<void>;
265
+ /**
266
+ * Consume an authoritative managed-session denial for the current
267
+ * capability epoch. This is terminal for the logical connection: optional
268
+ * routes cannot keep a revoked or rejected session alive.
269
+ */
270
+ handleSessionAdmissionRejected(reason: string): void;
244
271
  /**
245
272
  * Listen for incoming messages
246
273
  */
@@ -4,6 +4,14 @@ interface CoordinationGatewayOptions {
4
4
  * Credentials are delivered in the first WebSocket frame, never this URL.
5
5
  */
6
6
  endpoint: string;
7
+ /**
8
+ * Provider-neutral HTTPS callable origin for credential admission.
9
+ *
10
+ * Managed production uses https://api.openrtc.app. Internal staging and
11
+ * local lanes must provide their owned API/emulator origin explicitly so
12
+ * the SDK never falls back to a public cloudfunctions.net hostname.
13
+ */
14
+ controlPlaneEndpoint?: string;
7
15
  /**
8
16
  * Fail-closed lane marker. The credential issuer and Worker independently
9
17
  * verify the matching identity tenant and token audience.
@@ -64,6 +72,8 @@ interface PlutoMoQConfiguration {
64
72
  interface PlutoIrohConfiguration {
65
73
  relayOnly?: boolean;
66
74
  relayTransportPolicy?: 'auto' | 'quicRequired' | 'websocketRequired';
75
+ /** Local test harness only. Must be an HTTPS loopback Iroh relay. */
76
+ testRelayUrl?: string;
67
77
  persistenceMode?: 'persistent' | 'ephemeral';
68
78
  /** Enable native iroh mDNS LAN discovery (native runtimes only). */
69
79
  localDiscovery?: boolean;
@@ -232,6 +242,15 @@ interface ClientOptions {
232
242
  * Hosted production clients receive the managed production default.
233
243
  */
234
244
  coordinationGateway?: CoordinationGatewayOptions;
245
+ /**
246
+ * Supplies the provider-neutral platform-attestation token used by the
247
+ * configured coordination control plane.
248
+ *
249
+ * Hosted Firebase deployments use App Check by default. Custom hosts and
250
+ * deterministic harnesses can inject their own provider without coupling
251
+ * gateway coordination to Firebase-specific SDK state.
252
+ */
253
+ platformAttestationTokenProvider?: (forceRefresh?: boolean) => Promise<string | null>;
235
254
  storagePrefix?: string;
236
255
  deviceTTL?: number;
237
256
  deviceName?: string;
@@ -253,6 +272,15 @@ interface ClientOptions {
253
272
  nodeIdPersistence?: 'persistent' | 'ephemeral';
254
273
  secretKey?: string;
255
274
  strictMode?: boolean;
275
+ /**
276
+ * Selects the sole consumer of admitted native application streams.
277
+ *
278
+ * `runtime` (default) routes named OpenRTC channels through the TypeScript
279
+ * runtime. `host` is for native products that install one process-level
280
+ * Rust protocol dispatcher. A native host must never enable both consumers:
281
+ * the underlying stream queue is ordered and each raw stream has one owner.
282
+ */
283
+ nativeApplicationStreamConsumer?: 'runtime' | 'host';
256
284
  /**
257
285
  * Optional application-provided TURN credential loader.
258
286
  *
@@ -713,6 +741,21 @@ interface ExplicitFileDataSendParams {
713
741
  applicationCrypto?: ApplicationPayloadCrypto;
714
742
  requireApplicationCrypto?: boolean;
715
743
  }
744
+ /**
745
+ * A coordination-provider projection of the peers the runtime should reconcile.
746
+ *
747
+ * The bridge owns admission-token retention and runtime forwarding; the
748
+ * coordination provider owns how a roster becomes this projection. Product code
749
+ * should use managed auto-connect rather than synthesize projections.
750
+ */
751
+ interface DesiredPeerProjection {
752
+ deviceId: string;
753
+ nodeId?: string | null;
754
+ ticket?: string | null;
755
+ online?: boolean;
756
+ sessionId?: string | null;
757
+ excludedPeers?: string[];
758
+ }
716
759
  interface ISignalingBackend {
717
760
  currentUser: RuntimeIdentity | null;
718
761
  signInAnonymously(): Promise<void>;
@@ -751,6 +794,7 @@ interface ISignalingBackend {
751
794
  subscribeDevices(userId: string): Promise<ReadableStream<DeviceEvent[]>>;
752
795
  startAutoConnectOnce?(userId: string, localDeviceId: string): Promise<void>;
753
796
  startAutoConnect(userId: string, localDeviceId: string): void;
797
+ submitDesiredPeerProjection?(revision: number, peers: DesiredPeerProjection[]): Promise<void>;
754
798
  notifyDisconnectRequested?(remoteNodeId: string): void;
755
799
  startPresenceLoopOnce?(userId: string, localNodeId: string, deviceName: string, ticket: string, metadata?: string): Promise<void>;
756
800
  startPresenceLoop(userId: string, localNodeId: string, deviceName: string, ticket: string, metadata?: string): void;
@@ -975,4 +1019,4 @@ interface JoinRequest {
975
1019
  state: 'pending' | 'accepted' | 'rejected';
976
1020
  }
977
1021
 
978
- export type { ProtocolLocality as $, AuthMode as A, BackendPeerBiStream as B, ConnectDeviceResult as C, DiscoveryMode as D, ExplicitFileDataSendParams as E, PeerState as F, GrantScope as G, PeerHealth as H, ISignalingBackend as I, JoinRoomOptions as J, PeerScope as K, LocalDeviceInfo as L, ManagedConnectionRecord as M, NativeManagedSessionStartResult as N, DevicePresenceStatus as O, PeerSessionSnapshot as P, PeerLifecycleStatus as Q, ResolvedPeerIdentity as R, SpaceAuthMode as S, TransportLatencySnapshot as T, ProtocolCapability as U, ProtocolCapabilityMap as V, ApplicationCryptoStreamTools as W, AppLimits as X, ApplicationCryptoBiStream as Y, ProtocolBaseName as Z, ProtocolImplementationKind as _, SpaceTokenProvider as a, RouteDescriptor as a0, RouteFamily as a1, RouteImplementationKind as a2, SignalingOptions as a3, RoomCreationMode as a4, ScanningLoopOptions as a5, ScanningLoopHandle as a6, RuntimeBootstrapOptions as a7, RuntimeBootstrapResult as a8, ManagedApplicationRouteOptions as a9, JoinRequest as aa, ConnectDeviceHooks as b, ConnectDeviceOptions as c, SignalingMode as d, ClientOptions as e, RuntimeIdentity as f, RoomMember as g, Device as h, DeviceStatusSnapshot as i, SignalingEnvelope as j, DeviceEvent as k, SignalingSession as l, SessionEvent as m, BackendPeerUniStream as n, NativeConnectParams as o, NativeConnectResult as p, BackendConnectionState as q, ConnectionOptions as r, ApplicationPayloadCrypto as s, ApplicationPayloadReadinessOptions as t, ApplicationPayloadRouteOptions as u, ProtocolName as v, ApplicationPayloadSendOptions as w, ChannelDescriptor as x, IncomingStreamChannelMetadata as y, ManagedDeviceConnectOptions as z };
1022
+ export type { ProtocolImplementationKind as $, AuthMode as A, BackendPeerBiStream as B, ConnectDeviceResult as C, DiscoveryMode as D, ExplicitFileDataSendParams as E, ManagedDeviceConnectOptions as F, GrantScope as G, PeerState as H, ISignalingBackend as I, PeerHealth as J, JoinRoomOptions as K, LocalDeviceInfo as L, ManagedConnectionRecord as M, NativeManagedSessionStartResult as N, PeerScope as O, PeerSessionSnapshot as P, DevicePresenceStatus as Q, ResolvedPeerIdentity as R, SpaceAuthMode as S, TransportLatencySnapshot as T, PeerLifecycleStatus as U, ProtocolCapability as V, ProtocolCapabilityMap as W, ApplicationCryptoStreamTools as X, AppLimits as Y, ApplicationCryptoBiStream as Z, ProtocolBaseName as _, SpaceTokenProvider as a, ProtocolLocality as a0, RouteDescriptor as a1, RouteFamily as a2, RouteImplementationKind as a3, SignalingOptions as a4, RoomCreationMode as a5, ScanningLoopOptions as a6, ScanningLoopHandle as a7, RuntimeBootstrapOptions as a8, RuntimeBootstrapResult as a9, ManagedApplicationRouteOptions as aa, JoinRequest as ab, ConnectDeviceHooks as b, ConnectDeviceOptions as c, SignalingMode as d, ClientOptions as e, RuntimeIdentity as f, RoomMember as g, Device as h, DeviceStatusSnapshot as i, SignalingEnvelope as j, DeviceEvent as k, DesiredPeerProjection as l, SignalingSession as m, SessionEvent as n, BackendPeerUniStream as o, NativeConnectParams as p, NativeConnectResult as q, BackendConnectionState as r, ConnectionOptions as s, ApplicationPayloadCrypto as t, ApplicationPayloadReadinessOptions as u, ApplicationPayloadRouteOptions as v, ProtocolName as w, ApplicationPayloadSendOptions as x, ChannelDescriptor as y, IncomingStreamChannelMetadata as z };