@series-inc/venus-sdk 3.1.1-beta.0 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/{AdsApi-meVfUcZy.d.mts → AdsApi-BV_VKgMO.d.mts} +467 -269
  2. package/dist/{AdsApi-meVfUcZy.d.ts → AdsApi-BV_VKgMO.d.ts} +467 -269
  3. package/dist/{chunk-EMVTVSGL.mjs → chunk-FTIFUYDL.mjs} +978 -1412
  4. package/dist/chunk-FTIFUYDL.mjs.map +1 -0
  5. package/dist/chunk-NSSMTXJJ.mjs +7 -0
  6. package/dist/{chunk-2PDL7CQK.mjs.map → chunk-NSSMTXJJ.mjs.map} +1 -1
  7. package/dist/chunk-UXY5CKKG.mjs +12 -0
  8. package/dist/chunk-UXY5CKKG.mjs.map +1 -0
  9. package/dist/{core-5JLON75E.mjs → core-62LWDHN7.mjs} +3 -3
  10. package/dist/{core-5JLON75E.mjs.map → core-62LWDHN7.mjs.map} +1 -1
  11. package/dist/index.cjs +1018 -1783
  12. package/dist/index.cjs.map +1 -1
  13. package/dist/index.d.mts +142 -68
  14. package/dist/index.d.ts +142 -68
  15. package/dist/index.mjs +3 -7
  16. package/dist/index.mjs.map +1 -1
  17. package/dist/venus-api/index.cjs +1091 -1883
  18. package/dist/venus-api/index.cjs.map +1 -1
  19. package/dist/venus-api/index.d.mts +2 -2
  20. package/dist/venus-api/index.d.ts +2 -2
  21. package/dist/venus-api/index.mjs +76 -418
  22. package/dist/venus-api/index.mjs.map +1 -1
  23. package/dist/vite/index.cjs.map +1 -1
  24. package/dist/vite/index.mjs.map +1 -1
  25. package/dist/webview/index.cjs +4 -335
  26. package/dist/webview/index.cjs.map +1 -1
  27. package/dist/webview/index.d.mts +7 -9
  28. package/dist/webview/index.d.ts +7 -9
  29. package/dist/webview/index.mjs +2 -2
  30. package/package.json +1 -1
  31. package/dist/chunk-2PDL7CQK.mjs +0 -26
  32. package/dist/chunk-EMVTVSGL.mjs.map +0 -1
  33. package/dist/chunk-IZLOB7DV.mjs +0 -343
  34. package/dist/chunk-IZLOB7DV.mjs.map +0 -1
@@ -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,83 +813,6 @@ 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;
@@ -849,12 +1056,20 @@ interface SocialApi {
849
1056
  }): Promise<QRCodeResult>;
850
1057
  }
851
1058
 
