@indiegems/gem-web-sdk 6.0.0 → 7.1.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/server.d.ts CHANGED
@@ -30,6 +30,8 @@ interface TransportRequest {
30
30
  readonly method: "GET" | "PUT" | "POST" | "PATCH" | "DELETE";
31
31
  readonly path: string;
32
32
  readonly body?: unknown;
33
+ readonly bytes?: Uint8Array;
34
+ readonly responseType?: "json" | "bytes";
33
35
  readonly headers?: ConditionalRequestHeaders;
34
36
  readonly signal?: AbortSignal;
35
37
  readonly keepalive?: boolean;
@@ -39,6 +41,7 @@ interface TransportResponse {
39
41
  readonly body: unknown;
40
42
  readonly etag?: string;
41
43
  readonly retryAfterSeconds?: number;
44
+ readonly invocationId?: string;
42
45
  }
43
46
  interface Transport {
44
47
  request(request: TransportRequest): Promise<TransportResponse>;
@@ -79,6 +82,10 @@ type VersionedResponse<T> = {
79
82
  readonly modified: false;
80
83
  readonly etag?: string;
81
84
  };
85
+ interface BytesResponse {
86
+ readonly bytes: Uint8Array;
87
+ readonly invocationId?: string;
88
+ }
82
89
  declare class GemClient {
83
90
  private readonly options;
84
91
  constructor(options: ClientOptions);
@@ -86,6 +93,7 @@ declare class GemClient {
86
93
  getWithEtag<T>(path: string, options?: VersionedGetOptions): Promise<VersionedResponse<T>>;
87
94
  put<T>(path: string, body: unknown, signal?: AbortSignal, options?: RequestOptions): Promise<T>;
88
95
  post<T>(path: string, body: unknown, signal?: AbortSignal, options?: RequestOptions): Promise<T>;
96
+ postBytes(path: string, bytes: Uint8Array, signal?: AbortSignal, options?: RequestOptions): Promise<BytesResponse>;
89
97
  patch<T>(path: string, body: unknown, signal?: AbortSignal, options?: RequestOptions): Promise<T>;
90
98
  delete<T>(path: string, signal?: AbortSignal, options?: RequestOptions): Promise<T>;
91
99
  private send;
@@ -145,6 +153,7 @@ interface GameApi {
145
153
  readonly client: GemClient;
146
154
  gameId(): string;
147
155
  }
156
+ type AchievementUnlockOutcome = "unlocked" | "already_unlocked" | "suppressed";
148
157
  type ActiveWindowResponse = {
149
158
  "ends_at": string;
150
159
  "window_id": string;
@@ -170,6 +179,29 @@ type AdminActionRequest = {
170
179
  "hearing_radius"?: number | null;
171
180
  "max_voices"?: number | null;
172
181
  };
182
+ type AnalyticsBatchRequest = {
183
+ "batch_id": string;
184
+ "events": AnalyticsEventSubmission[];
185
+ "sent_at_ms": number;
186
+ };
187
+ type AnalyticsBatchResponse = {
188
+ "accepted": number;
189
+ "duplicate"?: boolean;
190
+ "rejected"?: AnalyticsRejection$1[];
191
+ };
192
+ type AnalyticsEventSubmission = {
193
+ "dimensions"?: Record<string, unknown>;
194
+ "event_uid": string;
195
+ "measures"?: Record<string, unknown>;
196
+ "name": string;
197
+ "offset_ms": number;
198
+ "player_id"?: string | null;
199
+ };
200
+ type AnalyticsRejection$1 = {
201
+ "code": string;
202
+ "index": number;
203
+ };
204
+ type BadgeKind = "platform" | "game";
173
205
  type BatchOrderItem = {
174
206
  "nonce"?: string | null;
175
207
  "operations": OperationRequest[];
@@ -196,27 +228,51 @@ type BatchOrderResponse = {
196
228
  type BucketBalanceResponse = {
197
229
  "balance": number;
198
230
  "bucket": string;
231
+ "last_reset_at"?: number | null;
232
+ "next_reset_at"?: number | null;
199
233
  };
200
234
  type CatalogItem = {
235
+ "category"?: ItemCategory;
201
236
  "consumable": boolean;
202
237
  "display_name"?: string | null;
203
238
  "fungible": boolean;
204
239
  "icon_url"?: string | null;
205
240
  "item_id": string;
206
- "platform_prices": PurchasePrice[];
241
+ "platform_prices": CatalogPrice[];
207
242
  "stack_size"?: number | null;
208
243
  };
244
+ type CatalogPrice = {
245
+ "platform_currency_id": string;
246
+ "price": number;
247
+ "unconfirmed_spend": boolean;
248
+ };
209
249
  type CatalogRecipe = {
210
250
  "availability_end"?: string | null;
211
251
  "availability_start"?: string | null;
212
252
  "catalog_id": string;
213
253
  "cooldown_seconds"?: number | null;
214
254
  "display_name"?: string | null;
255
+ "lock_reasons"?: RecipeLockReason[] | null;
256
+ "locked"?: boolean | null;
215
257
  "max_uses"?: number | null;
216
- "platform_prices": PurchasePrice[];
258
+ "platform_prices": CatalogPrice[];
259
+ "prerequisites"?: RecipePrerequisite[];
217
260
  "recipe_id": string;
218
261
  "recipe_type": string;
219
262
  };
263
+ type ChallengeListResponse = {
264
+ "challenges": ChallengePeriodResponse[];
265
+ };
266
+ type ChallengePeriodResponse = {
267
+ "challenge_data"?: string | null;
268
+ "challenge_data_hash"?: string | null;
269
+ "period_ends_at": string;
270
+ "period_start_at": string;
271
+ "progression_definition_id": string;
272
+ "seed": string;
273
+ "slug"?: string | null;
274
+ "window": WindowKind;
275
+ };
220
276
  type ClientPlatform = "universal" | "mobile" | "web";
221
277
  type CreateOrderRequest = {
222
278
  "channel"?: null | GameChannel;
@@ -266,7 +322,7 @@ type EntityLeaderboardEntryResponse = {
266
322
  "rank": number;
267
323
  "stats"?: Record<string, unknown> | null;
268
324
  };
269
- type EntityLeaderboardResponse = {
325
+ type EntityLeaderboardResponse = PlayerIdentityFields & {
270
326
  "bucket_1"?: string | null;
271
327
  "bucket_2"?: string | null;
272
328
  "entity_id": string;
@@ -318,19 +374,15 @@ type FidelityReport = {
318
374
  "defaults_applied": string[];
319
375
  };
320
376
  type GameChannel = "dev" | "test" | "release";
321
- type GameRoomMemberResponseV2 = {
322
- "avatar_icon_id"?: string | null;
323
- "discriminator"?: string | null;
324
- "display_name"?: string | null;
325
- "display_tag"?: string | null;
377
+ type GameRoomMemberResponseV2 = PlayerIdentityFields & {
326
378
  "group_id"?: string | null;
327
379
  "is_ready": boolean;
328
380
  "joined_at": number;
329
381
  "platform"?: null | ClientPlatform;
330
- "player_id": string;
331
382
  "role": string;
332
383
  };
333
384
  type GameRoomResponseV2 = {
385
+ "cluster_target_id"?: string | null;
334
386
  "created_at": number;
335
387
  "game_channel": string;
336
388
  "game_id": string;
@@ -344,7 +396,6 @@ type GameRoomResponseV2 = {
344
396
  "member_count": number;
345
397
  "members": GameRoomMemberResponseV2[];
346
398
  "name": string;
347
- "region"?: string | null;
348
399
  "room_args"?: Record<string, unknown> | null;
349
400
  "room_args_template"?: null | RoomArgsTemplate;
350
401
  "settings"?: unknown;
@@ -357,6 +408,7 @@ type GameRoomResponseV2 = {
357
408
  "version": number;
358
409
  };
359
410
  type GameRoomSummaryResponse = {
411
+ "cluster_target_id"?: string | null;
360
412
  "created_at": number;
361
413
  "game_channel": string;
362
414
  "game_id": string;
@@ -459,16 +511,27 @@ type InventoryChange = {
459
511
  "granted": number;
460
512
  "mapping_index": number;
461
513
  "outcome": PlatformGrantOutcome;
514
+ "platform_order_id"?: string | null;
515
+ "principal"?: null | ReceiptPrincipal;
462
516
  "progression_definition_id": string;
463
517
  "reason"?: string | null;
464
518
  "requested": number;
465
519
  "target_currency_id": string;
466
520
  "type": "platform_grant";
521
+ } | {
522
+ "achievement_id": string;
523
+ "outcome": AchievementUnlockOutcome;
524
+ "points": number;
525
+ "principal"?: null | ReceiptPrincipal;
526
+ "progression_definition_id": string;
527
+ "reason"?: string | null;
528
+ "type": "achievement_unlocked";
467
529
  } | {
468
530
  "balance_after": number;
469
531
  "balance_before": number;
470
532
  "bucket": string;
471
533
  "currency_id": string;
534
+ "synthesized"?: boolean;
472
535
  "type": "currency_bucket_reset";
473
536
  } | {
474
537
  "progression_definition_id": string;
@@ -484,6 +547,7 @@ type InventoryResponse = {
484
547
  "entity_id": string;
485
548
  "etag": string;
486
549
  "items": PaginatedCollectionItemInstanceResponse;
550
+ "period_progress": PeriodProgressResponse[];
487
551
  "progressions": PaginatedCollectionProgressionStateResponse;
488
552
  "scope": InventoryScopeResponse;
489
553
  };
@@ -494,6 +558,7 @@ type InventoryScopeResponse = {
494
558
  "game_id": string;
495
559
  "type": "game";
496
560
  };
561
+ type ItemCategory = "cosmetic" | "progression";
497
562
  type ItemInstanceResponse = {
498
563
  "acquired_at": number;
499
564
  "custom_data"?: unknown;
@@ -502,10 +567,7 @@ type ItemInstanceResponse = {
502
567
  "properties": unknown;
503
568
  "quantity": number;
504
569
  };
505
- type LeaderboardEntryResponse = {
506
- "discriminator"?: string | null;
507
- "display_name"?: string | null;
508
- "display_tag"?: string | null;
570
+ type LeaderboardEntryResponse = PlayerIdentityFields & {
509
571
  "entity_id"?: string | null;
510
572
  "entity_type"?: null | EntityType;
511
573
  "is_viewer"?: boolean;
@@ -535,6 +597,11 @@ type LootRollResultResponse = {
535
597
  "was_replacement": boolean;
536
598
  };
537
599
  type MatchType = "dedicated" | "p2p" | "none";
600
+ type NameStyle = {
601
+ "fallback"?: null | ThemedColors;
602
+ "item_id": string;
603
+ "preset": string;
604
+ };
538
605
  type OperationRequest = {
539
606
  "amount": number;
540
607
  "bucket"?: string | null;
@@ -649,10 +716,13 @@ type PaginatedCollectionItemInstanceResponse = {
649
716
  };
650
717
  type PaginatedCollectionProgressionStateResponse = {
651
718
  "data": {
719
+ "achievements"?: ProgressionAchievementState[];
720
+ "achievements_unavailable"?: boolean;
652
721
  "completion_count": number;
653
722
  "current_value": number;
654
723
  "is_completed": boolean;
655
724
  "progression_definition_id": string;
725
+ "updated_at": number;
656
726
  }[];
657
727
  "has_more": boolean;
658
728
  "next_cursor"?: string | null;
@@ -672,8 +742,50 @@ type PaginatedResponseSaveDataResponse = {
672
742
  "has_more": boolean;
673
743
  "next_cursor"?: string | null;
674
744
  };
675
- type PlatformGrantClamp = "none" | "max_per_event" | "game_max_per_entity" | "platform_max_per_game_per_entity" | "max_balance";
745
+ type PeriodProgressResponse = {
746
+ "completed": boolean;
747
+ "current_value": number;
748
+ "period_ends_at": number;
749
+ "period_start_at": number;
750
+ "progression_definition_id": string;
751
+ "target": number;
752
+ "window": string;
753
+ };
754
+ type PlatformGrantClamp = "none" | "max_per_event" | "game_max_per_entity" | "platform_max_per_game_per_entity" | "game_max_per_window" | "platform_max_per_window" | "max_balance" | "holdings_cap";
676
755
  type PlatformGrantOutcome = "fired" | "clamped" | "suppressed";
756
+ type PlayerBadge = {
757
+ "icon_url": string;
758
+ "item_id": string;
759
+ "kind": BadgeKind;
760
+ };
761
+ type PlayerIdentityFields = {
762
+ "avatar_icon_id"?: string | null;
763
+ "avatar_icon_url"?: string | null;
764
+ "badges"?: PlayerBadge[];
765
+ "discriminator"?: string | null;
766
+ "display_name"?: string | null;
767
+ "display_tag"?: string | null;
768
+ "name_animation"?: null | NameStyle;
769
+ "name_color"?: null | NameStyle;
770
+ "player_id"?: string;
771
+ "title"?: null | PlayerTitle;
772
+ "title_animation"?: null | NameStyle;
773
+ "title_color"?: null | NameStyle;
774
+ };
775
+ type PlayerTitle = {
776
+ "item_id": string;
777
+ "lang": string;
778
+ "text": string;
779
+ };
780
+ type PrerequisiteType = "owns_item" | "progression_complete" | "min_progression_value" | "progression_level";
781
+ type ProgressionAchievementState = {
782
+ "hidden": boolean;
783
+ "id": string;
784
+ "points": number;
785
+ "revoked"?: boolean;
786
+ "threshold": number;
787
+ "unlocked_at"?: number | null;
788
+ };
677
789
  type ProgressionAddRequest = {
678
790
  "amount": number;
679
791
  "reason"?: string | null;
@@ -694,26 +806,28 @@ type ProgressionStateOverride = {
694
806
  "rewards_claimed_through"?: Record<string, unknown> | null;
695
807
  };
696
808
  type ProgressionStateResponse = {
809
+ "achievements"?: ProgressionAchievementState[];
810
+ "achievements_unavailable"?: boolean;
697
811
  "completion_count": number;
698
812
  "current_value": number;
699
813
  "is_completed": boolean;
700
814
  "progression_definition_id": string;
815
+ "updated_at": number;
701
816
  };
702
817
  type PurchaseCatalogResponse = {
703
818
  "config_version": number;
704
819
  "items": CatalogItem[];
705
820
  "recipes": CatalogRecipe[];
706
821
  };
707
- type PurchasePrice = {
708
- "platform_currency_id": string;
709
- "price": number;
710
- };
711
822
  type PutSettingRequest = {
712
823
  "value": Base64String;
713
824
  };
825
+ type ReceiptPrincipal = "function";
714
826
  type RecipeAvailabilityResponse = {
715
827
  "can_execute": boolean;
716
828
  "cooldown_expires_at"?: string | null;
829
+ "lock_reasons"?: RecipeLockReason[];
830
+ "locked"?: boolean;
717
831
  "reasons": UnavailabilityReason[];
718
832
  "recipe_id": string;
719
833
  "uses_remaining"?: number | null;
@@ -734,6 +848,17 @@ type RecipeExecuteResponse = {
734
848
  "order_id": string;
735
849
  "status": OrderStatus;
736
850
  };
851
+ type RecipeLockReason = {
852
+ "current": number;
853
+ "prerequisite_type": PrerequisiteType;
854
+ "reference_id": string;
855
+ "required": number;
856
+ };
857
+ type RecipePrerequisite = {
858
+ "prerequisite_type": PrerequisiteType;
859
+ "reference_id": string;
860
+ "reference_value": number;
861
+ };
737
862
  type RecipeUsageListResponse = {
738
863
  "usages": RecipeUsageResponse[];
739
864
  };
@@ -835,6 +960,8 @@ type SlugOrId = string;
835
960
  type SuppliedBucketRow = {
836
961
  "balance": number;
837
962
  "bucket": string;
963
+ "last_reset_at"?: number | null;
964
+ "next_reset_at"?: number | null;
838
965
  };
839
966
  type SuppliedCurrencies = {
840
967
  "data"?: SuppliedCurrencyRow[];
@@ -851,6 +978,7 @@ type SuppliedInventory = {
851
978
  "entity_id"?: string | null;
852
979
  "etag"?: string;
853
980
  "items"?: SuppliedItems;
981
+ "period_progress"?: SuppliedPeriodProgressRow[];
854
982
  "progressions"?: SuppliedProgressions;
855
983
  "scope"?: null | SuppliedScope;
856
984
  };
@@ -867,11 +995,21 @@ type SuppliedItems = {
867
995
  "has_more"?: boolean;
868
996
  "next_cursor"?: string | null;
869
997
  };
998
+ type SuppliedPeriodProgressRow = {
999
+ "completed"?: boolean;
1000
+ "current_value"?: number;
1001
+ "period_ends_at": number;
1002
+ "period_start_at": number;
1003
+ "progression_definition_id": string;
1004
+ "target": number;
1005
+ "window": string;
1006
+ };
870
1007
  type SuppliedProgressionRow = {
871
1008
  "completion_count": number;
872
1009
  "current_value": number;
873
1010
  "is_completed": boolean;
874
1011
  "progression_definition_id": string;
1012
+ "updated_at"?: number;
875
1013
  };
876
1014
  type SuppliedProgressions = {
877
1015
  "data"?: SuppliedProgressionRow[];
@@ -885,6 +1023,10 @@ type SuppliedScope = {
885
1023
  "game_id": string;
886
1024
  "type": "game";
887
1025
  };
1026
+ type ThemedColors = {
1027
+ "on_dark": string;
1028
+ "on_light": string;
1029
+ };
888
1030
  type TransferCurrencyRequest = {
889
1031
  "amount": number;
890
1032
  "currency_id": string;
@@ -930,8 +1072,10 @@ type UnavailabilityReason = {
930
1072
  "max_uses": number;
931
1073
  "type": "max_uses_reached";
932
1074
  } | {
1075
+ "current"?: number;
933
1076
  "prerequisite_type": string;
934
1077
  "reference_id": string;
1078
+ "required"?: number;
935
1079
  "type": "prerequisite_not_met";
936
1080
  } | {
937
1081
  "available": number;
@@ -954,6 +1098,7 @@ type UpdateGameRoomRequest = {
954
1098
  type UpdateRoomArgsRequest = {
955
1099
  "room_args": Record<string, unknown>;
956
1100
  };
1101
+ type WindowKind = "daily" | "weekly" | "monthly" | "cron";
957
1102
  type WindowPreviewResponse = {
958
1103
  "ends_at": string;
959
1104
  "starts_at": string;
@@ -1015,21 +1160,22 @@ declare function getEntityGameSetting(api: GameApi, entity_type: string, entity_
1015
1160
  }): Promise<VersionedResponse<SettingResponse>>;
1016
1161
  declare function getEntityInventory(api: GameApi, entity_type: string, entity_id: string, options?: {
1017
1162
  "include_buckets"?: boolean;
1018
- "currency_limit"?: number;
1019
- "currency_cursor"?: string;
1020
- "item_limit"?: number;
1021
- "item_cursor"?: string;
1022
- "progression_limit"?: number;
1023
- "progression_cursor"?: string;
1163
+ "include_custom_data"?: boolean;
1164
+ "currency_limit"?: number | null;
1165
+ "currency_cursor"?: string | null;
1166
+ "item_limit"?: number | null;
1167
+ "item_cursor"?: string | null;
1168
+ "progression_limit"?: number | null;
1169
+ "progression_cursor"?: string | null;
1024
1170
  signal?: AbortSignal;
1025
1171
  }): Promise<InventoryResponse>;
1026
1172
  declare function getEntityInventoryItem(api: GameApi, entity_type: string, entity_id: string, item_definition_id: SlugOrId, options?: {
1027
1173
  signal?: AbortSignal;
1028
1174
  }): Promise<ItemInstanceResponse[]>;
1029
1175
  declare function getEntityLeaderboard(api: GameApi, leaderboard_type: string, entity_type: string, entity_id: string, options?: {
1030
- "bucket_1"?: string;
1031
- "bucket_2"?: string;
1032
- "limit"?: number;
1176
+ "bucket_1"?: string | null;
1177
+ "bucket_2"?: string | null;
1178
+ "limit"?: number | null;
1033
1179
  signal?: AbortSignal;
1034
1180
  }): Promise<EntityLeaderboardResponse>;
1035
1181
  declare function getEntityOrder(api: GameApi, entity_type: string, entity_id: string, order_id: string, options?: {
@@ -1042,7 +1188,7 @@ declare function getEntityRecipeAvailability(api: GameApi, entity_type: string,
1042
1188
  signal?: AbortSignal;
1043
1189
  }): Promise<RecipeAvailabilityResponse>;
1044
1190
  declare function getEntityRecipeUsage(api: GameApi, entity_type: string, entity_id: string, options?: {
1045
- "limit"?: number;
1191
+ "limit"?: number | null;
1046
1192
  signal?: AbortSignal;
1047
1193
  }): Promise<RecipeUsageListResponse>;
1048
1194
  declare function getEntitySave(api: GameApi, entity_type: string, entity_id: string, key: string, options?: {
@@ -1057,12 +1203,12 @@ declare function getGameRoomV2(api: GameApi, game_room_id: string, options?: {
1057
1203
  signal?: AbortSignal;
1058
1204
  }): Promise<VersionedResponse<GameRoomResponseV2>>;
1059
1205
  declare function getLeaderboard(api: GameApi, leaderboard_type: string, options?: {
1060
- "bucket_1"?: string;
1061
- "bucket_2"?: string;
1206
+ "bucket_1"?: string | null;
1207
+ "bucket_2"?: string | null;
1062
1208
  signal?: AbortSignal;
1063
1209
  }): Promise<LeaderboardResponse>;
1064
1210
  declare function getPurchaseCatalog(api: GameApi, options?: {
1065
- "config_version"?: number;
1211
+ "config_version"?: number | null;
1066
1212
  signal?: AbortSignal;
1067
1213
  }): Promise<PurchaseCatalogResponse>;
1068
1214
  declare function getResolvedTemplate(api: GameApi, template_id: string, options?: {
@@ -1074,26 +1220,36 @@ declare function getRoomArgs(api: GameApi, game_room_id: string, options?: {
1074
1220
  declare function getTransferDetails(api: GameApi, transfer_id: string, options?: {
1075
1221
  signal?: AbortSignal;
1076
1222
  }): Promise<TransferResponse>;
1223
+ declare function ingestAnalyticsEvents(api: GameApi, body: AnalyticsBatchRequest, options?: {
1224
+ signal?: AbortSignal;
1225
+ }): Promise<AnalyticsBatchResponse>;
1077
1226
  declare function initiateInventoryTransfer(api: GameApi, body: InitiateTransferRequest, options?: {
1078
1227
  signal?: AbortSignal;
1079
1228
  }): Promise<TransferResponse>;
1229
+ declare function invokeFunction(api: GameApi, body: Uint8Array, options?: {
1230
+ signal?: AbortSignal;
1231
+ }): Promise<BytesResponse>;
1080
1232
  declare function kickPlayer(api: GameApi, game_room_id: string, player_id: string, options?: {
1081
1233
  signal?: AbortSignal;
1082
1234
  }): Promise<void>;
1235
+ declare function listChallenges(api: GameApi, options?: {
1236
+ "periods_back"?: number;
1237
+ signal?: AbortSignal;
1238
+ }): Promise<ChallengeListResponse>;
1083
1239
  declare function listEntityGameSettings(api: GameApi, entity_type: string, entity_id: string, options?: {
1084
1240
  signal?: AbortSignal;
1085
1241
  }): Promise<SettingsListResponse>;
1086
1242
  declare function listEntityOrders(api: GameApi, entity_type: string, entity_id: string, options?: {
1087
1243
  "limit"?: number;
1088
- "cursor"?: string;
1244
+ "cursor"?: string | null;
1089
1245
  signal?: AbortSignal;
1090
1246
  }): Promise<OrderListResponse>;
1091
1247
  declare function listEntityProgressions(api: GameApi, entity_type: string, entity_id: string, options?: {
1092
1248
  signal?: AbortSignal;
1093
1249
  }): Promise<ProgressionStateResponse[]>;
1094
1250
  declare function listEntitySaves(api: GameApi, entity_type: string, entity_id: string, options?: {
1095
- "limit"?: number;
1096
- "cursor"?: string;
1251
+ "limit"?: number | null;
1252
+ "cursor"?: string | null;
1097
1253
  signal?: AbortSignal;
1098
1254
  }): Promise<PaginatedResponseSaveDataResponse>;
1099
1255
  declare function listEvents(api: GameApi, options?: {
@@ -1118,15 +1274,12 @@ declare function listResolvedTemplates(api: GameApi, options?: {
1118
1274
  declare function listTransfers(api: GameApi, options: {
1119
1275
  "entity_type": string;
1120
1276
  "entity_id": string;
1121
- "direction"?: string;
1122
- "status"?: string;
1123
- "cursor"?: string;
1277
+ "direction"?: string | null;
1278
+ "status"?: string | null;
1279
+ "cursor"?: string | null;
1124
1280
  "limit"?: number;
1125
1281
  signal?: AbortSignal;
1126
1282
  }): Promise<ListTransfersResponse>;
1127
- declare function matchEnd(api: GameApi, match_id: string, options?: {
1128
- signal?: AbortSignal;
1129
- }): Promise<void>;
1130
1283
  declare function putEntityGameSetting(api: GameApi, entity_type: string, entity_id: string, key: string, body: PutSettingRequest, options?: {
1131
1284
  ifMatch?: string;
1132
1285
  signal?: AbortSignal;
@@ -1153,15 +1306,23 @@ declare function updateGameRoomV2(api: GameApi, game_room_id: string, body: Upda
1153
1306
  ifMatch?: string;
1154
1307
  signal?: AbortSignal;
1155
1308
  }): Promise<GameRoomResponseV2>;
1309
+ type generated_AchievementUnlockOutcome = AchievementUnlockOutcome;
1156
1310
  type generated_ActiveWindowResponse = ActiveWindowResponse;
1157
1311
  type generated_AdminActionRequest = AdminActionRequest;
1312
+ type generated_AnalyticsBatchRequest = AnalyticsBatchRequest;
1313
+ type generated_AnalyticsBatchResponse = AnalyticsBatchResponse;
1314
+ type generated_AnalyticsEventSubmission = AnalyticsEventSubmission;
1315
+ type generated_BadgeKind = BadgeKind;
1158
1316
  type generated_BatchOrderItem = BatchOrderItem;
1159
1317
  type generated_BatchOrderItemResult = BatchOrderItemResult;
1160
1318
  type generated_BatchOrderRequest = BatchOrderRequest;
1161
1319
  type generated_BatchOrderResponse = BatchOrderResponse;
1162
1320
  type generated_BucketBalanceResponse = BucketBalanceResponse;
1163
1321
  type generated_CatalogItem = CatalogItem;
1322
+ type generated_CatalogPrice = CatalogPrice;
1164
1323
  type generated_CatalogRecipe = CatalogRecipe;
1324
+ type generated_ChallengeListResponse = ChallengeListResponse;
1325
+ type generated_ChallengePeriodResponse = ChallengePeriodResponse;
1165
1326
  type generated_ClientPlatform = ClientPlatform;
1166
1327
  type generated_CreateOrderRequest = CreateOrderRequest;
1167
1328
  type generated_CreateSessionRequest = CreateSessionRequest;
@@ -1190,12 +1351,14 @@ type generated_InitiateTransferRequest = InitiateTransferRequest;
1190
1351
  type generated_InventoryChange = InventoryChange;
1191
1352
  type generated_InventoryResponse = InventoryResponse;
1192
1353
  type generated_InventoryScopeResponse = InventoryScopeResponse;
1354
+ type generated_ItemCategory = ItemCategory;
1193
1355
  type generated_ItemInstanceResponse = ItemInstanceResponse;
1194
1356
  type generated_LeaderboardEntryResponse = LeaderboardEntryResponse;
1195
1357
  type generated_LeaderboardResponse = LeaderboardResponse;
1196
1358
  type generated_ListTransfersResponse = ListTransfersResponse;
1197
1359
  type generated_LootRollResultResponse = LootRollResultResponse;
1198
1360
  type generated_MatchType = MatchType;
1361
+ type generated_NameStyle = NameStyle;
1199
1362
  type generated_OperationRequest = OperationRequest;
1200
1363
  type generated_OrderListResponse = OrderListResponse;
1201
1364
  type generated_OrderRecordResponse = OrderRecordResponse;
@@ -1207,19 +1370,27 @@ type generated_PaginatedCollectionCurrencyBalanceResponse = PaginatedCollectionC
1207
1370
  type generated_PaginatedCollectionItemInstanceResponse = PaginatedCollectionItemInstanceResponse;
1208
1371
  type generated_PaginatedCollectionProgressionStateResponse = PaginatedCollectionProgressionStateResponse;
1209
1372
  type generated_PaginatedResponseSaveDataResponse = PaginatedResponseSaveDataResponse;
1373
+ type generated_PeriodProgressResponse = PeriodProgressResponse;
1210
1374
  type generated_PlatformGrantClamp = PlatformGrantClamp;
1211
1375
  type generated_PlatformGrantOutcome = PlatformGrantOutcome;
1376
+ type generated_PlayerBadge = PlayerBadge;
1377
+ type generated_PlayerIdentityFields = PlayerIdentityFields;
1378
+ type generated_PlayerTitle = PlayerTitle;
1379
+ type generated_PrerequisiteType = PrerequisiteType;
1380
+ type generated_ProgressionAchievementState = ProgressionAchievementState;
1212
1381
  type generated_ProgressionAddRequest = ProgressionAddRequest;
1213
1382
  type generated_ProgressionClaimRequest = ProgressionClaimRequest;
1214
1383
  type generated_ProgressionResetRequest = ProgressionResetRequest;
1215
1384
  type generated_ProgressionStateOverride = ProgressionStateOverride;
1216
1385
  type generated_ProgressionStateResponse = ProgressionStateResponse;
1217
1386
  type generated_PurchaseCatalogResponse = PurchaseCatalogResponse;
1218
- type generated_PurchasePrice = PurchasePrice;
1219
1387
  type generated_PutSettingRequest = PutSettingRequest;
1388
+ type generated_ReceiptPrincipal = ReceiptPrincipal;
1220
1389
  type generated_RecipeAvailabilityResponse = RecipeAvailabilityResponse;
1221
1390
  type generated_RecipeExecuteRequest = RecipeExecuteRequest;
1222
1391
  type generated_RecipeExecuteResponse = RecipeExecuteResponse;
1392
+ type generated_RecipeLockReason = RecipeLockReason;
1393
+ type generated_RecipePrerequisite = RecipePrerequisite;
1223
1394
  type generated_RecipeUsageListResponse = RecipeUsageListResponse;
1224
1395
  type generated_RecipeUsageResponse = RecipeUsageResponse;
1225
1396
  type generated_RoomArgType = RoomArgType;
@@ -1243,15 +1414,18 @@ type generated_SuppliedCurrencyRow = SuppliedCurrencyRow;
1243
1414
  type generated_SuppliedInventory = SuppliedInventory;
1244
1415
  type generated_SuppliedItemRow = SuppliedItemRow;
1245
1416
  type generated_SuppliedItems = SuppliedItems;
1417
+ type generated_SuppliedPeriodProgressRow = SuppliedPeriodProgressRow;
1246
1418
  type generated_SuppliedProgressionRow = SuppliedProgressionRow;
1247
1419
  type generated_SuppliedProgressions = SuppliedProgressions;
1248
1420
  type generated_SuppliedScope = SuppliedScope;
1421
+ type generated_ThemedColors = ThemedColors;
1249
1422
  type generated_TransferCurrencyRequest = TransferCurrencyRequest;
1250
1423
  type generated_TransferItemRequest = TransferItemRequest;
1251
1424
  type generated_TransferResponse = TransferResponse;
1252
1425
  type generated_UnavailabilityReason = UnavailabilityReason;
1253
1426
  type generated_UpdateGameRoomRequest = UpdateGameRoomRequest;
1254
1427
  type generated_UpdateRoomArgsRequest = UpdateRoomArgsRequest;
1428
+ type generated_WindowKind = WindowKind;
1255
1429
  type generated_WindowPreviewResponse = WindowPreviewResponse;
1256
1430
  declare const generated_acceptTransfer: typeof acceptTransfer;
1257
1431
  declare const generated_addEntityProgression: typeof addEntityProgression;
@@ -1285,8 +1459,11 @@ declare const generated_getPurchaseCatalog: typeof getPurchaseCatalog;
1285
1459
  declare const generated_getResolvedTemplate: typeof getResolvedTemplate;
1286
1460
  declare const generated_getRoomArgs: typeof getRoomArgs;
1287
1461
  declare const generated_getTransferDetails: typeof getTransferDetails;
1462
+ declare const generated_ingestAnalyticsEvents: typeof ingestAnalyticsEvents;
1288
1463
  declare const generated_initiateInventoryTransfer: typeof initiateInventoryTransfer;
1464
+ declare const generated_invokeFunction: typeof invokeFunction;
1289
1465
  declare const generated_kickPlayer: typeof kickPlayer;
1466
+ declare const generated_listChallenges: typeof listChallenges;
1290
1467
  declare const generated_listEntityGameSettings: typeof listEntityGameSettings;
1291
1468
  declare const generated_listEntityOrders: typeof listEntityOrders;
1292
1469
  declare const generated_listEntityProgressions: typeof listEntityProgressions;
@@ -1295,7 +1472,6 @@ declare const generated_listEvents: typeof listEvents;
1295
1472
  declare const generated_listGameRooms: typeof listGameRooms;
1296
1473
  declare const generated_listResolvedTemplates: typeof listResolvedTemplates;
1297
1474
  declare const generated_listTransfers: typeof listTransfers;
1298
- declare const generated_matchEnd: typeof matchEnd;
1299
1475
  declare const generated_putEntityGameSetting: typeof putEntityGameSetting;
1300
1476
  declare const generated_putRoomArgs: typeof putRoomArgs;
1301
1477
  declare const generated_rejectTransfer: typeof rejectTransfer;
@@ -1305,7 +1481,7 @@ declare const generated_simulateEntityOrder: typeof simulateEntityOrder;
1305
1481
  declare const generated_transferHostV2: typeof transferHostV2;
1306
1482
  declare const generated_updateGameRoomV2: typeof updateGameRoomV2;
1307
1483
  declare namespace generated {
1308
- export { type generated_ActiveWindowResponse as ActiveWindowResponse, type generated_AdminActionRequest as AdminActionRequest, type generated_BatchOrderItem as BatchOrderItem, type generated_BatchOrderItemResult as BatchOrderItemResult, type generated_BatchOrderRequest as BatchOrderRequest, type generated_BatchOrderResponse as BatchOrderResponse, type generated_BucketBalanceResponse as BucketBalanceResponse, type generated_CatalogItem as CatalogItem, type generated_CatalogRecipe as CatalogRecipe, type generated_ClientPlatform as ClientPlatform, type generated_CreateOrderRequest as CreateOrderRequest, type generated_CreateSessionRequest as CreateSessionRequest, type generated_CurrencyBalanceResponse as CurrencyBalanceResponse, type generated_CurrencyResetOverride as CurrencyResetOverride, type generated_DropRateEntry as DropRateEntry, type generated_DropRatesResponse as DropRatesResponse, type generated_EntityLeaderboardEntryResponse as EntityLeaderboardEntryResponse, type generated_EntityLeaderboardResponse as EntityLeaderboardResponse, type generated_EntityType as EntityType, type generated_ErrorDetail as ErrorDetail, type generated_ErrorResponse as ErrorResponse, type generated_EventDefinitionResponse as EventDefinitionResponse, type generated_EventListResponse as EventListResponse, type generated_EventStatusInfo as EventStatusInfo, type generated_FidelityReport as FidelityReport, type generated_GameApi as GameApi, type generated_GameChannel as GameChannel, type generated_GameRoomMemberResponseV2 as GameRoomMemberResponseV2, type generated_GameRoomResponseV2 as GameRoomResponseV2, type generated_GameRoomSummaryResponse as GameRoomSummaryResponse, type generated_GameRoomTemplateListResponse as GameRoomTemplateListResponse, type generated_GameRoomTemplateResponse as GameRoomTemplateResponse, type generated_GameRoomsListResponse as GameRoomsListResponse, type generated_InitiateTransferRequest as InitiateTransferRequest, type generated_InventoryChange as InventoryChange, type generated_InventoryResponse as InventoryResponse, type generated_InventoryScopeResponse as InventoryScopeResponse, type generated_ItemInstanceResponse as ItemInstanceResponse, type generated_LeaderboardEntryResponse as LeaderboardEntryResponse, type generated_LeaderboardResponse as LeaderboardResponse, type generated_ListTransfersResponse as ListTransfersResponse, type generated_LootRollResultResponse as LootRollResultResponse, type generated_MatchType as MatchType, type generated_OperationRequest as OperationRequest, type generated_OrderListResponse as OrderListResponse, type generated_OrderRecordResponse as OrderRecordResponse, type generated_OrderResponse as OrderResponse, type generated_OrderSource as OrderSource, type generated_OrderStatus as OrderStatus, type generated_OverflowBehavior as OverflowBehavior, type generated_PaginatedCollectionCurrencyBalanceResponse as PaginatedCollectionCurrencyBalanceResponse, type generated_PaginatedCollectionItemInstanceResponse as PaginatedCollectionItemInstanceResponse, type generated_PaginatedCollectionProgressionStateResponse as PaginatedCollectionProgressionStateResponse, type generated_PaginatedResponseSaveDataResponse as PaginatedResponseSaveDataResponse, type generated_PlatformGrantClamp as PlatformGrantClamp, type generated_PlatformGrantOutcome as PlatformGrantOutcome, type generated_ProgressionAddRequest as ProgressionAddRequest, type generated_ProgressionClaimRequest as ProgressionClaimRequest, type generated_ProgressionResetRequest as ProgressionResetRequest, type generated_ProgressionStateOverride as ProgressionStateOverride, type generated_ProgressionStateResponse as ProgressionStateResponse, type generated_PurchaseCatalogResponse as PurchaseCatalogResponse, type generated_PurchasePrice as PurchasePrice, type generated_PutSettingRequest as PutSettingRequest, type generated_RecipeAvailabilityResponse as RecipeAvailabilityResponse, type generated_RecipeExecuteRequest as RecipeExecuteRequest, type generated_RecipeExecuteResponse as RecipeExecuteResponse, type generated_RecipeUsageListResponse as RecipeUsageListResponse, type generated_RecipeUsageResponse as RecipeUsageResponse, type generated_RoomArgType as RoomArgType, type generated_RoomArgsResponse as RoomArgsResponse, type generated_RoomArgsTemplate as RoomArgsTemplate, type generated_SaveDataResponse as SaveDataResponse, type generated_SaveFinalizeRequest as SaveFinalizeRequest, type generated_SaveUploadUrlRequest as SaveUploadUrlRequest, type generated_SaveUploadUrlResponse as SaveUploadUrlResponse, type generated_SettingResponse as SettingResponse, type generated_SettingsListResponse as SettingsListResponse, type generated_SimulateOrderRequest as SimulateOrderRequest, type generated_SimulateOrderResponse as SimulateOrderResponse, type generated_SimulationFailure as SimulationFailure, type generated_SimulationOutcome as SimulationOutcome, type generated_SimulationOverrides as SimulationOverrides, type generated_SlugOrId as SlugOrId, type generated_SuppliedBucketRow as SuppliedBucketRow, type generated_SuppliedCurrencies as SuppliedCurrencies, type generated_SuppliedCurrencyRow as SuppliedCurrencyRow, type generated_SuppliedInventory as SuppliedInventory, type generated_SuppliedItemRow as SuppliedItemRow, type generated_SuppliedItems as SuppliedItems, type generated_SuppliedProgressionRow as SuppliedProgressionRow, type generated_SuppliedProgressions as SuppliedProgressions, type generated_SuppliedScope as SuppliedScope, type generated_TransferCurrencyRequest as TransferCurrencyRequest, type generated_TransferItemRequest as TransferItemRequest, type generated_TransferResponse as TransferResponse, type generated_UnavailabilityReason as UnavailabilityReason, type generated_UpdateGameRoomRequest as UpdateGameRoomRequest, type generated_UpdateRoomArgsRequest as UpdateRoomArgsRequest, type generated_WindowPreviewResponse as WindowPreviewResponse, generated_acceptTransfer as acceptTransfer, generated_addEntityProgression as addEntityProgression, generated_adminAction as adminAction, generated_cancelInventoryTransfer as cancelInventoryTransfer, generated_claimEntityProgressionRewards as claimEntityProgressionRewards, generated_closeGameRoom as closeGameRoom, generated_createEntityBatchOrder as createEntityBatchOrder, generated_createEntityOrder as createEntityOrder, generated_createSession as createSession, generated_deleteEntityGameSetting as deleteEntityGameSetting, generated_deleteEntitySave as deleteEntitySave, generated_deleteSession as deleteSession, generated_executeEntityRecipe as executeEntityRecipe, generated_finalizeSaveUpload as finalizeSaveUpload, generated_getDropRates as getDropRates, generated_getEntityCurrency as getEntityCurrency, generated_getEntityGameSetting as getEntityGameSetting, generated_getEntityInventory as getEntityInventory, generated_getEntityInventoryItem as getEntityInventoryItem, generated_getEntityLeaderboard as getEntityLeaderboard, generated_getEntityOrder as getEntityOrder, generated_getEntityProgression as getEntityProgression, generated_getEntityRecipeAvailability as getEntityRecipeAvailability, generated_getEntityRecipeUsage as getEntityRecipeUsage, generated_getEntitySave as getEntitySave, generated_getEvent as getEvent, generated_getGameRoomV2 as getGameRoomV2, generated_getLeaderboard as getLeaderboard, generated_getPurchaseCatalog as getPurchaseCatalog, generated_getResolvedTemplate as getResolvedTemplate, generated_getRoomArgs as getRoomArgs, generated_getTransferDetails as getTransferDetails, generated_initiateInventoryTransfer as initiateInventoryTransfer, generated_kickPlayer as kickPlayer, generated_listEntityGameSettings as listEntityGameSettings, generated_listEntityOrders as listEntityOrders, generated_listEntityProgressions as listEntityProgressions, generated_listEntitySaves as listEntitySaves, generated_listEvents as listEvents, generated_listGameRooms as listGameRooms, generated_listResolvedTemplates as listResolvedTemplates, generated_listTransfers as listTransfers, generated_matchEnd as matchEnd, generated_putEntityGameSetting as putEntityGameSetting, generated_putRoomArgs as putRoomArgs, generated_rejectTransfer as rejectTransfer, generated_requestSaveUploadUrl as requestSaveUploadUrl, generated_resetEntityProgression as resetEntityProgression, generated_simulateEntityOrder as simulateEntityOrder, generated_transferHostV2 as transferHostV2, generated_updateGameRoomV2 as updateGameRoomV2 };
1484
+ export { type generated_AchievementUnlockOutcome as AchievementUnlockOutcome, type generated_ActiveWindowResponse as ActiveWindowResponse, type generated_AdminActionRequest as AdminActionRequest, type generated_AnalyticsBatchRequest as AnalyticsBatchRequest, type generated_AnalyticsBatchResponse as AnalyticsBatchResponse, type generated_AnalyticsEventSubmission as AnalyticsEventSubmission, type AnalyticsRejection$1 as AnalyticsRejection, type generated_BadgeKind as BadgeKind, type generated_BatchOrderItem as BatchOrderItem, type generated_BatchOrderItemResult as BatchOrderItemResult, type generated_BatchOrderRequest as BatchOrderRequest, type generated_BatchOrderResponse as BatchOrderResponse, type generated_BucketBalanceResponse as BucketBalanceResponse, type generated_CatalogItem as CatalogItem, type generated_CatalogPrice as CatalogPrice, type generated_CatalogRecipe as CatalogRecipe, type generated_ChallengeListResponse as ChallengeListResponse, type generated_ChallengePeriodResponse as ChallengePeriodResponse, type generated_ClientPlatform as ClientPlatform, type generated_CreateOrderRequest as CreateOrderRequest, type generated_CreateSessionRequest as CreateSessionRequest, type generated_CurrencyBalanceResponse as CurrencyBalanceResponse, type generated_CurrencyResetOverride as CurrencyResetOverride, type generated_DropRateEntry as DropRateEntry, type generated_DropRatesResponse as DropRatesResponse, type generated_EntityLeaderboardEntryResponse as EntityLeaderboardEntryResponse, type generated_EntityLeaderboardResponse as EntityLeaderboardResponse, type generated_EntityType as EntityType, type generated_ErrorDetail as ErrorDetail, type generated_ErrorResponse as ErrorResponse, type generated_EventDefinitionResponse as EventDefinitionResponse, type generated_EventListResponse as EventListResponse, type generated_EventStatusInfo as EventStatusInfo, type generated_FidelityReport as FidelityReport, type generated_GameApi as GameApi, type generated_GameChannel as GameChannel, type generated_GameRoomMemberResponseV2 as GameRoomMemberResponseV2, type generated_GameRoomResponseV2 as GameRoomResponseV2, type generated_GameRoomSummaryResponse as GameRoomSummaryResponse, type generated_GameRoomTemplateListResponse as GameRoomTemplateListResponse, type generated_GameRoomTemplateResponse as GameRoomTemplateResponse, type generated_GameRoomsListResponse as GameRoomsListResponse, type generated_InitiateTransferRequest as InitiateTransferRequest, type generated_InventoryChange as InventoryChange, type generated_InventoryResponse as InventoryResponse, type generated_InventoryScopeResponse as InventoryScopeResponse, type generated_ItemCategory as ItemCategory, type generated_ItemInstanceResponse as ItemInstanceResponse, type generated_LeaderboardEntryResponse as LeaderboardEntryResponse, type generated_LeaderboardResponse as LeaderboardResponse, type generated_ListTransfersResponse as ListTransfersResponse, type generated_LootRollResultResponse as LootRollResultResponse, type generated_MatchType as MatchType, type generated_NameStyle as NameStyle, type generated_OperationRequest as OperationRequest, type generated_OrderListResponse as OrderListResponse, type generated_OrderRecordResponse as OrderRecordResponse, type generated_OrderResponse as OrderResponse, type generated_OrderSource as OrderSource, type generated_OrderStatus as OrderStatus, type generated_OverflowBehavior as OverflowBehavior, type generated_PaginatedCollectionCurrencyBalanceResponse as PaginatedCollectionCurrencyBalanceResponse, type generated_PaginatedCollectionItemInstanceResponse as PaginatedCollectionItemInstanceResponse, type generated_PaginatedCollectionProgressionStateResponse as PaginatedCollectionProgressionStateResponse, type generated_PaginatedResponseSaveDataResponse as PaginatedResponseSaveDataResponse, type generated_PeriodProgressResponse as PeriodProgressResponse, type generated_PlatformGrantClamp as PlatformGrantClamp, type generated_PlatformGrantOutcome as PlatformGrantOutcome, type generated_PlayerBadge as PlayerBadge, type generated_PlayerIdentityFields as PlayerIdentityFields, type generated_PlayerTitle as PlayerTitle, type generated_PrerequisiteType as PrerequisiteType, type generated_ProgressionAchievementState as ProgressionAchievementState, type generated_ProgressionAddRequest as ProgressionAddRequest, type generated_ProgressionClaimRequest as ProgressionClaimRequest, type generated_ProgressionResetRequest as ProgressionResetRequest, type generated_ProgressionStateOverride as ProgressionStateOverride, type generated_ProgressionStateResponse as ProgressionStateResponse, type generated_PurchaseCatalogResponse as PurchaseCatalogResponse, type generated_PutSettingRequest as PutSettingRequest, type generated_ReceiptPrincipal as ReceiptPrincipal, type generated_RecipeAvailabilityResponse as RecipeAvailabilityResponse, type generated_RecipeExecuteRequest as RecipeExecuteRequest, type generated_RecipeExecuteResponse as RecipeExecuteResponse, type generated_RecipeLockReason as RecipeLockReason, type generated_RecipePrerequisite as RecipePrerequisite, type generated_RecipeUsageListResponse as RecipeUsageListResponse, type generated_RecipeUsageResponse as RecipeUsageResponse, type generated_RoomArgType as RoomArgType, type generated_RoomArgsResponse as RoomArgsResponse, type generated_RoomArgsTemplate as RoomArgsTemplate, type generated_SaveDataResponse as SaveDataResponse, type generated_SaveFinalizeRequest as SaveFinalizeRequest, type generated_SaveUploadUrlRequest as SaveUploadUrlRequest, type generated_SaveUploadUrlResponse as SaveUploadUrlResponse, type generated_SettingResponse as SettingResponse, type generated_SettingsListResponse as SettingsListResponse, type generated_SimulateOrderRequest as SimulateOrderRequest, type generated_SimulateOrderResponse as SimulateOrderResponse, type generated_SimulationFailure as SimulationFailure, type generated_SimulationOutcome as SimulationOutcome, type generated_SimulationOverrides as SimulationOverrides, type generated_SlugOrId as SlugOrId, type generated_SuppliedBucketRow as SuppliedBucketRow, type generated_SuppliedCurrencies as SuppliedCurrencies, type generated_SuppliedCurrencyRow as SuppliedCurrencyRow, type generated_SuppliedInventory as SuppliedInventory, type generated_SuppliedItemRow as SuppliedItemRow, type generated_SuppliedItems as SuppliedItems, type generated_SuppliedPeriodProgressRow as SuppliedPeriodProgressRow, type generated_SuppliedProgressionRow as SuppliedProgressionRow, type generated_SuppliedProgressions as SuppliedProgressions, type generated_SuppliedScope as SuppliedScope, type generated_ThemedColors as ThemedColors, type generated_TransferCurrencyRequest as TransferCurrencyRequest, type generated_TransferItemRequest as TransferItemRequest, type generated_TransferResponse as TransferResponse, type generated_UnavailabilityReason as UnavailabilityReason, type generated_UpdateGameRoomRequest as UpdateGameRoomRequest, type generated_UpdateRoomArgsRequest as UpdateRoomArgsRequest, type generated_WindowKind as WindowKind, type generated_WindowPreviewResponse as WindowPreviewResponse, generated_acceptTransfer as acceptTransfer, generated_addEntityProgression as addEntityProgression, generated_adminAction as adminAction, generated_cancelInventoryTransfer as cancelInventoryTransfer, generated_claimEntityProgressionRewards as claimEntityProgressionRewards, generated_closeGameRoom as closeGameRoom, generated_createEntityBatchOrder as createEntityBatchOrder, generated_createEntityOrder as createEntityOrder, generated_createSession as createSession, generated_deleteEntityGameSetting as deleteEntityGameSetting, generated_deleteEntitySave as deleteEntitySave, generated_deleteSession as deleteSession, generated_executeEntityRecipe as executeEntityRecipe, generated_finalizeSaveUpload as finalizeSaveUpload, generated_getDropRates as getDropRates, generated_getEntityCurrency as getEntityCurrency, generated_getEntityGameSetting as getEntityGameSetting, generated_getEntityInventory as getEntityInventory, generated_getEntityInventoryItem as getEntityInventoryItem, generated_getEntityLeaderboard as getEntityLeaderboard, generated_getEntityOrder as getEntityOrder, generated_getEntityProgression as getEntityProgression, generated_getEntityRecipeAvailability as getEntityRecipeAvailability, generated_getEntityRecipeUsage as getEntityRecipeUsage, generated_getEntitySave as getEntitySave, generated_getEvent as getEvent, generated_getGameRoomV2 as getGameRoomV2, generated_getLeaderboard as getLeaderboard, generated_getPurchaseCatalog as getPurchaseCatalog, generated_getResolvedTemplate as getResolvedTemplate, generated_getRoomArgs as getRoomArgs, generated_getTransferDetails as getTransferDetails, generated_ingestAnalyticsEvents as ingestAnalyticsEvents, generated_initiateInventoryTransfer as initiateInventoryTransfer, generated_invokeFunction as invokeFunction, generated_kickPlayer as kickPlayer, generated_listChallenges as listChallenges, generated_listEntityGameSettings as listEntityGameSettings, generated_listEntityOrders as listEntityOrders, generated_listEntityProgressions as listEntityProgressions, generated_listEntitySaves as listEntitySaves, generated_listEvents as listEvents, generated_listGameRooms as listGameRooms, generated_listResolvedTemplates as listResolvedTemplates, generated_listTransfers as listTransfers, generated_putEntityGameSetting as putEntityGameSetting, generated_putRoomArgs as putRoomArgs, generated_rejectTransfer as rejectTransfer, generated_requestSaveUploadUrl as requestSaveUploadUrl, generated_resetEntityProgression as resetEntityProgression, generated_simulateEntityOrder as simulateEntityOrder, generated_transferHostV2 as transferHostV2, generated_updateGameRoomV2 as updateGameRoomV2 };
1309
1485
  }
1310
1486
  type AnalyticsValue = string | number;
1311
1487
  interface AnalyticsRejection {
@@ -1323,6 +1499,34 @@ interface ServerAnalytics {
1323
1499
  flush(signal?: AbortSignal): Promise<AnalyticsFlushResult>;
1324
1500
  readonly pending: number;
1325
1501
  }
1502
+ interface FunctionInvokeOptions {
1503
+ readonly signal?: AbortSignal;
1504
+ }
1505
+ interface FunctionResult {
1506
+ readonly bytes: Uint8Array;
1507
+ readonly invocationId?: string;
1508
+ text(): string;
1509
+ json<T = unknown>(): T;
1510
+ }
1511
+ type FunctionFailure = "trap" | "memory_exceeded" | "cpu_budget_exceeded" | "host_call_limit";
1512
+ declare class GemFunctionError extends GemApiError {
1513
+ readonly invocationId?: string;
1514
+ readonly functionMessage?: string;
1515
+ readonly failure?: FunctionFailure | (string & {});
1516
+ constructor(source: GemApiError, extra: {
1517
+ readonly invocationId?: string;
1518
+ readonly functionMessage?: string;
1519
+ readonly failure?: string;
1520
+ });
1521
+ get retryable(): boolean;
1522
+ }
1523
+ declare class FunctionsApi {
1524
+ #private;
1525
+ constructor(invoke: (body: Uint8Array, options?: {
1526
+ signal?: AbortSignal;
1527
+ }) => Promise<BytesResponse>);
1528
+ invoke(input: unknown, options?: FunctionInvokeOptions): Promise<FunctionResult>;
1529
+ }
1326
1530
  interface GemServerOptions {
1327
1531
  readonly baseUrl?: string;
1328
1532
  readonly clock?: Clock;
@@ -1346,6 +1550,7 @@ interface GemServer {
1346
1550
  end(signal?: AbortSignal): Promise<void>;
1347
1551
  };
1348
1552
  readonly analytics: ServerAnalytics;
1553
+ readonly functions: FunctionsApi;
1349
1554
  readonly room?: {
1350
1555
  get: (options?: Parameters<ServerApi["getGameRoomV2"]>[1]) => ReturnType<ServerApi["getGameRoomV2"]>;
1351
1556
  args: (options?: Parameters<ServerApi["getRoomArgs"]>[1]) => ReturnType<ServerApi["getRoomArgs"]>;
@@ -1443,4 +1648,4 @@ interface AchievementReceipt {
1443
1648
  readonly reason?: string;
1444
1649
  }
1445
1650
  declare function achievementReceipts(order: unknown): AchievementReceipt[];
1446
- export { type AchievementReceipt, type AnalyticsFlushResult, type AnalyticsRejection, type AnalyticsValue, AuthError, type AuthFailure, type AuthState, type Base64String, type BroadcastOptions, CONDITIONAL_HEADERS, type ClientOptions, type Clock, type ConditionalRequestHeaders, type GameApi, GemApiError, GemClient, type GemErrorReason, type GemMatchServer, type GemServer, type GemServerBundle, type GemServerFactory, type GemServerHost, type GemServerHostProfile, type GemServerIdentity, type GemServerLifecycle, type GemServerOptions, type GemServerProfile, type HostTokenSource, type HostTokenSourceOptions, PlayerText, type RequestOptions, type RoomArgValue, type RuntimeShutdownPayload, type SendOptions, type ServerAnalytics, type ServerApi, type ServerBundleHost, type ServerShutdownInfo, type ServerTokenGrant, type TokenGrant, type Transport, TransportRefusal, type TransportRequest, type TransportResponse, type VersionedGetOptions, type VersionedResponse, achievementReceipts, asPlayerText, createGemServer, createHostTokenSource, createMatchServer, defineServer, systemClock, text, toBase64 };
1651
+ export { type AchievementReceipt, type AnalyticsFlushResult, type AnalyticsRejection, type AnalyticsValue, AuthError, type AuthFailure, type AuthState, type Base64String, type BroadcastOptions, type BytesResponse, CONDITIONAL_HEADERS, type ClientOptions, type Clock, type ConditionalRequestHeaders, type FunctionFailure, type FunctionInvokeOptions, type FunctionResult, FunctionsApi, type GameApi, GemApiError, GemClient, type GemErrorReason, GemFunctionError, type GemMatchServer, type GemServer, type GemServerBundle, type GemServerFactory, type GemServerHost, type GemServerHostProfile, type GemServerIdentity, type GemServerLifecycle, type GemServerOptions, type GemServerProfile, type HostTokenSource, type HostTokenSourceOptions, PlayerText, type RequestOptions, type RoomArgValue, type RuntimeShutdownPayload, type SendOptions, type ServerAnalytics, type ServerApi, type ServerBundleHost, type ServerShutdownInfo, type ServerTokenGrant, type TokenGrant, type Transport, TransportRefusal, type TransportRequest, type TransportResponse, type VersionedGetOptions, type VersionedResponse, achievementReceipts, asPlayerText, createGemServer, createHostTokenSource, createMatchServer, defineServer, systemClock, text, toBase64 };