@series-inc/rundot-game-sdk 5.20.0 → 5.21.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -927,7 +927,7 @@ interface LifecycleApi {
927
927
  *
928
928
  * Use this to navigate back within your game's own UI or show an exit
929
929
  * confirmation. If you want the host to perform its default quit behavior,
930
- * call `RundotGameAPI.navigation.requestPopOrQuit()` from within the callback.
930
+ * call `RundotGameAPI.requestPopOrQuit()` from within the callback.
931
931
  *
932
932
  * On platforms without a hardware back button (iOS, web), this event never fires,
933
933
  * but registering a handler is safe and acts as a no-op.
@@ -1333,24 +1333,33 @@ interface StartRoomGameOptions {
1333
1333
  turnOrder?: string[] | null;
1334
1334
  }
1335
1335
  interface RoomsApi {
1336
+ /** @deprecated Rooms V1 is unsupported. Use `RundotGameAPI.realtime.createRoom(roomType)`. */
1336
1337
  createRoomAsync(options: CreateRoomOptions): Promise<RundotGameRoom>;
1338
+ /** @deprecated Rooms V1 is unsupported. Use `RundotGameAPI.realtime.joinOrCreateRoom(roomType)`. */
1337
1339
  joinOrCreateRoomAsync(options: JoinOrCreateRoomOptions): Promise<JoinOrCreateResult>;
1340
+ /** @deprecated Rooms V1 is unsupported. Use `RundotGameAPI.realtime.joinRoomByCode(code)`. */
1338
1341
  joinRoomByCodeAsync(roomCode: string): Promise<RundotGameRoom>;
1342
+ /** @deprecated Rooms V1 is unsupported. No realtime equivalent yet (planned, Track B). */
1339
1343
  getUserRoomsAsync(options?: ListRoomsOptions): Promise<RundotGameRoom[]>;
1344
+ /** @deprecated Rooms V1 is unsupported. Use `room.on()` on a `RundotGameAPI.realtime` room. */
1340
1345
  subscribeAsync(room: RundotGameRoom, options?: RoomSubscriptionOptions): Promise<() => void>;
1341
- /**
1342
- * @deprecated Prefer server-authoritative flows (e.g. `proposeMoveAsync` / `startRoomGameAsync`)
1343
- * and treat `customMetadata.rules.gameState` as the canonical room lifecycle state.
1344
- */
1346
+ /** @deprecated Rooms V1 is unsupported. Hold state in your realtime `GameRoom` class. */
1345
1347
  updateRoomDataAsync(room: RundotGameRoom, updates: Record<string, unknown>, options?: UpdateRoomDataOptions): Promise<void>;
1348
+ /** @deprecated Rooms V1 is unsupported. Hold state in your realtime `GameRoom` class. */
1346
1349
  getRoomDataAsync(room: RundotGameRoom): Promise<Record<string, unknown>>;
1350
+ /** @deprecated Rooms V1 is unsupported. Use `room.send()` on a `RundotGameAPI.realtime` room. */
1347
1351
  sendRoomMessageAsync(room: RundotGameRoom, message: RoomMessageRequest): Promise<string>;
1352
+ /** @deprecated Rooms V1 is unsupported. Use `room.leave()` on a `RundotGameAPI.realtime` room. */
1348
1353
  leaveRoomAsync(room: RundotGameRoom): Promise<void>;
1354
+ /** @deprecated Rooms V1 is unsupported. Use `this.kick()` in your realtime `GameRoom` class. */
1349
1355
  kickPlayerAsync(room: RundotGameRoom, targetProfileId: string, options?: {
1350
1356
  reason?: string;
1351
1357
  }): Promise<void>;
1358
+ /** @deprecated Rooms V1 is unsupported. Drive lifecycle in your realtime `GameRoom` class. */
1352
1359
  startRoomGameAsync(room: RundotGameRoom, options?: StartRoomGameOptions): Promise<void>;
1360
+ /** @deprecated Rooms V1 is unsupported. Handle moves in `onGameMessage()` in your realtime `GameRoom` class. */
1353
1361
  proposeMoveAsync(room: RundotGameRoom, request: ProposeMoveRequest): Promise<ProposeMoveResult>;
1362
+ /** @deprecated Rooms V1 is unsupported. Handle moves in `onGameMessage()` in your realtime `GameRoom` class. */
1354
1363
  validateMoveAsync(room: RundotGameRoom, moveId: string, verdict: ValidateMoveVerdict): Promise<ValidateMoveResult>;
1355
1364
  }
1356
1365
 
@@ -1549,7 +1558,7 @@ interface LoggingApi {
1549
1558
  }
1550
1559
 
1551
1560
  interface SharedAssetsApi {
1552
- loadAssetsBundle(game: string, bundleKey: string): Promise<ArrayBuffer>;
1561
+ loadAssetsBundle(game: string, bundleKey: string, fileType?: string): Promise<ArrayBuffer>;
1553
1562
  }
1554
1563
 
1555
1564
  declare class RpcSharedAssetsApi implements SharedAssetsApi {
@@ -1676,6 +1685,8 @@ interface UgcEntry {
1676
1685
  at: number;
1677
1686
  };
1678
1687
  reportCount?: number;
1688
+ isPlatformVisible?: boolean;
1689
+ thumbnailUrl?: string;
1679
1690
  }
1680
1691
  interface UgcCreateParams {
1681
1692
  contentType: string;
@@ -1683,6 +1694,8 @@ interface UgcCreateParams {
1683
1694
  isPublic?: boolean;
1684
1695
  title?: string;
1685
1696
  tags?: string[];
1697
+ isPlatformVisible?: boolean;
1698
+ thumbnailUrl?: string;
1686
1699
  }
1687
1700
  interface UgcUpdateParams {
1688
1701
  id: string;
@@ -1690,6 +1703,8 @@ interface UgcUpdateParams {
1690
1703
  isPublic?: boolean;
1691
1704
  title?: string;
1692
1705
  tags?: string[];
1706
+ isPlatformVisible?: boolean;
1707
+ thumbnailUrl?: string;
1693
1708
  }
1694
1709
  interface UgcListParams {
1695
1710
  contentType?: string;
@@ -1735,6 +1750,8 @@ interface UgcCrossAppCreateParams {
1735
1750
  isPublic?: boolean;
1736
1751
  title?: string;
1737
1752
  tags?: string[];
1753
+ isPlatformVisible?: boolean;
1754
+ thumbnailUrl?: string;
1738
1755
  }
1739
1756
  interface UgcListResponse {
1740
1757
  entries: UgcEntry[];
@@ -1878,6 +1895,19 @@ interface UgcVotingApi {
1878
1895
  */
1879
1896
  getWinners(params?: UgcVoteWinnersListParams): Promise<UgcVoteWinnersResponse>;
1880
1897
  }
1898
+ interface UgcRecommendationResponse {
1899
+ recommId: string;
1900
+ entries: Array<UgcEntry & {
1901
+ isLikedByMe?: boolean;
1902
+ }>;
1903
+ }
1904
+ interface UgcCompositeRecommendationResponse {
1905
+ recommId: string;
1906
+ sourceEntry: UgcEntry | null;
1907
+ entries: Array<UgcEntry & {
1908
+ isLikedByMe?: boolean;
1909
+ }>;
1910
+ }
1881
1911
  interface UgcApi {
1882
1912
  /**
1883
1913
  * Create new user-generated content
@@ -2041,6 +2071,14 @@ interface UgcApi {
2041
2071
  * @returns The created entry
2042
2072
  */
2043
2073
  crossAppCreate(params: UgcCrossAppCreateParams): Promise<UgcEntry>;
2074
+ getUserRecommendation(count: number, filter?: string): Promise<UgcRecommendationResponse>;
2075
+ getItemRecommendation(ugcId: string, count: number, filter?: string): Promise<UgcRecommendationResponse>;
2076
+ getCompositeRecommendation(count: number, sourceFilter?: string, resultFilter?: string): Promise<UgcCompositeRecommendationResponse>;
2077
+ getMoreRecommendations(origRecommId: string, count: number): Promise<UgcRecommendationResponse>;
2078
+ addDetailView(ugcId: string, recommId?: string): Promise<void>;
2079
+ addRating(ugcId: string, rating: number, recommId?: string): Promise<void>;
2080
+ addCartAddition(ugcId: string, recommId?: string): Promise<void>;
2081
+ setViewPortion(ugcId: string, portion: number, recommId?: string): Promise<void>;
2044
2082
  /**
2045
2083
  * Weekly voting API. Vote on UGC entries within the current ISO week,
2046
2084
  * read live leaderboards, and read paginated historical winners.
@@ -2253,6 +2291,14 @@ interface UploadResult {
2253
2291
  uploadHeaders: Record<string, string>;
2254
2292
  key: string;
2255
2293
  expiresAt: number;
2294
+ /**
2295
+ * Present only when overwriting an existing file. Pass it straight back to
2296
+ * `confirmUpload(key, { uploadToken })` so the server can atomically resolve
2297
+ * concurrent overwrites of the same key (the matching confirm wins; a
2298
+ * superseded one is rejected). The previous version keeps serving until the
2299
+ * matching confirm commits — reads are never interrupted by an overwrite.
2300
+ */
2301
+ uploadToken?: string;
2256
2302
  }
2257
2303
  interface ListParams {
2258
2304
  prefix?: string;
@@ -2434,6 +2480,13 @@ interface ArchiveExtractResult {
2434
2480
  }
2435
2481
  interface ConfirmUploadOptions {
2436
2482
  clientRef?: string;
2483
+ /** The `uploadToken` returned by `upload()` for an overwrite. Required to confirm an overwrite. */
2484
+ uploadToken?: string;
2485
+ }
2486
+ interface BatchConfirmOptions {
2487
+ clientRef?: string;
2488
+ /** Per-key `uploadToken`s returned by `batchUpload()` for overwrites, keyed by file key. */
2489
+ uploadTokens?: Record<string, string>;
2437
2490
  }
2438
2491
  interface BatchUploadParams {
2439
2492
  files: Array<{
@@ -2479,7 +2532,7 @@ interface FilesApi {
2479
2532
  upload(params: UploadParams): Promise<UploadResult>;
2480
2533
  confirmUpload(key: string, options?: ConfirmUploadOptions): Promise<FileEntry>;
2481
2534
  batchUpload(params: BatchUploadParams): Promise<BatchUploadResult>;
2482
- batchConfirm(keys: string[], options?: ConfirmUploadOptions): Promise<BatchConfirmResult>;
2535
+ batchConfirm(keys: string[], options?: BatchConfirmOptions): Promise<BatchConfirmResult>;
2483
2536
  getUrl(params: GetUrlParams): Promise<string>;
2484
2537
  getUrls(params: GetUrlsParams): Promise<GetUrlsResult>;
2485
2538
  getMetadata(params: GetMetadataParams): Promise<FileEntry>;
@@ -2940,6 +2993,25 @@ interface AdminGenApi<TEntry, TReport> {
2940
2993
  resolveReport(reportId: string, action: AdminGenResolveAction): Promise<void>;
2941
2994
  }
2942
2995
 
2996
+ type LaunchIntentKind = 'share' | 'deeplink' | 'notification' | 'none' | 'timed_out';
2997
+ interface LaunchIntent {
2998
+ kind: LaunchIntentKind;
2999
+ /** Present for kind === 'share'. */
3000
+ shareLinkId?: string;
3001
+ /** Sharer's profile id, when launched from a share. */
3002
+ sharerId?: string;
3003
+ /** Flat string params (share / deeplink / notification payload). */
3004
+ params: Record<string, string>;
3005
+ }
3006
+ interface ResolveLaunchIntentOptions {
3007
+ /**
3008
+ * How long (ms) the caller is willing to wait for the host to resolve the
3009
+ * launch signal before resolving `{ kind: 'timed_out' }`. Omit for the
3010
+ * platform default. Clamped host-side to a ceiling; `0` means do not wait.
3011
+ */
3012
+ maxWaitMs?: number;
3013
+ }
3014
+
2943
3015
  type AppRole = 'owner' | 'editor' | 'none';
2944
3016
  interface AdminUgcBrowseParams {
2945
3017
  contentType?: string | string[];
@@ -3151,6 +3223,17 @@ type AdminThreeDGenListReportsResponse = AdminGenListReportsResponse<ThreeDGenRe
3151
3223
  type AdminThreeDGenResolveAction = AdminGenResolveAction;
3152
3224
  interface AppApi {
3153
3225
  getMyRole(): Promise<AppRole>;
3226
+ /**
3227
+ * Resolve how this game was launched (share / deep link / notification /
3228
+ * none). Resolves as soon as the host has resolved the launch route; if that
3229
+ * hasn't happened yet, waits up to `options.maxWaitMs` (platform-clamped)
3230
+ * then resolves `{ kind: 'timed_out' }`. `timed_out` is not terminal — call
3231
+ * again to keep waiting; once settled the result is returned immediately.
3232
+ * Like every RPC, the promise can still reject on transport-level failures
3233
+ * (host too old to support this message, or RPC timeout) — distinct from a
3234
+ * `timed_out` launch intent.
3235
+ */
3236
+ resolveLaunchIntent(options?: ResolveLaunchIntentOptions): Promise<LaunchIntent>;
3154
3237
  readonly adminUgc: AdminUgcApi;
3155
3238
  readonly adminImageGen: AdminImageGenApi;
3156
3239
  readonly adminVideoGen: AdminVideoGenApi;
@@ -3217,10 +3300,28 @@ interface InitializationContext {
3217
3300
  */
3218
3301
  safeArea?: SafeArea;
3219
3302
  initializeAsleep: boolean;
3303
+ /**
3304
+ * @deprecated Use RundotGameAPI.app.resolveLaunchIntent() instead. This is
3305
+ * the legacy INIT-snapshot read path and cannot represent a deferred deep
3306
+ * link. Will be removed in v6.0.0.
3307
+ */
3220
3308
  launchParams?: Record<string, string>;
3309
+ /**
3310
+ * @deprecated Use RundotGameAPI.app.resolveLaunchIntent() instead. This is
3311
+ * the legacy INIT-snapshot read path and cannot represent a deferred share
3312
+ * link. Will be removed in v6.0.0.
3313
+ */
3221
3314
  shareParams?: Record<string, string>;
3315
+ /**
3316
+ * @deprecated Use RundotGameAPI.app.resolveLaunchIntent() instead. Will be
3317
+ * removed in v6.0.0.
3318
+ */
3222
3319
  notificationParams?: Record<string, string>;
3223
- /** The share document ID when launched from a share link; `undefined` otherwise. */
3320
+ /**
3321
+ * The share document ID when launched from a share link; `undefined` otherwise.
3322
+ * @deprecated Use RundotGameAPI.app.resolveLaunchIntent() instead. Will be
3323
+ * removed in v6.0.0.
3324
+ */
3224
3325
  shareLinkId?: string;
3225
3326
  /** Data passed from a source game via game-to-game navigation (forward). */
3226
3327
  g2gLaunch?: Record<string, any>;
@@ -3248,6 +3349,7 @@ interface Host {
3248
3349
  readonly features: FeaturesApi;
3249
3350
  readonly lifecycle: LifecycleApi;
3250
3351
  readonly simulation: SimulationApi;
3352
+ /** @deprecated Rooms V1 is unsupported. Use `RundotGameAPI.realtime` (server-authoritative WebSocket rooms). */
3251
3353
  readonly rooms: RoomsApi;
3252
3354
  readonly logging: LoggingApi;
3253
3355
  readonly leaderboard: LeaderboardApi;
@@ -3272,6 +3374,22 @@ interface Host {
3272
3374
  readonly iap: IapApi;
3273
3375
  readonly instanceId: string;
3274
3376
  readonly context?: InitializationContext;
3377
+ /**
3378
+ * Subscribe to host-pushed updates to `context.notificationParams`. Fires
3379
+ * when the user taps a notification for an already-running game. Returns
3380
+ * an unsubscribe function. Optional: hosts that pre-date this push path
3381
+ * (cold-launch only) may not implement it.
3382
+ */
3383
+ onNotificationParamsUpdate?(callback: (params: Record<string, string>) => void): () => void;
3384
+ /**
3385
+ * Fire-and-forget ACK the SDK sends to the host immediately after it
3386
+ * registers the `onNotificationParamsUpdate` subscription. Lets the host
3387
+ * tell "SDK booted past READY" apart from "SDK has a live notification
3388
+ * subscriber" — the latter is the precise signal for "a live push WILL be
3389
+ * received". Optional: Mock / Sandbox hosts have no remote peer and so
3390
+ * don't implement it.
3391
+ */
3392
+ notifyNotificationParamsSubscribeReady?(): void;
3275
3393
  initialize(options?: InitializationOptions): Promise<InitializationContext>;
3276
3394
  }
3277
3395
  /**
@@ -3720,6 +3838,7 @@ interface RundotGameAPI {
3720
3838
  launchContext?: Record<string, any>;
3721
3839
  returnContext?: Record<string, any>;
3722
3840
  }): Promise<void>;
3841
+ /** @deprecated Rooms V1 is unsupported. Use `RundotGameAPI.realtime` (server-authoritative WebSocket rooms). */
3723
3842
  rooms: RoomsApi;
3724
3843
  realtime: MultiplayerApi;
3725
3844
  notifyCleanupComplete(): void;
@@ -3763,6 +3882,11 @@ interface RundotGameAPI {
3763
3882
  video: VideoApi;
3764
3883
  app: AppApi;
3765
3884
  attribution: AttributionApi;
3885
+ /**
3886
+ * The launch context from INIT_SDK. Its intent fields (`launchParams`,
3887
+ * `shareParams`, `notificationParams`, `shareLinkId`) are `@deprecated` —
3888
+ * use `app.resolveLaunchIntent()` instead. Will be removed in v6.0.0.
3889
+ */
3766
3890
  context: InitializationContext;
3767
3891
  }
3768
3892
 
@@ -3781,4 +3905,4 @@ interface AdsApi {
3781
3905
  showInterstitialAd(options?: ShowInterstitialAdOptions): Promise<boolean>;
3782
3906
  }
3783
3907
 
3784
- export { type AddToHomeScreenResult as $, type AnalyticsApi as A, type BatchRecipeRequirementsResult as B, type NotificationsApi as C, type ScheduleLocalNotification as D, type ScheduleNotificationOptions as E, type RCSAvailabilityStatus as F, type ScheduleRCSInput as G, type Host as H, type ScheduleRCSResult as I, type RequestRCSOptInInput as J, type RequestRCSOptInResult as K, type PopupsApi as L, type ShowToastOptions as M, type NavigationApi as N, type ShowInterstitialAdOptions as O, type Profile as P, type QuitOptions as Q, type RundotGameAPI as R, type SimulationActiveRunsUpdate as S, type ShowRewardedAdOptions as T, type ProfileApi as U, type DeviceApi as V, type DeviceInfo as W, type EnvironmentApi as X, type EnvironmentInfo as Y, type SystemApi as Z, type SafeArea as _, type RecipeRequirementQuery as a, type LoggingApi as a$, type CdnApi as a0, type FetchFromCdnOptions as a1, type AssetUrlResult as a2, type TimeApi as a3, type ServerTimeData as a4, type GetFutureTimeOptions as a5, type AiApi as a6, type AiChatCompletionRequest as a7, type AiChatCompletionData as a8, type AiChatCompletionStreamOptions as a9, type ResetStateOptions as aA, type ResetStateResult as aB, type GetActiveRunsOptions as aC, type ExecuteScopedRecipeOptions as aD, type ExecuteScopedRecipeResult as aE, type GetAvailableRecipesOptions as aF, type GetAvailableRecipesResult as aG, type Recipe as aH, type GetBatchRecipeRequirements as aI, type TriggerRecipeChainOptions as aJ, type RoomDataUpdate as aK, type RoomMessageEvent as aL, type ProposedMoveEvent as aM, RundotGameTransport as aN, type RoomsApi as aO, type CreateRoomOptions as aP, type JoinOrCreateRoomOptions as aQ, type JoinOrCreateResult as aR, type ListRoomsOptions as aS, type UpdateRoomDataOptions as aT, type RoomMessageRequest as aU, type StartRoomGameOptions as aV, type ProposeMoveRequest as aW, type ProposeMoveResult as aX, type ValidateMoveVerdict as aY, type ValidateMoveResult as aZ, type RoomSubscriptionOptions as a_, type AiChatCompletionStreamChunk as aa, type HapticsApi as ab, HapticFeedbackStyle as ac, type FeaturesApi as ad, type Experiment as ae, type LifecycleApi as af, type SleepCallback as ag, type Subscription as ah, type AwakeCallback as ai, type PauseCallback as aj, type ResumeCallback as ak, type QuitCallback as al, type BackButtonCallback as am, type SimulationApi as an, type SimulationSlotValidationResult as ao, type SimulationBatchOperation as ap, type SimulationBatchOperationsResult as aq, type SimulationAvailableItem as ar, type SimulationPowerPreview as as, type SimulationSlotMutationResult as at, type SimulationSlotContainer as au, type SimulationAssignment as av, type SimulationState as aw, type ExecuteRecipeOptions as ax, type ExecuteRecipeResponse as ay, type CollectRecipeResult as az, type RecipeRequirementResult as b, type AdsApi as b$, type IapApi as b0, type SpendCurrencyOptions as b1, type SpendCurrencyResult as b2, type SubscriptionTier as b3, type RunSubscriptionsResponse as b4, type SubscriptionInterval as b5, type PurchaseSubscriptionResponse as b6, type OpenStoreResult as b7, type LoadEmbeddedAssetsResponse as b8, type SharedAssetsApi as b9, type AdminImageGenApi as bA, type AdminVideoGenApi as bB, type AdminSpriteGenApi as bC, type AdminAudioGenApi as bD, type AdminThreeDGenApi as bE, type AppRole as bF, type AdminUgcBrowseParams as bG, type AdminUgcBrowseResponse as bH, type AdminUgcListReportsParams as bI, type AdminUgcListReportsResponse as bJ, type AdminUgcResolveAction as bK, type AdminGenBrowseParams as bL, type AdminGenBrowseResponse as bM, type ImageGenEntry as bN, type AdminGenListReportsParams as bO, type AdminGenListReportsResponse as bP, type ImageGenReport as bQ, type AdminGenResolveAction as bR, type SpriteGenEntry as bS, type SpriteGenReport as bT, type ThreeDGenEntry as bU, type ThreeDGenReport as bV, type Avatar3dApi as bW, type AssetManifest as bX, type Avatar3dConfig as bY, type ShowEditorOptions as bZ, type Avatar3dEdits as b_, type PreloaderApi as ba, type SocialApi as bb, type ShareMetadata as bc, type ShareLinkResult as bd, type SocialQRCodeOptions as be, type QRCodeResult as bf, type ShareClickData as bg, type ShareFileOptions as bh, type ShareFileResult as bi, type CanShareFileResult as bj, type EntitlementApi as bk, type Entitlement as bl, type LedgerEntry as bm, type ShopApi as bn, type StorefrontResponse as bo, type StorefrontItem as bp, type ShopPurchaseResponse as bq, type ShopOrderHistoryResponse as br, type PromptLoginResult as bs, type AccessTier as bt, type AccessGateApi as bu, type TextGenApi as bv, type UgcApi as bw, type VideoApi as bx, type AppApi as by, type AdminUgcApi as bz, type RundotGameAvailableRecipe as c, type JoinRoomMatchCriteria as c$, type SharedStorageHostApi as c0, type FilesApi as c1, type ClipsApi as c2, type MultiplayerApi as c3, type AttributionApi as c4, type InitializationContext as c5, type InitializationOptions as c6, type CaptureConsent as c7, type StartClipRecordingOptions as c8, type ClipBlob as c9, type AdminVideoGenListReportsResponse as cA, type AdminVideoGenResolveAction as cB, type AiContentBlock as cC, type AiImageContent as cD, type AiImageUrlContent as cE, type AiMessage as cF, type AiResponseFormat as cG, type AiTextContent as cH, type AiToolResultContent as cI, type AiToolUseContent as cJ, type Asset as cK, type AudioGenEntry as cL, type AudioGenReport as cM, CLIP_CONTENT_TYPE as cN, type Category as cO, type ClipAudioOptions as cP, type ClipCameraOptions as cQ, type ClipPipLayout as cR, type ClipPipPosition as cS, type ConnectionState as cT, type GetSubscriptionsForTierRequest as cU, type HudInsets as cV, type InboundForKeyEntry as cW, type InboundMethodIds as cX, type InboundStorageApi as cY, type IsPlayerSubscribedRequest as cZ, type JoinOrCreateRoomEnvelopeResponse as c_, type ClipsSupport as ca, type ClipPersistOptions as cb, type ClipResult as cc, type UgcEntry as cd, type CaptureConsentStatus as ce, AccessDeniedError as cf, type AdminGenApi as cg, type AdminImageGenBrowseParams as ch, type AdminImageGenBrowseResponse as ci, type AdminImageGenListReportsParams as cj, type AdminImageGenListReportsResponse as ck, type AdminImageGenResolveAction as cl, type AdminSpriteGenBrowseParams as cm, type AdminSpriteGenBrowseResponse as cn, type AdminSpriteGenListReportsParams as co, type AdminSpriteGenListReportsResponse as cp, type AdminSpriteGenResolveAction as cq, type AdminThreeDGenBrowseParams as cr, type AdminThreeDGenBrowseResponse as cs, type AdminThreeDGenListReportsParams as ct, type AdminThreeDGenListReportsResponse as cu, type AdminThreeDGenResolveAction as cv, type AdminUgcEntry as cw, type AdminVideoGenBrowseParams as cx, type AdminVideoGenBrowseResponse as cy, type AdminVideoGenListReportsParams as cz, type RundotGameCollectRecipeResult as d, type LoadEmbeddedAssetsRequest as d0, MockAvatarApi as d1, type NotificationTriggerInput as d2, type OnNotificationCallback as d3, type OnRequestCallback as d4, type OnResponseCallback as d5, type ProposedMovePayload as d6, type Protocol as d7, type PurchaseSubscriptionRequest as d8, type RCSAvailabilityReason as d9, type SimulationBatchOperationRemove as dA, type SimulationBatchOperationResult as dB, type SimulationPersonalState as dC, type SimulationRoomActiveRecipe as dD, type SimulationRoomState as dE, type StorefrontCollection as dF, type StorefrontCollectionItem as dG, type SubPath as dH, type Tool as dI, type ToolChoice as dJ, type ToolUse as dK, type TimeIntervalTriggerInput as dL, type UgcReport as dM, type VideoGenEntry as dN, type VideoGenReport as dO, createHost as dP, resolveCollectionItemPrice as dQ, type RCSOptInStatus as da, ROOM_GAME_PHASES as db, type RecipeInfo as dc, type RoomEnvelopeResponse as dd, type RoomEvents as de, type RoomGamePhase as df, type RoomMessageEventType as dg, type RoomMessagePayload as dh, type RoomsEnvelopeResponse as di, RpcInboundStorageApi as dj, RpcSharedAssetsApi as dk, type RpcTransport as dl, type RunSubscription as dm, type RundotGameRoomCustomMetadata as dn, type RundotGameRoomPayload as dp, type RundotGameRoomRules as dq, type RundotGameRoomRulesGameState as dr, SHARE_FILE_ALLOWED_MIME_TYPES as ds, SHARE_FILE_MAX_SIZE_BYTES as dt, type ScheduleRCSStatus as du, type ServerPlayer as dv, type ServerRoom as dw, type ShareFileMimeType as dx, type ShopOrder as dy, type SimulationBatchOperationAssign as dz, type RundotGameExecuteRecipeOptions as e, type RundotGameExecuteRecipeResult as f, type RundotGameExecuteScopedRecipeOptions as g, RundotGameRoom as h, type RundotGameSimulationConfig as i, type RundotGameSimulationEffect as j, type RundotGameSimulationRecipe as k, type RundotGameSimulationStateResponse as l, type SimulationEntityUpdate as m, type SimulationRunSummary as n, type SimulationSnapshotUpdate as o, type SimulationSubscribeOptions as p, type SimulationUpdateData as q, type SimulationUpdateType as r, type RpcRequest as s, type RpcResponse as t, type RpcNotification as u, RpcClient as v, type StorageApi as w, type NavigationStackInfo as x, type PushAppOptions as y, type NavigateToGameOptions as z };
3908
+ export { type AddToHomeScreenResult as $, type AnalyticsApi as A, type BatchRecipeRequirementsResult as B, type NotificationsApi as C, type ScheduleLocalNotification as D, type ScheduleNotificationOptions as E, type RCSAvailabilityStatus as F, type ScheduleRCSInput as G, type Host as H, type ScheduleRCSResult as I, type RequestRCSOptInInput as J, type RequestRCSOptInResult as K, type PopupsApi as L, type ShowToastOptions as M, type NavigationApi as N, type ShowInterstitialAdOptions as O, type Profile as P, type QuitOptions as Q, type RundotGameAPI as R, type SimulationActiveRunsUpdate as S, type ShowRewardedAdOptions as T, type ProfileApi as U, type DeviceApi as V, type DeviceInfo as W, type EnvironmentApi as X, type EnvironmentInfo as Y, type SystemApi as Z, type SafeArea as _, type RecipeRequirementQuery as a, type LoggingApi as a$, type CdnApi as a0, type FetchFromCdnOptions as a1, type AssetUrlResult as a2, type TimeApi as a3, type ServerTimeData as a4, type GetFutureTimeOptions as a5, type AiApi as a6, type AiChatCompletionRequest as a7, type AiChatCompletionData as a8, type AiChatCompletionStreamOptions as a9, type ResetStateOptions as aA, type ResetStateResult as aB, type GetActiveRunsOptions as aC, type ExecuteScopedRecipeOptions as aD, type ExecuteScopedRecipeResult as aE, type GetAvailableRecipesOptions as aF, type GetAvailableRecipesResult as aG, type Recipe as aH, type GetBatchRecipeRequirements as aI, type TriggerRecipeChainOptions as aJ, type RoomDataUpdate as aK, type RoomMessageEvent as aL, type ProposedMoveEvent as aM, RundotGameTransport as aN, type RoomsApi as aO, type CreateRoomOptions as aP, type JoinOrCreateRoomOptions as aQ, type JoinOrCreateResult as aR, type ListRoomsOptions as aS, type UpdateRoomDataOptions as aT, type RoomMessageRequest as aU, type StartRoomGameOptions as aV, type ProposeMoveRequest as aW, type ProposeMoveResult as aX, type ValidateMoveVerdict as aY, type ValidateMoveResult as aZ, type RoomSubscriptionOptions as a_, type AiChatCompletionStreamChunk as aa, type HapticsApi as ab, HapticFeedbackStyle as ac, type FeaturesApi as ad, type Experiment as ae, type LifecycleApi as af, type SleepCallback as ag, type Subscription as ah, type AwakeCallback as ai, type PauseCallback as aj, type ResumeCallback as ak, type QuitCallback as al, type BackButtonCallback as am, type SimulationApi as an, type SimulationSlotValidationResult as ao, type SimulationBatchOperation as ap, type SimulationBatchOperationsResult as aq, type SimulationAvailableItem as ar, type SimulationPowerPreview as as, type SimulationSlotMutationResult as at, type SimulationSlotContainer as au, type SimulationAssignment as av, type SimulationState as aw, type ExecuteRecipeOptions as ax, type ExecuteRecipeResponse as ay, type CollectRecipeResult as az, type RecipeRequirementResult as b, type Avatar3dConfig as b$, type IapApi as b0, type SpendCurrencyOptions as b1, type SpendCurrencyResult as b2, type SubscriptionTier as b3, type RunSubscriptionsResponse as b4, type SubscriptionInterval as b5, type PurchaseSubscriptionResponse as b6, type OpenStoreResult as b7, type LoadEmbeddedAssetsResponse as b8, type SharedAssetsApi as b9, type AdminUgcApi as bA, type AdminImageGenApi as bB, type AdminVideoGenApi as bC, type AdminSpriteGenApi as bD, type AdminAudioGenApi as bE, type AdminThreeDGenApi as bF, type AppRole as bG, type ResolveLaunchIntentOptions as bH, type LaunchIntent as bI, type AdminUgcBrowseParams as bJ, type AdminUgcBrowseResponse as bK, type AdminUgcListReportsParams as bL, type AdminUgcListReportsResponse as bM, type AdminUgcResolveAction as bN, type AdminGenBrowseParams as bO, type AdminGenBrowseResponse as bP, type ImageGenEntry as bQ, type AdminGenListReportsParams as bR, type AdminGenListReportsResponse as bS, type ImageGenReport as bT, type AdminGenResolveAction as bU, type SpriteGenEntry as bV, type SpriteGenReport as bW, type ThreeDGenEntry as bX, type ThreeDGenReport as bY, type Avatar3dApi as bZ, type AssetManifest as b_, type PreloaderApi as ba, type SocialApi as bb, type ShareMetadata as bc, type ShareLinkResult as bd, type SocialQRCodeOptions as be, type QRCodeResult as bf, type ShareClickData as bg, type ShareFileOptions as bh, type ShareFileResult as bi, type CanShareFileResult as bj, type EntitlementApi as bk, type Entitlement as bl, type LedgerEntry as bm, type ShopApi as bn, type StorefrontResponse as bo, type StorefrontItem as bp, type ShopPurchaseResponse as bq, type ShopOrderHistoryResponse as br, type PromptLoginResult as bs, type AccessTier as bt, type AccessGateApi as bu, type TextGenApi as bv, type UgcApi as bw, type MultiplayerApi as bx, type VideoApi as by, type AppApi as bz, type RundotGameAvailableRecipe as c, type IsPlayerSubscribedRequest as c$, type ShowEditorOptions as c0, type Avatar3dEdits as c1, type AdsApi as c2, type SharedStorageHostApi as c3, type FilesApi as c4, type ClipsApi as c5, type AttributionApi as c6, type InitializationContext as c7, type InitializationOptions as c8, type CaptureConsent as c9, type AdminVideoGenBrowseResponse as cA, type AdminVideoGenListReportsParams as cB, type AdminVideoGenListReportsResponse as cC, type AdminVideoGenResolveAction as cD, type AiContentBlock as cE, type AiImageContent as cF, type AiImageUrlContent as cG, type AiMessage as cH, type AiResponseFormat as cI, type AiTextContent as cJ, type AiToolResultContent as cK, type AiToolUseContent as cL, type Asset as cM, type AudioGenEntry as cN, type AudioGenReport as cO, CLIP_CONTENT_TYPE as cP, type Category as cQ, type ClipAudioOptions as cR, type ClipCameraOptions as cS, type ClipPipLayout as cT, type ClipPipPosition as cU, type ConnectionState as cV, type GetSubscriptionsForTierRequest as cW, type HudInsets as cX, type InboundForKeyEntry as cY, type InboundMethodIds as cZ, type InboundStorageApi as c_, type StartClipRecordingOptions as ca, type ClipBlob as cb, type ClipsSupport as cc, type ClipPersistOptions as cd, type ClipResult as ce, type UgcEntry as cf, type CaptureConsentStatus as cg, AccessDeniedError as ch, type AdminGenApi as ci, type AdminImageGenBrowseParams as cj, type AdminImageGenBrowseResponse as ck, type AdminImageGenListReportsParams as cl, type AdminImageGenListReportsResponse as cm, type AdminImageGenResolveAction as cn, type AdminSpriteGenBrowseParams as co, type AdminSpriteGenBrowseResponse as cp, type AdminSpriteGenListReportsParams as cq, type AdminSpriteGenListReportsResponse as cr, type AdminSpriteGenResolveAction as cs, type AdminThreeDGenBrowseParams as ct, type AdminThreeDGenBrowseResponse as cu, type AdminThreeDGenListReportsParams as cv, type AdminThreeDGenListReportsResponse as cw, type AdminThreeDGenResolveAction as cx, type AdminUgcEntry as cy, type AdminVideoGenBrowseParams as cz, type RundotGameCollectRecipeResult as d, type JoinOrCreateRoomEnvelopeResponse as d0, type JoinRoomMatchCriteria as d1, type LaunchIntentKind as d2, type LoadEmbeddedAssetsRequest as d3, MockAvatarApi as d4, type NotificationTriggerInput as d5, type OnNotificationCallback as d6, type OnRequestCallback as d7, type OnResponseCallback as d8, type ProposedMovePayload as d9, type ShareFileMimeType as dA, type ShopOrder as dB, type SimulationBatchOperationAssign as dC, type SimulationBatchOperationRemove as dD, type SimulationBatchOperationResult as dE, type SimulationPersonalState as dF, type SimulationRoomActiveRecipe as dG, type SimulationRoomState as dH, type StorefrontCollection as dI, type StorefrontCollectionItem as dJ, type SubPath as dK, type Tool as dL, type ToolChoice as dM, type ToolUse as dN, type TimeIntervalTriggerInput as dO, type UgcReport as dP, type VideoGenEntry as dQ, type VideoGenReport as dR, createHost as dS, resolveCollectionItemPrice as dT, type Protocol as da, type PurchaseSubscriptionRequest as db, type RCSAvailabilityReason as dc, type RCSOptInStatus as dd, ROOM_GAME_PHASES as de, type RecipeInfo as df, type RoomEnvelopeResponse as dg, type RoomEvents as dh, type RoomGamePhase as di, type RoomMessageEventType as dj, type RoomMessagePayload as dk, type RoomsEnvelopeResponse as dl, RpcInboundStorageApi as dm, RpcSharedAssetsApi as dn, type RpcTransport as dp, type RunSubscription as dq, type RundotGameRoomCustomMetadata as dr, type RundotGameRoomPayload as ds, type RundotGameRoomRules as dt, type RundotGameRoomRulesGameState as du, SHARE_FILE_ALLOWED_MIME_TYPES as dv, SHARE_FILE_MAX_SIZE_BYTES as dw, type ScheduleRCSStatus as dx, type ServerPlayer as dy, type ServerRoom as dz, type RundotGameExecuteRecipeOptions as e, type RundotGameExecuteRecipeResult as f, type RundotGameExecuteScopedRecipeOptions as g, RundotGameRoom as h, type RundotGameSimulationConfig as i, type RundotGameSimulationEffect as j, type RundotGameSimulationRecipe as k, type RundotGameSimulationStateResponse as l, type SimulationEntityUpdate as m, type SimulationRunSummary as n, type SimulationSnapshotUpdate as o, type SimulationSubscribeOptions as p, type SimulationUpdateData as q, type SimulationUpdateType as r, type RpcRequest as s, type RpcResponse as t, type RpcNotification as u, RpcClient as v, type StorageApi as w, type NavigationStackInfo as x, type PushAppOptions as y, type NavigateToGameOptions as z };
@@ -65,6 +65,8 @@ var RundotGameMessageId = /* @__PURE__ */ ((RundotGameMessageId2) => {
65
65
  RundotGameMessageId2["H5_STACK_PUSH_REQUEST"] = "H5_STACK_PUSH_REQUEST";
66
66
  RundotGameMessageId2["H5_STACK_POP_REQUEST"] = "H5_STACK_POP_REQUEST";
67
67
  RundotGameMessageId2["H5_NAVIGATE_TO_GAME"] = "H5_NAVIGATE_TO_GAME";
68
+ RundotGameMessageId2["NOTIFICATION_PARAMS_UPDATE"] = "NOTIFICATION_PARAMS_UPDATE";
69
+ RundotGameMessageId2["NOTIFICATION_PARAMS_SUBSCRIBE_READY"] = "NOTIFICATION_PARAMS_SUBSCRIBE_READY";
68
70
  RundotGameMessageId2["SCHEDULE_LOCAL_NOTIFICATION"] = "H5_SCHEDULE_LOCAL_NOTIFICATION";
69
71
  RundotGameMessageId2["CANCEL_LOCAL_NOTIFICATION"] = "H5_CANCEL_LOCAL_NOTIFICATION";
70
72
  RundotGameMessageId2["GET_ALL_SCHEDULED_LOCAL_NOTIFICATIONS"] = "H5_GET_ALL_SCHEDULED_LOCAL_NOTIFICATIONS";
@@ -199,6 +201,14 @@ var RundotGameMessageId = /* @__PURE__ */ ((RundotGameMessageId2) => {
199
201
  RundotGameMessageId2["H5_UGC_CROSS_APP_GET_MANY"] = "H5_UGC_CROSS_APP_GET_MANY";
200
202
  RundotGameMessageId2["H5_UGC_CROSS_APP_COUNT"] = "H5_UGC_CROSS_APP_COUNT";
201
203
  RundotGameMessageId2["H5_UGC_CROSS_APP_CREATE"] = "H5_UGC_CROSS_APP_CREATE";
204
+ RundotGameMessageId2["H5_UGC_GET_USER_RECOMMENDATION"] = "H5_UGC_GET_USER_RECOMMENDATION";
205
+ RundotGameMessageId2["H5_UGC_GET_ITEM_RECOMMENDATION"] = "H5_UGC_GET_ITEM_RECOMMENDATION";
206
+ RundotGameMessageId2["H5_UGC_GET_COMPOSITE_RECOMMENDATION"] = "H5_UGC_GET_COMPOSITE_RECOMMENDATION";
207
+ RundotGameMessageId2["H5_UGC_GET_MORE_RECOMMENDATIONS"] = "H5_UGC_GET_MORE_RECOMMENDATIONS";
208
+ RundotGameMessageId2["H5_UGC_ADD_DETAIL_VIEW"] = "H5_UGC_ADD_DETAIL_VIEW";
209
+ RundotGameMessageId2["H5_UGC_ADD_RATING"] = "H5_UGC_ADD_RATING";
210
+ RundotGameMessageId2["H5_UGC_ADD_CART_ADDITION"] = "H5_UGC_ADD_CART_ADDITION";
211
+ RundotGameMessageId2["H5_UGC_SET_VIEW_PORTION"] = "H5_UGC_SET_VIEW_PORTION";
202
212
  RundotGameMessageId2["CLIPS_GET_CAPTURE_CONSENT"] = "H5_CLIPS_GET_CAPTURE_CONSENT";
203
213
  RundotGameMessageId2["CLIPS_REQUEST_CAPTURE_CONSENT"] = "H5_CLIPS_REQUEST_CAPTURE_CONSENT";
204
214
  RundotGameMessageId2["CLIPS_SET_CAPTURE_CONSENT"] = "H5_CLIPS_SET_CAPTURE_CONSENT";
@@ -251,6 +261,7 @@ var RundotGameMessageId = /* @__PURE__ */ ((RundotGameMessageId2) => {
251
261
  RundotGameMessageId2["H5_CDN_REFRESH_ENTITLEMENTS"] = "H5_CDN_REFRESH_ENTITLEMENTS";
252
262
  RundotGameMessageId2["H5_APP_GET_MY_ROLE"] = "H5_APP_GET_MY_ROLE";
253
263
  RundotGameMessageId2["H5_GET_ATTRIBUTION_PARAMS"] = "H5_GET_ATTRIBUTION_PARAMS";
264
+ RundotGameMessageId2["H5_RESOLVE_LAUNCH_INTENT"] = "H5_RESOLVE_LAUNCH_INTENT";
254
265
  RundotGameMessageId2["H5_APP_ADMIN_UGC_BROWSE"] = "H5_APP_ADMIN_UGC_BROWSE";
255
266
  RundotGameMessageId2["H5_APP_ADMIN_UGC_REMOVE_ENTRY"] = "H5_APP_ADMIN_UGC_REMOVE_ENTRY";
256
267
  RundotGameMessageId2["H5_APP_ADMIN_UGC_LIST_REPORTS"] = "H5_APP_ADMIN_UGC_LIST_REPORTS";
@@ -2548,10 +2559,7 @@ var RpcRoomsApi = class {
2548
2559
  }
2549
2560
  return rundotGameRooms;
2550
2561
  }
2551
- /**
2552
- * @deprecated Prefer server-authoritative flows (e.g. `proposeMoveAsync` / `startRoomGameAsync`)
2553
- * and treat `customMetadata.rules.gameState` as the canonical room lifecycle state.
2554
- */
2562
+ /** @deprecated Rooms V1 is unsupported. Hold state in your realtime `GameRoom` class. */
2555
2563
  async updateRoomDataAsync(room, updates, options = {}) {
2556
2564
  await this.rpcClient.call(
2557
2565
  "H5_ROOM_UPDATE_DATA" /* H5_ROOM_UPDATE_DATA */,
@@ -2719,11 +2727,29 @@ var RpcRoomsApi = class {
2719
2727
  };
2720
2728
 
2721
2729
  // src/rooms/index.ts
2722
- function bindMethod(target, targetKey, source, sourceKey) {
2730
+ var ROOMS_DEPRECATION_REPLACEMENTS = {
2731
+ createRoomAsync: "RundotGameAPI.realtime.createRoom(roomType)",
2732
+ joinOrCreateRoomAsync: "RundotGameAPI.realtime.joinOrCreateRoom(roomType)",
2733
+ joinRoomByCodeAsync: "RundotGameAPI.realtime.joinRoomByCode(code)",
2734
+ getUserRoomsAsync: "no realtime equivalent yet (planned, Track B)",
2735
+ subscribeAsync: "room.on() on a RundotGameAPI.realtime room",
2736
+ sendRoomMessageAsync: "room.send() on a RundotGameAPI.realtime room",
2737
+ leaveRoomAsync: "room.leave() on a RundotGameAPI.realtime room",
2738
+ updateRoomDataAsync: "server-authoritative state in your realtime GameRoom class",
2739
+ getRoomDataAsync: "server-authoritative state in your realtime GameRoom class",
2740
+ kickPlayerAsync: "this.kick() in your realtime GameRoom class",
2741
+ startRoomGameAsync: "lifecycle logic in your realtime GameRoom class",
2742
+ proposeMoveAsync: "onGameMessage() handling in your realtime GameRoom class",
2743
+ validateMoveAsync: "onGameMessage() handling in your realtime GameRoom class"
2744
+ };
2745
+ function bindMethod(target, targetKey, source, warn, sourceKey) {
2723
2746
  const key = sourceKey ?? targetKey;
2724
2747
  const fn = source?.[key];
2725
2748
  if (typeof fn === "function") {
2726
- target[targetKey] = fn.bind(source);
2749
+ target[targetKey] = (...args) => {
2750
+ warn(targetKey);
2751
+ return fn.apply(source, args);
2752
+ };
2727
2753
  return true;
2728
2754
  }
2729
2755
  return false;
@@ -2736,6 +2762,15 @@ function initializeRoomsApi(rundotGameApi, host) {
2736
2762
  );
2737
2763
  return;
2738
2764
  }
2765
+ const warned = /* @__PURE__ */ new Set();
2766
+ const warnDeprecated = (method) => {
2767
+ if (warned.has(method)) return;
2768
+ warned.add(method);
2769
+ const replacement = ROOMS_DEPRECATION_REPLACEMENTS[method] ?? "RundotGameAPI.realtime";
2770
+ console.warn(
2771
+ `[RUN] DEPRECATED: RundotGameAPI.rooms.${method}() is deprecated and unsupported. Realtime (RundotGameAPI.realtime) is the only supported multiplayer API \u2014 use ${replacement}. See the Multiplayer docs for the migration guide.`
2772
+ );
2773
+ };
2739
2774
  const rundotGame = rundotGameApi;
2740
2775
  const existingNamespace = rundotGame.rooms || {};
2741
2776
  const roomsNamespace = Object.assign({}, existingNamespace);
@@ -2755,7 +2790,7 @@ function initializeRoomsApi(rundotGameApi, host) {
2755
2790
  ["validateMoveAsync"]
2756
2791
  ];
2757
2792
  namespaceBindings.forEach(([targetKey, sourceKey]) => {
2758
- bindMethod(roomsNamespace, targetKey, roomsApi, sourceKey);
2793
+ bindMethod(roomsNamespace, targetKey, roomsApi, warnDeprecated, sourceKey);
2759
2794
  });
2760
2795
  rundotGame.rooms = roomsNamespace;
2761
2796
  }
@@ -4373,6 +4408,12 @@ function applyAccessGates(host) {
4373
4408
  "authenticated_18plus",
4374
4409
  gateConfig
4375
4410
  );
4411
+ host.multiplayer = createAccessGatedApi(
4412
+ host.multiplayer,
4413
+ ["createRoom", "joinOrCreateRoom", "joinRoomByCode"],
4414
+ "authenticated_18plus",
4415
+ gateConfig
4416
+ );
4376
4417
  }
4377
4418
 
4378
4419
  // src/access-gate/RpcAccessGateApi.ts
@@ -5311,6 +5352,9 @@ var HttpAppApi = class {
5311
5352
  const data = await response.json();
5312
5353
  return data.role;
5313
5354
  }
5355
+ async resolveLaunchIntent(_options) {
5356
+ return { kind: "none", params: {} };
5357
+ }
5314
5358
  };
5315
5359
 
5316
5360
  // src/app/SandboxAppApi.ts
@@ -5389,6 +5433,9 @@ var SandboxAppApi = class {
5389
5433
  }
5390
5434
  return "none";
5391
5435
  }
5436
+ async resolveLaunchIntent(_options) {
5437
+ return { kind: "none", params: {} };
5438
+ }
5392
5439
  };
5393
5440
 
5394
5441
  // src/attribution/RpcAttributionApi.ts
@@ -6657,5 +6704,5 @@ var MockMultiplayerApi = class {
6657
6704
  };
6658
6705
 
6659
6706
  export { AccessDeniedError, BaseCdnApi, BrowserCaptureConsent, CLIP_CONTENT_TYPE, ClipRecorder, ClipsApiImpl, DEFAULT_SHARED_LIB_CDN_BASE, DualEmitStorageApi, EMBEDDED_LIBRARIES, EMBEDDED_LIBRARY_BY_KEY, FILE_EXTENSION_PATTERN, HapticFeedbackStyle, HostCdnApi, HostDeviceApi, HostEnvironmentApi, HostProfileApi, HostSystemApi, HostTimeApi, MIN_CDN_PATH_SEGMENTS, MODULE_TO_LIBRARY_SPECIFIERS, MockAccessGateApi, MockAdminUgcApi, MockAdsApi, MockAnalyticsApi, MockAttributionApi, MockAvatarApi, MockCdnApi, MockDebug, MockDeviceApi, MockEntitlementApi, MockEnvironmentApi, MockFeaturesApi, MockHapticsApi, MockIapApi, MockLifecycleApi, MockLoggingApi, MockMultiplayerApi, MockNavigationApi, MockNotificationsApi, MockPopupsApi, MockPreloaderApi, MockProfileApi, MockSharedAssetsApi, MockShopApi, MockStorageApi, MockSystemApi, MockTimeApi, MockVideoApi, PER_APP_SUBDOMAIN_HOST_PATTERN, ROOM_GAME_PHASES, RpcAccessGateApi, RpcAdsApi, RpcAnalyticsApi, RpcAttributionApi, RpcAvatarApi, RpcEntitlementApi, RpcFeaturesApi, RpcHapticsApi, RpcInboundStorageApi, RpcLifecycleApi, RpcLoggingApi, RpcNavigationApi, RpcNotificationsApi, RpcPopupsApi, RpcPreloaderApi, RpcRoomsApi, RpcSharedAssetsApi, RpcShopApi, RpcStorageApi, RpcVideoApi, RundotGameMessageId, RundotGameRoom, SHARE_FILE_ALLOWED_MIME_TYPES, SHARE_FILE_MAX_SIZE_BYTES, SandboxAppApi, SandboxProfileApi, WsMultiplayerApi, applyAccessGates, base64ToArrayBuffer, base64ToUtf8, buildFunctionsBaseUrl, createAccessGatedApi, createMockAdminGenApi, createMockStorageApi, createRpcAdminGenApi, exchangeForCustomToken, generateId, getCloudRunUrl, getFirebaseClient, getLibraryDefinition, getSandboxConfig, hasHostedUrlStructure, initializeAccessGate, initializeAds, initializeAnalytics, initializeAttribution, initializeAvatar3d, initializeCdn, initializeEntitlements, initializeFeaturesApi, initializeHaptics, initializeLifecycleApi, initializeLocalNotifications, initializeLoggingApi, initializePopups, initializePreloader, initializeProfile, initializeRoomsApi, initializeShop, initializeStackNavigation, initializeStorage, initializeSystem, initializeTime, initializeVideo, isPacificDaylightTime, isPerAppSubdomain, isSandboxEnabled, mockLog, observeFirestoreCollection, observeFirestoreDocument, parseCdnLocationFromUrl, parseCdnLocationFromWindow, parseCdnPathSegments, resolveCollectionItemPrice, setStoredAppRole, setupRoomNotifications, signInWithGoogle };
6660
- //# sourceMappingURL=chunk-BXGNMZKL.js.map
6661
- //# sourceMappingURL=chunk-BXGNMZKL.js.map
6707
+ //# sourceMappingURL=chunk-KOTB6NEL.js.map
6708
+ //# sourceMappingURL=chunk-KOTB6NEL.js.map