@series-inc/venus-sdk 3.1.2 → 3.2.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/{AdsApi-CNGRf6j0.d.mts → AdsApi-or6zfdzM.d.mts} +499 -293
  2. package/dist/{AdsApi-CNGRf6j0.d.ts → AdsApi-or6zfdzM.d.ts} +499 -293
  3. package/dist/chunk-NSSMTXJJ.mjs +7 -0
  4. package/dist/chunk-NSSMTXJJ.mjs.map +1 -0
  5. package/dist/{chunk-W7IPHM67.mjs → chunk-QABXMFND.mjs} +3 -26
  6. package/dist/chunk-QABXMFND.mjs.map +1 -0
  7. package/dist/chunk-UXY5CKKG.mjs +12 -0
  8. package/dist/chunk-UXY5CKKG.mjs.map +1 -0
  9. package/dist/{chunk-PXWCNWJ6.mjs → chunk-YOBDYPKZ.mjs} +1528 -1577
  10. package/dist/chunk-YOBDYPKZ.mjs.map +1 -0
  11. package/dist/core-62LWDHN7.mjs +4 -0
  12. package/dist/{core-R3FHW62G.mjs.map → core-62LWDHN7.mjs.map} +1 -1
  13. package/dist/index.cjs +1556 -1585
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.mts +290 -92
  16. package/dist/index.d.ts +290 -92
  17. package/dist/index.mjs +4 -6
  18. package/dist/index.mjs.map +1 -1
  19. package/dist/venus-api/index.cjs +1613 -2008
  20. package/dist/venus-api/index.cjs.map +1 -1
  21. package/dist/venus-api/index.d.mts +2 -2
  22. package/dist/venus-api/index.d.ts +2 -2
  23. package/dist/venus-api/index.mjs +92 -391
  24. package/dist/venus-api/index.mjs.map +1 -1
  25. package/dist/vite/index.cjs +534 -0
  26. package/dist/vite/index.cjs.map +1 -0
  27. package/dist/vite/index.mjs +527 -0
  28. package/dist/vite/index.mjs.map +1 -0
  29. package/dist/webview/index.cjs +15 -0
  30. package/dist/webview/index.cjs.map +1 -0
  31. package/dist/webview/index.d.mts +15 -0
  32. package/dist/webview/index.d.ts +15 -0
  33. package/dist/webview/index.mjs +4 -0
  34. package/dist/webview/index.mjs.map +1 -0
  35. package/package.json +1 -1
  36. package/dist/chunk-PXWCNWJ6.mjs.map +0 -1
  37. package/dist/chunk-W7IPHM67.mjs.map +0 -1
  38. package/dist/core-R3FHW62G.mjs +0 -3
@@ -56,7 +56,6 @@ declare class RpcClient {
56
56
  private addPendingCall;
57
57
  private removePendingCall;
58
58
  private getPendingCall;
59
- private generateId;
60
59
  private handleRpcResponse;
61
60
  private handleRpcNotification;
62
61
  }
@@ -162,6 +161,80 @@ interface ProfileApi {
162
161
  getCurrentProfile(): Profile;
163
162
  }
164
163
 
164
+ interface DeviceInfo {
165
+ readonly screenSize: {
166
+ readonly width: number;
167
+ readonly height: number;
168
+ };
169
+ readonly viewportSize: {
170
+ readonly width: number;
171
+ readonly height: number;
172
+ };
173
+ readonly orientation: string;
174
+ readonly pixelRatio: number;
175
+ readonly fontScale: number;
176
+ readonly deviceType: string;
177
+ readonly hapticsEnabled: boolean;
178
+ readonly haptics: {
179
+ readonly supported: boolean;
180
+ readonly enabled: boolean;
181
+ };
182
+ }
183
+ interface DeviceApi {
184
+ getDevice(): DeviceInfo;
185
+ }
186
+
187
+ interface EnvironmentInfo {
188
+ readonly isDevelopment: boolean;
189
+ readonly platform: string;
190
+ readonly platformVersion: string;
191
+ readonly browserInfo?: {
192
+ readonly browser: string;
193
+ readonly userAgent: string;
194
+ readonly isMobile: boolean;
195
+ readonly isTablet: boolean;
196
+ readonly language: string;
197
+ };
198
+ }
199
+ interface EnvironmentApi {
200
+ getEnvironment(): EnvironmentInfo;
201
+ }
202
+
203
+ /**
204
+ * System API provides access to device and environment information.
205
+ * This is a unified namespace for system-level configuration data.
206
+ */
207
+ interface SystemApi {
208
+ /**
209
+ * Get device information (screen size, orientation, capabilities, etc.)
210
+ * @throws Error if called before VenusAPI.initializeAsync() completes
211
+ */
212
+ getDevice(): DeviceInfo;
213
+ /**
214
+ * Get environment information (platform, browser, development mode, etc.)
215
+ * @throws Error if called before VenusAPI.initializeAsync() completes
216
+ */
217
+ getEnvironment(): EnvironmentInfo;
218
+ /**
219
+ * Get safe area insets (padding to avoid device notches and host UI).
220
+ * This includes the toolbar/feedHeader height plus device safe areas.
221
+ * Safe area is static - it's set once during initialization and doesn't change.
222
+ * @returns SafeArea with top, right, bottom, left padding values in pixels
223
+ * @throws Error if called before VenusAPI.initializeAsync() completes
224
+ */
225
+ getSafeArea(): SafeArea;
226
+ /**
227
+ * Check if running on mobile device
228
+ * @returns true if on mobile device (iOS, Android, or mobile browser)
229
+ */
230
+ isMobile(): boolean;
231
+ /**
232
+ * Check if running on web platform
233
+ * @returns true if on web platform
234
+ */
235
+ isWeb(): boolean;
236
+ }
237
+
165
238
  type SubPath = string;