852
- interface HudInsets {
1059
+ /**
1060
+ * Safe area insets representing padding needed to avoid device notches and host UI.
1061
+ * Includes toolbar/feedHeader height + device safe areas.
1062
+ */
1063
+ interface SafeArea {
853
1064
  left: number;
854
1065
  top: number;
855
1066
  right: number;
856
1067
  bottom: number;
857
1068
  }
1069
+ /**
1070
+ * @deprecated Use SafeArea instead. Will be removed in v4.0.0
1071
+ */
1072
+ type HudInsets = SafeArea;
858
1073
  interface InitializationOptions {
859
1074
  helpText?: string;
860
1075
  hardDisableMock?: boolean;
@@ -862,7 +1077,11 @@ interface InitializationOptions {
862
1077
  usePreloader?: boolean;
863
1078
  }
864
1079
  interface InitializationContext {
865
- hudInsets?: HudInsets;
1080
+ /**
1081
+ * Safe area insets from INIT_SDK response.
1082
+ * @deprecated Use VenusAPI.system.getSafeArea() instead. Will be removed in v4.0.0
1083
+ */
1084
+ safeArea?: SafeArea;
866
1085
  initializeAsleep: boolean;
867
1086
  }
868
1087
  interface Host {
@@ -876,9 +1095,9 @@ interface Host {
876
1095
  readonly notifications: NotificationsApi;
877
1096
  readonly popups: PopupsApi;
878
1097
  readonly profile: ProfileApi;
1098
+ readonly system: SystemApi;
879
1099
  readonly cdn: CdnApi;
880
1100
  readonly time: TimeApi;
881
- readonly post: PostApi;
882
1101
  readonly ai: AiApi;
883
1102
  readonly haptics: HapticsApi;
884
1103
  readonly features: FeaturesApi;
@@ -988,23 +1207,72 @@ interface RecipeRequirementResult {
988
1207
  recipeId: string;
989
1208
  entity: string | null;
990
1209
  amount?: number;
991
- inputs: Record<string, any>;
1210
+ inputs: Record<string, number | string>;
992
1211
  canAfford: boolean;
993
1212
  disabled: boolean;
994
1213
  }
995
- interface VenusSimulationState {
996
- inventory: Record<string, number | string>;
1214
+ interface SimulationRunSummary {
1215
+ id: string;
1216
+ recipeId: string;
1217
+ status: string;
1218
+ startTime: number;
1219
+ expiresAt: number;
1220
+ entity?: string;
1221
+ inputs?: Record<string, number | string>;
1222
+ outputs?: Record<string, number | string>;
1223
+ commitmentEndsAt?: number;
1224
+ participantCount?: number;
1225
+ }
1226
+ type VenusSimulationStateResponse = SimulationPersonalState | SimulationRoomState;
1227
+ type SimulationUpdateType = 'entity' | 'activeRuns' | 'snapshot';
1228
+ interface SimulationUpdateBase {
1229
+ timestamp: number;
1230
+ reason?: 'recipe_completed' | 'auto_restart' | 'manual_update' | 'state_sync';
1231
+ }
1232
+ interface SimulationEntityUpdate extends SimulationUpdateBase {
1233
+ type: 'entity';
1234
+ entities: Array<{
1235
+ entityId: string;
1236
+ quantity: number | string;
1237
+ }>;
1238
+ }
1239
+ interface SimulationActiveRunsUpdate extends SimulationUpdateBase {
1240
+ type: 'activeRuns';
997
1241
  activeRuns: Array<{
998
1242
  id: string;
999
1243
  recipeId: string;
1000
1244
  status: string;
1001
1245
  startTime: number;
1002
1246
  expiresAt: number;
1247
+ entity?: string;
1003
1248
  inputs?: Record<string, number | string>;
1004
1249
  outputs?: Record<string, number | string>;
1250
+ }>;
1251
+ }
1252
+ interface SimulationSnapshotUpdate extends SimulationUpdateBase {
1253
+ type: 'snapshot';
1254
+ entities?: Array<{
1255
+ entityId: string;
1256
+ quantity: number | string;
1257
+ }>;
1258
+ activeRuns?: Array<{
1259
+ id: string;
1260
+ recipeId: string;
1261
+ status: string;
1262
+ startTime: number;
1263
+ expiresAt: number;
1005
1264
  entity?: string;
1265
+ inputs?: Record<string, number | string>;
1266
+ outputs?: Record<string, number | string>;
1006
1267
  }>;
1007
- disabledRecipes: string[];
1268
+ }
1269
+ type SimulationUpdateData = SimulationEntityUpdate | SimulationActiveRunsUpdate | SimulationSnapshotUpdate;
1270
+ interface SimulationSubscribeOptions {
1271
+ entities?: string[];
1272
+ tags?: string[];
1273
+ activeRuns?: boolean;
1274
+ roomId?: string;
1275
+ onUpdate: (data: SimulationUpdateData) => void;
1008
1276
  }
1009
1277
  interface VenusSimulationEffect {
1010
1278
  type: string;
@@ -1058,97 +1326,40 @@ interface RecipeRequirementQuery {
1058
1326
  interface BatchRecipeRequirementsResult {
1059
1327
  success: boolean;
1060
1328
  results: RecipeRequirementResult[];
1061
- errors?: Array<any>;
1329
+ errors?: Array<unknown>;
1062
1330
  }
1063
- interface VenusSimulationAPI {
1064
- isEnabled(): boolean;
1065
- getStateAsync(options?: {
1066
- roomId?: string;
1067
- }): Promise<VenusSimulationState>;
1068
- getConfigAsync(): Promise<VenusSimulationConfig>;
1069
- executeRecipeAsync(recipeId: string, inputs?: Record<string, any>, options?: any): Promise<any>;
1070
- executeScopedRecipeAsync(recipeId: string, entity: string, inputs?: Record<string, any>, roomId?: string, options?: any): Promise<any>;
1071
- getActiveRunsAsync(): Promise<any[]>;
1072
- collectRecipeAsync(runId: string): Promise<any>;
1073
- triggerRecipeChainAsync(triggerRecipeId: string, context?: any, roomId?: string): Promise<any>;
1074
- getRecipeRequirementsAsync(recipeId: string, entity?: string, amount?: number): Promise<RecipeRequirementResult>;
1075
- getBatchRecipeRequirementsAsync(queries: RecipeRequirementQuery[]): Promise<BatchRecipeRequirementsResult>;
1076
- getAvailableRecipesAsync(roomId?: string, includeActorRecipes?: boolean): Promise<Array<any>>;
1077
- resolveFieldValueAsync(entityId: string, fieldPath: string, entity?: string): Promise<any>;
1078
- getEntityMetadataAsync(entityId: string): Promise<any>;
1079
- getSlotContainersAsync(): Promise<Array<any>>;
1080
- getSlotAssignmentsAsync(containerId: string): Promise<Array<any>>;
1081
- assignItemToSlotAsync(containerId: string, slotId: string, itemId: string): Promise<any>;
1082
- removeItemFromSlotAsync(containerId: string, slotId: string): Promise<any>;
1083
- getAvailableItemsAsync(containerId: string, slotId: string): Promise<Array<any>>;
1084
- calculatePowerPreviewAsync(containerId: string, slotId: string, candidateItemId: string): Promise<any>;
1085
- validateSlotAssignmentAsync(containerId: string, slotId: string, itemId: string): Promise<any>;
1086
- executeBatchOperationsAsync(operations: Array<any>, validateOnly?: boolean): Promise<any>;
1087
- sumContributions(contributions: Record<string, any>): Record<string, number>;
1088
- }
1089
- interface VenusConfig {
1090
- /**
1091
- * @deprecated Use VenusAPI.getLocale() and VenusAPI.getLanguageCode() instead. Will be removed in v4.0.0
1092
- * TODO: Remove in SDK v4.0.0
1093
- */
1094
- user?: {
1095
- id: string;
1096
- username?: string;
1097
- languageCode: string;
1098
- locale: string;
1099
- };
1100
- profile?: {
1101
- id: string;
1102
- username: string;
1103
- avatarUrl?: string;
1104
- isAnonymous?: boolean;
1105
- };
1106
- device?: {
1107
- screenSize: {
1108
- width: number;
1109
- height: number;
1110
- };
1111
- viewportSize: {
1112
- width: number;
1113
- height: number;
1114
- };
1115
- orientation: string;
1116
- hapticsEnabled: boolean;
1117
- };
1118
- theme?: Record<string, any>;
1119
- environment?: {
1120
- isDevelopment: boolean;
1121
- platform: string;
1122
- platformVersion: string;
1123
- browserInfo?: {
1124
- browser: string;
1125
- isMobile: boolean;
1126
- };
1127
- };
1128
- ui: {
1129
- safeArea: {
1130
- top: number;
1131
- left: number;
1132
- right: number;
1133
- bottom: number;
1134
- };
1135
- controls: Record<string, any>;
1136
- };
1137
- rooms?: VenusRoomsConfig;
1331
+ interface VenusExecuteRecipeOptions {
1332
+ roomId?: string;
1333
+ batchAmount?: number;
1334
+ allowPartialBatch?: boolean;
1335
+ entity?: string;
1138
1336
  }
1139
- interface VenusRoomsConfig {
1140
- gameType?: string;
1141
- rulesPreset?: string;
1142
- matchmaking?: {
1143
- defaultCriteria?: Record<string, any>;
1144
- [key: string]: any;
1145
- };
1146
- createOptions?: Record<string, any>;
1147
- privateMatchDefaults?: {
1148
- createOptions?: Record<string, any>;
1149
- allowCustomCode?: boolean;
1150
- };
1151
- [key: string]: any;
1337
+ interface VenusExecuteScopedRecipeOptions {
1338
+ roomId?: string;
1339
+ }
1340
+ interface VenusAvailableRecipe {
1341
+ id: string;
1342
+ scope: string;
1343
+ clientViewable: boolean;
1344
+ }
1345
+ interface VenusCollectRecipeResult {
1346
+ success: boolean;
1347
+ runId: string;
1348
+ rewards: Record<string, unknown>;
1349
+ message: string;
1350
+ }
1351
+ interface VenusExecuteRecipeResult {
1352
+ success: boolean;
1353
+ status?: string;
1354
+ runId?: string;
1355
+ expiresAt?: string;
1356
+ queuePosition?: number;
1357
+ outputs?: Record<string, number | string>;
1358
+ data?: Record<string, unknown>;
1359
+ message?: string;
1360
+ amountRequested?: number;
1361
+ amountFulfilled?: number;
1362
+ partialSuccess?: boolean;
1152
1363
  }
1153
1364
  interface ActionSheetOption {
1154
1365
  label: string;
@@ -1163,20 +1374,36 @@ interface Profile {
1163
1374
  isAnonymous?: boolean;
1164
1375
  }
1165
1376
  interface VenusAPI {
1166
- config: VenusConfig;
1377
+ /**
1378
+ * @deprecated All config properties have been removed. Use VenusAPI methods instead.
1379
+ * Will be removed in v4.0.0
1380
+ */
1381
+ config: Record<string, never>;
1167
1382
  launchParams: Record<string, string>;
1383
+ _profileData?: Profile;
1384
+ _deviceData?: DeviceInfo;
1385
+ _environmentData?: EnvironmentInfo;
1386
+ _safeAreaData?: SafeArea;
1387
+ _localeData?: string;
1388
+ _languageCodeData?: string;
1168
1389
  _mock: any;
1169
1390
  _bootstrap: {
1170
1391
  apiInjected: boolean;
1171
1392
  venus: any;
1172
1393
  };
1173
1394
  initializeAsync(options?: InitializationOptions): Promise<InitializationContext>;
1174
- simulation: VenusSimulationAPI;
1395
+ simulation: SimulationApi;
1175
1396
  leaderboard: LeaderboardApi;
1176
1397
  log(message: string, ...args: any[]): void;
1177
1398
  error(message: string, ...args: any[]): void;
1178
1399
  isAvailable(): boolean;
1400
+ /**
1401
+ * @deprecated Use VenusAPI.system.isMobile() instead
1402
+ */
1179
1403
  isMobile(): boolean;
1404
+ /**
1405
+ * @deprecated Use VenusAPI.system.isWeb() instead
1406
+ */
1180
1407
  isWeb(): boolean;
1181
1408
  isMock(): boolean;
1182
1409
  /**
@@ -1196,6 +1423,11 @@ interface VenusAPI {
1196
1423
  getFeatureGate(options: {
1197
1424
  gateName: string;
1198
1425
  }): Promise<any>;
1426
+ system: SystemApi;
1427
+ getProfile(): Profile;
1428
+ /**
1429
+ * @deprecated Use getProfile() instead
1430
+ */
1199
1431
  getCurrentProfile(): Profile;
1200
1432
  getLaunchParams(): Record<string, string>;
1201
1433
  getLocale(): string;
@@ -1270,11 +1502,6 @@ interface VenusAPI {
1270
1502
  key(index: number): Promise<string | null>;
1271
1503
  };
1272
1504
  requestPopOrQuit(options?: QuitOptions): Promise<boolean>;
1273
- getPostInteractionsAsync(): Promise<any>;
1274
- getPostInteractions(): Promise<any>;
1275
- toggleLikeAsync(): Promise<any>;
1276
- toggleFollowAsync(): Promise<any>;
1277
- openCommentsAsync(options?: any): Promise<void>;
1278
1505
  /**
1279
1506
  * @deprecated Please use the ads API. (e.g, VenusAPI.ads)
1280
1507
  */
@@ -1283,16 +1510,8 @@ interface VenusAPI {
1283
1510
  * @deprecated Please use the ads API. (e.g, VenusAPI.ads)
1284
1511
  */
1285
1512
  showRewardedAdAsync(): Promise<boolean>;
1286
- requestTimeAsync(): Promise<{
1287
- serverTime: number;
1288
- }>;
1289
- getFutureTimeAsync(options: {
1290
- days?: number;
1291
- hours?: number;
1292
- minutes?: number;
1293
- timeOfDay?: any;
1294
- timezone?: string;
1295
- }): Promise<number>;
1513
+ requestTimeAsync(): Promise<ServerTimeData>;
1514
+ getFutureTimeAsync(options: GetFutureTimeOptions): Promise<number>;
1296
1515
  formatTime(timestamp: number, options?: any): string;
1297
1516
  formatNumber(value: number, options?: any): string;
1298
1517
  /**
@@ -1332,7 +1551,7 @@ interface VenusAPI {
1332
1551
  isOptional?: boolean;
1333
1552
  }>>;
1334
1553
  cleanupAssets(): void;
1335
- assetLoader?: {
1554
+ assetLoader: {
1336
1555
  getCached(url: string): string | null;
1337
1556
  };
1338
1557
  showAvatar3dEditorAsync(options: {
@@ -1353,43 +1572,22 @@ interface VenusAPI {
1353
1572
  isInStack: boolean;
1354
1573
  stackPosition: number;
1355
1574
  };
1356
- rooms: {
1357
- create(options: any): Promise<VenusRoom>;
1358
- joinOrCreate(options: any): Promise<{
1359
- action: 'created' | 'joined';
1360
- room: VenusRoom;
1361
- playersJoined: number;
1362
- }>;
1363
- joinByCode(roomCode: string): Promise<VenusRoom>;
1364
- list(includeArchived?: boolean): Promise<VenusRoom[]>;
1365
- subscribeToRoom(room: VenusRoom, options: {
1366
- onData?: (event: any) => void;
1367
- onMessages?: (event: any) => void;
1368
- onMoves?: (event: any) => void;
1369
- onGameEvents?: (event: any) => void;
1370
- }): () => void;
1371
- proposeMove(room: VenusRoom, proposalPayload: {
1372
- gameSpecificState: any;
1373
- moveType: string;
1374
- clientContext?: Record<string, any>;
1375
- clientProposalId?: string;
1376
- }): Promise<{
1377
- proposedMoveId: string;
1378
- }>;
1379
- validateMove(room: VenusRoom, moveId: string, isValid: boolean, reason?: string, validatorId?: string): Promise<any>;
1380
- updateRoomData(room: VenusRoom, updates: any, merge?: boolean): Promise<any>;
1381
- getRoomData(room: VenusRoom): Promise<any>;
1382
- sendRoomMessage(room: VenusRoom, messageData: any): Promise<string>;
1383
- startRoomGame(room: VenusRoom, gameConfig?: any, turnOrder?: any): Promise<any>;
1384
- leaveRoom(room: VenusRoom): Promise<any>;
1385
- };
1575
+ rooms: RoomsApi;
1386
1576
  notifyCleanupComplete(): void;
1387
1577
  RoomEvents: {
1388
1578
  OPTIMISTIC_GAME_STATE_UPDATED: string;
1389
1579
  PROPOSED_MOVE_VALIDATION_UPDATED: string;
1390
1580
  };
1391
- numbers?: {
1392
- normalize(value: string | number): string;
1581
+ numbers: {
1582
+ isBigNumber(value: any): boolean;
1583
+ normalize(value: string | number | any): any;
1584
+ format: {
1585
+ incremental(value: any): string;
1586
+ };
1587
+ calculateGeometricSeriesCost(baseCost: number | string, multiplier: number, currentQuantity: number, purchaseAmount: number): any;
1588
+ calculateMaxAffordableDecimal(availableCash: number | string, baseCost: number | string, multiplier: number, currentQuantity: number): number;
1589
+ formatDecimalCurrency(decimalValue: any): string;
1590
+ Decimal: any;
1393
1591
  };
1394
1592
  iap: IapApi;
1395
1593
  cdn: CdnApi;
@@ -1418,4 +1616,4 @@ interface AdsApi {
1418
1616
  showInterstitialAd(options?: ShowInterstitialAdOptions): Promise<boolean>;
1419
1617
  }
1420
1618
 
1421
- export { type AwakeCallback as $, type ActionSheetOption as A, type BatchRecipeRequirementsResult as B, type ShowRewardedAdOptions as C, type ProfileApi as D, type CdnApi as E, type SubPath as F, type FetchBlobOptions as G, type Host as H, type ServerTimeData as I, type GetFutureTimeOptions as J, type AiApi as K, type AiChatCompletionRequest as L, type AiChatCompletionData as M, type NavigationApi as N, type HapticsApi as O, type Profile as P, type QuitOptions as Q, type RecipeRequirementResult as R, type StorageApi as S, type TimeApi as T, HapticFeedbackStyle as U, type VenusAPI as V, type FeaturesApi as W, type Experiment as X, type LifecycleApi as Y, type SleepCallback as Z, type Subscription as _, type VenusSimulationState as a, type RecipeInfo as a$, type PauseCallback as a0, type ResumeCallback as a1, type QuitCallback as a2, type SimulationApi as a3, type ExecuteRecipeOptions as a4, type CollectRecipeResult as a5, type GetActiveRunsOptions as a6, type ExecuteScopedRecipeResult as a7, type GetAvailableRecipesOptions as a8, type GetAvailableRecipesResult as a9, type AssetManifest as aA, type Avatar3dConfig as aB, type ShowEditorOptions as aC, type Avatar3dEdits as aD, type AdsApi as aE, type PostApi as aF, type RoomsApi as aG, type InitializationOptions as aH, type InitializationContext as aI, type HudInsets as aJ, type AiMessage as aK, type Asset as aL, type Category as aM, MockAvatarApi as aN, type TimeIntervalTriggerInput as aO, type NotificationTriggerInput as aP, type OnRequestCallback as aQ, type OnResponseCallback as aR, type OnNotificationCallback as aS, type RpcTransport as aT, type CreateRoomOptions as aU, type JoinOrCreateResult as aV, type RoomSubscriptionOptions as aW, type ProposeMovePayload as aX, type ProposeMoveResult as aY, type ValidateMoveResult as aZ, type ExecuteScopedRecipeOptions as a_, type Recipe as aa, type GetBatchRecipeRequirements as ab, type TriggerRecipeChainOptions as ac, VenusTransport as ad, type LoggingApi as ae, type IapApi as af, type SpendCurrencyOptions as ag, type LoadEmbeddedAssetsResponse as ah, type SharedAssetsApi as ai, type LeaderboardApi as aj, type ScoreToken as ak, type SubmitScoreParams as al, type SubmitScoreResult as am, type GetPagedScoresOptions as an, type PagedScoresResponse as ao, type PlayerRankOptions as ap, type PlayerRankResult as aq, type GetPodiumScoresOptions as ar, type PodiumScoresResponse as as, type PreloaderApi as at, type SocialApi as au, type ShareMetadata as av, type ShareLinkResult as aw, type SocialQRCodeOptions as ax, type QRCodeResult as ay, type Avatar3dApi as az, type VenusSimulationEffect as b, RpcSharedAssetsApi as b0, type LoadEmbeddedAssetsRequest as b1, type LeaderboardModeConfig as b2, type LeaderboardPeriodType as b3, type LeaderboardPeriodConfig as b4, type LeaderboardAntiCheatConfig as b5, type LeaderboardDisplaySettings as b6, type LeaderboardConfig as b7, type LeaderboardEntry as b8, type PodiumScoresContext as b9, createHost as ba, type VenusSimulationRecipe as c, type VenusSimulationConfig as d, type RecipeRequirementQuery as e, type VenusSimulationAPI as f, type VenusConfig as g, type VenusRoomsConfig as h, VenusRoom as i, type AnalyticsApi as j, type RpcRequest as k, type RpcResponse as l, type RpcNotification as m, RpcClient as n, type NavigationStackInfo as o, type PushAppOptions as p, type NotificationsApi as q, type ScheduleLocalNotification as r, type ScheduleNotificationOptions as s, type PopupsApi as t, type ActionSheetItem as u, type ShowActionSheetOptions as v, type ShowAlertOptions as w, type ShowConfirmOptions as x, type ShowToastOptions as y, type ShowInterstitialAdOptions as z };
1619
+ 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 };