@series-inc/rundot-game-sdk 5.23.0 → 5.24.0-beta.2
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-DksgfqAT.d.ts → AdsApi-CDJtVB3I.d.ts} +237 -3
- package/dist/{LeaderboardApi-DoKIAAHN.d.ts → LeaderboardApi-CrWxakrr.d.ts} +96 -3
- package/dist/{SyncplayRoomTransport-7F_e94v9.d.ts → SyncplayRoomTransport-BZFFN-il.d.ts} +1 -1
- package/dist/{chunk-KQ3J4GC4.js → chunk-3MDWJBCR.js} +362 -530
- package/dist/chunk-3MDWJBCR.js.map +1 -0
- package/dist/{chunk-EFEOX7D7.js → chunk-7RIEVFDA.js} +623 -125
- package/dist/chunk-7RIEVFDA.js.map +1 -0
- package/dist/{chunk-TIOJVMES.js → chunk-DMKR7SVQ.js} +51 -3
- package/dist/chunk-DMKR7SVQ.js.map +1 -0
- package/dist/chunk-N5MASNTK.js +33015 -0
- package/dist/chunk-N5MASNTK.js.map +1 -0
- package/dist/{chunk-VTEO4M7E.js → chunk-WFRNUODW.js} +57 -19
- package/dist/chunk-WFRNUODW.js.map +1 -0
- package/dist/chunk-YQEDG3Z2.js +118 -0
- package/dist/chunk-YQEDG3Z2.js.map +1 -0
- package/dist/{chunk-5JSI7LA6.js → chunk-YSK7K2OH.js} +2506 -3019
- package/dist/chunk-YSK7K2OH.js.map +1 -0
- package/dist/dist-AQIWY6KR.js +3636 -0
- package/dist/dist-AQIWY6KR.js.map +1 -0
- package/dist/host-http.d.ts +2 -1
- package/dist/host-http.js +2 -2
- package/dist/{index-BJHZ_Q3g.d.ts → index-BrvMOxG0.d.ts} +52 -55
- package/dist/index.d.ts +65 -35
- package/dist/index.js +3 -3
- package/dist/multiplayer-service-BPEWIL4F.d.ts +1834 -0
- package/dist/playground/index.js +343 -12
- package/dist/playground/index.js.map +1 -1
- package/dist/rundot-game-api/index.d.ts +4 -3
- package/dist/rundot-game-api/index.js +6 -3
- package/dist/rundot-game-api/index.js.map +1 -1
- package/dist/{session-promotion-CN7lr85d.d.ts → session-promotion-BMoIRgKe.d.ts} +3 -3
- package/dist/syncplay/browser.d.ts +1209 -1730
- package/dist/syncplay/browser.js +18079 -20342
- package/dist/syncplay/browser.js.map +1 -1
- package/dist/syncplay/creator.d.ts +5 -5
- package/dist/syncplay/creator.js +2 -2
- package/dist/syncplay/index.d.ts +2 -2
- package/dist/syncplay/index.js +2 -2
- package/dist/syncplay/node.d.ts +3 -774
- package/dist/syncplay/node.js +5527 -32042
- package/dist/syncplay/node.js.map +1 -1
- package/dist/syncplay/testing.d.ts +4908 -0
- package/dist/syncplay/testing.js +3808 -0
- package/dist/syncplay/testing.js.map +1 -0
- package/dist/{types-BXxDmID0.d.ts → types-BV8uchSD.d.ts} +21 -2
- package/dist/vite/index.d.ts +13 -27
- package/dist/vite/index.js +70 -0
- package/dist/vite/index.js.map +1 -1
- package/docs/rundot-developer-platform/api/AI.md +43 -1
- package/docs/rundot-developer-platform/api/ANALYTICS.md +1 -1
- package/docs/rundot-developer-platform/api/FILES.md +20 -1
- package/docs/rundot-developer-platform/api/LEADERBOARD.md +69 -0
- package/docs/rundot-developer-platform/api/LIVEOPS.md +15 -1
- package/docs/rundot-developer-platform/api/NOTIFICATIONS.md +92 -221
- package/docs/rundot-developer-platform/api/SHARED_ASSETS.md +4 -3
- package/docs/rundot-developer-platform/api/SHARING.md +68 -1
- package/docs/rundot-developer-platform/api/SHOP.md +2 -0
- package/docs/rundot-developer-platform/api/SPRITE_GEN.md +5 -3
- package/docs/rundot-developer-platform/api/SYNCPLAY-MOVEMENT.md +2 -2
- package/docs/rundot-developer-platform/api/SYNCPLAY-PHYSICS.md +149 -1
- package/docs/rundot-developer-platform/api/SYNCPLAY.md +77 -4
- package/docs/rundot-developer-platform/api/UGC.md +48 -0
- package/docs/rundot-developer-platform/api/VIDEO_GEN.md +41 -1
- package/docs/rundot-developer-platform/cli-reference.md +13 -8
- package/docs/rundot-developer-platform/error-handling.md +40 -0
- package/docs/rundot-developer-platform/playground.md +106 -1
- package/package.json +7 -1
- package/dist/chunk-5JSI7LA6.js.map +0 -1
- package/dist/chunk-EFEOX7D7.js.map +0 -1
- package/dist/chunk-KQ3J4GC4.js.map +0 -1
- package/dist/chunk-TIOJVMES.js.map +0 -1
- package/dist/chunk-VTEO4M7E.js.map +0 -1
- package/dist/chunk-XJCC6PWO.js +0 -46
- package/dist/chunk-XJCC6PWO.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { M as LeaderboardApi, I as ImageGenApi, A as AudioGenApi, V as VideoGenApi, q as SpriteGenApi, T as ThreeDGenApi } from './LeaderboardApi-
|
|
1
|
+
import { $ as ProviderErrorDetail, M as LeaderboardApi, I as ImageGenApi, A as AudioGenApi, V as VideoGenApi, q as SpriteGenApi, T as ThreeDGenApi } from './LeaderboardApi-CrWxakrr.js';
|
|
2
2
|
import { M as MultiplayerApi } from './MultiplayerApi-nnrGTTcO.js';
|
|
3
3
|
|
|
4
4
|
interface StorageApi {
|
|
@@ -35,6 +35,8 @@ interface RpcResponse {
|
|
|
35
35
|
code?: string;
|
|
36
36
|
/** Human-readable cause from an upstream provider, when available. */
|
|
37
37
|
detail?: string;
|
|
38
|
+
/** Structured provider rejection detail, when available. */
|
|
39
|
+
errorDetail?: ProviderErrorDetail;
|
|
38
40
|
stack?: string;
|
|
39
41
|
};
|
|
40
42
|
}
|
|
@@ -239,10 +241,17 @@ interface ScheduleRCSInput {
|
|
|
239
241
|
/** Seconds from now; mutually exclusive with triggerAt; max 7 days */
|
|
240
242
|
delaySeconds?: number;
|
|
241
243
|
}
|
|
242
|
-
|
|
244
|
+
/**
|
|
245
|
+
* `skipped` — nothing was scheduled for a benign reason (e.g. the user is not
|
|
246
|
+
* RCS-reachable, or an identical message is already scheduled). Distinct from
|
|
247
|
+
* `failed`, which indicates a hard scheduling error. See `ScheduleRCSResult.reason`.
|
|
248
|
+
*/
|
|
249
|
+
type ScheduleRCSStatus = 'pending' | 'sent' | 'dry_run' | 'skipped' | 'failed';
|
|
243
250
|
interface ScheduleRCSResult {
|
|
244
251
|
scheduleId: string;
|
|
245
252
|
status: ScheduleRCSStatus;
|
|
253
|
+
/** Why the schedule was skipped. Only set when `status === 'skipped'`. */
|
|
254
|
+
reason?: string;
|
|
246
255
|
/**
|
|
247
256
|
* Reserved for a future schedule-status API. Not returned by
|
|
248
257
|
* `scheduleRCSAsync` in v1 (rate-cap deferral is handled internally at
|
|
@@ -290,14 +299,50 @@ interface RequestRCSOptInResult {
|
|
|
290
299
|
*/
|
|
291
300
|
newlySubscribed: boolean;
|
|
292
301
|
}
|
|
302
|
+
type SubmitMessageChannel = 'local' | 'rcs';
|
|
303
|
+
interface SubmitMessageInput {
|
|
304
|
+
channels: SubmitMessageChannel[];
|
|
305
|
+
title?: string;
|
|
306
|
+
body?: string;
|
|
307
|
+
templateId?: string;
|
|
308
|
+
params?: Record<string, string>;
|
|
309
|
+
collapseKey?: string;
|
|
310
|
+
ctaUrl?: string;
|
|
311
|
+
continuationParams?: Record<string, string>;
|
|
312
|
+
image?: string;
|
|
313
|
+
triggerAt?: string;
|
|
314
|
+
delaySeconds?: number;
|
|
315
|
+
payload?: Record<string, unknown>;
|
|
316
|
+
notificationId?: string;
|
|
317
|
+
priority?: number;
|
|
318
|
+
groupId?: string;
|
|
319
|
+
}
|
|
320
|
+
type SubmitMessageResultChannel = 'local' | 'rcs' | 'inbox';
|
|
321
|
+
interface SubmitMessageChannelResult {
|
|
322
|
+
channel: SubmitMessageResultChannel;
|
|
323
|
+
status: 'scheduled' | 'skipped';
|
|
324
|
+
id?: string;
|
|
325
|
+
reason?: string;
|
|
326
|
+
}
|
|
327
|
+
interface SubmitMessageResult {
|
|
328
|
+
messageId: string;
|
|
329
|
+
results: SubmitMessageChannelResult[];
|
|
330
|
+
}
|
|
293
331
|
interface NotificationsApi {
|
|
332
|
+
/**
|
|
333
|
+
* @deprecated Use `submitMessageAsync({ channels: ['local'], ... })` instead.
|
|
334
|
+
*/
|
|
294
335
|
scheduleAsync(title: string, body: string, seconds: number, notificationId?: string, options?: ScheduleNotificationOptions): Promise<string | null>;
|
|
295
336
|
cancelNotification(notificationId: string): Promise<boolean>;
|
|
296
337
|
getAllScheduledLocalNotifications(): Promise<ScheduleLocalNotification[]>;
|
|
297
338
|
isLocalNotificationsEnabled(): Promise<boolean>;
|
|
298
339
|
setLocalNotificationsEnabled(enabled: boolean): Promise<boolean>;
|
|
299
340
|
getRCSAvailableAsync(): Promise<RCSAvailabilityStatus>;
|
|
341
|
+
/**
|
|
342
|
+
* @deprecated Use `submitMessageAsync({ channels: ['rcs'], ... })` instead.
|
|
343
|
+
*/
|
|
300
344
|
scheduleRCSAsync(input: ScheduleRCSInput): Promise<ScheduleRCSResult>;
|
|
345
|
+
submitMessageAsync(input: SubmitMessageInput): Promise<SubmitMessageResult>;
|
|
301
346
|
/**
|
|
302
347
|
* Trigger the platform-owned RCS opt-in modal. The host shows one of the
|
|
303
348
|
* three modal states depending on whether the user has a phone on file and
|
|
@@ -894,6 +939,25 @@ type AiChatCompletionStreamChunk = {
|
|
|
894
939
|
finishReason: string;
|
|
895
940
|
usage: AiChatCompletionData['usage'];
|
|
896
941
|
};
|
|
942
|
+
/**
|
|
943
|
+
* Request for a templated ("prompt") completion. Games whose textGen config is
|
|
944
|
+
* `mode: 'templated'` don't send raw `model`/`system`/`messages` — they invoke
|
|
945
|
+
* a server-authored prompt by id. The server owns the model, the system
|
|
946
|
+
* prompt, and any `{{var}}` slots; the game contributes only the player's
|
|
947
|
+
* turn via `input`.
|
|
948
|
+
*/
|
|
949
|
+
interface PromptCompletionRequest {
|
|
950
|
+
/** Id of a server-authored prompt declared in rundot/textGen.config.json. */
|
|
951
|
+
promptId: string;
|
|
952
|
+
/** The player's turn; isolation-wrapped server-side. Text-only in v1. */
|
|
953
|
+
input?: string;
|
|
954
|
+
}
|
|
955
|
+
/**
|
|
956
|
+
* Builds the wire object for a templated prompt call explicitly (never
|
|
957
|
+
* spreads the caller's object) so only the templated-call fields ride the
|
|
958
|
+
* wire. Shared by every AiApi transport.
|
|
959
|
+
*/
|
|
960
|
+
declare function toPromptWireRequest(request: PromptCompletionRequest): PromptCompletionRequest;
|
|
897
961
|
interface AiChatCompletionStreamOptions {
|
|
898
962
|
/**
|
|
899
963
|
* Caller-supplied AbortSignal. Aborting causes the iterable to stop
|
|
@@ -975,6 +1039,53 @@ interface AiApi {
|
|
|
975
1039
|
* is non-empty.
|
|
976
1040
|
*/
|
|
977
1041
|
requestChatCompletionStreamAsync(request: AiChatCompletionRequest, options?: AiChatCompletionStreamOptions): AsyncIterable<AiChatCompletionStreamChunk>;
|
|
1042
|
+
/**
|
|
1043
|
+
* Invoke a server-authored prompt by id (templated textGen mode).
|
|
1044
|
+
*
|
|
1045
|
+
* Unlike `requestChatCompletionAsync`, the game does not choose the model
|
|
1046
|
+
* or author the messages — those live server-side in the prompt declared in
|
|
1047
|
+
* `rundot/textGen.config.json`. The optional `input` carries the player's
|
|
1048
|
+
* turn and is isolation-wrapped server-side; it is text-only in v1.
|
|
1049
|
+
*
|
|
1050
|
+
* There are no client-supplied variables in v1: `{{var}}` slots in the
|
|
1051
|
+
* server-side prompt resolve entirely from a trusted server-side bag, so
|
|
1052
|
+
* the call carries nothing to reconcile or sanitize beyond `input`.
|
|
1053
|
+
*
|
|
1054
|
+
* Note: against a templated game, the open-mode
|
|
1055
|
+
* `requestChatCompletionAsync` is rejected with HTTP 403 and error code
|
|
1056
|
+
* `AI_POLICY_DENIED` — use this method instead.
|
|
1057
|
+
*
|
|
1058
|
+
* @example
|
|
1059
|
+
* ```ts
|
|
1060
|
+
* const response = await textGen.requestPromptCompletionAsync({
|
|
1061
|
+
* promptId: 'npc-banter',
|
|
1062
|
+
* input: 'What do you think of the swamp zone?',
|
|
1063
|
+
* })
|
|
1064
|
+
* console.log(response.choices[0].message.content)
|
|
1065
|
+
* ```
|
|
1066
|
+
*/
|
|
1067
|
+
requestPromptCompletionAsync(request: PromptCompletionRequest): Promise<AiChatCompletionData>;
|
|
1068
|
+
/**
|
|
1069
|
+
* Streaming sibling of `requestPromptCompletionAsync`. Returns an async
|
|
1070
|
+
* iterable of chunks — the same chunk contract as
|
|
1071
|
+
* `requestChatCompletionStreamAsync` (see its docs for chunk buffering and
|
|
1072
|
+
* cancellation semantics). Cancel by `break`ing out of `for await`, calling
|
|
1073
|
+
* `return()` on the iterator, or aborting the optional `signal`.
|
|
1074
|
+
*
|
|
1075
|
+
* @example
|
|
1076
|
+
* ```ts
|
|
1077
|
+
* const stream = textGen.requestPromptCompletionStreamAsync({
|
|
1078
|
+
* promptId: 'npc-banter',
|
|
1079
|
+
* input: 'Tell me a story.',
|
|
1080
|
+
* })
|
|
1081
|
+
* let text = ''
|
|
1082
|
+
* for await (const chunk of stream) {
|
|
1083
|
+
* if (chunk.type === 'delta') text += chunk.text
|
|
1084
|
+
* if (chunk.type === 'done') console.log('usage', chunk.usage)
|
|
1085
|
+
* }
|
|
1086
|
+
* ```
|
|
1087
|
+
*/
|
|
1088
|
+
requestPromptCompletionStreamAsync(request: PromptCompletionRequest, options?: AiChatCompletionStreamOptions): AsyncIterable<AiChatCompletionStreamChunk>;
|
|
978
1089
|
}
|
|
979
1090
|
|
|
980
1091
|
type TextGenApi = AiApi;
|
|
@@ -1695,7 +1806,10 @@ interface RundotGameMessage {
|
|
|
1695
1806
|
data?: any;
|
|
1696
1807
|
error?: string;
|
|
1697
1808
|
errorCode?: string;
|
|
1809
|
+
/** Legacy flattened provider detail STRING — the field name is wire-frozen. */
|
|
1698
1810
|
errorDetail?: string;
|
|
1811
|
+
/** Structured provider rejection detail (new wire field; see errors.ts). */
|
|
1812
|
+
errorInfo?: ProviderErrorDetail;
|
|
1699
1813
|
script?: string;
|
|
1700
1814
|
};
|
|
1701
1815
|
instanceId: string;
|
|
@@ -2314,6 +2428,25 @@ interface UgcVotingApi {
|
|
|
2314
2428
|
*/
|
|
2315
2429
|
getWinners(params?: UgcVoteWinnersListParams): Promise<UgcVoteWinnersResponse>;
|
|
2316
2430
|
}
|
|
2431
|
+
/**
|
|
2432
|
+
* Strictness of the local profanity check. Mirrors the server's policies:
|
|
2433
|
+
* - 'strict': all 23 languages, obfuscation + fuzzy matching. What the server
|
|
2434
|
+
* applies to UGC, comments, profiles, and game tags.
|
|
2435
|
+
* - 'lenient': exact-match English only. What the server applies to AI
|
|
2436
|
+
* generation prompts.
|
|
2437
|
+
*/
|
|
2438
|
+
type UgcCheckTextPolicy = 'strict' | 'lenient';
|
|
2439
|
+
interface UgcCheckTextOptions {
|
|
2440
|
+
/** Defaults to 'strict'. */
|
|
2441
|
+
policy?: UgcCheckTextPolicy;
|
|
2442
|
+
/** Extra words to flag in addition to the built-in dictionaries. */
|
|
2443
|
+
customWords?: string[];
|
|
2444
|
+
}
|
|
2445
|
+
interface UgcCheckTextResult {
|
|
2446
|
+
clean: boolean;
|
|
2447
|
+
/** The matched profane words; empty when clean. */
|
|
2448
|
+
profaneWords: string[];
|
|
2449
|
+
}
|
|
2317
2450
|
interface UgcRecommendationResponse {
|
|
2318
2451
|
recommId: string;
|
|
2319
2452
|
entries: Array<UgcEntry & {
|
|
@@ -2417,6 +2550,16 @@ interface UgcApi {
|
|
|
2417
2550
|
* @param params Report parameters
|
|
2418
2551
|
*/
|
|
2419
2552
|
report(params: UgcReportParams): Promise<void>;
|
|
2553
|
+
/**
|
|
2554
|
+
* Check text against the same procedural profanity filter the server runs,
|
|
2555
|
+
* entirely client-side (no network call). Use it as a UX pre-filter before
|
|
2556
|
+
* submitting user text; the server still enforces its own moderation.
|
|
2557
|
+
* Fail-open: internal filter errors resolve to a clean result.
|
|
2558
|
+
* @param text Text to check
|
|
2559
|
+
* @param options Policy ('strict' default | 'lenient') and custom words
|
|
2560
|
+
* @returns Whether the text is clean, plus any matched profane words
|
|
2561
|
+
*/
|
|
2562
|
+
checkTextAsync(text: string, options?: UgcCheckTextOptions): Promise<UgcCheckTextResult>;
|
|
2420
2563
|
/**
|
|
2421
2564
|
* Get multiple entries by ID in a single request
|
|
2422
2565
|
* @param params Parameters including array of entry IDs (max 100)
|
|
@@ -2593,6 +2736,68 @@ interface CanShareFileResult {
|
|
|
2593
2736
|
/** True if the platform supports navigator.share with files. */
|
|
2594
2737
|
supported: boolean;
|
|
2595
2738
|
}
|
|
2739
|
+
/** Platforms accepted as a `composeSocialPostAsync` targeting hint. */
|
|
2740
|
+
declare const SOCIAL_COMPOSE_PLATFORMS: readonly ["x", "reddit", "tiktok", "instagram"];
|
|
2741
|
+
type SocialComposePlatform = (typeof SOCIAL_COMPOSE_PLATFORMS)[number];
|
|
2742
|
+
/** Max length for a compose post body, after control characters are stripped. */
|
|
2743
|
+
declare const COMPOSE_POST_MAX_TEXT_LENGTH = 500;
|
|
2744
|
+
/** Max length for a compose post title (used when routed to Reddit). */
|
|
2745
|
+
declare const COMPOSE_POST_MAX_TITLE_LENGTH = 300;
|
|
2746
|
+
/** Valid subreddit names (bare name, no `r/` prefix). */
|
|
2747
|
+
declare const COMPOSE_POST_SUBREDDIT_PATTERN: RegExp;
|
|
2748
|
+
/** Optional image/video attached to a composed post. */
|
|
2749
|
+
interface ComposeSocialPostMedia {
|
|
2750
|
+
/** Same encoding rules as {@link ShareFileOptions.data}. */
|
|
2751
|
+
data: Blob | ArrayBuffer | string;
|
|
2752
|
+
filename: string;
|
|
2753
|
+
mimeType: ShareFileMimeType;
|
|
2754
|
+
}
|
|
2755
|
+
interface ComposeSocialPostOptions {
|
|
2756
|
+
/** Post body / caption. Max 500 characters. */
|
|
2757
|
+
text: string;
|
|
2758
|
+
/**
|
|
2759
|
+
* When present, the host mints a tracked share link (same machinery as
|
|
2760
|
+
* `shareLinkAsync`) and attaches it to the post. There is deliberately no
|
|
2761
|
+
* `url` parameter — games can never inject an arbitrary destination URL.
|
|
2762
|
+
*/
|
|
2763
|
+
shareParams?: Record<string, string>;
|
|
2764
|
+
/** Optional image/video, same encoding rules as `shareFileAsync`. */
|
|
2765
|
+
media?: ComposeSocialPostMedia;
|
|
2766
|
+
/**
|
|
2767
|
+
* Optional targeting hint. If the hinted platform can't work on the current
|
|
2768
|
+
* surface, the host degrades to its generic destination chooser instead of
|
|
2769
|
+
* throwing — games never branch on OS/browser/destination support.
|
|
2770
|
+
*/
|
|
2771
|
+
platform?: SocialComposePlatform;
|
|
2772
|
+
/** Post title, used only when routed to Reddit. Max 300 characters. */
|
|
2773
|
+
title?: string;
|
|
2774
|
+
/** Target subreddit (bare name, no `r/` prefix), used only when routed to Reddit. */
|
|
2775
|
+
subreddit?: string;
|
|
2776
|
+
/**
|
|
2777
|
+
* OpenGraph metadata for the tracked share link minted from `shareParams`
|
|
2778
|
+
* (same semantics as `shareLinkAsync`). Fields left absent fall back to the
|
|
2779
|
+
* game's values (name/thumbnail). Ignored when `shareParams` is absent — no
|
|
2780
|
+
* link is minted, so there is nothing to attach a preview to.
|
|
2781
|
+
*/
|
|
2782
|
+
metadata?: ShareMetadata;
|
|
2783
|
+
}
|
|
2784
|
+
interface ComposeSocialPostResult {
|
|
2785
|
+
/**
|
|
2786
|
+
* True when the user acted on a destination and it actually opened. False
|
|
2787
|
+
* when they dismissed the sheet, cancelled the OS share sheet (web), or
|
|
2788
|
+
* when the destination could not be shown (e.g. a popup blocker — the
|
|
2789
|
+
* composer URL is left on the clipboard — or the game could not leave
|
|
2790
|
+
* fullscreen).
|
|
2791
|
+
*
|
|
2792
|
+
* Native caveat: iOS/Android do not report whether the user cancelled the
|
|
2793
|
+
* system share sheet (same limitation as {@link ShareFileResult.cancelled}),
|
|
2794
|
+
* so share-sheet destinations resolve `completed: true` once the sheet
|
|
2795
|
+
* opens.
|
|
2796
|
+
*/
|
|
2797
|
+
completed: boolean;
|
|
2798
|
+
/** Destination that handled the post (e.g. 'x', 'reddit', 'tiktok', 'instagram', 'copy-link', 'more'). */
|
|
2799
|
+
destination?: string;
|
|
2800
|
+
}
|
|
2596
2801
|
/**
|
|
2597
2802
|
* Social distribution API used by H5 games.
|
|
2598
2803
|
*
|
|
@@ -2700,6 +2905,25 @@ interface SocialApi {
|
|
|
2700
2905
|
* @beta
|
|
2701
2906
|
*/
|
|
2702
2907
|
canShareFileAsync(): Promise<CanShareFileResult>;
|
|
2908
|
+
/**
|
|
2909
|
+
* Compose a post to an external social platform (X, Reddit, TikTok,
|
|
2910
|
+
* Instagram) through host-owned UI.
|
|
2911
|
+
*
|
|
2912
|
+
* The game passes content only; the host owns the entire
|
|
2913
|
+
* (surface × destination) matrix: it renders a destination sheet, and the
|
|
2914
|
+
* user's tap inside that sheet opens the platform composer (X/Reddit) or the
|
|
2915
|
+
* OS share sheet with the caption pre-copied (TikTok/Instagram). If
|
|
2916
|
+
* `shareParams` is present the host mints a tracked share link and attaches
|
|
2917
|
+
* it to the post.
|
|
2918
|
+
*
|
|
2919
|
+
* This never rejects for "unsupported platform": when the `platform` hint
|
|
2920
|
+
* can't work on the current surface, the host falls back to its generic
|
|
2921
|
+
* destination chooser.
|
|
2922
|
+
*
|
|
2923
|
+
* @beta
|
|
2924
|
+
* @throws If text/title/subreddit/media fail validation.
|
|
2925
|
+
*/
|
|
2926
|
+
composeSocialPostAsync(options: ComposeSocialPostOptions): Promise<ComposeSocialPostResult>;
|
|
2703
2927
|
}
|
|
2704
2928
|
|
|
2705
2929
|
interface FileEntry {
|
|
@@ -2889,6 +3113,16 @@ type TransformParams = {
|
|
|
2889
3113
|
outputKey: string;
|
|
2890
3114
|
maxDurationSec: number;
|
|
2891
3115
|
clientRef?: string;
|
|
3116
|
+
} | {
|
|
3117
|
+
op: 'overlay';
|
|
3118
|
+
input: string;
|
|
3119
|
+
overlay: string;
|
|
3120
|
+
outputKey: string;
|
|
3121
|
+
position?: 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';
|
|
3122
|
+
scale?: number;
|
|
3123
|
+
margin?: number;
|
|
3124
|
+
opacity?: number;
|
|
3125
|
+
clientRef?: string;
|
|
2892
3126
|
} | ArchiveExtractParams;
|
|
2893
3127
|
interface TransformResult {
|
|
2894
3128
|
jobId: string;
|
|
@@ -4485,4 +4719,4 @@ interface AdsApi {
|
|
|
4485
4719
|
showInterstitialAd(options?: ShowInterstitialAdOptions): Promise<boolean>;
|
|
4486
4720
|
}
|
|
4487
4721
|
|
|
4488
|
-
export { type EnvironmentInfo as $, type AnalyticsApi as A, type BatchRecipeRequirementsResult as B, type NotificationsApi as C, type ScheduleLocalNotification as D, type ScheduleNotificationOptions as E, type RCSAvailabilityStatus as F, type ScheduleRCSInput as G, type Host as H, type ScheduleRCSResult as I, type RequestRCSOptInInput as J, type RequestRCSOptInResult as K, type PopupsApi as L, type ShowToastOptions as M, type NavigationApi as N, type LikeDialogResult as O, type Profile as P, type QuitOptions as Q, type RundotGameAPI as R, type SimulationActiveRunsUpdate as S, type CommentsPanelResult as T, type LikeStateResult as U, type ShowInterstitialAdOptions as V, type ShowRewardedAdOptions as W, type ProfileApi as X, type DeviceApi as Y, type DeviceInfo as Z, type EnvironmentApi as _, type RecipeRequirementQuery as a, type RoomsApi as a$, type SystemApi as a0, type SafeArea as a1, type AddToHomeScreenResult as a2, type CdnApi as a3, type FetchFromCdnOptions as a4, type AssetUrlResult as a5, type TimeApi as a6, type ServerTimeData as a7, type GetFutureTimeOptions as a8, type AiApi as a9, type SimulationApi as aA, type SimulationSlotValidationResult as aB, type SimulationBatchOperation as aC, type SimulationBatchOperationsResult as aD, type SimulationAvailableItem as aE, type SimulationPowerPreview as aF, type SimulationSlotMutationResult as aG, type SimulationSlotContainer as aH, type SimulationAssignment as aI, type SimulationState as aJ, type ExecuteRecipeOptions as aK, type ExecuteRecipeResponse as aL, type CollectRecipeResult as aM, type ResetStateOptions as aN, type ResetStateResult as aO, type GetActiveRunsOptions as aP, type ExecuteScopedRecipeOptions as aQ, type ExecuteScopedRecipeResult as aR, type GetAvailableRecipesOptions as aS, type GetAvailableRecipesResult as aT, type Recipe as aU, type GetBatchRecipeRequirements as aV, type TriggerRecipeChainOptions as aW, type RoomDataUpdate as aX, type RoomMessageEvent as aY, type ProposedMoveEvent as aZ, RundotGameTransport as a_, type AiChatCompletionRequest as aa, type AiChatCompletionData as ab, type AiChatCompletionStreamOptions as ac, type AiChatCompletionStreamChunk as ad, type HapticsApi as ae, HapticFeedbackStyle as af, type GamepadSnapshot as ag, type GamepadConnectionEvent as ah, type Subscription as ai, type GamepadApi as aj, type GamepadLatencyStats as ak, type FeaturesApi as al, type Experiment as am, type LiveOpsApi as an, type LiveOpsConfigResult as ao, type LiveOpsRawConfig as ap, type LiveOpsSection as aq, type LifecycleApi as ar, type SleepCallback as as, type AwakeCallback as at, type PauseCallback as au, type ResumeCallback as av, type QuitCallback as aw, type BackButtonCallback as ax, type IdentityChangedCallback as ay, type IdentityChangedEvent as az, type RecipeRequirementResult as b, type AdminVideoGenApi as b$, type CreateRoomOptions as b0, type JoinOrCreateRoomOptions as b1, type JoinOrCreateResult as b2, type ListRoomsOptions as b3, type UpdateRoomDataOptions as b4, type RoomMessageRequest as b5, type StartRoomGameOptions as b6, type ProposeMoveRequest as b7, type ProposeMoveResult as b8, type ValidateMoveVerdict as b9, type QRCodeResult as bA, type ShareClickData as bB, type ShareFileOptions as bC, type ShareFileResult as bD, type CanShareFileResult as bE, type EntitlementApi as bF, type Entitlement as bG, type LedgerEntry as bH, type StatsApi as bI, type GrantInfo as bJ, type CollectiblesApi as bK, type CollectibleCard as bL, type VipClaimResult as bM, type ShopApi as bN, type StorefrontResponse as bO, type StorefrontItem as bP, type ShopPurchaseResponse as bQ, type ShopOrderHistoryResponse as bR, type PromptLoginResult as bS, type AccessTier as bT, type AccessGateApi as bU, type TextGenApi as bV, type UgcApi as bW, type VideoApi as bX, type AppApi as bY, type AdminUgcApi as bZ, type AdminImageGenApi as b_, type ValidateMoveResult as ba, type RoomSubscriptionOptions as bb, type LoggingApi as bc, type IapApi as bd, type SpendCurrencyOptions as be, type SpendCurrencyResult as bf, type SubscriptionTier as bg, type RunSubscriptionsResponse as bh, type SubscriptionInterval as bi, type PurchaseSubscriptionResponse as bj, type OpenStoreResult as bk, type LoadEmbeddedAssetsResponse as bl, type SharedAssetsApi as bm, type CreditsApi as bn, type CreditsBillingContext as bo, type CreditBalance as bp, type CreditSubscription as bq, type CreditPlansCatalog as br, type OpenPaywallOptions as bs, type CreditsPurchaseResult as bt, type Unsubscribe as bu, type PreloaderApi as bv, type SocialApi as bw, type ShareMetadata as bx, type ShareLinkResult as by, type SocialQRCodeOptions as bz, type RundotGameAvailableRecipe as c, type AdminVideoGenBrowseResponse as c$, type AdminSpriteGenApi as c0, type AdminAudioGenApi as c1, type AdminThreeDGenApi as c2, type AppRole as c3, type ResolveLaunchIntentOptions as c4, type LaunchIntent as c5, type ReleaseNote as c6, type AdminUgcBrowseParams as c7, type AdminUgcBrowseResponse as c8, type AdminUgcListReportsParams as c9, type CaptureConsent as cA, type StartClipRecordingOptions as cB, type ClipBlob as cC, type ClipsSupport as cD, type ClipPersistOptions as cE, type ClipResult as cF, type UgcEntry as cG, type CaptureConsentStatus as cH, AccessDeniedError as cI, type AdminGenApi as cJ, type AdminImageGenBrowseParams as cK, type AdminImageGenBrowseResponse as cL, type AdminImageGenListReportsParams as cM, type AdminImageGenListReportsResponse as cN, type AdminImageGenResolveAction as cO, type AdminSpriteGenBrowseParams as cP, type AdminSpriteGenBrowseResponse as cQ, type AdminSpriteGenListReportsParams as cR, type AdminSpriteGenListReportsResponse as cS, type AdminSpriteGenResolveAction as cT, type AdminThreeDGenBrowseParams as cU, type AdminThreeDGenBrowseResponse as cV, type AdminThreeDGenListReportsParams as cW, type AdminThreeDGenListReportsResponse as cX, type AdminThreeDGenResolveAction as cY, type AdminUgcEntry as cZ, type AdminVideoGenBrowseParams as c_, type AdminUgcListReportsResponse as ca, type AdminUgcResolveAction as cb, type AdminGenBrowseParams as cc, type AdminGenBrowseResponse as cd, type ImageGenEntry as ce, type AdminGenListReportsParams as cf, type AdminGenListReportsResponse as cg, type ImageGenReport as ch, type AdminGenResolveAction as ci, type SpriteGenEntry as cj, type SpriteGenReport as ck, type ThreeDGenEntry as cl, type ThreeDGenReport as cm, type Avatar3dApi as cn, type AssetManifest as co, type Avatar3dConfig as cp, type ShowEditorOptions as cq, type Avatar3dEdits as cr, type AdsApi as cs, type RawEnvironmentInfo as ct, type SharedStorageHostApi as cu, type FilesApi as cv, type ClipsApi as cw, type AttributionApi as cx, type InitializationContext as cy, type InitializationOptions as cz, type RundotGameCollectRecipeResult as d, type RoomMessagePayload as d$, type AdminVideoGenListReportsParams as d0, type AdminVideoGenListReportsResponse as d1, type AdminVideoGenResolveAction as d2, type AiContentBlock as d3, type AiImageContent as d4, type AiImageUrlContent as d5, type AiMessage as d6, type AiResponseFormat as d7, type AiTextContent as d8, type AiToolResultContent as d9, type IdentityChangeReason as dA, type InboundForKeyEntry as dB, type InboundMethodIds as dC, type InboundStorageApi as dD, type IsPlayerSubscribedRequest as dE, type JoinOrCreateRoomEnvelopeResponse as dF, type JoinRoomMatchCriteria as dG, type LaunchIntentKind as dH, type LiveOpsOverride as dI, type LoadEmbeddedAssetsRequest as dJ, MockAvatarApi as dK, type NotificationTriggerInput as dL, type OnNotificationCallback as dM, type OnRequestCallback as dN, type OnResponseCallback as dO, type PlatformCapabilities as dP, type ProposedMovePayload as dQ, type PurchaseSubscriptionRequest as dR, type RCSAvailabilityReason as dS, type RCSOptInStatus as dT, ROOM_GAME_PHASES as dU, type RecipeInfo as dV, type ReleaseType as dW, type ResolvedLiveOps as dX, type RoomEnvelopeResponse as dY, type RoomGamePhase as dZ, type RoomMessageEventType as d_, type AiToolUseContent as da, type Asset as db, type AudioGenEntry as dc, type AudioGenReport as dd, CLIP_CONTENT_TYPE as de, CREDITS_EXHAUSTED_CODE as df, type Category as dg, type ClipAudioOptions as dh, type ClipCameraOptions as di, type ClipPipLayout as dj, type ClipPipPosition as dk, type CreditFreeDailyInfo as dl, type CreditPlan as dm, type CreditTopUpPack as dn, type CreditsBilledTo as dp, CreditsExhaustedError as dq, type CreditsExhaustedErrorInfo as dr, type CreditsPurchaseOutcome as ds, GAMEPAD_BUTTON_NAMES as dt, type GamepadAxes as du, type GamepadButtonName as dv, type GamepadButtonState as dw, type GamepadSource as dx, type GetSubscriptionsForTierRequest as dy, type HudInsets as dz, type RundotGameExecuteRecipeOptions as e, type RoomsEnvelopeResponse as e0, RpcInboundStorageApi as e1, RpcSharedAssetsApi as e2, type RpcTransport as e3, type RunSubscription as e4, type RundotGameRoomCustomMetadata as e5, type RundotGameRoomPayload as e6, type RundotGameRoomRules as e7, type RundotGameRoomRulesGameState as e8, SHARE_FILE_ALLOWED_MIME_TYPES as e9, resolveCollectionItemPrice as eA, resolveLiveOpsSection as eB, SHARE_FILE_MAX_SIZE_BYTES as ea, type ScheduleRCSStatus as eb, type ShareFileMimeType as ec, type ShopOrder as ed, type SimulationBatchOperationAssign as ee, type SimulationBatchOperationRemove as ef, type SimulationBatchOperationResult as eg, type SimulationPersonalState as eh, type SimulationRoomActiveRecipe as ei, type SimulationRoomState as ej, type StorefrontCollection as ek, type StorefrontCollectionItem as el, type SubPath as em, TIER_SUPPORTED_INTERVALS as en, type Tool as eo, type ToolChoice as ep, type ToolUse as eq, type TimeIntervalTriggerInput as er, type UgcReport as es, type VideoGenEntry as et, type VideoGenReport as eu, asCreditsExhaustedError as ev, assertTierSupportsInterval as ew, createHost as ex, isCreditsExhaustedError as ey, mapCreditsExhaustion as ez, type RundotGameExecuteRecipeResult as f, type RundotGameExecuteScopedRecipeOptions as g, RundotGameRoom as h, type RundotGameSimulationConfig as i, type RundotGameSimulationEffect as j, type RundotGameSimulationRecipe as k, type RundotGameSimulationStateResponse as l, type SimulationEntityUpdate as m, type SimulationRunSummary as n, type SimulationSnapshotUpdate as o, type SimulationSubscribeOptions as p, type SimulationUpdateData as q, type SimulationUpdateType as r, type RpcRequest as s, type RpcResponse as t, type RpcNotification as u, RpcClient as v, type StorageApi as w, type NavigationStackInfo as x, type PushAppOptions as y, type NavigateToGameOptions as z };
|
|
4722
|
+
export { type DeviceInfo as $, type AnalyticsApi as A, type BatchRecipeRequirementsResult as B, type NotificationsApi as C, type ScheduleLocalNotification as D, type SubmitMessageInput as E, type SubmitMessageResult as F, type ScheduleNotificationOptions as G, type Host as H, type RCSAvailabilityStatus as I, type ScheduleRCSInput as J, type ScheduleRCSResult as K, type RequestRCSOptInInput as L, type RequestRCSOptInResult as M, type NavigationApi as N, type PopupsApi as O, type Profile as P, type QuitOptions as Q, type RundotGameAPI as R, type SimulationActiveRunsUpdate as S, type ShowToastOptions as T, type LikeDialogResult as U, type CommentsPanelResult as V, type LikeStateResult as W, type ShowInterstitialAdOptions as X, type ShowRewardedAdOptions as Y, type ProfileApi as Z, type DeviceApi as _, type RecipeRequirementQuery as a, type RoomMessageEvent as a$, type EnvironmentApi as a0, type EnvironmentInfo as a1, type SystemApi as a2, type SafeArea as a3, type AddToHomeScreenResult as a4, type CdnApi as a5, type FetchFromCdnOptions as a6, type AssetUrlResult as a7, type TimeApi as a8, type ServerTimeData as a9, type BackButtonCallback as aA, type IdentityChangedCallback as aB, type IdentityChangedEvent as aC, type SimulationApi as aD, type SimulationSlotValidationResult as aE, type SimulationBatchOperation as aF, type SimulationBatchOperationsResult as aG, type SimulationAvailableItem as aH, type SimulationPowerPreview as aI, type SimulationSlotMutationResult as aJ, type SimulationSlotContainer as aK, type SimulationAssignment as aL, type SimulationState as aM, type ExecuteRecipeOptions as aN, type ExecuteRecipeResponse as aO, type CollectRecipeResult as aP, type ResetStateOptions as aQ, type ResetStateResult as aR, type GetActiveRunsOptions as aS, type ExecuteScopedRecipeOptions as aT, type ExecuteScopedRecipeResult as aU, type GetAvailableRecipesOptions as aV, type GetAvailableRecipesResult as aW, type Recipe as aX, type GetBatchRecipeRequirements as aY, type TriggerRecipeChainOptions as aZ, type RoomDataUpdate as a_, type GetFutureTimeOptions as aa, type AiApi as ab, type AiChatCompletionRequest as ac, type AiChatCompletionData as ad, type PromptCompletionRequest as ae, type AiChatCompletionStreamOptions as af, type AiChatCompletionStreamChunk as ag, type HapticsApi as ah, HapticFeedbackStyle as ai, type GamepadSnapshot as aj, type GamepadConnectionEvent as ak, type Subscription as al, type GamepadApi as am, type GamepadLatencyStats as an, type FeaturesApi as ao, type Experiment as ap, type LiveOpsApi as aq, type LiveOpsConfigResult as ar, type LiveOpsRawConfig as as, type LiveOpsSection as at, type LifecycleApi as au, type SleepCallback as av, type AwakeCallback as aw, type PauseCallback as ax, type ResumeCallback as ay, type QuitCallback as az, type RecipeRequirementResult as b, type UgcApi as b$, type ProposedMoveEvent as b0, RundotGameTransport as b1, type RoomsApi as b2, type CreateRoomOptions as b3, type JoinOrCreateRoomOptions as b4, type JoinOrCreateResult as b5, type ListRoomsOptions as b6, type UpdateRoomDataOptions as b7, type RoomMessageRequest as b8, type StartRoomGameOptions as b9, type ShareMetadata as bA, type ShareLinkResult as bB, type SocialQRCodeOptions as bC, type QRCodeResult as bD, type ShareClickData as bE, type ShareFileOptions as bF, type ShareFileResult as bG, type CanShareFileResult as bH, type ComposeSocialPostOptions as bI, type ComposeSocialPostResult as bJ, type EntitlementApi as bK, type Entitlement as bL, type LedgerEntry as bM, type StatsApi as bN, type GrantInfo as bO, type CollectiblesApi as bP, type CollectibleCard as bQ, type VipClaimResult as bR, type ShopApi as bS, type StorefrontResponse as bT, type StorefrontItem as bU, type ShopPurchaseResponse as bV, type ShopOrderHistoryResponse as bW, type PromptLoginResult as bX, type AccessTier as bY, type AccessGateApi as bZ, type TextGenApi as b_, type ProposeMoveRequest as ba, type ProposeMoveResult as bb, type ValidateMoveVerdict as bc, type ValidateMoveResult as bd, type RoomSubscriptionOptions as be, type LoggingApi as bf, type IapApi as bg, type SpendCurrencyOptions as bh, type SpendCurrencyResult as bi, type SubscriptionTier as bj, type RunSubscriptionsResponse as bk, type SubscriptionInterval as bl, type PurchaseSubscriptionResponse as bm, type OpenStoreResult as bn, type LoadEmbeddedAssetsResponse as bo, type SharedAssetsApi as bp, type CreditsApi as bq, type CreditsBillingContext as br, type CreditBalance as bs, type CreditSubscription as bt, type CreditPlansCatalog as bu, type OpenPaywallOptions as bv, type CreditsPurchaseResult as bw, type Unsubscribe as bx, type PreloaderApi as by, type SocialApi as bz, type RundotGameAvailableRecipe as c, type AdminThreeDGenListReportsParams as c$, type VideoApi as c0, type AppApi as c1, type AdminUgcApi as c2, type AdminImageGenApi as c3, type AdminVideoGenApi as c4, type AdminSpriteGenApi as c5, type AdminAudioGenApi as c6, type AdminThreeDGenApi as c7, type AppRole as c8, type ResolveLaunchIntentOptions as c9, type FilesApi as cA, type ClipsApi as cB, type AttributionApi as cC, type InitializationContext as cD, type InitializationOptions as cE, type CaptureConsent as cF, type StartClipRecordingOptions as cG, type ClipBlob as cH, type ClipsSupport as cI, type ClipPersistOptions as cJ, type ClipResult as cK, type UgcEntry as cL, type CaptureConsentStatus as cM, AccessDeniedError as cN, type AdminGenApi as cO, type AdminImageGenBrowseParams as cP, type AdminImageGenBrowseResponse as cQ, type AdminImageGenListReportsParams as cR, type AdminImageGenListReportsResponse as cS, type AdminImageGenResolveAction as cT, type AdminSpriteGenBrowseParams as cU, type AdminSpriteGenBrowseResponse as cV, type AdminSpriteGenListReportsParams as cW, type AdminSpriteGenListReportsResponse as cX, type AdminSpriteGenResolveAction as cY, type AdminThreeDGenBrowseParams as cZ, type AdminThreeDGenBrowseResponse as c_, type LaunchIntent as ca, type ReleaseNote as cb, type AdminUgcBrowseParams as cc, type AdminUgcBrowseResponse as cd, type AdminUgcListReportsParams as ce, type AdminUgcListReportsResponse as cf, type AdminUgcResolveAction as cg, type AdminGenBrowseParams as ch, type AdminGenBrowseResponse as ci, type ImageGenEntry as cj, type AdminGenListReportsParams as ck, type AdminGenListReportsResponse as cl, type ImageGenReport as cm, type AdminGenResolveAction as cn, type SpriteGenEntry as co, type SpriteGenReport as cp, type ThreeDGenEntry as cq, type ThreeDGenReport as cr, type Avatar3dApi as cs, type AssetManifest as ct, type Avatar3dConfig as cu, type ShowEditorOptions as cv, type Avatar3dEdits as cw, type AdsApi as cx, type RawEnvironmentInfo as cy, type SharedStorageHostApi as cz, type RundotGameCollectRecipeResult as d, type RCSAvailabilityReason as d$, type AdminThreeDGenListReportsResponse as d0, type AdminThreeDGenResolveAction as d1, type AdminUgcEntry as d2, type AdminVideoGenBrowseParams as d3, type AdminVideoGenBrowseResponse as d4, type AdminVideoGenListReportsParams as d5, type AdminVideoGenListReportsResponse as d6, type AdminVideoGenResolveAction as d7, type AiContentBlock as d8, type AiImageContent as d9, type CreditsExhaustedErrorInfo as dA, type CreditsPurchaseOutcome as dB, GAMEPAD_BUTTON_NAMES as dC, type GamepadAxes as dD, type GamepadButtonName as dE, type GamepadButtonState as dF, type GamepadSource as dG, type GetSubscriptionsForTierRequest as dH, type HudInsets as dI, type IdentityChangeReason as dJ, type InboundForKeyEntry as dK, type InboundMethodIds as dL, type InboundStorageApi as dM, type IsPlayerSubscribedRequest as dN, type JoinOrCreateRoomEnvelopeResponse as dO, type JoinRoomMatchCriteria as dP, type LaunchIntentKind as dQ, type LiveOpsOverride as dR, type LoadEmbeddedAssetsRequest as dS, MockAvatarApi as dT, type NotificationTriggerInput as dU, type OnNotificationCallback as dV, type OnRequestCallback as dW, type OnResponseCallback as dX, type PlatformCapabilities as dY, type ProposedMovePayload as dZ, type PurchaseSubscriptionRequest as d_, type AiImageUrlContent as da, type AiMessage as db, type AiResponseFormat as dc, type AiTextContent as dd, type AiToolResultContent as de, type AiToolUseContent as df, type Asset as dg, type AudioGenEntry as dh, type AudioGenReport as di, CLIP_CONTENT_TYPE as dj, COMPOSE_POST_MAX_TEXT_LENGTH as dk, COMPOSE_POST_MAX_TITLE_LENGTH as dl, COMPOSE_POST_SUBREDDIT_PATTERN as dm, CREDITS_EXHAUSTED_CODE as dn, type Category as dp, type ClipAudioOptions as dq, type ClipCameraOptions as dr, type ClipPipLayout as ds, type ClipPipPosition as dt, type ComposeSocialPostMedia as du, type CreditFreeDailyInfo as dv, type CreditPlan as dw, type CreditTopUpPack as dx, type CreditsBilledTo as dy, CreditsExhaustedError as dz, type RundotGameExecuteRecipeOptions as e, type RCSOptInStatus as e0, ROOM_GAME_PHASES as e1, type RecipeInfo as e2, type ReleaseType as e3, type ResolvedLiveOps as e4, type RoomEnvelopeResponse as e5, type RoomGamePhase as e6, type RoomMessageEventType as e7, type RoomMessagePayload as e8, type RoomsEnvelopeResponse as e9, type SubmitMessageResultChannel as eA, TIER_SUPPORTED_INTERVALS as eB, type Tool as eC, type ToolChoice as eD, type ToolUse as eE, type TimeIntervalTriggerInput as eF, type UgcReport as eG, type VideoGenEntry as eH, type VideoGenReport as eI, asCreditsExhaustedError as eJ, assertTierSupportsInterval as eK, createHost as eL, isCreditsExhaustedError as eM, mapCreditsExhaustion as eN, resolveCollectionItemPrice as eO, resolveLiveOpsSection as eP, toPromptWireRequest as eQ, RpcInboundStorageApi as ea, RpcSharedAssetsApi as eb, type RpcTransport as ec, type RunSubscription as ed, type RundotGameRoomCustomMetadata as ee, type RundotGameRoomPayload as ef, type RundotGameRoomRules as eg, type RundotGameRoomRulesGameState as eh, SHARE_FILE_ALLOWED_MIME_TYPES as ei, SHARE_FILE_MAX_SIZE_BYTES as ej, SOCIAL_COMPOSE_PLATFORMS as ek, type ScheduleRCSStatus as el, type ShareFileMimeType as em, type ShopOrder as en, type SimulationBatchOperationAssign as eo, type SimulationBatchOperationRemove as ep, type SimulationBatchOperationResult as eq, type SimulationPersonalState as er, type SimulationRoomActiveRecipe as es, type SimulationRoomState as et, type SocialComposePlatform as eu, type StorefrontCollection as ev, type StorefrontCollectionItem as ew, type SubPath as ex, type SubmitMessageChannel as ey, type SubmitMessageChannelResult as ez, type RundotGameExecuteRecipeResult as f, type RundotGameExecuteScopedRecipeOptions as g, RundotGameRoom as h, type RundotGameSimulationConfig as i, type RundotGameSimulationEffect as j, type RundotGameSimulationRecipe as k, type RundotGameSimulationStateResponse as l, type SimulationEntityUpdate as m, type SimulationRunSummary as n, type SimulationSnapshotUpdate as o, type SimulationSubscribeOptions as p, type SimulationUpdateData as q, type SimulationUpdateType as r, type RpcRequest as s, type RpcResponse as t, type RpcNotification as u, RpcClient as v, type StorageApi as w, type NavigationStackInfo as x, type PushAppOptions as y, type NavigateToGameOptions as z };
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { h as ReplayFile } from './types-BV8uchSD.js';
|
|
2
|
+
|
|
1
3
|
type ImageGenModel = 'gemini-3.1-flash-image-preview' | 'gemini-3-pro-image-preview' | 'gpt-image-1' | 'gpt-image-2';
|
|
2
4
|
type BgRemovalModel = 'bria' | 'birefnet';
|
|
3
5
|
type BiRefNetVariant = 'light' | 'heavy' | 'portrait';
|
|
@@ -224,6 +226,57 @@ interface AudioGenApi {
|
|
|
224
226
|
saveDesignedVoice(params: SaveDesignedVoiceParams): Promise<SaveDesignedVoiceResult>;
|
|
225
227
|
}
|
|
226
228
|
|
|
229
|
+
/**
|
|
230
|
+
* Structured rejection detail from an upstream AI provider (e.g. a video-gen
|
|
231
|
+
* content-policy violation). All fields are best-effort and optional.
|
|
232
|
+
*
|
|
233
|
+
* Mirror of the canonical server type
|
|
234
|
+
* (venus server/cloud-run/src/types/providerError.ts).
|
|
235
|
+
*/
|
|
236
|
+
interface ProviderErrorDetail {
|
|
237
|
+
/** Path to the offending request field, e.g. ["body", "image_urls"]. */
|
|
238
|
+
loc?: (string | number)[];
|
|
239
|
+
/** Provider error type, e.g. "content_policy_violation". */
|
|
240
|
+
type?: string;
|
|
241
|
+
/** Provider-internal reason code, e.g. "partner_validation_failed". */
|
|
242
|
+
reason?: string;
|
|
243
|
+
/** Provider's verbatim human-readable message. */
|
|
244
|
+
msg?: string;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Base error for rundot API failures that include a machine-readable code.
|
|
248
|
+
* Thrown by SDK methods when the server returns a structured error response.
|
|
249
|
+
*/
|
|
250
|
+
declare class RundotApiError extends Error {
|
|
251
|
+
readonly code: string;
|
|
252
|
+
/** HTTP status when the error came over HTTP; `0` for transport/RPC errors with no HTTP status. */
|
|
253
|
+
readonly status: number;
|
|
254
|
+
/**
|
|
255
|
+
* Optional human-readable cause from the server (e.g. an upstream provider's
|
|
256
|
+
* validation message), surfaced alongside the controlled `message` so callers
|
|
257
|
+
* can show the specific reason rather than a generic failure.
|
|
258
|
+
*
|
|
259
|
+
* This is a flattened STRING. For the machine-readable breakdown of a
|
|
260
|
+
* provider rejection (type / reason / offending field), use `errorDetail`.
|
|
261
|
+
*/
|
|
262
|
+
readonly detail?: string;
|
|
263
|
+
/**
|
|
264
|
+
* Optional structured provider rejection detail (e.g.
|
|
265
|
+
* `{ type: 'content_policy_violation', reason: 'partner_validation_failed' }`).
|
|
266
|
+
* Unlike `detail` (a display string), this is meant for programmatic handling.
|
|
267
|
+
*/
|
|
268
|
+
readonly errorDetail?: ProviderErrorDetail;
|
|
269
|
+
constructor(code: string, message: string, status?: number, detail?: string, errorDetail?: ProviderErrorDetail);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Thrown when a request is rate-limited (HTTP 429).
|
|
273
|
+
* `retryAfterMs` indicates how long to wait before retrying.
|
|
274
|
+
*/
|
|
275
|
+
declare class RateLimitedError extends RundotApiError {
|
|
276
|
+
readonly retryAfterMs: number;
|
|
277
|
+
constructor(retryAfterMs: number, message?: string);
|
|
278
|
+
}
|
|
279
|
+
|
|
227
280
|
type VideoGenProvider = 'seedance-2.0' | 'seedance-2.0-fast' | 'kling-3.0-standard';
|
|
228
281
|
type VideoGenMode = 'text-to-video' | 'image-to-video' | 'reference-to-video';
|
|
229
282
|
type VideoGenAspectRatio = '21:9' | '16:9' | '4:3' | '1:1' | '3:4' | '9:16';
|
|
@@ -299,7 +352,23 @@ interface VideoGenJobEvent {
|
|
|
299
352
|
status: 'completed' | 'failed';
|
|
300
353
|
params: VideoGenParams;
|
|
301
354
|
result?: VideoGenResult;
|
|
302
|
-
|
|
355
|
+
/**
|
|
356
|
+
* Failure info. Historically typed as `string`, but the host passes the raw
|
|
357
|
+
* job-doc error through, which is an object for most failures — typed
|
|
358
|
+
* honestly here without changing what arrives at runtime.
|
|
359
|
+
*/
|
|
360
|
+
error?: string | {
|
|
361
|
+
code?: string;
|
|
362
|
+
message?: string;
|
|
363
|
+
detail?: string;
|
|
364
|
+
providerType?: string;
|
|
365
|
+
errorDetail?: ProviderErrorDetail;
|
|
366
|
+
};
|
|
367
|
+
/**
|
|
368
|
+
* Structured provider rejection detail for failed jobs (e.g.
|
|
369
|
+
* `{ type: 'content_policy_violation' }`), when the provider supplied one.
|
|
370
|
+
*/
|
|
371
|
+
errorDetail?: ProviderErrorDetail;
|
|
303
372
|
}
|
|
304
373
|
interface VideoGenJobStartedEvent {
|
|
305
374
|
jobId: string;
|
|
@@ -381,6 +450,10 @@ interface AnimateSpriteParams {
|
|
|
381
450
|
sourceFileKey?: string;
|
|
382
451
|
/** Or: an HTTPS URL to import and animate. */
|
|
383
452
|
sourceImageUrl?: string;
|
|
453
|
+
/** Override source-derived animation mode. Omit to infer from the source asset. */
|
|
454
|
+
pixel?: boolean;
|
|
455
|
+
/** Pixel-animation palette size. The animation provider does not accept a fixed hex palette. */
|
|
456
|
+
paletteSize?: number;
|
|
384
457
|
/** Motion description, e.g. "walk cycle, side view" or "idle breathing". */
|
|
385
458
|
prompt: string;
|
|
386
459
|
/** Frame count. Pixel: 2-16 (even), HD: 2-24 (even). Default 8. */
|
|
@@ -669,6 +742,14 @@ interface LeaderboardConfig {
|
|
|
669
742
|
requiresToken: boolean;
|
|
670
743
|
enableScoreSealing: boolean;
|
|
671
744
|
scoreSealingSecret?: string;
|
|
745
|
+
/**
|
|
746
|
+
* When true, a submitted score enters the public ranking only after the
|
|
747
|
+
* server re-runs the game's certified score runtime over the player's
|
|
748
|
+
* recorded inputs and confirms the score matches (M8.5 replay verification).
|
|
749
|
+
* Per-board (applies to all of the board's modes); absent/false ⇒ today's
|
|
750
|
+
* behavior. A `requiresReplay` submission must attach `SubmitScoreParams.replay`.
|
|
751
|
+
*/
|
|
752
|
+
requiresReplay?: boolean;
|
|
672
753
|
modes: Record<string, LeaderboardModeConfig>;
|
|
673
754
|
periods: Record<string, LeaderboardPeriodConfig>;
|
|
674
755
|
antiCheat: LeaderboardAntiCheatConfig;
|
|
@@ -696,14 +777,26 @@ interface SubmitScoreParams {
|
|
|
696
777
|
* leaderboards reject submissions without a valid hash.
|
|
697
778
|
*/
|
|
698
779
|
hash?: string;
|
|
780
|
+
/**
|
|
781
|
+
* The player's recorded syncplay replay (inputs + seed). Required for a
|
|
782
|
+
* `requiresReplay` board: the server re-runs the certified score runtime over
|
|
783
|
+
* these inputs and only ranks the score on a match. Attach it from
|
|
784
|
+
* `session.exportReplay()`. A replay serializing above the inline cap
|
|
785
|
+
* ({@link REPLAY_INLINE_MAX_BYTES}) is rejected client-side before submitting.
|
|
786
|
+
*/
|
|
787
|
+
replay?: ReplayFile;
|
|
699
788
|
}
|
|
700
789
|
/**
|
|
701
790
|
* Machine-readable reason a submit was not accepted.
|
|
702
791
|
* - `identity_changed`: the score token was minted under a different identity
|
|
703
792
|
* (the player signed into another account mid-session). Re-mint with
|
|
704
793
|
* `createScoreToken()` and resubmit under the new identity.
|
|
794
|
+
* - `replay_rejected`: a `requiresReplay` board could not verify the submitted
|
|
795
|
+
* score against the recorded replay (mismatch, invalid/missing replay, or the
|
|
796
|
+
* verifier was unavailable). The score was NOT ranked. Surface it as the
|
|
797
|
+
* terminal "rejected" state of the optimistic pending → ranked/rejected UX.
|
|
705
798
|
*/
|
|
706
|
-
type SubmitScoreFailureReason = 'identity_changed';
|
|
799
|
+
type SubmitScoreFailureReason = 'identity_changed' | 'replay_rejected';
|
|
707
800
|
interface SubmitScoreResult {
|
|
708
801
|
accepted: boolean;
|
|
709
802
|
rank?: number | null;
|
|
@@ -787,4 +880,4 @@ interface LeaderboardApi {
|
|
|
787
880
|
getPodiumScores(options?: GetPodiumScoresOptions): Promise<PodiumScoresResponse>;
|
|
788
881
|
}
|
|
789
882
|
|
|
790
|
-
export type
|
|
883
|
+
export { type ProviderErrorDetail as $, type AudioGenApi as A, type RemeshParams as B, type CharacterAnimateParams as C, type DepthEstimationParams as D, type RemeshResult as E, type RigParams as F, type RigResult as G, type AnimateParams as H, type ImageGenApi as I, type AnimateResult as J, type ThreeDGenJobEvent as K, type ListVoicesResult as L, type LeaderboardApi as M, type ScoreToken as N, type SubmitScoreParams as O, type SubmitScoreResult as P, type GetPagedScoresOptions as Q, type RemoveBackgroundParams as R, type SaveDesignedVoiceParams as S, type ThreeDGenApi as T, type UpscaleImageParams as U, type VideoGenApi as V, type PagedScoresResponse as W, type PlayerRankOptions as X, type PlayerRankResult as Y, type GetPodiumScoresOptions as Z, type PodiumScoresResponse as _, type ImageGenParams as a, type BgRemovalModel as a0, type BiRefNetVariant as a1, type CharacterAnimateResult as a2, type CharacterAnimationOutput as a3, type ImageGenModel as a4, type LeaderboardAntiCheatConfig as a5, type LeaderboardConfig as a6, type LeaderboardDisplaySettings as a7, type LeaderboardEntry as a8, type LeaderboardModeConfig as a9, type LeaderboardPeriodConfig as aa, type LeaderboardPeriodType as ab, type PodiumScoresContext as ac, RateLimitedError as ad, type RemoveBackgroundOptions as ae, RundotApiError as af, type SpriteGenGeneratedAsset as ag, type SpriteGenModel as ah, type SubmitScoreFailureReason as ai, type UpscaleImageModel as aj, type ImageGenResult as b, type DepthEstimationResult as c, type RemoveBackgroundResult as d, type UpscaleImageResult as e, type ImageGenJobEvent as f, type AudioGenParams as g, type AudioGenResult as h, type AudioGenJobEvent as i, type DesignVoicesParams as j, type DesignVoicesResult as k, type SaveDesignedVoiceResult as l, type VideoGenParams as m, type VideoGenResult as n, type VideoGenJobEvent as o, type VideoGenJobStartedEvent as p, type SpriteGenApi as q, type SpriteGenParams as r, type SpriteGenResult as s, type AnimateSpriteParams as t, type AnimateSpriteResult as u, type CharacterWorkflow as v, type SpriteGenCosts as w, type SpriteGenJobEvent as x, type ThreeDGenParams as y, type ThreeDGenResult as z };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as CanonicalValue, h as ReplayFile, O as OfflineSession } from './types-
|
|
1
|
+
import { C as CanonicalValue, h as ReplayFile, O as OfflineSession } from './types-BV8uchSD.js';
|
|
2
2
|
import { M as MultiplayerApi } from './MultiplayerApi-nnrGTTcO.js';
|
|
3
3
|
|
|
4
4
|
/**
|