166
239
  interface FetchBlobOptions {
167
240
  timeout?: number;
@@ -200,32 +273,6 @@ interface TimeApi {
200
273
  getFutureTimeAsync(options?: GetFutureTimeOptions): Promise<number>;
201
274
  }
202
275
 
203
- interface PostInfo {
204
- isLiked: boolean;
205
- isFollowing: boolean;
206
- likesCount: number;
207
- commentsCount: number;
208
- }
209
- interface ToggleLikeResult {
210
- isLiked: boolean;
211
- likesCount: number;
212
- action: 'liked' | 'unliked';
213
- }
214
- interface ToggleFollowResult {
215
- isFollowing: boolean;
216
- action: 'followed' | 'unfollowed';
217
- }
218
- interface OpenCommentsResult {
219
- opened: boolean;
220
- commentsCount: number;
221
- }
222
- interface PostApi {
223
- getPostInfo(): Promise<PostInfo>;
224
- toggleLikeAsync(): Promise<ToggleLikeResult>;
225
- openCommentsAsync(): Promise<OpenCommentsResult>;
226
- toggleFollowAsync(): Promise<ToggleFollowResult>;
227
- }
228
-
229
276
  interface AiMessage {
230
277
  /**
231
278
  * Depends on the model you are using. Most common is user, system, and assistant.
@@ -392,12 +439,12 @@ interface Recipe {
392
439
  }
393
440
  interface TriggerRecipeChainOptions {
394
441
  roomId?: string;
395
- context?: any;
442
+ context?: Record<string, unknown>;
396
443
  }
397
444
  interface CollectRecipeResult {
398
445
  success: boolean;
399
446
  runId: string;
400
- rewards: any;
447
+ rewards: Record<string, unknown>;
401
448
  message: string;
402
449
  }
403
450
  interface ExecuteScopedRecipeResult {
@@ -417,28 +464,265 @@ interface GetBatchRecipeRequirements {
417
464
  success: boolean;
418
465
  results: RecipeRequirementResult[];
419
466
  }
467
+ interface SimulationPersonalState {
468
+ inventory: Record<string, number | string>;
469
+ activeRuns: SimulationRunSummary[];
470
+ disabledRecipes: string[];
471
+ }
472
+ interface SimulationRoomActiveRecipe {
473
+ recipeId: string;
474
+ scope: 'room' | 'actor';
475
+ startedAt: number;
476
+ expiresAt: number;
477
+ commitmentEndsAt?: number;
478
+ }
479
+ interface SimulationRoomState {
480
+ activeRecipes: Record<string, SimulationRoomActiveRecipe>;
481
+ sharedAssets: Record<string, number | string>;
482
+ actors: Array<Record<string, unknown>>;
483
+ activeRuns: SimulationRunSummary[];
484
+ }
485
+ type SimulationState = SimulationPersonalState | SimulationRoomState;
486
+ interface SimulationSlotContainer {
487
+ entityId: string;
488
+ slots: Record<string, unknown>;
489
+ isOwned: boolean;
490
+ powerCalculationRecipe?: string;
491
+ }
492
+ interface SimulationAvailableItem {
493
+ entityId: string;
494
+ quantity: number;
495
+ metadata: Record<string, unknown>;
496
+ tags: string[];
497
+ isCompatible: boolean;
498
+ }
499
+ interface SimulationSlotValidationResult {
500
+ valid: boolean;
501
+ error?: string;
502
+ }
503
+ interface SimulationAssignment {
504
+ id: string;
505
+ containerId: string;
506
+ slotId: string;
507
+ itemId: string | null;
508
+ profileId: string;
509
+ appId: string;
510
+ createdAt: number;
511
+ metadata?: Record<string, unknown>;
512
+ }
513
+ interface SimulationSlotMutationResult {
514
+ success: boolean;
515
+ error?: string;
516
+ association?: SimulationAssignment;
517
+ }
518
+ interface SimulationBatchOperationAssign {
519
+ type: 'assign';
520
+ containerId: string;
521
+ slotId: string;
522
+ itemId: string;
523
+ }
524
+ interface SimulationBatchOperationRemove {
525
+ type: 'remove';
526
+ containerId: string;
527
+ slotId: string;
528
+ itemId?: string;
529
+ }
530
+ type SimulationBatchOperation = SimulationBatchOperationAssign | SimulationBatchOperationRemove;
531
+ interface SimulationBatchOperationResult {
532
+ success: boolean;
533
+ error?: string;
534
+ association?: SimulationAssignment;
535
+ operation: SimulationBatchOperation;
536
+ }
537
+ interface SimulationBatchOperationsResult {
538
+ success: boolean;
539
+ results: SimulationBatchOperationResult[];
540
+ affectedContainers: string[];
541
+ }
542
+ interface SimulationPowerPreview {
543
+ currentPower: number;
544
+ previewPower: number;
545
+ powerDelta: number;
546
+ breakdown: Record<string, number>;
547
+ }
548
+ interface ExecuteRecipeResponse {
549
+ success: boolean;
550
+ status?: string;
551
+ runId?: string;
552
+ expiresAt?: string;
553
+ queuePosition?: number;
554
+ outputs?: Record<string, number | string>;
555
+ data?: Record<string, unknown>;
556
+ message?: string;
557
+ amountRequested?: number;
558
+ amountFulfilled?: number;
559
+ partialSuccess?: boolean;
560
+ }
420
561
  interface SimulationApi {
421
- getStateAsync(roomId?: string): Promise<any>;
562
+ isEnabled(): boolean;
563
+ getStateAsync(roomId?: string): Promise<SimulationState>;
422
564
  getConfigAsync(roomId?: string): Promise<VenusSimulationConfig>;
423
- executeRecipeAsync(recipeId: string, inputs?: any, options?: ExecuteRecipeOptions): Promise<any>;
424
- getActiveRunsAsync(options?: GetActiveRunsOptions): Promise<any>;
565
+ executeRecipeAsync(recipeId: string, inputs?: Record<string, unknown>, options?: ExecuteRecipeOptions): Promise<ExecuteRecipeResponse>;
566
+ getActiveRunsAsync(options?: GetActiveRunsOptions): Promise<SimulationRunSummary[]>;
425
567
  collectRecipeAsync(runId: string): Promise<CollectRecipeResult>;
426
- executeScopedRecipeAsync(recipeId: string, entity: string, inputs?: any, options?: ExecuteScopedRecipeOptions | any): Promise<ExecuteScopedRecipeResult>;
427
- triggerRecipeChainAsync(recipeId: string, options?: TriggerRecipeChainOptions): Promise<any>;
568
+ executeScopedRecipeAsync(recipeId: string, entity: string, inputs?: Record<string, unknown>, options?: ExecuteScopedRecipeOptions): Promise<ExecuteScopedRecipeResult>;
569
+ triggerRecipeChainAsync(recipeId: string, options?: TriggerRecipeChainOptions): Promise<ExecuteRecipeResponse>;
428
570
  getAvailableRecipesAsync(options?: GetAvailableRecipesOptions): Promise<GetAvailableRecipesResult>;
429
571
  getRecipeRequirementsAsync(recipe: Recipe): Promise<RecipeRequirementResult>;
430
572
  getBatchRecipeRequirementsAsync(recipes: Recipe[]): Promise<GetBatchRecipeRequirements>;
431
- resolveFieldValueAsync(entityId: string, fieldPath: string, entity?: string): Promise<any>;
432
- getEntityMetadataAsync(entityId: string): Promise<any>;
433
- getSlotContainersAsync(): Promise<any>;
434
- getSlotAssignmentsAsync(containerId: string): Promise<any>;
435
- assignItemToSlotAsync(containerId: string, slotId: string, itemId: string): Promise<any>;
436
- removeItemFromSlotAsync(containerId: string, slotId: string): Promise<any>;
437
- getAvailableItemsAsync(containerId: string, slotId: string): Promise<Array<any>>;
438
- calculatePowerPreviewAsync(containerId: string, slotId: string, candidateItemId: string): Promise<any>;
439
- validateSlotAssignmentAsync(containerId: string, slotId: string, itemId: string): Promise<any>;
440
- executeBatchOperationsAsync(operations: Array<any>, validateOnly?: boolean): Promise<any>;
441
- sumContributions(contributions: Record<string, any>): Record<string, number>;
573
+ resolveFieldValueAsync(entityId: string, fieldPath: string, entity?: string): Promise<unknown>;
574
+ getEntityMetadataAsync(entityId: string): Promise<Record<string, unknown>>;
575
+ getSlotContainersAsync(): Promise<SimulationSlotContainer[]>;
576
+ getSlotAssignmentsAsync(containerId: string): Promise<SimulationAssignment[]>;
577
+ assignItemToSlotAsync(containerId: string, slotId: string, itemId: string): Promise<SimulationSlotMutationResult>;
578
+ removeItemFromSlotAsync(containerId: string, slotId: string): Promise<SimulationSlotMutationResult>;
579
+ getAvailableItemsAsync(containerId: string, slotId: string): Promise<SimulationAvailableItem[]>;
580
+ calculatePowerPreviewAsync(containerId: string, slotId: string, candidateItemId: string): Promise<SimulationPowerPreview>;
581
+ validateSlotAssignmentAsync(containerId: string, slotId: string, itemId: string): Promise<SimulationSlotValidationResult>;
582
+ executeBatchOperationsAsync(operations: Array<SimulationBatchOperation>, validateOnly?: boolean): Promise<SimulationBatchOperationsResult>;
583
+ subscribeAsync(options: SimulationSubscribeOptions): Promise<() => void>;
584
+ }
585
+
586
+ interface VenusRoomPayload extends Record<string, unknown> {
587
+ id: string;
588
+ name?: string;
589
+ currentPlayers?: string[];
590
+ maxPlayers?: number;
591
+ gameType?: string;
592
+ appId?: string;
593
+ type?: string;
594
+ createdBy?: string;
595
+ createdAt?: number;
596
+ updatedAt?: number;
597
+ isPrivate?: boolean;
598
+ status?: string;
599
+ customMetadata?: Record<string, unknown>;
600
+ admins?: string[];
601
+ roomCode?: string;
602
+ description?: string;
603
+ data?: Record<string, unknown>;
604
+ version?: string;
605
+ }
606
+ declare class VenusRoom {
607
+ readonly id: string;
608
+ name?: string;
609
+ players: string[];
610
+ maxPlayers?: number;
611
+ gameType?: string;
612
+ appId?: string;
613
+ type?: string;
614
+ createdBy?: string;
615
+ createdAt?: number;
616
+ updatedAt?: number;
617
+ isPrivate?: boolean;
618
+ status?: string;
619
+ customMetadata: Record<string, unknown>;
620
+ admins: string[];
621
+ roomCode?: string;
622
+ description?: string;
623
+ data: Record<string, unknown>;
624
+ version?: string;
625
+ constructor(roomData: VenusRoomPayload);
626
+ }
627
+
628
+ interface CreateRoomOptions {
629
+ maxPlayers?: number;
630
+ gameType?: string;
631
+ isPrivate?: boolean;
632
+ roomCode?: string;
633
+ name?: string;
634
+ description?: string;
635
+ customMetadata?: Record<string, unknown>;
636
+ data?: Record<string, unknown>;
637
+ }
638
+ interface JoinRoomMatchCriteria {
639
+ isPrivate?: boolean;
640
+ hasSpace?: boolean;
641
+ gameType?: string;
642
+ [key: string]: unknown;
643
+ }
644
+ interface JoinOrCreateRoomOptions {
645
+ matchCriteria?: JoinRoomMatchCriteria;
646
+ createOptions: CreateRoomOptions;
647
+ }
648
+ interface JoinOrCreateResult {
649
+ action: 'created' | 'joined';
650
+ room: VenusRoom;
651
+ playersJoined: number;
652
+ }
653
+ interface ListRoomsOptions {
654
+ includeArchived?: boolean;
655
+ }
656
+ interface RoomDataUpdate {
657
+ type: 'H5_ROOM_DATA_UPDATED';
658
+ roomId: string;
659
+ roomData: Record<string, unknown>;
660
+ timestamp?: number;
661
+ }
662
+ type RoomMessageEventType = 'H5_ROOM_MESSAGE_RECEIVED' | 'H5_ROOM_MESSAGE_UPDATED' | 'H5_ROOM_MESSAGE_DELETED';
663
+ interface RoomMessageEvent {
664
+ type: RoomMessageEventType;
665
+ roomId: string;
666
+ message: Record<string, unknown>;
667
+ timestamp?: number;
668
+ }
669
+ interface ProposedMoveEvent {
670
+ type: 'app:h5:proposedMoveValidationUpdated';
671
+ roomId: string;
672
+ proposedMoveData: Record<string, unknown>;
673
+ proposedMoveId?: string;
674
+ changeType?: string;
675
+ timestamp?: number;
676
+ }
677
+ interface RoomSubscriptionOptions {
678
+ onData?: (event: RoomDataUpdate) => void;
679
+ onMessages?: (event: RoomMessageEvent) => void;
680
+ onGameEvents?: (event: ProposedMoveEvent) => void;
681
+ }
682
+ interface ProposeMoveRequest {
683
+ gameSpecificState: Record<string, unknown>;
684
+ moveType: string;
685
+ clientContext?: Record<string, unknown>;
686
+ clientProposalId?: string;
687
+ }
688
+ interface ProposeMoveResult {
689
+ proposedMoveId: string;
690
+ }
691
+ interface ValidateMoveVerdict {
692
+ isValid: boolean;
693
+ reason?: string | null;
694
+ validatorId?: string | null;
695
+ }
696
+ interface ValidateMoveResult {
697
+ success: boolean;
698
+ moveId: string;
699
+ isValid: boolean;
700
+ reason?: string | null;
701
+ }
702
+ interface UpdateRoomDataOptions {
703
+ merge?: boolean;
704
+ }
705
+ interface RoomMessageRequest {
706
+ message: Record<string, unknown>;
707
+ metadata?: Record<string, unknown>;
708
+ }
709
+ interface StartRoomGameOptions {
710
+ gameConfig?: Record<string, unknown>;
711
+ turnOrder?: string[] | null;
712
+ }
713
+ interface RoomsApi {
714
+ createRoomAsync(options: CreateRoomOptions): Promise<VenusRoom>;
715
+ joinOrCreateRoomAsync(options: JoinOrCreateRoomOptions): Promise<JoinOrCreateResult>;
716
+ joinRoomByCodeAsync(roomCode: string): Promise<VenusRoom>;
717
+ getUserRoomsAsync(options?: ListRoomsOptions): Promise<VenusRoom[]>;
718
+ subscribeAsync(room: VenusRoom, options?: RoomSubscriptionOptions): Promise<() => void>;
719
+ updateRoomDataAsync(room: VenusRoom, updates: Record<string, unknown>, options?: UpdateRoomDataOptions): Promise<void>;
720
+ getRoomDataAsync(room: VenusRoom): Promise<Record<string, unknown>>;
721
+ sendRoomMessageAsync(room: VenusRoom, message: RoomMessageRequest): Promise<string>;
722
+ leaveRoomAsync(room: VenusRoom): Promise<void>;
723
+ startRoomGameAsync(room: VenusRoom, options?: StartRoomGameOptions): Promise<void>;
724
+ proposeMoveAsync(room: VenusRoom, request: ProposeMoveRequest): Promise<ProposeMoveResult>;
725
+ validateMoveAsync(room: VenusRoom, moveId: string, verdict: ValidateMoveVerdict): Promise<ValidateMoveResult>;
442
726
  }
443
727
 
444
728
  interface VenusMessage {
@@ -529,99 +813,20 @@ declare class VenusTransport implements RpcTransport {
529
813
  private notifyVenusMessageReceived;
530
814
  }
531
815
 
532
- declare class VenusRoom {
533
- readonly id: string;
534
- name: string;
535
- players: any[];
536
- maxPlayers: number;
537
- gameType: string;
538
- appId: string;
539
- type: any;
540
- createdBy: string;
541
- createdAt: number;
542
- updatedAt: number;
543
- isPrivate: boolean;
544
- currentPlayers: string[];
545
- status: any;
546
- customMetadata: Record<string, any>;
547
- admins: string[];
548
- roomCode: string;
549
- description: string;
550
- data: Record<string, any>;
551
- version: string;
552
- private _subscriptions;
553
- constructor(roomData: any);
554
- private updateFromRoomData;
555
- }
556
-
557
- interface CreateRoomOptions {
558
- maxPlayers?: number;
559
- gameType?: string;
560
- isPrivate?: boolean;
561
- roomCode?: string;
562
- name?: string;
563
- description?: string;
564
- customMetadata?: Record<string, any>;
565
- }
566
- interface JoinOrCreateResult {
567
- action: 'created' | 'joined';
568
- room: VenusRoom;
569
- playersJoined: number;
570
- }
571
- interface RoomSubscriptionOptions {
572
- onData?: (roomData: any) => void;
573
- onMessages?: (messagePayload: any) => void;
574
- onMoves?: (movePayload: any) => void;
575
- onGameEvents?: (eventPayload: any) => void;
576
- }
577
- interface ProposeMovePayload {
578
- gameSpecificState: any;
579
- moveType: string;
580
- clientContext?: Record<string, any>;
581
- clientProposalId?: string;
582
- }
583
- interface ProposeMoveResult {
584
- proposedMoveId: string;
585
- }
586
- interface ValidateMoveResult {
587
- success: boolean;
588
- moveId: string;
589
- isValid: boolean;
590
- reason?: string | null;
591
- }
592
- interface RoomsApi {
593
- createRoom(options: CreateRoomOptions): Promise<VenusRoom>;
594
- joinOrCreateRoom(options: CreateRoomOptions): Promise<JoinOrCreateResult>;
595
- joinRoomByCode?(roomCode: string): Promise<VenusRoom>;
596
- getUserRooms?(includeArchived?: boolean): Promise<VenusRoom[]>;
597
- subscribe?(room: VenusRoom, options: RoomSubscriptionOptions): (() => void) | {
598
- unsubscribe(): void;
599
- };
600
- updateData?(room: VenusRoom, updates: Record<string, any>, merge?: boolean): Promise<any>;
601
- getData?(room: VenusRoom): Promise<any>;
602
- sendMessage?(room: VenusRoom, messageData: any): Promise<string>;
603
- leave?(room: VenusRoom): Promise<any>;
604
- startGame?(room: VenusRoom, gameConfig?: Record<string, any>, turnOrder?: string[] | null): Promise<any>;
605
- proposeMove?(room: VenusRoom, proposalPayload: ProposeMovePayload): Promise<ProposeMoveResult>;
606
- validateMove?(room: VenusRoom, moveId: string, isValid: boolean, reason?: string | null, validatorId?: string | null): Promise<ValidateMoveResult>;
607
- }
608
-
609
816
  interface LoggingApi {
610
817
  logDebug(message: string, ...args: any[]): void;
611
818
  logError(message: string, ...args: any[]): void;
612
819
  }
613
820
 
614
821
  interface SharedAssetsApi {
615
- loadCharactersBundle(): Promise<ArrayBuffer>;
616
- loadBurgerTimeAssetsBundle(): Promise<ArrayBuffer>;
822
+ loadAssetsBundle(game: string, bundleKey: string): Promise<ArrayBuffer>;
617
823
  }
618
824
 
619
825
  declare class RpcSharedAssetsApi implements SharedAssetsApi {
620
826
  private readonly venusApi;
621
827
  private readonly rpcClient;
622
828
  constructor(rpcClient: RpcClient, venusApi: VenusAPI);
623
- loadBurgerTimeAssetsBundle(): Promise<ArrayBuffer>;
624
- loadCharactersBundle(): Promise<ArrayBuffer>;
829
+ loadAssetsBundle(game: string, bundleKey: string, fileType?: string): Promise<ArrayBuffer>;
625
830
  }
626
831
  interface LoadEmbeddedAssetsRequest {
627
832
  assetKey: string;
@@ -668,25 +873,29 @@ interface LeaderboardConfig {
668
873
  maxDurationSec: number;
669
874
  minScore: number;
670
875
  maxScore: number;
671
- requiresHash: boolean;
672
- scoringFields: string[];
876
+ requiresToken: boolean;
877
+ enableScoreSealing: boolean;
878
+ scoreSealingSecret?: string;
673
879
  modes: Record<string, LeaderboardModeConfig>;
674
880
  periods: Record<string, LeaderboardPeriodConfig>;
675
881
  antiCheat: LeaderboardAntiCheatConfig;
676
882
  displaySettings: LeaderboardDisplaySettings;
677
883
  }
678
- interface StartRunResult {
679
- sessionId: string;
884
+ interface ScoreToken {
885
+ token: string;
680
886
  startTime: number;
681
887
  expiresAt: number;
682
- hashNonce?: string | null;
888
+ sealingNonce?: string | null;
889
+ sealingSecret?: string | null;
683
890
  mode: string;
684
891
  }
685
- interface SubmitScoreOptions {
892
+ interface SubmitScoreParams {
893
+ token?: string;
894
+ score: number;
895
+ duration: number;
686
896
  mode?: string;
687
897
  telemetry?: Record<string, any>;
688
898
  metadata?: Record<string, any>;
689
- hash?: string;
690
899
  }
691
900
  interface SubmitScoreResult {
692
901
  accepted: boolean;
@@ -694,7 +903,7 @@ interface SubmitScoreResult {
694
903
  zScore?: number | null;
695
904
  isAnomaly?: boolean;
696
905
  }
697
- interface GetLeaderboardOptions {
906
+ interface GetPagedScoresOptions {
698
907
  mode?: string;
699
908
  period?: string;
700
909
  periodDate?: number | string;
@@ -710,9 +919,9 @@ interface LeaderboardEntry {
710
919
  username: string;
711
920
  avatarUrl: string | null;
712
921
  score: number;
713
- durationSec: number;
922
+ duration: number;
714
923
  submittedAt: number;
715
- sessionId?: string;
924
+ token?: string;
716
925
  rank: number | null;
717
926
  zScore?: number | null;
718
927
  isAnomaly?: boolean;
@@ -722,7 +931,7 @@ interface LeaderboardEntry {
722
931
  metadata?: Record<string, any> | null;
723
932
  isSeed?: boolean;
724
933
  }
725
- interface LeaderboardResponse {
934
+ interface PagedScoresResponse {
726
935
  variant: 'standard' | 'highlight';
727
936
  entries: LeaderboardEntry[];
728
937
  totalEntries: number;
@@ -730,12 +939,12 @@ interface LeaderboardResponse {
730
939
  playerRank: number | null;
731
940
  periodInstance: string;
732
941
  }
733
- interface PlayerStatsOptions {
942
+ interface PlayerRankOptions {
734
943
  mode?: string;
735
944
  period?: string;
736
945
  periodDate?: number | string;
737
946
  }
738
- interface PlayerStats {
947
+ interface PlayerRankResult {
739
948
  rank: number | null;
740
949
  score?: number;
741
950
  totalPlayers: number;
@@ -743,7 +952,7 @@ interface PlayerStats {
743
952
  trustScore: number;
744
953
  periodInstance: string;
745
954
  }
746
- interface LeaderboardHighlightContext {
955
+ interface PodiumScoresContext {
747
956
  topEntries: LeaderboardEntry[];
748
957
  beforePlayer: LeaderboardEntry[];
749
958
  playerEntry?: LeaderboardEntry | null;
@@ -753,18 +962,18 @@ interface LeaderboardHighlightContext {
753
962
  omittedBefore: number;
754
963
  omittedAfter: number;
755
964
  }
756
- interface LeaderboardHighlightResponse extends LeaderboardResponse {
965
+ interface PodiumScoresResponse extends PagedScoresResponse {
757
966
  variant: 'highlight';
758
- context: LeaderboardHighlightContext;
967
+ context: PodiumScoresContext;
759
968
  }
760
- interface LeaderboardHighlightOptions extends Omit<GetLeaderboardOptions, 'variant'> {
969
+ interface GetPodiumScoresOptions extends Omit<GetPagedScoresOptions, 'variant'> {
761
970
  }
762
971
  interface LeaderboardApi {
763
- startRun(mode?: string): Promise<StartRunResult>;
764
- submitScore(sessionId: string, score: number, durationSec: number, options?: SubmitScoreOptions): Promise<SubmitScoreResult>;
765
- getLeaderboard(options?: GetLeaderboardOptions): Promise<LeaderboardResponse>;
766
- getPlayerStats(options?: PlayerStatsOptions): Promise<PlayerStats>;
767
- getLeaderboardHighlight(options?: LeaderboardHighlightOptions): Promise<LeaderboardHighlightResponse>;
972
+ createScoreToken(mode?: string): Promise<ScoreToken>;
973
+ submitScore(params: SubmitScoreParams): Promise<SubmitScoreResult>;
974
+ getPagedScores(options?: GetPagedScoresOptions): Promise<PagedScoresResponse>;
975
+ getMyRank(options?: PlayerRankOptions): Promise<PlayerRankResult>;
976
+ getPodiumScores(options?: GetPodiumScoresOptions): Promise<PodiumScoresResponse>;
768
977
  }
769
978
 
770
979
  interface PreloaderApi {
@@ -818,7 +1027,7 @@ interface SocialApi {
818
1027
  * - iOS / Android: opens the native share sheet.
819
1028
  * - Web: copies the generated URL to the clipboard (with fallback toast).
820
1029
  *
821
- * @param options.launchParams Arbitrary launch parameters (must include gameId).
1030
+ * @param options.launchParams Arbitrary launch parameters for your game.
822
1031
  * @param options.metadata Optional OpenGraph metadata for rich previews.
823
1032
  * @returns The generated share URL.
824
1033
  */
@@ -831,7 +1040,7 @@ interface SocialApi {
831
1040
  *
832
1041
  * Games can render or print the returned QR image or re-use the share URL.
833
1042
  *
834
- * @param options.launchParams Arbitrary launch parameters (must include gameId).
1043
+ * @param options.launchParams Arbitrary launch parameters for your game.
835
1044
  * @param options.metadata Optional OpenGraph metadata for the share.
836
1045
  * @param options.qrOptions Customisation for the generated QR code.
837
1046
  * @returns The generated share URL and QR code (as a data URL).
@@ -843,12 +1052,20 @@ interface SocialApi {
843
1052
  }): Promise<QRCodeResult>;
844
1053
  }
845
1054
 
846
- interface HudInsets {
1055
+ /**
1056
+ * Safe area insets representing padding needed to avoid device notches and host UI.
1057
+ * Includes toolbar/feedHeader height + device safe areas.
1058
+ */
1059
+ interface SafeArea {
847
1060
  left: number;
848
1061
  top: number;
849
1062
  right: number;
850
1063
  bottom: number;
851
1064
  }
1065
+ /**
1066
+ * @deprecated Use SafeArea instead. Will be removed in v4.0.0
1067
+ */
1068
+ type HudInsets = SafeArea;
852
1069
  interface InitializationOptions {
853
1070
  helpText?: string;
854
1071
  hardDisableMock?: boolean;
@@ -856,7 +1073,11 @@ interface InitializationOptions {
856
1073
  usePreloader?: boolean;
857
1074
  }
858
1075
  interface InitializationContext {
859
- hudInsets?: HudInsets;
1076
+ /**
1077
+ * Safe area insets from INIT_SDK response.
1078
+ * @deprecated Use VenusAPI.system.getSafeArea() instead. Will be removed in v4.0.0
1079
+ */
1080
+ safeArea?: SafeArea;
860
1081
  initializeAsleep: boolean;
861
1082
  }
862
1083
  interface Host {
@@ -870,9 +1091,9 @@ interface Host {
870
1091
  readonly notifications: NotificationsApi;
871
1092
  readonly popups: PopupsApi;
872
1093
  readonly profile: ProfileApi;
1094
+ readonly system: SystemApi;
873
1095
  readonly cdn: CdnApi;
874
1096
  readonly time: TimeApi;
875
- readonly post: PostApi;
876
1097
  readonly ai: AiApi;
877
1098
  readonly haptics: HapticsApi;
878
1099
  readonly features: FeaturesApi;
@@ -982,23 +1203,72 @@ interface RecipeRequirementResult {
982
1203
  recipeId: string;
983
1204
  entity: string | null;
984
1205
  amount?: number;
985
- inputs: Record<string, any>;
1206
+ inputs: Record<string, number | string>;
986
1207
  canAfford: boolean;
987
1208
  disabled: boolean;
988
1209
  }
989
- interface VenusSimulationState {
990
- inventory: Record<string, number | string>;
1210
+ interface SimulationRunSummary {
1211
+ id: string;
1212
+ recipeId: string;
1213
+ status: string;
1214
+ startTime: number;
1215
+ expiresAt: number;
1216
+ entity?: string;
1217
+ inputs?: Record<string, number | string>;
1218
+ outputs?: Record<string, number | string>;
1219
+ commitmentEndsAt?: number;
1220
+ participantCount?: number;
1221
+ }
1222
+ type VenusSimulationStateResponse = SimulationPersonalState | SimulationRoomState;
1223
+ type SimulationUpdateType = 'entity' | 'activeRuns' | 'snapshot';
1224
+ interface SimulationUpdateBase {
1225
+ timestamp: number;
1226
+ reason?: 'recipe_completed' | 'auto_restart' | 'manual_update' | 'state_sync';
1227
+ }
1228
+ interface SimulationEntityUpdate extends SimulationUpdateBase {
1229
+ type: 'entity';
1230
+ entities: Array<{
1231
+ entityId: string;
1232
+ quantity: number | string;
1233
+ }>;
1234
+ }
1235
+ interface SimulationActiveRunsUpdate extends SimulationUpdateBase {
1236
+ type: 'activeRuns';
991
1237
  activeRuns: Array<{
992
1238
  id: string;
993
1239
  recipeId: string;
994
1240
  status: string;
995
1241
  startTime: number;
996
1242
  expiresAt: number;
1243
+ entity?: string;
997
1244
  inputs?: Record<string, number | string>;
998
1245
  outputs?: Record<string, number | string>;
1246
+ }>;
1247
+ }
1248
+ interface SimulationSnapshotUpdate extends SimulationUpdateBase {
1249
+ type: 'snapshot';
1250
+ entities?: Array<{
1251
+ entityId: string;
1252
+ quantity: number | string;
1253
+ }>;
1254
+ activeRuns?: Array<{
1255
+ id: string;
1256
+ recipeId: string;
1257
+ status: string;
1258
+ startTime: number;
1259
+ expiresAt: number;
999
1260
  entity?: string;
1261
+ inputs?: Record<string, number | string>;
1262
+ outputs?: Record<string, number | string>;
1000
1263
  }>;
1001
- disabledRecipes: string[];
1264
+ }
1265
+ type SimulationUpdateData = SimulationEntityUpdate | SimulationActiveRunsUpdate | SimulationSnapshotUpdate;
1266
+ interface SimulationSubscribeOptions {
1267
+ entities?: string[];
1268
+ tags?: string[];
1269
+ activeRuns?: boolean;
1270
+ roomId?: string;
1271
+ onUpdate: (data: SimulationUpdateData) => void;
1002
1272
  }
1003
1273
  interface VenusSimulationEffect {
1004
1274
  type: string;
@@ -1052,93 +1322,40 @@ interface RecipeRequirementQuery {
1052
1322
  interface BatchRecipeRequirementsResult {
1053
1323
  success: boolean;
1054
1324
  results: RecipeRequirementResult[];
1055
- errors?: Array<any>;
1325
+ errors?: Array<unknown>;
1056
1326
  }
1057
- interface VenusSimulationAPI {
1058
- isEnabled(): boolean;
1059
- getStateAsync(options?: {
1060
- roomId?: string;
1061
- }): Promise<VenusSimulationState>;
1062
- getConfigAsync(): Promise<VenusSimulationConfig>;
1063
- executeRecipeAsync(recipeId: string, inputs?: Record<string, any>, options?: any): Promise<any>;
1064
- executeScopedRecipeAsync(recipeId: string, entity: string, inputs?: Record<string, any>, roomId?: string, options?: any): Promise<any>;
1065
- getActiveRunsAsync(): Promise<any[]>;
1066
- collectRecipeAsync(runId: string): Promise<any>;
1067
- triggerRecipeChainAsync(triggerRecipeId: string, context?: any, roomId?: string): Promise<any>;
1068
- getRecipeRequirementsAsync(recipeId: string, entity?: string, amount?: number): Promise<RecipeRequirementResult>;
1069
- getBatchRecipeRequirementsAsync(queries: RecipeRequirementQuery[]): Promise<BatchRecipeRequirementsResult>;
1070
- getAvailableRecipesAsync(roomId?: string, includeActorRecipes?: boolean): Promise<Array<any>>;
1071
- resolveFieldValueAsync(entityId: string, fieldPath: string, entity?: string): Promise<any>;
1072
- getEntityMetadataAsync(entityId: string): Promise<any>;
1073
- getSlotContainersAsync(): Promise<Array<any>>;
1074
- getSlotAssignmentsAsync(containerId: string): Promise<Array<any>>;
1075
- assignItemToSlotAsync(containerId: string, slotId: string, itemId: string): Promise<any>;
1076
- removeItemFromSlotAsync(containerId: string, slotId: string): Promise<any>;
1077
- getAvailableItemsAsync(containerId: string, slotId: string): Promise<Array<any>>;
1078
- calculatePowerPreviewAsync(containerId: string, slotId: string, candidateItemId: string): Promise<any>;
1079
- validateSlotAssignmentAsync(containerId: string, slotId: string, itemId: string): Promise<any>;
1080
- executeBatchOperationsAsync(operations: Array<any>, validateOnly?: boolean): Promise<any>;
1081
- sumContributions(contributions: Record<string, any>): Record<string, number>;
1082
- }
1083
- interface VenusConfig {
1084
- user?: {
1085
- id: string;
1086
- username?: string;
1087
- languageCode: string;
1088
- locale: string;
1089
- };
1090
- profile?: {
1091
- id: string;
1092
- username: string;
1093
- avatarUrl?: string;
1094
- isAnonymous?: boolean;
1095
- };
1096
- device?: {
1097
- screenSize: {
1098
- width: number;
1099
- height: number;
1100
- };
1101
- viewportSize: {
1102
- width: number;
1103
- height: number;
1104
- };
1105
- orientation: string;
1106
- hapticsEnabled: boolean;
1107
- };
1108
- theme?: Record<string, any>;
1109
- environment?: {
1110
- isDevelopment: boolean;
1111
- platform: string;
1112
- platformVersion: string;
1113
- browserInfo?: {
1114
- browser: string;
1115
- isMobile: boolean;
1116
- };
1117
- };
1118
- ui: {
1119
- safeArea: {
1120
- top: number;
1121
- left: number;
1122
- right: number;
1123
- bottom: number;
1124
- };
1125
- controls: Record<string, any>;
1126
- };
1127
- rooms?: VenusRoomsConfig;
1327
+ interface VenusExecuteRecipeOptions {
1328
+ roomId?: string;
1329
+ batchAmount?: number;
1330
+ allowPartialBatch?: boolean;
1331
+ entity?: string;
1128
1332
  }
1129
- interface VenusRoomsConfig {
1130
- gameType?: string;
1131
- rulesPreset?: string;
1132
- matchmaking?: {
1133
- defaultCriteria?: Record<string, any>;
1134
- [key: string]: any;
1135
- };
1136
- createOptions?: Record<string, any>;
1137
- privateMatchDefaults?: {
1138
- createOptions?: Record<string, any>;
1139
- allowCustomCode?: boolean;
1140
- };
1141
- [key: string]: any;
1333
+ interface VenusExecuteScopedRecipeOptions {
1334
+ roomId?: string;
1335
+ }
1336
+ interface VenusAvailableRecipe {
1337
+ id: string;
1338
+ scope: string;
1339
+ clientViewable: boolean;
1340
+ }
1341
+ interface VenusCollectRecipeResult {
1342
+ success: boolean;
1343
+ runId: string;
1344
+ rewards: Record<string, unknown>;
1345
+ message: string;
1346
+ }
1347
+ interface VenusExecuteRecipeResult {
1348
+ success: boolean;
1349
+ status?: string;
1350
+ runId?: string;
1351
+ expiresAt?: string;
1352
+ queuePosition?: number;
1353
+ outputs?: Record<string, number | string>;
1354
+ data?: Record<string, unknown>;
1355
+ message?: string;
1356
+ amountRequested?: number;
1357
+ amountFulfilled?: number;
1358
+ partialSuccess?: boolean;
1142
1359
  }
1143
1360
  interface ActionSheetOption {
1144
1361
  label: string;
@@ -1153,20 +1370,36 @@ interface Profile {
1153
1370
  isAnonymous?: boolean;
1154
1371
  }
1155
1372
  interface VenusAPI {
1156
- config: VenusConfig;
1373
+ /**
1374
+ * @deprecated All config properties have been removed. Use VenusAPI methods instead.
1375
+ * Will be removed in v4.0.0
1376
+ */
1377
+ config: Record<string, never>;
1157
1378
  launchParams: Record<string, string>;
1379
+ _profileData?: Profile;
1380
+ _deviceData?: DeviceInfo;
1381
+ _environmentData?: EnvironmentInfo;
1382
+ _safeAreaData?: SafeArea;
1383
+ _localeData?: string;
1384
+ _languageCodeData?: string;
1158
1385
  _mock: any;
1159
1386
  _bootstrap: {
1160
1387
  apiInjected: boolean;
1161
1388
  venus: any;
1162
1389
  };
1163
1390
  initializeAsync(options?: InitializationOptions): Promise<InitializationContext>;
1164
- simulation: VenusSimulationAPI;
1391
+ simulation: SimulationApi;
1165
1392
  leaderboard: LeaderboardApi;
1166
1393
  log(message: string, ...args: any[]): void;
1167
1394
  error(message: string, ...args: any[]): void;
1168
1395
  isAvailable(): boolean;
1396
+ /**
1397
+ * @deprecated Use VenusAPI.system.isMobile() instead
1398
+ */
1169
1399
  isMobile(): boolean;
1400
+ /**
1401
+ * @deprecated Use VenusAPI.system.isWeb() instead
1402
+ */
1170
1403
  isWeb(): boolean;
1171
1404
  isMock(): boolean;
1172
1405
  /**
@@ -1186,8 +1419,15 @@ interface VenusAPI {
1186
1419
  getFeatureGate(options: {
1187
1420
  gateName: string;
1188
1421
  }): Promise<any>;
1422
+ system: SystemApi;
1423
+ getProfile(): Profile;
1424
+ /**
1425
+ * @deprecated Use getProfile() instead
1426
+ */
1189
1427
  getCurrentProfile(): Profile;
1190
1428
  getLaunchParams(): Record<string, string>;
1429
+ getLocale(): string;
1430
+ getLanguageCode(): string;
1191
1431
  /**
1192
1432
  * @deprecated Please use the popups API. (e.g, VenusAPI.popups)
1193
1433
  */
@@ -1258,11 +1498,6 @@ interface VenusAPI {
1258
1498
  key(index: number): Promise<string | null>;
1259
1499
  };
1260
1500
  requestPopOrQuit(options?: QuitOptions): Promise<boolean>;
1261
- getPostInteractionsAsync(): Promise<any>;
1262
- getPostInteractions(): Promise<any>;
1263
- toggleLikeAsync(): Promise<any>;
1264
- toggleFollowAsync(): Promise<any>;
1265
- openCommentsAsync(options?: any): Promise<void>;
1266
1501
  /**
1267
1502
  * @deprecated Please use the ads API. (e.g, VenusAPI.ads)
1268
1503
  */
@@ -1271,16 +1506,8 @@ interface VenusAPI {
1271
1506
  * @deprecated Please use the ads API. (e.g, VenusAPI.ads)
1272
1507
  */
1273
1508
  showRewardedAdAsync(): Promise<boolean>;
1274
- requestTimeAsync(): Promise<{
1275
- serverTime: number;
1276
- }>;
1277
- getFutureTimeAsync(options: {
1278
- days?: number;
1279
- hours?: number;
1280
- minutes?: number;
1281
- timeOfDay?: any;
1282
- timezone?: string;
1283
- }): Promise<number>;
1509
+ requestTimeAsync(): Promise<ServerTimeData>;
1510
+ getFutureTimeAsync(options: GetFutureTimeOptions): Promise<number>;
1284
1511
  formatTime(timestamp: number, options?: any): string;
1285
1512
  formatNumber(value: number, options?: any): string;
1286
1513
  /**
@@ -1320,7 +1547,7 @@ interface VenusAPI {
1320
1547
  isOptional?: boolean;
1321
1548
  }>>;
1322
1549
  cleanupAssets(): void;
1323
- assetLoader?: {
1550
+ assetLoader: {
1324
1551
  getCached(url: string): string | null;
1325
1552
  };
1326
1553
  showAvatar3dEditorAsync(options: {
@@ -1341,43 +1568,22 @@ interface VenusAPI {
1341
1568
  isInStack: boolean;
1342
1569
  stackPosition: number;
1343
1570
  };
1344
- rooms: {
1345
- create(options: any): Promise<VenusRoom>;
1346
- joinOrCreate(options: any): Promise<{
1347
- action: 'created' | 'joined';
1348
- room: VenusRoom;
1349
- playersJoined: number;
1350
- }>;
1351
- joinByCode(roomCode: string): Promise<VenusRoom>;
1352
- list(includeArchived?: boolean): Promise<VenusRoom[]>;
1353
- subscribeToRoom(room: VenusRoom, options: {
1354
- onData?: (event: any) => void;
1355
- onMessages?: (event: any) => void;
1356
- onMoves?: (event: any) => void;
1357
- onGameEvents?: (event: any) => void;
1358
- }): () => void;
1359
- proposeMove(room: VenusRoom, proposalPayload: {
1360
- gameSpecificState: any;
1361
- moveType: string;
1362
- clientContext?: Record<string, any>;
1363
- clientProposalId?: string;
1364
- }): Promise<{
1365
- proposedMoveId: string;
1366
- }>;
1367
- validateMove(room: VenusRoom, moveId: string, isValid: boolean, reason?: string, validatorId?: string): Promise<any>;
1368
- updateRoomData(room: VenusRoom, updates: any, merge?: boolean): Promise<any>;
1369
- getRoomData(room: VenusRoom): Promise<any>;
1370
- sendRoomMessage(room: VenusRoom, messageData: any): Promise<string>;
1371
- startRoomGame(room: VenusRoom, gameConfig?: any, turnOrder?: any): Promise<any>;
1372
- leaveRoom(room: VenusRoom): Promise<any>;
1373
- };
1571
+ rooms: RoomsApi;
1374
1572
  notifyCleanupComplete(): void;
1375
1573
  RoomEvents: {
1376
1574
  OPTIMISTIC_GAME_STATE_UPDATED: string;
1377
1575
  PROPOSED_MOVE_VALIDATION_UPDATED: string;
1378
1576
  };
1379
- numbers?: {
1380
- normalize(value: string | number): string;
1577
+ numbers: {
1578
+ isBigNumber(value: any): boolean;
1579
+ normalize(value: string | number | any): any;
1580
+ format: {
1581
+ incremental(value: any): string;
1582
+ };
1583
+ calculateGeometricSeriesCost(baseCost: number | string, multiplier: number, currentQuantity: number, purchaseAmount: number): any;
1584
+ calculateMaxAffordableDecimal(availableCash: number | string, baseCost: number | string, multiplier: number, currentQuantity: number): number;
1585
+ formatDecimalCurrency(decimalValue: any): string;
1586
+ Decimal: any;
1381
1587
  };
1382
1588
  iap: IapApi;
1383
1589
  cdn: CdnApi;
@@ -1406,4 +1612,4 @@ interface AdsApi {
1406
1612
  showInterstitialAd(options?: ShowInterstitialAdOptions): Promise<boolean>;
1407
1613
  }
1408
1614
 
1409
- export { type Recipe as $, type AnalyticsApi as A, type Subscription as B, type CdnApi as C, type AwakeCallback as D, type Experiment as E, type FetchBlobOptions as F, type GetFutureTimeOptions as G, type Host as H, type PauseCallback as I, type ResumeCallback as J, type QuitCallback as K, type LifecycleApi as L, type SimulationApi as M, type NavigationApi as N, type VenusSimulationConfig as O, type PushAppOptions as P, type QuitOptions as Q, type RpcRequest as R, type StorageApi as S, type TimeApi as T, type ExecuteRecipeOptions as U, type VenusAPI as V, type CollectRecipeResult as W, type GetActiveRunsOptions as X, type ExecuteScopedRecipeResult as Y, type GetAvailableRecipesOptions as Z, type GetAvailableRecipesResult as _, type RpcResponse as a, type LeaderboardEntry as a$, type GetBatchRecipeRequirements as a0, type TriggerRecipeChainOptions as a1, type RecipeRequirementResult as a2, VenusTransport as a3, type LoggingApi as a4, type IapApi as a5, type SpendCurrencyOptions as a6, type LoadEmbeddedAssetsResponse as a7, type SharedAssetsApi as a8, type LeaderboardApi as a9, type AiMessage as aA, type Asset as aB, type Category as aC, MockAvatarApi as aD, type TimeIntervalTriggerInput as aE, type NotificationTriggerInput as aF, type OnRequestCallback as aG, type OnResponseCallback as aH, type OnNotificationCallback as aI, type RpcTransport as aJ, VenusRoom as aK, type CreateRoomOptions as aL, type JoinOrCreateResult as aM, type RoomSubscriptionOptions as aN, type ProposeMovePayload as aO, type ProposeMoveResult as aP, type ValidateMoveResult as aQ, type ExecuteScopedRecipeOptions as aR, type RecipeInfo as aS, RpcSharedAssetsApi as aT, type LoadEmbeddedAssetsRequest as aU, type LeaderboardModeConfig as aV, type LeaderboardPeriodType as aW, type LeaderboardPeriodConfig as aX, type LeaderboardAntiCheatConfig as aY, type LeaderboardDisplaySettings as aZ, type LeaderboardConfig as a_, type StartRunResult as aa, type SubmitScoreOptions as ab, type SubmitScoreResult as ac, type GetLeaderboardOptions as ad, type LeaderboardResponse as ae, type PlayerStatsOptions as af, type PlayerStats as ag, type LeaderboardHighlightOptions as ah, type LeaderboardHighlightResponse as ai, type PreloaderApi as aj, type SocialApi as ak, type ShareMetadata as al, type ShareLinkResult as am, type SocialQRCodeOptions as an, type QRCodeResult as ao, type Avatar3dApi as ap, type AssetManifest as aq, type Avatar3dConfig as ar, type ShowEditorOptions as as, type Avatar3dEdits as at, type AdsApi as au, type PostApi as av, type RoomsApi as aw, type InitializationOptions as ax, type InitializationContext as ay, type HudInsets as az, type RpcNotification as b, type LeaderboardHighlightContext as b0, createHost as b1, type VenusSimulationState as b2, type VenusSimulationEffect as b3, type VenusSimulationRecipe as b4, type RecipeRequirementQuery as b5, type BatchRecipeRequirementsResult as b6, type VenusSimulationAPI as b7, type VenusConfig as b8, type VenusRoomsConfig as b9, type ActionSheetOption as ba, RpcClient as c, type NavigationStackInfo as d, type NotificationsApi as e, type ScheduleLocalNotification as f, type ScheduleNotificationOptions as g, type PopupsApi as h, type ActionSheetItem as i, type ShowActionSheetOptions as j, type ShowAlertOptions as k, type ShowConfirmOptions as l, type ShowToastOptions as m, type ShowInterstitialAdOptions as n, type ShowRewardedAdOptions as o, type ProfileApi as p, type Profile as q, type SubPath as r, type ServerTimeData as s, type AiApi as t, type AiChatCompletionRequest as u, type AiChatCompletionData as v, type HapticsApi as w, HapticFeedbackStyle as x, type FeaturesApi as y, type SleepCallback as z };
1615
+ export { type SubPath as $, type ActionSheetOption as A, type BatchRecipeRequirementsResult as B, type ScheduleLocalNotification as C, type ScheduleNotificationOptions as D, type PopupsApi as E, type ActionSheetItem as F, type ShowActionSheetOptions as G, type Host as H, type ShowAlertOptions as I, type ShowConfirmOptions as J, type ShowToastOptions as K, type ShowInterstitialAdOptions as L, type ShowRewardedAdOptions as M, type NavigationApi as N, type ProfileApi as O, type Profile as P, type QuitOptions as Q, type RecipeRequirementResult as R, type SimulationRunSummary as S, type DeviceApi as T, type DeviceInfo as U, type VenusAPI as V, type EnvironmentApi as W, type EnvironmentInfo as X, type SystemApi as Y, type SafeArea as Z, type CdnApi as _, type VenusSimulationStateResponse as a, type SubmitScoreParams as a$, type FetchBlobOptions as a0, type TimeApi as a1, type ServerTimeData as a2, type GetFutureTimeOptions as a3, type AiApi as a4, type AiChatCompletionRequest as a5, type AiChatCompletionData as a6, type HapticsApi as a7, HapticFeedbackStyle as a8, type FeaturesApi as a9, type Recipe as aA, type GetBatchRecipeRequirements as aB, type TriggerRecipeChainOptions as aC, type RoomDataUpdate as aD, type RoomMessageEvent as aE, type ProposedMoveEvent as aF, VenusTransport as aG, type RoomsApi as aH, type CreateRoomOptions as aI, type JoinOrCreateRoomOptions as aJ, type JoinOrCreateResult as aK, type ListRoomsOptions as aL, type UpdateRoomDataOptions as aM, type RoomMessageRequest as aN, type StartRoomGameOptions as aO, type ProposeMoveRequest as aP, type ProposeMoveResult as aQ, type ValidateMoveVerdict as aR, type ValidateMoveResult as aS, type RoomSubscriptionOptions as aT, type LoggingApi as aU, type IapApi as aV, type SpendCurrencyOptions as aW, type LoadEmbeddedAssetsResponse as aX, type SharedAssetsApi as aY, type LeaderboardApi as aZ, type ScoreToken as a_, type Experiment as aa, type LifecycleApi as ab, type SleepCallback as ac, type Subscription as ad, type AwakeCallback as ae, type PauseCallback as af, type ResumeCallback as ag, type QuitCallback as ah, type SimulationApi as ai, type SimulationSlotValidationResult as aj, type SimulationBatchOperation as ak, type SimulationBatchOperationsResult as al, type SimulationAvailableItem as am, type SimulationPowerPreview as an, type SimulationSlotMutationResult as ao, type SimulationSlotContainer as ap, type SimulationAssignment as aq, type SimulationState as ar, type ExecuteRecipeOptions as as, type ExecuteRecipeResponse as at, type CollectRecipeResult as au, type GetActiveRunsOptions as av, type ExecuteScopedRecipeOptions as aw, type ExecuteScopedRecipeResult as ax, type GetAvailableRecipesOptions as ay, type GetAvailableRecipesResult as az, type SimulationUpdateType as b, type SubmitScoreResult as b0, type GetPagedScoresOptions as b1, type PagedScoresResponse as b2, type PlayerRankOptions as b3, type PlayerRankResult as b4, type GetPodiumScoresOptions as b5, type PodiumScoresResponse as b6, type PreloaderApi as b7, type SocialApi as b8, type ShareMetadata as b9, type SimulationRoomActiveRecipe as bA, type SimulationRoomState as bB, type SimulationBatchOperationAssign as bC, type SimulationBatchOperationRemove as bD, type SimulationBatchOperationResult as bE, RpcSharedAssetsApi as bF, type LoadEmbeddedAssetsRequest as bG, type LeaderboardModeConfig as bH, type LeaderboardPeriodType as bI, type LeaderboardPeriodConfig as bJ, type LeaderboardAntiCheatConfig as bK, type LeaderboardDisplaySettings as bL, type LeaderboardConfig as bM, type LeaderboardEntry as bN, type PodiumScoresContext as bO, type HudInsets as bP, createHost as bQ, type ShareLinkResult as ba, type SocialQRCodeOptions as bb, type QRCodeResult as bc, type Avatar3dApi as bd, type AssetManifest as be, type Avatar3dConfig as bf, type ShowEditorOptions as bg, type Avatar3dEdits as bh, type AdsApi as bi, type InitializationOptions as bj, type InitializationContext as bk, type AiMessage as bl, type Asset as bm, type Category as bn, MockAvatarApi as bo, type TimeIntervalTriggerInput as bp, type NotificationTriggerInput as bq, type OnRequestCallback as br, type OnResponseCallback as bs, type OnNotificationCallback as bt, type RpcTransport as bu, type JoinRoomMatchCriteria as bv, type RoomMessageEventType as bw, type VenusRoomPayload as bx, type RecipeInfo as by, type SimulationPersonalState as bz, type SimulationEntityUpdate as c, type SimulationActiveRunsUpdate as d, type SimulationSnapshotUpdate as e, type SimulationUpdateData as f, type SimulationSubscribeOptions as g, type VenusSimulationEffect as h, type VenusSimulationRecipe as i, type VenusSimulationConfig as j, type RecipeRequirementQuery as k, type VenusExecuteRecipeOptions as l, type VenusExecuteScopedRecipeOptions as m, type VenusAvailableRecipe as n, type VenusCollectRecipeResult as o, type VenusExecuteRecipeResult as p, VenusRoom as q, type AnalyticsApi 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 NotificationsApi as z };