@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.
- package/dist/{AdsApi-CNGRf6j0.d.mts → AdsApi-or6zfdzM.d.mts} +499 -293
- package/dist/{AdsApi-CNGRf6j0.d.ts → AdsApi-or6zfdzM.d.ts} +499 -293
- package/dist/chunk-NSSMTXJJ.mjs +7 -0
- package/dist/chunk-NSSMTXJJ.mjs.map +1 -0
- package/dist/{chunk-W7IPHM67.mjs → chunk-QABXMFND.mjs} +3 -26
- package/dist/chunk-QABXMFND.mjs.map +1 -0
- package/dist/chunk-UXY5CKKG.mjs +12 -0
- package/dist/chunk-UXY5CKKG.mjs.map +1 -0
- package/dist/{chunk-PXWCNWJ6.mjs → chunk-YOBDYPKZ.mjs} +1528 -1577
- package/dist/chunk-YOBDYPKZ.mjs.map +1 -0
- package/dist/core-62LWDHN7.mjs +4 -0
- package/dist/{core-R3FHW62G.mjs.map → core-62LWDHN7.mjs.map} +1 -1
- package/dist/index.cjs +1556 -1585
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +290 -92
- package/dist/index.d.ts +290 -92
- package/dist/index.mjs +4 -6
- package/dist/index.mjs.map +1 -1
- package/dist/venus-api/index.cjs +1613 -2008
- package/dist/venus-api/index.cjs.map +1 -1
- package/dist/venus-api/index.d.mts +2 -2
- package/dist/venus-api/index.d.ts +2 -2
- package/dist/venus-api/index.mjs +92 -391
- package/dist/venus-api/index.mjs.map +1 -1
- package/dist/vite/index.cjs +534 -0
- package/dist/vite/index.cjs.map +1 -0
- package/dist/vite/index.mjs +527 -0
- package/dist/vite/index.mjs.map +1 -0
- package/dist/webview/index.cjs +15 -0
- package/dist/webview/index.cjs.map +1 -0
- package/dist/webview/index.d.mts +15 -0
- package/dist/webview/index.d.ts +15 -0
- package/dist/webview/index.mjs +4 -0
- package/dist/webview/index.mjs.map +1 -0
- package/package.json +1 -1
- package/dist/chunk-PXWCNWJ6.mjs.map +0 -1
- package/dist/chunk-W7IPHM67.mjs.map +0 -1
- 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?:
|
|
442
|
+
context?: Record<string, unknown>;
|
|
396
443
|
}
|
|
397
444
|
interface CollectRecipeResult {
|
|
398
445
|
success: boolean;
|
|
399
446
|
runId: string;
|
|
400
|
-
rewards:
|
|
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
|
-
|
|
562
|
+
isEnabled(): boolean;
|
|
563
|
+
getStateAsync(roomId?: string): Promise<SimulationState>;
|
|
422
564
|
getConfigAsync(roomId?: string): Promise<VenusSimulationConfig>;
|
|
423
|
-
executeRecipeAsync(recipeId: string, inputs?:
|
|
424
|
-
getActiveRunsAsync(options?: GetActiveRunsOptions): Promise<
|
|
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?:
|
|
427
|
-
triggerRecipeChainAsync(recipeId: string, options?: TriggerRecipeChainOptions): Promise<
|
|
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<
|
|
432
|
-
getEntityMetadataAsync(entityId: string): Promise<
|
|
433
|
-
getSlotContainersAsync(): Promise<
|
|
434
|
-
getSlotAssignmentsAsync(containerId: string): Promise<
|
|
435
|
-
assignItemToSlotAsync(containerId: string, slotId: string, itemId: string): Promise<
|
|
436
|
-
removeItemFromSlotAsync(containerId: string, slotId: string): Promise<
|
|
437
|
-
getAvailableItemsAsync(containerId: string, slotId: string): Promise<
|
|
438
|
-
calculatePowerPreviewAsync(containerId: string, slotId: string, candidateItemId: string): Promise<
|
|
439
|
-
validateSlotAssignmentAsync(containerId: string, slotId: string, itemId: string): Promise<
|
|
440
|
-
executeBatchOperationsAsync(operations: Array<
|
|
441
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
672
|
-
|
|
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
|
|
679
|
-
|
|
884
|
+
interface ScoreToken {
|
|
885
|
+
token: string;
|
|
680
886
|
startTime: number;
|
|
681
887
|
expiresAt: number;
|
|
682
|
-
|
|
888
|
+
sealingNonce?: string | null;
|
|
889
|
+
sealingSecret?: string | null;
|
|
683
890
|
mode: string;
|
|
684
891
|
}
|
|
685
|
-
interface
|
|
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
|
|
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
|
-
|
|
922
|
+
duration: number;
|
|
714
923
|
submittedAt: number;
|
|
715
|
-
|
|
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
|
|
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
|
|
942
|
+
interface PlayerRankOptions {
|
|
734
943
|
mode?: string;
|
|
735
944
|
period?: string;
|
|
736
945
|
periodDate?: number | string;
|
|
737
946
|
}
|
|
738
|
-
interface
|
|
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
|
|
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
|
|
965
|
+
interface PodiumScoresResponse extends PagedScoresResponse {
|
|
757
966
|
variant: 'highlight';
|
|
758
|
-
context:
|
|
967
|
+
context: PodiumScoresContext;
|
|
759
968
|
}
|
|
760
|
-
interface
|
|
969
|
+
interface GetPodiumScoresOptions extends Omit<GetPagedScoresOptions, 'variant'> {
|
|
761
970
|
}
|
|
762
971
|
interface LeaderboardApi {
|
|
763
|
-
|
|
764
|
-
submitScore(
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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,
|
|
1206
|
+
inputs: Record<string, number | string>;
|
|
986
1207
|
canAfford: boolean;
|
|
987
1208
|
disabled: boolean;
|
|
988
1209
|
}
|
|
989
|
-
interface
|
|
990
|
-
|
|
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
|
-
|
|
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<
|
|
1325
|
+
errors?: Array<unknown>;
|
|
1056
1326
|
}
|
|
1057
|
-
interface
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
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
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
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
|
-
|
|
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:
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
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 };
|