@dendotdev/grunt 1.0.7 → 1.0.9

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/index.d.mts CHANGED
@@ -226,7 +226,7 @@ interface RawResponse {
226
226
  * const result = await client.stats.getMatchStats('match-id');
227
227
  * if (isSuccess(result)) {
228
228
  * // TypeScript now knows result.result is non-null
229
- * console.log(result.result.matchId);
229
+ * console.log(result.result.MatchId);
230
230
  * }
231
231
  * ```
232
232
  */
@@ -711,22 +711,22 @@ declare abstract class ModuleBase {
711
711
  */
712
712
  interface BanResult {
713
713
  /** Player identifier */
714
- playerId?: string;
714
+ PlayerId?: string;
715
715
  /** Whether player is banned */
716
- isBanned?: boolean;
716
+ IsBanned?: boolean;
717
717
  /** Ban reason */
718
- reason?: string;
718
+ Reason?: string;
719
719
  /** Ban expiration (ISO 8601) */
720
- expiresAt?: string;
720
+ ExpiresAt?: string;
721
721
  /** Severity level */
722
- severity?: string;
722
+ Severity?: string;
723
723
  }
724
724
  /**
725
725
  * Container for ban query results.
726
726
  */
727
727
  interface BansSummaryQueryResult {
728
728
  /** List of ban results */
729
- results?: BanResult[];
729
+ Results?: BanResult[];
730
730
  }
731
731
 
732
732
  /**
@@ -734,75 +734,75 @@ interface BansSummaryQueryResult {
734
734
  */
735
735
  interface Server {
736
736
  /** Server region */
737
- region?: string;
737
+ Region?: string;
738
738
  /** Server address */
739
- address?: string;
739
+ Address?: string;
740
740
  /** Server port */
741
- port?: number;
741
+ Port?: number;
742
742
  /** Server name */
743
- name?: string;
743
+ Name?: string;
744
744
  /** Whether server is available */
745
- available?: boolean;
745
+ Available?: boolean;
746
746
  }
747
747
  /**
748
748
  * Lobby presence request.
749
749
  */
750
750
  interface LobbyPresenceRequest {
751
751
  /** Player identifier */
752
- playerId?: string;
752
+ PlayerId?: string;
753
753
  /** Session ID */
754
- sessionId?: string;
754
+ SessionId?: string;
755
755
  }
756
756
  /**
757
757
  * Container for lobby presence requests.
758
758
  */
759
759
  interface LobbyPresenceRequestContainer {
760
760
  /** List of presence requests */
761
- requests?: LobbyPresenceRequest[];
761
+ Requests?: LobbyPresenceRequest[];
762
762
  }
763
763
  /**
764
764
  * Lobby presence result.
765
765
  */
766
766
  interface LobbyPresenceResult {
767
767
  /** Player identifier */
768
- playerId?: string;
768
+ PlayerId?: string;
769
769
  /** Session ID */
770
- sessionId?: string;
770
+ SessionId?: string;
771
771
  /** Lobby ID */
772
- lobbyId?: string;
772
+ LobbyId?: string;
773
773
  /** Whether player is in lobby */
774
- inLobby?: boolean;
774
+ InLobby?: boolean;
775
775
  }
776
776
  /**
777
777
  * Container for lobby presence results.
778
778
  */
779
779
  interface LobbyPresenceContainer {
780
780
  /** List of presence results */
781
- results?: LobbyPresenceResult[];
781
+ Results?: LobbyPresenceResult[];
782
782
  }
783
783
  /**
784
784
  * Lobby join handle.
785
785
  */
786
786
  interface LobbyJoinHandle {
787
787
  /** Handle identifier */
788
- handleId?: string;
788
+ HandleId?: string;
789
789
  /** Lobby ID */
790
- lobbyId?: string;
790
+ LobbyId?: string;
791
791
  /** Handle value */
792
- handle?: string;
792
+ Handle?: string;
793
793
  /** Expiration time (ISO 8601) */
794
- expiresAt?: string;
794
+ ExpiresAt?: string;
795
795
  }
796
796
  /**
797
797
  * Response when joining a lobby.
798
798
  */
799
799
  interface JoinLobbyResponse {
800
800
  /** Success status */
801
- success?: boolean;
801
+ Success?: boolean;
802
802
  /** Lobby ID */
803
- lobbyId?: string;
803
+ LobbyId?: string;
804
804
  /** Session details */
805
- session?: Record<string, unknown>;
805
+ Session?: Record<string, unknown>;
806
806
  }
807
807
 
808
808
  /**
@@ -810,86 +810,86 @@ interface JoinLobbyResponse {
810
810
  */
811
811
  interface PlayerItem {
812
812
  /** Item path identifier */
813
- itemPath?: string;
813
+ ItemPath?: string;
814
814
  /** Item type */
815
- itemType?: string;
815
+ ItemType?: string;
816
816
  /** Quantity owned */
817
- amount?: number;
817
+ Amount?: number;
818
818
  /** When first acquired (ISO 8601) */
819
- firstAcquiredDate?: string;
819
+ FirstAcquiredDate?: string;
820
820
  /** Source of acquisition */
821
- source?: string;
821
+ Source?: string;
822
822
  }
823
823
  /**
824
824
  * Player inventory response.
825
825
  */
826
826
  interface PlayerInventory {
827
827
  /** List of inventory items */
828
- items?: PlayerItem[];
828
+ Items?: PlayerItem[];
829
829
  }
830
830
  /**
831
831
  * Currency balance.
832
832
  */
833
833
  interface CurrencyAmount {
834
834
  /** Currency identifier */
835
- currencyId?: string;
835
+ CurrencyId?: string;
836
836
  /** Current balance */
837
- amount?: number;
837
+ Amount?: number;
838
838
  }
839
839
  /**
840
840
  * Currency snapshot containing all balances.
841
841
  */
842
842
  interface CurrencySnapshot {
843
843
  /** List of currency balances */
844
- currencies?: CurrencyAmount[];
844
+ Currencies?: CurrencyAmount[];
845
845
  }
846
846
  /**
847
847
  * Currency definition from CMS.
848
848
  */
849
849
  interface CurrencyDefinition {
850
850
  /** Currency identifier */
851
- currencyId?: string;
851
+ CurrencyId?: string;
852
852
  /** Display title */
853
- title?: DisplayString;
853
+ Title?: DisplayString;
854
854
  /** Description */
855
- description?: DisplayString;
855
+ Description?: DisplayString;
856
856
  /** Image path */
857
- image?: string;
857
+ Image?: string;
858
858
  /** Icon type */
859
- iconType?: string;
859
+ IconType?: string;
860
860
  }
861
861
  /**
862
862
  * Localized display string.
863
863
  */
864
864
  interface DisplayString {
865
865
  /** Status of the localization */
866
- status?: string;
866
+ Status?: string;
867
867
  /** Default/fallback value */
868
- value?: string;
868
+ Value?: string;
869
869
  /** Translations by locale code */
870
- translations?: Record<string, string>;
870
+ Translations?: Record<string, string>;
871
871
  }
872
872
  /**
873
873
  * Inventory amount with details.
874
874
  */
875
875
  interface InventoryAmount {
876
876
  /** Item path */
877
- itemPath?: string;
877
+ ItemPath?: string;
878
878
  /** Quantity */
879
- amount?: number;
879
+ Amount?: number;
880
880
  /** Item type */
881
- itemType?: string;
881
+ ItemType?: string;
882
882
  }
883
883
  /**
884
884
  * Transaction result after currency operation.
885
885
  */
886
886
  interface TransactionSnapshot {
887
887
  /** Transaction identifier */
888
- transactionId?: string;
888
+ TransactionId?: string;
889
889
  /** New balance after transaction */
890
- newBalance?: CurrencyAmount[];
890
+ NewBalance?: CurrencyAmount[];
891
891
  /** Transaction timestamp (ISO 8601) */
892
- timestamp?: string;
892
+ Timestamp?: string;
893
893
  }
894
894
 
895
895
  /**
@@ -897,45 +897,45 @@ interface TransactionSnapshot {
897
897
  */
898
898
  interface Medal {
899
899
  /** Medal name identifier */
900
- nameId?: number;
900
+ NameId?: number;
901
901
  /** Display name */
902
- name?: DisplayString;
902
+ Name?: DisplayString;
903
903
  /** Description */
904
- description?: DisplayString;
904
+ Description?: DisplayString;
905
905
  /** Sprite index */
906
- spriteIndex?: number;
906
+ SpriteIndex?: number;
907
907
  /** Medal type */
908
- type?: string;
908
+ Type?: string;
909
909
  /** Difficulty level */
910
- difficulty?: string;
910
+ Difficulty?: string;
911
911
  /** Personal score awarded */
912
- personalScore?: number;
912
+ PersonalScore?: number;
913
913
  /** Sorting weight */
914
- sortingWeight?: number;
914
+ SortingWeight?: number;
915
915
  }
916
916
  /**
917
917
  * Medal metadata collection.
918
918
  */
919
919
  interface MedalMetadata {
920
920
  /** List of medals */
921
- medals?: Medal[];
921
+ Medals?: Medal[];
922
922
  /** Sprite sheet information */
923
- spriteSheet?: SpriteSheet;
923
+ SpriteSheet?: SpriteSheet;
924
924
  }
925
925
  /**
926
926
  * Sprite sheet information.
927
927
  */
928
928
  interface SpriteSheet {
929
929
  /** Path to sprite sheet image */
930
- path?: string;
930
+ Path?: string;
931
931
  /** Sprite width */
932
- spriteWidth?: number;
932
+ SpriteWidth?: number;
933
933
  /** Sprite height */
934
- spriteHeight?: number;
934
+ SpriteHeight?: number;
935
935
  /** Number of columns */
936
- columns?: number;
936
+ Columns?: number;
937
937
  /** Number of rows */
938
- rows?: number;
938
+ Rows?: number;
939
939
  }
940
940
 
941
941
  /**
@@ -943,116 +943,116 @@ interface SpriteSheet {
943
943
  */
944
944
  interface AcademyClientManifest {
945
945
  /** List of categories */
946
- categories?: AcademyCategory[];
946
+ Categories?: AcademyCategory[];
947
947
  /** Version */
948
- version?: string;
948
+ Version?: string;
949
949
  }
950
950
  /**
951
951
  * Academy category.
952
952
  */
953
953
  interface AcademyCategory {
954
954
  /** Category identifier */
955
- id?: string;
955
+ Id?: string;
956
956
  /** Category title */
957
- title?: DisplayString;
957
+ Title?: DisplayString;
958
958
  /** Category description */
959
- description?: DisplayString;
959
+ Description?: DisplayString;
960
960
  /** Image path */
961
- imagePath?: string;
961
+ ImagePath?: string;
962
962
  /** Series in this category */
963
- series?: AcademySeries[];
963
+ Series?: AcademySeries[];
964
964
  }
965
965
  /**
966
966
  * Academy series (collection of drills).
967
967
  */
968
968
  interface AcademySeries {
969
969
  /** Series identifier */
970
- id?: string;
970
+ Id?: string;
971
971
  /** Series title */
972
- title?: DisplayString;
972
+ Title?: DisplayString;
973
973
  /** Description */
974
- description?: DisplayString;
974
+ Description?: DisplayString;
975
975
  /** Image path */
976
- imagePath?: string;
976
+ ImagePath?: string;
977
977
  /** Drills in this series */
978
- drills?: AcademyDrill[];
978
+ Drills?: AcademyDrill[];
979
979
  }
980
980
  /**
981
981
  * Academy drill.
982
982
  */
983
983
  interface AcademyDrill {
984
984
  /** Drill identifier */
985
- id?: string;
985
+ Id?: string;
986
986
  /** Drill title */
987
- title?: DisplayString;
987
+ Title?: DisplayString;
988
988
  /** Description */
989
- description?: DisplayString;
989
+ Description?: DisplayString;
990
990
  /** Image path */
991
- imagePath?: string;
991
+ ImagePath?: string;
992
992
  /** Difficulty level */
993
- difficulty?: string;
993
+ Difficulty?: string;
994
994
  /** Weapon path */
995
- weaponPath?: string;
995
+ WeaponPath?: string;
996
996
  /** Map asset ID */
997
- mapAssetId?: string;
997
+ MapAssetId?: string;
998
998
  /** Game variant asset ID */
999
- gameVariantAssetId?: string;
999
+ GameVariantAssetId?: string;
1000
1000
  }
1001
1001
  /**
1002
1002
  * Academy star definitions.
1003
1003
  */
1004
1004
  interface AcademyStarDefinitions {
1005
1005
  /** Star definitions by drill */
1006
- definitions?: Record<string, AcademyStarDefinition>;
1006
+ Definitions?: Record<string, AcademyStarDefinition>;
1007
1007
  }
1008
1008
  /**
1009
1009
  * Star thresholds for a drill.
1010
1010
  */
1011
1011
  interface AcademyStarDefinition {
1012
1012
  /** One star threshold */
1013
- oneStar?: number;
1013
+ OneStar?: number;
1014
1014
  /** Two stars threshold */
1015
- twoStars?: number;
1015
+ TwoStars?: number;
1016
1016
  /** Three stars threshold */
1017
- threeStars?: number;
1017
+ ThreeStars?: number;
1018
1018
  }
1019
1019
  /**
1020
1020
  * Bot customization data.
1021
1021
  */
1022
1022
  interface BotCustomizationData {
1023
1023
  /** Available bot difficulty levels */
1024
- difficulties?: BotDifficulty[];
1024
+ Difficulties?: BotDifficulty[];
1025
1025
  /** Bot appearance options */
1026
- appearances?: BotAppearance[];
1026
+ Appearances?: BotAppearance[];
1027
1027
  }
1028
1028
  /**
1029
1029
  * Bot difficulty level.
1030
1030
  */
1031
1031
  interface BotDifficulty {
1032
1032
  /** Difficulty identifier */
1033
- id?: string;
1033
+ Id?: string;
1034
1034
  /** Display name */
1035
- name?: DisplayString;
1035
+ Name?: DisplayString;
1036
1036
  /** Description */
1037
- description?: DisplayString;
1037
+ Description?: DisplayString;
1038
1038
  }
1039
1039
  /**
1040
1040
  * Bot appearance option.
1041
1041
  */
1042
1042
  interface BotAppearance {
1043
1043
  /** Appearance identifier */
1044
- id?: string;
1044
+ Id?: string;
1045
1045
  /** Display name */
1046
- name?: DisplayString;
1046
+ Name?: DisplayString;
1047
1047
  /** Appearance path */
1048
- path?: string;
1048
+ Path?: string;
1049
1049
  }
1050
1050
  /**
1051
1051
  * Test academy client manifest (for flighted content).
1052
1052
  */
1053
1053
  interface TestAcademyClientManifest extends AcademyClientManifest {
1054
1054
  /** Flight identifier */
1055
- flightId?: string;
1055
+ FlightId?: string;
1056
1056
  }
1057
1057
 
1058
1058
  /**
@@ -1060,114 +1060,114 @@ interface TestAcademyClientManifest extends AcademyClientManifest {
1060
1060
  */
1061
1061
  interface Configuration {
1062
1062
  /** Authority definitions */
1063
- authorities?: Record<string, Authority>;
1063
+ Authorities?: Record<string, Authority>;
1064
1064
  /** Retry policy definitions */
1065
- retryPolicies?: Record<string, RetryPolicyConfig>;
1065
+ RetryPolicies?: Record<string, RetryPolicyConfig>;
1066
1066
  /** Settings values */
1067
- settings?: SettingsConfig;
1067
+ Settings?: SettingsConfig;
1068
1068
  /** Endpoint definitions */
1069
- endpoints?: Record<string, OnlineUriReference>;
1069
+ Endpoints?: Record<string, OnlineUriReference>;
1070
1070
  }
1071
1071
  /**
1072
1072
  * Authority (API service) definition.
1073
1073
  */
1074
1074
  interface Authority {
1075
1075
  /** Authority identifier */
1076
- authorityId?: string;
1076
+ AuthorityId?: string;
1077
1077
  /** URL scheme (1 = http, 2 = https) */
1078
- scheme?: number;
1078
+ Scheme?: number;
1079
1079
  /** Hostname */
1080
- hostname?: string;
1080
+ Hostname?: string;
1081
1081
  /** Port number */
1082
- port?: number;
1082
+ Port?: number;
1083
1083
  /** Authentication methods */
1084
- authenticationMethods?: number[];
1084
+ AuthenticationMethods?: number[];
1085
1085
  }
1086
1086
  /**
1087
1087
  * Retry policy configuration.
1088
1088
  */
1089
1089
  interface RetryPolicyConfig {
1090
1090
  /** Policy identifier */
1091
- retryPolicyId?: string;
1091
+ RetryPolicyId?: string;
1092
1092
  /** Timeout in milliseconds */
1093
- timeoutMs?: number;
1093
+ TimeoutMs?: number;
1094
1094
  /** Retry options */
1095
- retryOptions?: RetryOptionsConfig;
1095
+ RetryOptions?: RetryOptionsConfig;
1096
1096
  }
1097
1097
  /**
1098
1098
  * Retry options.
1099
1099
  */
1100
1100
  interface RetryOptionsConfig {
1101
1101
  /** Maximum retry count */
1102
- maxRetryCount?: number;
1102
+ MaxRetryCount?: number;
1103
1103
  /** Initial retry delay in milliseconds */
1104
- retryDelayMs?: number;
1104
+ RetryDelayMs?: number;
1105
1105
  /** Retry delay growth factor */
1106
- retryGrowth?: number;
1106
+ RetryGrowth?: number;
1107
1107
  /** Random jitter to add in milliseconds */
1108
- retryJitterMs?: number;
1108
+ RetryJitterMs?: number;
1109
1109
  /** Whether to retry on 404 */
1110
- retryIfNotFound?: boolean;
1110
+ RetryIfNotFound?: boolean;
1111
1111
  }
1112
1112
  /**
1113
1113
  * Online URI reference (endpoint definition).
1114
1114
  */
1115
1115
  interface OnlineUriReference {
1116
1116
  /** Endpoint identifier */
1117
- endpointId?: string;
1117
+ EndpointId?: string;
1118
1118
  /** Authority identifier */
1119
- authorityId?: string;
1119
+ AuthorityId?: string;
1120
1120
  /** Path template */
1121
- path?: string;
1121
+ Path?: string;
1122
1122
  /** Query string template */
1123
- queryString?: string;
1123
+ QueryString?: string;
1124
1124
  /** Retry policy identifier */
1125
- retryPolicyId?: string;
1125
+ RetryPolicyId?: string;
1126
1126
  /** Topic name */
1127
- topicName?: string;
1127
+ TopicName?: string;
1128
1128
  /** Acknowledgement type */
1129
- acknowledgementTypeId?: number;
1129
+ AcknowledgementTypeId?: number;
1130
1130
  /** Whether auth lifetime extension is supported */
1131
- authenticationLifetimeExtensionSupported?: boolean;
1131
+ AuthenticationLifetimeExtensionSupported?: boolean;
1132
1132
  /** Whether endpoint is clearance-aware */
1133
- clearanceAware?: boolean;
1133
+ ClearanceAware?: boolean;
1134
1134
  }
1135
1135
  /**
1136
1136
  * Settings configuration.
1137
1137
  */
1138
1138
  interface SettingsConfig {
1139
1139
  /** CELL config */
1140
- cellConfig?: string;
1140
+ CellConfig?: string;
1141
1141
  /** Client QoS timeout */
1142
- clientQoSTimeoutMs?: string;
1142
+ ClientQoSTimeoutMs?: string;
1143
1143
  /** Clearance audience */
1144
- clearanceAudience?: string;
1144
+ ClearanceAudience?: string;
1145
1145
  /** Playfab title ID */
1146
- playfabTitleId?: string;
1146
+ PlayfabTitleId?: string;
1147
1147
  /** Title ID list */
1148
- titleIdList?: string;
1148
+ TitleIdList?: string;
1149
1149
  /** XSTS audience URI */
1150
- haloXSTSAudienceUri?: string;
1150
+ HaloXSTSAudienceUri?: string;
1151
1151
  /** Product access list */
1152
- productAccessList?: string;
1152
+ ProductAccessList?: string;
1153
1153
  }
1154
1154
  /**
1155
1155
  * Flight feature flags.
1156
1156
  */
1157
1157
  interface FlightedFeatureFlags {
1158
1158
  /** Flight identifier */
1159
- flightId?: string;
1159
+ FlightId?: string;
1160
1160
  /** Clearance identifier */
1161
- clearanceId?: string;
1161
+ ClearanceId?: string;
1162
1162
  /** Feature flags */
1163
- flags?: Record<string, boolean>;
1163
+ Flags?: Record<string, boolean>;
1164
1164
  }
1165
1165
  /**
1166
1166
  * Player clearance/flight configuration ID.
1167
1167
  */
1168
1168
  interface PlayerClearance {
1169
1169
  /** Flight configuration identifier */
1170
- flightConfigurationId?: string;
1170
+ FlightConfigurationId?: string;
1171
1171
  }
1172
1172
 
1173
1173
  /**
@@ -1175,118 +1175,118 @@ interface PlayerClearance {
1175
1175
  */
1176
1176
  interface NewsArticle {
1177
1177
  /** Article identifier */
1178
- id?: number;
1178
+ Id?: number;
1179
1179
  /** Featured image URL */
1180
- featuredImageUri?: string;
1180
+ FeaturedImageUri?: string;
1181
1181
  /** Featured image alt text */
1182
- featuredImageAlt?: string;
1182
+ FeaturedImageAlt?: string;
1183
1183
  /** Article title */
1184
- title?: string;
1184
+ Title?: string;
1185
1185
  /** Article subtitle */
1186
- subtitle?: string;
1186
+ Subtitle?: string;
1187
1187
  /** Article content (HTML) */
1188
- content?: string;
1188
+ Content?: string;
1189
1189
  /** Short excerpt */
1190
- excerpt?: string;
1190
+ Excerpt?: string;
1191
1191
  /** URL slug */
1192
- slug?: string;
1192
+ Slug?: string;
1193
1193
  /** Creator slug */
1194
- creatorSlug?: string;
1194
+ CreatorSlug?: string;
1195
1195
  /** Creator title */
1196
- creatorTitle?: string;
1196
+ CreatorTitle?: string;
1197
1197
  /** Category IDs */
1198
- categories?: number[];
1198
+ Categories?: number[];
1199
1199
  /** Tags */
1200
- tags?: string[];
1200
+ Tags?: string[];
1201
1201
  /** Publish date (ISO 8601) */
1202
- publishDate?: string;
1202
+ PublishDate?: string;
1203
1203
  /** Medium image URL */
1204
- featuredImageUriMedium?: string;
1204
+ FeaturedImageUriMedium?: string;
1205
1205
  /** Medium image alt */
1206
- featuredImageAltMedium?: string;
1206
+ FeaturedImageAltMedium?: string;
1207
1207
  /** Small image URL */
1208
- featuredImageUriSmall?: string;
1208
+ FeaturedImageUriSmall?: string;
1209
1209
  /** Small image alt */
1210
- featuredImageAltSmall?: string;
1210
+ FeaturedImageAltSmall?: string;
1211
1211
  }
1212
1212
  /**
1213
1213
  * News collection.
1214
1214
  */
1215
1215
  interface News {
1216
1216
  /** List of articles */
1217
- articles?: NewsArticle[];
1217
+ Articles?: NewsArticle[];
1218
1218
  /** Total count */
1219
- total?: number;
1219
+ Total?: number;
1220
1220
  }
1221
1221
  /**
1222
1222
  * Season calendar entry.
1223
1223
  */
1224
1224
  interface SeasonCalendarEntry {
1225
1225
  /** Season identifier */
1226
- seasonId?: string;
1226
+ SeasonId?: string;
1227
1227
  /** Season name */
1228
- name?: DisplayString;
1228
+ Name?: DisplayString;
1229
1229
  /** Start date (ISO 8601) */
1230
- startDate?: string;
1230
+ StartDate?: string;
1231
1231
  /** End date (ISO 8601) */
1232
- endDate?: string;
1232
+ EndDate?: string;
1233
1233
  /** CSR season identifier */
1234
- csrSeasonId?: string;
1234
+ CsrSeasonId?: string;
1235
1235
  }
1236
1236
  /**
1237
1237
  * Season calendar.
1238
1238
  */
1239
1239
  interface SeasonCalendar {
1240
1240
  /** List of seasons */
1241
- seasons?: SeasonCalendarEntry[];
1241
+ Seasons?: SeasonCalendarEntry[];
1242
1242
  /** Current season */
1243
- currentSeason?: string;
1243
+ CurrentSeason?: string;
1244
1244
  }
1245
1245
  /**
1246
1246
  * Matches privacy settings.
1247
1247
  */
1248
1248
  interface MatchesPrivacy {
1249
1249
  /** Player identifier */
1250
- playerId?: string;
1250
+ PlayerId?: string;
1251
1251
  /** Privacy setting */
1252
- privacySetting?: string;
1252
+ PrivacySetting?: string;
1253
1253
  /** Whether matches are public */
1254
- matchesPublic?: boolean;
1254
+ MatchesPublic?: boolean;
1255
1255
  }
1256
1256
  /**
1257
1257
  * Player daily custom experience.
1258
1258
  */
1259
1259
  interface PlayerDailyCustomExperience {
1260
1260
  /** Player identifier */
1261
- playerId?: string;
1261
+ PlayerId?: string;
1262
1262
  /** Custom XP remaining */
1263
- remainingXp?: number;
1263
+ RemainingXp?: number;
1264
1264
  /** Custom XP earned today */
1265
- earnedToday?: number;
1265
+ EarnedToday?: number;
1266
1266
  /** Daily limit */
1267
- dailyLimit?: number;
1267
+ DailyLimit?: number;
1268
1268
  /** Reset time (ISO 8601) */
1269
- resetTime?: string;
1269
+ ResetTime?: string;
1270
1270
  }
1271
1271
  /**
1272
1272
  * Giveaway rewards.
1273
1273
  */
1274
1274
  interface PlayerGiveaways {
1275
1275
  /** List of pending giveaways */
1276
- giveaways?: GiveawayReward[];
1276
+ Giveaways?: GiveawayReward[];
1277
1277
  }
1278
1278
  /**
1279
1279
  * Individual giveaway reward.
1280
1280
  */
1281
1281
  interface GiveawayReward {
1282
1282
  /** Giveaway identifier */
1283
- id?: string;
1283
+ Id?: string;
1284
1284
  /** Title */
1285
- title?: DisplayString;
1285
+ Title?: DisplayString;
1286
1286
  /** Items included */
1287
- items?: InventoryAmount[];
1287
+ Items?: InventoryAmount[];
1288
1288
  /** Claim deadline (ISO 8601) */
1289
- claimDeadline?: string;
1289
+ ClaimDeadline?: string;
1290
1290
  }
1291
1291
 
1292
1292
  /**
@@ -1383,94 +1383,94 @@ declare class ConfigurationModule extends ModuleBase {
1383
1383
  */
1384
1384
  interface StoreOffering {
1385
1385
  /** Offering identifier */
1386
- offeringId?: string;
1386
+ OfferingId?: string;
1387
1387
  /** Display title */
1388
- title?: DisplayString;
1388
+ Title?: DisplayString;
1389
1389
  /** Description */
1390
- description?: DisplayString;
1390
+ Description?: DisplayString;
1391
1391
  /** Image path */
1392
- imagePath?: string;
1392
+ ImagePath?: string;
1393
1393
  /** Price in each currency */
1394
- prices?: StorePrice[];
1394
+ Prices?: StorePrice[];
1395
1395
  /** Items included */
1396
- includedItems?: InventoryAmount[];
1396
+ IncludedItems?: InventoryAmount[];
1397
1397
  /** Offering type */
1398
- offeringType?: string;
1398
+ OfferingType?: string;
1399
1399
  /** Start time (ISO 8601) */
1400
- startDate?: string;
1400
+ StartDate?: string;
1401
1401
  /** End time (ISO 8601) */
1402
- endDate?: string;
1402
+ EndDate?: string;
1403
1403
  /** Whether this is a bundle */
1404
- isBundle?: boolean;
1404
+ IsBundle?: boolean;
1405
1405
  /** Whether player owns this */
1406
- isOwned?: boolean;
1406
+ IsOwned?: boolean;
1407
1407
  /** Quality tier */
1408
- quality?: string;
1408
+ Quality?: string;
1409
1409
  }
1410
1410
  /**
1411
1411
  * Price in a specific currency.
1412
1412
  */
1413
1413
  interface StorePrice {
1414
1414
  /** Currency identifier */
1415
- currencyId?: string;
1415
+ CurrencyId?: string;
1416
1416
  /** Cost amount */
1417
- cost?: number;
1417
+ Cost?: number;
1418
1418
  /** Original cost (before discount) */
1419
- originalCost?: number;
1419
+ OriginalCost?: number;
1420
1420
  /** Discount percentage */
1421
- discountPercent?: number;
1421
+ DiscountPercent?: number;
1422
1422
  }
1423
1423
  /**
1424
1424
  * Store item container (multiple offerings).
1425
1425
  */
1426
1426
  interface StoreItem {
1427
1427
  /** Store identifier */
1428
- storeId?: string;
1428
+ StoreId?: string;
1429
1429
  /** Display name */
1430
- storeName?: string;
1430
+ StoreName?: string;
1431
1431
  /** List of offerings */
1432
- offerings?: StoreOffering[];
1432
+ Offerings?: StoreOffering[];
1433
1433
  /** Store refresh time (ISO 8601) */
1434
- refreshTime?: string;
1434
+ RefreshTime?: string;
1435
1435
  /** Store expiration time (ISO 8601) */
1436
- expirationTime?: string;
1436
+ ExpirationTime?: string;
1437
1437
  }
1438
1438
  /**
1439
1439
  * Active boost information.
1440
1440
  */
1441
1441
  interface ActiveBoost {
1442
1442
  /** Boost identifier */
1443
- boostId?: string;
1443
+ BoostId?: string;
1444
1444
  /** Boost type */
1445
- boostType?: string;
1445
+ BoostType?: string;
1446
1446
  /** Multiplier value */
1447
- multiplier?: number;
1447
+ Multiplier?: number;
1448
1448
  /** Remaining uses */
1449
- remainingUses?: number;
1449
+ RemainingUses?: number;
1450
1450
  /** Expiration time (ISO 8601) */
1451
- expirationTime?: string;
1451
+ ExpirationTime?: string;
1452
1452
  }
1453
1453
  /**
1454
1454
  * Container for active boosts.
1455
1455
  */
1456
1456
  interface ActiveBoostsContainer {
1457
1457
  /** List of active boosts */
1458
- boosts?: ActiveBoost[];
1458
+ Boosts?: ActiveBoost[];
1459
1459
  }
1460
1460
  /**
1461
1461
  * Reward snapshot.
1462
1462
  */
1463
1463
  interface RewardSnapshot {
1464
1464
  /** Reward identifier */
1465
- rewardId?: string;
1465
+ RewardId?: string;
1466
1466
  /** Items awarded */
1467
- items?: InventoryAmount[];
1467
+ Items?: InventoryAmount[];
1468
1468
  /** Currency awarded */
1469
- currencies?: CurrencyAmount[];
1469
+ Currencies?: CurrencyAmount[];
1470
1470
  /** XP awarded */
1471
- xpAwarded?: number;
1471
+ XpAwarded?: number;
1472
1472
  /** Claimed status */
1473
- claimed?: boolean;
1473
+ Claimed?: boolean;
1474
1474
  }
1475
1475
 
1476
1476
  /**
@@ -1478,150 +1478,150 @@ interface RewardSnapshot {
1478
1478
  */
1479
1479
  interface CoreBase {
1480
1480
  /** Path to the core definition */
1481
- corePath?: string;
1481
+ CorePath?: string;
1482
1482
  /** Whether this core is currently equipped */
1483
- isEquipped?: boolean;
1483
+ IsEquipped?: boolean;
1484
1484
  /** Unique core identifier */
1485
- coreId?: string;
1485
+ CoreId?: string;
1486
1486
  /** Type of core */
1487
- coreType?: string;
1487
+ CoreType?: string;
1488
1488
  /** When the core was first acquired (ISO 8601) */
1489
- firstAcquiredDate?: string;
1489
+ FirstAcquiredDate?: string;
1490
1490
  }
1491
1491
  /**
1492
1492
  * Base properties shared by all themes.
1493
1493
  */
1494
1494
  interface ThemeBase {
1495
1495
  /** When first modified (ISO 8601) */
1496
- firstModifiedDateUtc?: string;
1496
+ FirstModifiedDateUtc?: string;
1497
1497
  /** When last modified (ISO 8601) */
1498
- lastModifiedDateUtc?: string;
1498
+ LastModifiedDateUtc?: string;
1499
1499
  /** Whether this theme is currently equipped */
1500
- isEquipped?: boolean;
1500
+ IsEquipped?: boolean;
1501
1501
  /** Whether this is the default theme */
1502
- isDefault?: boolean;
1502
+ IsDefault?: boolean;
1503
1503
  /** Path to the theme definition */
1504
- themePath?: string;
1504
+ ThemePath?: string;
1505
1505
  }
1506
1506
  /**
1507
1507
  * Armor core with themes.
1508
1508
  */
1509
1509
  interface ArmorCore extends CoreBase {
1510
1510
  /** Available themes for this core */
1511
- themes?: ArmorCoreTheme[];
1511
+ Themes?: ArmorCoreTheme[];
1512
1512
  }
1513
1513
  /**
1514
1514
  * Armor core theme configuration.
1515
1515
  */
1516
1516
  interface ArmorCoreTheme extends ThemeBase {
1517
1517
  /** Helmet item path */
1518
- helmetPath?: string;
1518
+ HelmetPath?: string;
1519
1519
  /** Visor item path */
1520
- visorPath?: string;
1520
+ VisorPath?: string;
1521
1521
  /** Coating item path */
1522
- coatingPath?: string;
1522
+ CoatingPath?: string;
1523
1523
  /** Left shoulder pad path */
1524
- leftShoulderPadPath?: string;
1524
+ LeftShoulderPadPath?: string;
1525
1525
  /** Right shoulder pad path */
1526
- rightShoulderPadPath?: string;
1526
+ RightShoulderPadPath?: string;
1527
1527
  /** Gloves path */
1528
- glovesPath?: string;
1528
+ GlovesPath?: string;
1529
1529
  /** Chest attachment path */
1530
- chestAttachmentPath?: string;
1530
+ ChestAttachmentPath?: string;
1531
1531
  /** Knee pads path */
1532
- kneePadsPath?: string;
1532
+ KneePadsPath?: string;
1533
1533
  /** Wrist attachment path */
1534
- wristAttachmentPath?: string;
1534
+ WristAttachmentPath?: string;
1535
1535
  /** Hip attachment path */
1536
- hipAttachmentPath?: string;
1536
+ HipAttachmentPath?: string;
1537
1537
  /** Armor effect path */
1538
- armorEffectPath?: string;
1538
+ ArmorEffectPath?: string;
1539
1539
  /** Mythic effect path */
1540
- mythicEffectPath?: string;
1540
+ MythicEffectPath?: string;
1541
1541
  }
1542
1542
  /**
1543
1543
  * Weapon core with themes.
1544
1544
  */
1545
1545
  interface WeaponCore extends CoreBase {
1546
1546
  /** Available themes for this core */
1547
- themes?: WeaponCoreTheme[];
1547
+ Themes?: WeaponCoreTheme[];
1548
1548
  }
1549
1549
  /**
1550
1550
  * Weapon core theme configuration.
1551
1551
  */
1552
1552
  interface WeaponCoreTheme extends ThemeBase {
1553
1553
  /** Coating item path */
1554
- coatingPath?: string;
1554
+ CoatingPath?: string;
1555
1555
  /** Charm item path */
1556
- charmPath?: string;
1556
+ CharmPath?: string;
1557
1557
  /** Death FX path */
1558
- deathFxPath?: string;
1558
+ DeathFxPath?: string;
1559
1559
  /** Emblem path */
1560
- emblemPath?: string;
1560
+ EmblemPath?: string;
1561
1561
  }
1562
1562
  /**
1563
1563
  * Vehicle core with themes.
1564
1564
  */
1565
1565
  interface VehicleCore extends CoreBase {
1566
1566
  /** Available themes for this core */
1567
- themes?: VehicleCoreTheme[];
1567
+ Themes?: VehicleCoreTheme[];
1568
1568
  }
1569
1569
  /**
1570
1570
  * Vehicle core theme configuration.
1571
1571
  */
1572
1572
  interface VehicleCoreTheme extends ThemeBase {
1573
1573
  /** Coating item path */
1574
- coatingPath?: string;
1574
+ CoatingPath?: string;
1575
1575
  /** Emblem path */
1576
- emblemPath?: string;
1576
+ EmblemPath?: string;
1577
1577
  /** Vehicle effect path */
1578
- vehicleEffectPath?: string;
1578
+ VehicleEffectPath?: string;
1579
1579
  }
1580
1580
  /**
1581
1581
  * AI core with themes.
1582
1582
  */
1583
1583
  interface AiCore extends CoreBase {
1584
1584
  /** Available themes for this core */
1585
- themes?: AiCoreTheme[];
1585
+ Themes?: AiCoreTheme[];
1586
1586
  }
1587
1587
  /**
1588
1588
  * AI core theme configuration.
1589
1589
  */
1590
1590
  interface AiCoreTheme extends ThemeBase {
1591
1591
  /** AI model path */
1592
- modelPath?: string;
1592
+ ModelPath?: string;
1593
1593
  /** Color primary path */
1594
- colorPrimaryPath?: string;
1594
+ ColorPrimaryPath?: string;
1595
1595
  /** Color secondary path */
1596
- colorSecondaryPath?: string;
1596
+ ColorSecondaryPath?: string;
1597
1597
  }
1598
1598
  /**
1599
1599
  * Collection of armor cores.
1600
1600
  */
1601
1601
  interface ArmorCoreCollection {
1602
1602
  /** List of armor cores */
1603
- armorCores?: ArmorCore[];
1603
+ ArmorCores?: ArmorCore[];
1604
1604
  }
1605
1605
  /**
1606
1606
  * Collection of weapon cores.
1607
1607
  */
1608
1608
  interface WeaponCoreCollection {
1609
1609
  /** List of weapon cores */
1610
- weaponCores?: WeaponCore[];
1610
+ WeaponCores?: WeaponCore[];
1611
1611
  }
1612
1612
  /**
1613
1613
  * Collection of vehicle cores.
1614
1614
  */
1615
1615
  interface VehicleCoreCollection {
1616
1616
  /** List of vehicle cores */
1617
- vehicleCores?: VehicleCore[];
1617
+ VehicleCores?: VehicleCore[];
1618
1618
  }
1619
1619
  /**
1620
1620
  * Collection of AI cores.
1621
1621
  */
1622
1622
  interface AiCoreContainer {
1623
1623
  /** List of AI cores */
1624
- aiCores?: AiCore[];
1624
+ AiCores?: AiCore[];
1625
1625
  }
1626
1626
 
1627
1627
  /**
@@ -1629,77 +1629,77 @@ interface AiCoreContainer {
1629
1629
  */
1630
1630
  interface SpartanBody {
1631
1631
  /** When last modified (ISO 8601) */
1632
- lastModifiedDateUtc?: string;
1632
+ LastModifiedDateUtc?: string;
1633
1633
  /** Left arm prosthetic path */
1634
- leftArm?: string;
1634
+ LeftArm?: string;
1635
1635
  /** Right arm prosthetic path */
1636
- rightArm?: string;
1636
+ RightArm?: string;
1637
1637
  /** Left leg prosthetic path */
1638
- leftLeg?: string;
1638
+ LeftLeg?: string;
1639
1639
  /** Right leg prosthetic path */
1640
- rightLeg?: string;
1640
+ RightLeg?: string;
1641
1641
  /** Body type identifier */
1642
- bodyType?: string;
1642
+ BodyType?: string;
1643
1643
  /** Voice number */
1644
- voice?: number;
1644
+ Voice?: number;
1645
1645
  /** Voice path */
1646
- voicePath?: string;
1646
+ VoicePath?: string;
1647
1647
  }
1648
1648
  /**
1649
1649
  * Player appearance configuration.
1650
1650
  */
1651
1651
  interface Appearance {
1652
1652
  /** When last modified (ISO 8601) */
1653
- lastModifiedDateUtc?: string;
1653
+ LastModifiedDateUtc?: string;
1654
1654
  /** Service tag (4 characters) */
1655
- serviceTag?: string;
1655
+ ServiceTag?: string;
1656
1656
  /** Intro gesture path */
1657
- introGesturePath?: string;
1657
+ IntroGesturePath?: string;
1658
1658
  /** Outro gesture path */
1659
- outroGesturePath?: string;
1659
+ OutroGesturePath?: string;
1660
1660
  /** Stance path */
1661
- stancePath?: string;
1661
+ StancePath?: string;
1662
1662
  /** Emblem configuration */
1663
- emblem?: EmblemConfiguration;
1663
+ Emblem?: EmblemConfiguration;
1664
1664
  /** Backdrop path */
1665
- backdropPath?: string;
1665
+ BackdropPath?: string;
1666
1666
  /** Action pose path */
1667
- actionPosePath?: string;
1667
+ ActionPosePath?: string;
1668
1668
  }
1669
1669
  /**
1670
1670
  * Emblem configuration.
1671
1671
  */
1672
1672
  interface EmblemConfiguration {
1673
1673
  /** Emblem path */
1674
- emblemPath?: string;
1674
+ EmblemPath?: string;
1675
1675
  /** Emblem configuration ID */
1676
- configurationId?: number;
1676
+ ConfigurationId?: number;
1677
1677
  }
1678
1678
  /**
1679
1679
  * Complete player customization data.
1680
1680
  */
1681
1681
  interface CustomizationData {
1682
1682
  /** Spartan body configuration */
1683
- spartanBody?: SpartanBody;
1683
+ SpartanBody?: SpartanBody;
1684
1684
  /** Appearance settings */
1685
- appearance?: Appearance;
1685
+ Appearance?: Appearance;
1686
1686
  /** Armor cores */
1687
- armorCores?: ArmorCoreCollection;
1687
+ ArmorCores?: ArmorCoreCollection;
1688
1688
  /** Weapon cores */
1689
- weaponCores?: WeaponCoreCollection;
1689
+ WeaponCores?: WeaponCoreCollection;
1690
1690
  /** Vehicle cores */
1691
- vehicleCores?: VehicleCoreCollection;
1691
+ VehicleCores?: VehicleCoreCollection;
1692
1692
  /** AI cores */
1693
- aiCores?: AiCoreContainer;
1693
+ AiCores?: AiCoreContainer;
1694
1694
  }
1695
1695
  /**
1696
1696
  * Appearance customization container.
1697
1697
  */
1698
1698
  interface AppearanceCustomization {
1699
1699
  /** Service tag */
1700
- serviceTag?: string;
1700
+ ServiceTag?: string;
1701
1701
  /** Appearance configuration */
1702
- appearance?: Appearance;
1702
+ Appearance?: Appearance;
1703
1703
  }
1704
1704
 
1705
1705
  /**
@@ -1707,95 +1707,95 @@ interface AppearanceCustomization {
1707
1707
  */
1708
1708
  interface Reward {
1709
1709
  /** Event XP awarded */
1710
- eventXp?: number;
1710
+ EventXp?: number;
1711
1711
  /** Operation XP awarded */
1712
- operationXp?: number;
1712
+ OperationXp?: number;
1713
1713
  /** Operation experience */
1714
- operationExperience?: number;
1714
+ OperationExperience?: number;
1715
1715
  /** Soft experience (Spartan Points) */
1716
- softExperience?: number;
1716
+ SoftExperience?: number;
1717
1717
  /** Inventory items rewarded */
1718
- inventoryRewards?: InventoryAmount[];
1718
+ InventoryRewards?: InventoryAmount[];
1719
1719
  /** Inventory items */
1720
- inventoryItems?: unknown[];
1720
+ InventoryItems?: unknown[];
1721
1721
  /** Tracking identifier */
1722
- trackingId?: string;
1722
+ TrackingId?: string;
1723
1723
  /** Currencies awarded */
1724
- currencies?: unknown[];
1724
+ Currencies?: unknown[];
1725
1725
  /** Reward track progression */
1726
- rewardTrackProgression?: RewardTrack[];
1726
+ RewardTrackProgression?: RewardTrack[];
1727
1727
  }
1728
1728
  /**
1729
1729
  * Challenge definition.
1730
1730
  */
1731
1731
  interface Challenge {
1732
1732
  /** Challenge description */
1733
- description?: DisplayString;
1733
+ Description?: DisplayString;
1734
1734
  /** Difficulty level */
1735
- difficulty?: string;
1735
+ Difficulty?: string;
1736
1736
  /** Challenge category */
1737
- category?: string;
1737
+ Category?: string;
1738
1738
  /** Primary reward */
1739
- reward?: Reward;
1739
+ Reward?: Reward;
1740
1740
  /** Secondary reward */
1741
- secondaryReward?: Reward;
1741
+ SecondaryReward?: Reward;
1742
1742
  /** Threshold for success */
1743
- thresholdForSuccess?: number;
1743
+ ThresholdForSuccess?: number;
1744
1744
  /** Challenge title */
1745
- title?: DisplayString;
1745
+ Title?: DisplayString;
1746
1746
  /** Type icon path */
1747
- typeIconPath?: string;
1747
+ TypeIconPath?: string;
1748
1748
  /** Whether this is a user event challenge */
1749
- isUserEvent?: boolean;
1749
+ IsUserEvent?: boolean;
1750
1750
  /** Challenge path */
1751
- path?: string;
1751
+ Path?: string;
1752
1752
  /** Current progress */
1753
- progress?: number;
1753
+ Progress?: number;
1754
1754
  /** Challenge identifier */
1755
- id?: string;
1755
+ Id?: string;
1756
1756
  /** Whether the challenge can be rerolled */
1757
- canReroll?: boolean;
1757
+ CanReroll?: boolean;
1758
1758
  }
1759
1759
  /**
1760
1760
  * Challenge deck (collection of challenges).
1761
1761
  */
1762
1762
  interface ChallengeDeck {
1763
1763
  /** Deck identifier */
1764
- id?: string;
1764
+ Id?: string;
1765
1765
  /** Path to the deck */
1766
- path?: string;
1766
+ Path?: string;
1767
1767
  /** Deck title */
1768
- title?: DisplayString;
1768
+ Title?: DisplayString;
1769
1769
  /** Description */
1770
- description?: DisplayString;
1770
+ Description?: DisplayString;
1771
1771
  /** Challenges in this deck */
1772
- challenges?: Challenge[];
1772
+ Challenges?: Challenge[];
1773
1773
  }
1774
1774
  /**
1775
1775
  * Challenge deck definition from CMS.
1776
1776
  */
1777
1777
  interface ChallengeDeckDefinition {
1778
1778
  /** Deck identifier */
1779
- id?: string;
1779
+ Id?: string;
1780
1780
  /** Deck path */
1781
- path?: string;
1781
+ Path?: string;
1782
1782
  /** Deck title */
1783
- title?: DisplayString;
1783
+ Title?: DisplayString;
1784
1784
  /** Description */
1785
- description?: DisplayString;
1785
+ Description?: DisplayString;
1786
1786
  /** Image path */
1787
- imagePath?: string;
1787
+ ImagePath?: string;
1788
1788
  /** Whether deck is visible */
1789
- isVisible?: boolean;
1789
+ IsVisible?: boolean;
1790
1790
  }
1791
1791
  /**
1792
1792
  * Response for challenge decks query.
1793
1793
  */
1794
1794
  interface ChallengeDecksResponse {
1795
1795
  /** Active challenge decks */
1796
- activeDecks?: ChallengeDeck[];
1796
+ ActiveDecks?: ChallengeDeck[];
1797
1797
  /** Upcoming decks */
1798
- upcomingDecks?: ChallengeDeck[];
1798
+ UpcomingDecks?: ChallengeDeck[];
1799
1799
  }
1800
1800
  /**
1801
1801
  * Reward track progress measurement.
@@ -1836,36 +1836,36 @@ interface RewardTrack {
1836
1836
  */
1837
1837
  interface RewardTrackMetadata {
1838
1838
  /** Track identifier */
1839
- trackId?: string;
1839
+ TrackId?: string;
1840
1840
  /** Track path */
1841
- path?: string;
1841
+ Path?: string;
1842
1842
  /** Display title */
1843
- title?: DisplayString;
1843
+ Title?: DisplayString;
1844
1844
  /** Description */
1845
- description?: DisplayString;
1845
+ Description?: DisplayString;
1846
1846
  /** Image path */
1847
- imagePath?: string;
1847
+ ImagePath?: string;
1848
1848
  /** Track type */
1849
- type?: string;
1849
+ Type?: string;
1850
1850
  /** Start date (ISO 8601) */
1851
- startDate?: string;
1851
+ StartDate?: string;
1852
1852
  /** End date (ISO 8601) */
1853
- endDate?: string;
1853
+ EndDate?: string;
1854
1854
  }
1855
1855
  /**
1856
1856
  * Operation reward track snapshot.
1857
1857
  */
1858
1858
  interface OperationRewardTrackSnapshot {
1859
1859
  /** Track identifier */
1860
- trackId?: string;
1860
+ TrackId?: string;
1861
1861
  /** Current rank */
1862
- rank?: number;
1862
+ Rank?: number;
1863
1863
  /** Current XP */
1864
- xp?: number;
1864
+ Xp?: number;
1865
1865
  /** Total XP earned */
1866
- totalXpEarned?: number;
1866
+ TotalXpEarned?: number;
1867
1867
  /** Premium status */
1868
- isPremium?: boolean;
1868
+ IsPremium?: boolean;
1869
1869
  }
1870
1870
 
1871
1871
  /**
@@ -1873,114 +1873,114 @@ interface OperationRewardTrackSnapshot {
1873
1873
  */
1874
1874
  interface CareerRank {
1875
1875
  /** Rank number */
1876
- rank?: number;
1876
+ Rank?: number;
1877
1877
  /** Title of the rank */
1878
- title?: DisplayString;
1878
+ Title?: DisplayString;
1879
1879
  /** Subtitle */
1880
- subtitle?: DisplayString;
1880
+ Subtitle?: DisplayString;
1881
1881
  /** Large icon path */
1882
- largeIconPath?: string;
1882
+ LargeIconPath?: string;
1883
1883
  /** Small icon path */
1884
- smallIconPath?: string;
1884
+ SmallIconPath?: string;
1885
1885
  /** Adornment icon path */
1886
- adornmentIconPath?: string;
1886
+ AdornmentIconPath?: string;
1887
1887
  /** XP required to reach this rank */
1888
- xpRequired?: number;
1888
+ XpRequired?: number;
1889
1889
  /** Cumulative XP at this rank */
1890
- cumulativeXp?: number;
1890
+ CumulativeXp?: number;
1891
1891
  /** Grade within the rank */
1892
- grade?: number;
1892
+ Grade?: number;
1893
1893
  /** Tier within the rank */
1894
- tier?: number;
1894
+ Tier?: number;
1895
1895
  }
1896
1896
  /**
1897
1897
  * Container for career ranks.
1898
1898
  */
1899
1899
  interface CareerTrackContainer {
1900
1900
  /** Career path identifier */
1901
- careerPathId?: string;
1901
+ CareerPathId?: string;
1902
1902
  /** List of career ranks */
1903
- ranks?: CareerRank[];
1903
+ Ranks?: CareerRank[];
1904
1904
  /** Maximum rank */
1905
- maxRank?: number;
1905
+ MaxRank?: number;
1906
1906
  }
1907
1907
  /**
1908
1908
  * Player's career rank result.
1909
1909
  */
1910
1910
  interface PlayerCareerRankResult {
1911
1911
  /** Player identifier */
1912
- playerId?: string;
1912
+ PlayerId?: string;
1913
1913
  /** Current career rank */
1914
- currentRank?: number;
1914
+ CurrentRank?: number;
1915
1915
  /** Current XP */
1916
- currentXp?: number;
1916
+ CurrentXp?: number;
1917
1917
  /** XP to next rank */
1918
- xpToNextRank?: number;
1918
+ XpToNextRank?: number;
1919
1919
  /** Result code */
1920
- resultCode?: number;
1920
+ ResultCode?: number;
1921
1921
  }
1922
1922
  /**
1923
1923
  * Container for player career rank results.
1924
1924
  */
1925
1925
  interface RewardTrackResultContainer {
1926
1926
  /** Career path identifier */
1927
- careerPathId?: string;
1927
+ CareerPathId?: string;
1928
1928
  /** Results for each player */
1929
- value?: PlayerCareerRankResult[];
1929
+ Value?: PlayerCareerRankResult[];
1930
1930
  }
1931
1931
  /**
1932
1932
  * Match progression (post-game rewards).
1933
1933
  */
1934
1934
  interface MatchProgression {
1935
1935
  /** Player identifier */
1936
- playerId?: string;
1936
+ PlayerId?: string;
1937
1937
  /** Match identifier */
1938
- matchId?: string;
1938
+ MatchId?: string;
1939
1939
  /** Challenges progressed */
1940
- challengeProgress?: ChallengeProgress[];
1940
+ ChallengeProgress?: ChallengeProgress[];
1941
1941
  /** XP earned breakdown */
1942
- xpBreakdown?: XpBreakdown;
1942
+ XpBreakdown?: XpBreakdown;
1943
1943
  /** Career rank progression */
1944
- careerRankProgress?: CareerRankProgress;
1944
+ CareerRankProgress?: CareerRankProgress;
1945
1945
  }
1946
1946
  /**
1947
1947
  * Challenge progress from a match.
1948
1948
  */
1949
1949
  interface ChallengeProgress {
1950
1950
  /** Challenge identifier */
1951
- challengeId?: string;
1951
+ ChallengeId?: string;
1952
1952
  /** Progress made */
1953
- progress?: number;
1953
+ Progress?: number;
1954
1954
  /** Whether challenge was completed */
1955
- completed?: boolean;
1955
+ Completed?: boolean;
1956
1956
  }
1957
1957
  /**
1958
1958
  * XP breakdown from a match.
1959
1959
  */
1960
1960
  interface XpBreakdown {
1961
1961
  /** Base XP from match */
1962
- matchXp?: number;
1962
+ MatchXp?: number;
1963
1963
  /** XP from medals */
1964
- medalXp?: number;
1964
+ MedalXp?: number;
1965
1965
  /** XP from challenges */
1966
- challengeXp?: number;
1966
+ ChallengeXp?: number;
1967
1967
  /** Boost XP */
1968
- boostXp?: number;
1968
+ BoostXp?: number;
1969
1969
  /** Total XP */
1970
- totalXp?: number;
1970
+ TotalXp?: number;
1971
1971
  }
1972
1972
  /**
1973
1973
  * Career rank progress from a match.
1974
1974
  */
1975
1975
  interface CareerRankProgress {
1976
1976
  /** Rank before match */
1977
- previousRank?: number;
1977
+ PreviousRank?: number;
1978
1978
  /** Rank after match */
1979
- currentRank?: number;
1979
+ CurrentRank?: number;
1980
1980
  /** XP earned */
1981
- xpEarned?: number;
1981
+ XpEarned?: number;
1982
1982
  /** Whether player ranked up */
1983
- rankedUp?: boolean;
1983
+ RankedUp?: boolean;
1984
1984
  }
1985
1985
 
1986
1986
  /**
@@ -2687,9 +2687,6 @@ declare class LobbyModule extends ModuleBase {
2687
2687
  *
2688
2688
  * @example
2689
2689
  * ```typescript
2690
- * // Get clearance level
2691
- * const clearance = await client.settings.getClearanceLevel();
2692
- *
2693
2690
  * // Get flighted feature flags
2694
2691
  * const flags = await client.settings.getFlightedFeatureFlags('flight-id');
2695
2692
  *
@@ -2699,14 +2696,6 @@ declare class LobbyModule extends ModuleBase {
2699
2696
  */
2700
2697
  declare class SettingsModule extends ModuleBase {
2701
2698
  constructor(client: ClientBase);
2702
- /**
2703
- * Get the clearance level for the current player.
2704
- *
2705
- * Returns feature flags and flight IDs the player has access to.
2706
- *
2707
- * @returns Flighted feature flags
2708
- */
2709
- getClearanceLevel(): Promise<HaloApiResult<FlightedFeatureFlags>>;
2710
2699
  /**
2711
2700
  * Get a list of features enabled for a given flight.
2712
2701
  *
@@ -2770,73 +2759,73 @@ declare class SettingsModule extends ModuleBase {
2770
2759
  */
2771
2760
  interface Csr {
2772
2761
  /** Current CSR value */
2773
- value?: number;
2762
+ Value?: number;
2774
2763
  /** Measurement matches remaining before placement */
2775
- measurementMatchesRemaining?: number;
2764
+ MeasurementMatchesRemaining?: number;
2776
2765
  /** Current tier name (e.g., "Diamond", "Onyx") */
2777
- tier?: string;
2766
+ Tier?: string;
2778
2767
  /** CSR value at start of current tier */
2779
- tierStart?: number;
2768
+ TierStart?: number;
2780
2769
  /** Current sub-tier within the tier (1-6) */
2781
- subTier?: number;
2770
+ SubTier?: number;
2782
2771
  /** Next tier name */
2783
- nextTier?: string;
2772
+ NextTier?: string;
2784
2773
  /** CSR value at start of next tier */
2785
- nextTierStart?: number;
2774
+ NextTierStart?: number;
2786
2775
  /** Next sub-tier */
2787
- nextSubTier?: number;
2776
+ NextSubTier?: number;
2788
2777
  /** Initial number of placement matches required */
2789
- initialMeasurementMatches?: number;
2778
+ InitialMeasurementMatches?: number;
2790
2779
  /** Initial demotion protection matches */
2791
- initialDemotionProtectionMatches?: number;
2780
+ InitialDemotionProtectionMatches?: number;
2792
2781
  /** Remaining demotion protection matches */
2793
- demotionProtectionMatchesRemaining?: number;
2782
+ DemotionProtectionMatchesRemaining?: number;
2794
2783
  }
2795
2784
  /**
2796
2785
  * Match skill information for a single player.
2797
2786
  */
2798
2787
  interface PlayerMatchSkill {
2799
2788
  /** Player identifier */
2800
- id?: string;
2789
+ Id?: string;
2801
2790
  /** CSR before the match */
2802
- preMatchCsr?: Csr;
2791
+ PreMatchCsr?: Csr;
2803
2792
  /** CSR after the match */
2804
- postMatchCsr?: Csr;
2793
+ PostMatchCsr?: Csr;
2805
2794
  /** Expected CSR at ranking */
2806
- expectedRankCsr?: Csr;
2795
+ ExpectedRankCsr?: Csr;
2807
2796
  /** Result code */
2808
- resultCode?: number;
2797
+ ResultCode?: number;
2809
2798
  }
2810
2799
  /**
2811
2800
  * Container for match skill results.
2812
2801
  */
2813
2802
  interface MatchSkillInfo {
2814
2803
  /** Match identifier */
2815
- matchId?: string;
2804
+ MatchId?: string;
2816
2805
  /** Skill results for each player */
2817
- value?: PlayerMatchSkill[];
2806
+ Value?: PlayerMatchSkill[];
2818
2807
  }
2819
2808
  /**
2820
2809
  * Playlist CSR result for a single player.
2821
2810
  */
2822
2811
  interface PlayerPlaylistCsr {
2823
2812
  /** Player identifier */
2824
- id?: string;
2813
+ Id?: string;
2825
2814
  /** Current CSR for this playlist */
2826
- csr?: Csr;
2815
+ Csr?: Csr;
2827
2816
  /** Result code */
2828
- resultCode?: number;
2817
+ ResultCode?: number;
2829
2818
  }
2830
2819
  /**
2831
2820
  * Container for playlist CSR results.
2832
2821
  */
2833
2822
  interface PlaylistCsrResultContainer {
2834
2823
  /** Playlist identifier */
2835
- playlistId?: string;
2824
+ PlaylistId?: string;
2836
2825
  /** Season identifier (if applicable) */
2837
- seasonId?: string;
2826
+ SeasonId?: string;
2838
2827
  /** CSR results for each player */
2839
- value?: PlayerPlaylistCsr[];
2828
+ Value?: PlayerPlaylistCsr[];
2840
2829
  }
2841
2830
 
2842
2831
  /**
@@ -2919,38 +2908,38 @@ type LifecycleMode = (typeof LifecycleMode)[keyof typeof LifecycleMode];
2919
2908
  */
2920
2909
  interface GenericAsset {
2921
2910
  /** Unique asset identifier */
2922
- assetId?: string;
2911
+ AssetId?: string;
2923
2912
  /** Version identifier */
2924
- versionId?: string;
2913
+ VersionId?: string;
2925
2914
  /** Combined asset version identifier */
2926
- assetVersionId?: string;
2915
+ AssetVersionId?: string;
2927
2916
  /** Display name */
2928
- publicName?: string;
2917
+ PublicName?: string;
2929
2918
  }
2930
2919
  /**
2931
2920
  * UGC game variant information in match context.
2932
2921
  */
2933
2922
  interface UgcGameVariant {
2934
2923
  /** Asset identifier */
2935
- assetId?: string;
2924
+ AssetId?: string;
2936
2925
  /** Version identifier */
2937
- versionId?: string;
2926
+ VersionId?: string;
2938
2927
  /** Display name */
2939
- publicName?: string;
2928
+ PublicName?: string;
2940
2929
  }
2941
2930
  /**
2942
2931
  * Playlist experience tracking.
2943
2932
  */
2944
2933
  interface PlaylistExperience {
2945
2934
  /** Experience value */
2946
- value?: number;
2935
+ Value?: number;
2947
2936
  }
2948
2937
  /**
2949
2938
  * Gameplay interaction type.
2950
2939
  */
2951
2940
  interface GameplayInteraction {
2952
2941
  /** Interaction type identifier */
2953
- value?: number;
2942
+ Value?: number;
2954
2943
  }
2955
2944
  /**
2956
2945
  * General information about a match.
@@ -2959,39 +2948,39 @@ interface GameplayInteraction {
2959
2948
  */
2960
2949
  interface MatchInfo {
2961
2950
  /** Match start time (ISO 8601) */
2962
- startTime?: string;
2951
+ StartTime?: string;
2963
2952
  /** Match end time (ISO 8601) */
2964
- endTime?: string;
2953
+ EndTime?: string;
2965
2954
  /** Match duration as ISO 8601 duration string (e.g., "PT10M30S") */
2966
- duration?: string;
2955
+ Duration?: string;
2967
2956
  /** Lifecycle mode (matchmade, custom, local) */
2968
- lifecycleMode?: LifecycleMode;
2957
+ LifecycleMode?: LifecycleMode;
2969
2958
  /** Game variant category */
2970
- gameVariantCategory?: number;
2959
+ GameVariantCategory?: number;
2971
2960
  /** Map/level identifier */
2972
- levelId?: string;
2961
+ LevelId?: string;
2973
2962
  /** Map variant information */
2974
- mapVariant?: GenericAsset;
2963
+ MapVariant?: GenericAsset;
2975
2964
  /** UGC game variant (for custom games) */
2976
- ugcGameVariant?: UgcGameVariant;
2965
+ UgcGameVariant?: UgcGameVariant;
2977
2966
  /** Clearance ID used for the match */
2978
- clearanceId?: string;
2967
+ ClearanceId?: string;
2979
2968
  /** Playlist information */
2980
- playlist?: GenericAsset;
2969
+ Playlist?: GenericAsset;
2981
2970
  /** Playlist experience info */
2982
- playlistExperience?: PlaylistExperience;
2971
+ PlaylistExperience?: PlaylistExperience;
2983
2972
  /** Map-mode pair info */
2984
- playlistMapModePair?: GenericAsset;
2973
+ PlaylistMapModePair?: GenericAsset;
2985
2974
  /** Season identifier */
2986
- seasonId?: string;
2975
+ SeasonId?: string;
2987
2976
  /** Playable duration */
2988
- playableDuration?: string;
2977
+ PlayableDuration?: string;
2989
2978
  /** Whether teams were enabled */
2990
- teamsEnabled?: boolean;
2979
+ TeamsEnabled?: boolean;
2991
2980
  /** Whether team scoring was enabled */
2992
- teamScoringEnabled?: boolean;
2981
+ TeamScoringEnabled?: boolean;
2993
2982
  /** Gameplay interaction type */
2994
- gameplayInteraction?: GameplayInteraction;
2983
+ GameplayInteraction?: GameplayInteraction;
2995
2984
  }
2996
2985
 
2997
2986
  /**
@@ -2999,305 +2988,305 @@ interface MatchInfo {
2999
2988
  */
3000
2989
  interface CoreStats {
3001
2990
  /** Total score earned */
3002
- score?: number;
2991
+ Score?: number;
3003
2992
  /** Personal score (individual contribution) */
3004
- personalScore?: number;
2993
+ PersonalScore?: number;
3005
2994
  /** Number of rounds won */
3006
- roundsWon?: number;
2995
+ RoundsWon?: number;
3007
2996
  /** Number of rounds lost */
3008
- roundsLost?: number;
2997
+ RoundsLost?: number;
3009
2998
  /** Number of rounds tied */
3010
- roundsTied?: number;
2999
+ RoundsTied?: number;
3011
3000
  /** Total kills */
3012
- kills?: number;
3001
+ Kills?: number;
3013
3002
  /** Total deaths */
3014
- deaths?: number;
3003
+ Deaths?: number;
3015
3004
  /** Total assists */
3016
- assists?: number;
3005
+ Assists?: number;
3017
3006
  /** Kill/Death/Assist ratio */
3018
- kda?: number;
3007
+ Kda?: number;
3019
3008
  /** Total suicides */
3020
- suicides?: number;
3009
+ Suicides?: number;
3021
3010
  /** Total betrayals (team kills) */
3022
- betrayals?: number;
3011
+ Betrayals?: number;
3023
3012
  /** Average life duration in seconds */
3024
- averageLifeDuration?: string;
3013
+ AverageLifeDuration?: string;
3025
3014
  /** Grenade kills */
3026
- grenadeKills?: number;
3015
+ GrenadeKills?: number;
3027
3016
  /** Headshot kills */
3028
- headshotKills?: number;
3017
+ HeadshotKills?: number;
3029
3018
  /** Melee kills */
3030
- meleeKills?: number;
3019
+ MeleeKills?: number;
3031
3020
  /** Power weapon kills */
3032
- powerWeaponKills?: number;
3021
+ PowerWeaponKills?: number;
3033
3022
  /** Shots fired */
3034
- shotsFired?: number;
3023
+ ShotsFired?: number;
3035
3024
  /** Shots hit */
3036
- shotsHit?: number;
3025
+ ShotsHit?: number;
3037
3026
  /** Accuracy percentage */
3038
- accuracy?: number;
3027
+ Accuracy?: number;
3039
3028
  /** Damage dealt */
3040
- damageDealt?: number;
3029
+ DamageDealt?: number;
3041
3030
  /** Damage taken */
3042
- damageTaken?: number;
3031
+ DamageTaken?: number;
3043
3032
  /** Callout assists */
3044
- calloutAssists?: number;
3033
+ CalloutAssists?: number;
3045
3034
  /** Vehicle destroys */
3046
- vehicleDestroys?: number;
3035
+ VehicleDestroys?: number;
3047
3036
  /** Driver assists */
3048
- driverAssists?: number;
3037
+ DriverAssists?: number;
3049
3038
  /** Hijacks */
3050
- hijacks?: number;
3039
+ Hijacks?: number;
3051
3040
  /** EMP assists */
3052
- empAssists?: number;
3041
+ EmpAssists?: number;
3053
3042
  /** Maximum killing spree */
3054
- maxKillingSpree?: number;
3043
+ MaxKillingSpree?: number;
3055
3044
  /** Medals earned */
3056
- medals?: MedalCount[];
3045
+ Medals?: MedalCount[];
3057
3046
  /** Personal scores breakdown */
3058
- personalScores?: PersonalScoreEntry[];
3047
+ PersonalScores?: PersonalScoreEntry[];
3059
3048
  /** Deprecated Spartan Rank */
3060
- deprecatedDamageDealt?: number;
3049
+ DeprecatedDamageDealt?: number;
3061
3050
  /** Deprecated Spartan Rank */
3062
- deprecatedDamageTaken?: number;
3051
+ DeprecatedDamageTaken?: number;
3063
3052
  /** Spawns */
3064
- spawns?: number;
3053
+ Spawns?: number;
3065
3054
  /** Objectives completed */
3066
- objectivesCompleted?: number;
3055
+ ObjectivesCompleted?: number;
3067
3056
  }
3068
3057
  /**
3069
3058
  * Medal count entry.
3070
3059
  */
3071
3060
  interface MedalCount {
3072
3061
  /** Medal name identifier */
3073
- nameId?: number;
3062
+ NameId?: number;
3074
3063
  /** Number of times earned */
3075
- count?: number;
3064
+ Count?: number;
3076
3065
  /** Total personal score from this medal */
3077
- totalPersonalScoreAwarded?: number;
3066
+ TotalPersonalScoreAwarded?: number;
3078
3067
  }
3079
3068
  /**
3080
3069
  * Personal score breakdown entry.
3081
3070
  */
3082
3071
  interface PersonalScoreEntry {
3083
3072
  /** Score type name identifier */
3084
- nameId?: number;
3073
+ NameId?: number;
3085
3074
  /** Number of times earned */
3086
- count?: number;
3075
+ Count?: number;
3087
3076
  /** Total score from this type */
3088
- totalPersonalScoreAwarded?: number;
3077
+ TotalPersonalScoreAwarded?: number;
3089
3078
  }
3090
3079
  /**
3091
3080
  * Bomb game mode stats (Assault).
3092
3081
  */
3093
3082
  interface BombStats {
3094
3083
  /** Bombs planted */
3095
- bombsPlanted?: number;
3084
+ BombsPlanted?: number;
3096
3085
  /** Bombs defused */
3097
- bombsDefused?: number;
3086
+ BombsDefused?: number;
3098
3087
  /** Bomb carriers killed */
3099
- bombCarriersKilled?: number;
3088
+ BombCarriersKilled?: number;
3100
3089
  /** Time as bomb carrier */
3101
- timeAsBombCarrier?: string;
3090
+ TimeAsBombCarrier?: string;
3102
3091
  }
3103
3092
  /**
3104
3093
  * Capture the Flag game mode stats.
3105
3094
  */
3106
3095
  interface CaptureTheFlagStats {
3107
3096
  /** Flag captures */
3108
- flagCaptures?: number;
3097
+ FlagCaptures?: number;
3109
3098
  /** Flag capture assists */
3110
- flagCaptureAssists?: number;
3099
+ FlagCaptureAssists?: number;
3111
3100
  /** Flag carriers killed */
3112
- flagCarriersKilled?: number;
3101
+ FlagCarriersKilled?: number;
3113
3102
  /** Flag grabs */
3114
- flagGrabs?: number;
3103
+ FlagGrabs?: number;
3115
3104
  /** Flags returned */
3116
- flagsReturned?: number;
3105
+ FlagsReturned?: number;
3117
3106
  /** Flags stolen */
3118
- flagsStolen?: number;
3107
+ FlagsStolen?: number;
3119
3108
  /** Time as flag carrier */
3120
- timeAsFlagCarrier?: string;
3109
+ TimeAsFlagCarrier?: string;
3121
3110
  /** Kills as flag carrier */
3122
- killsAsFlagCarrier?: number;
3111
+ KillsAsFlagCarrier?: number;
3123
3112
  }
3124
3113
  /**
3125
3114
  * Elimination game mode stats.
3126
3115
  */
3127
3116
  interface EliminationStats {
3128
3117
  /** Allies revived */
3129
- alliesRevived?: number;
3118
+ AlliesRevived?: number;
3130
3119
  /** Revives denied */
3131
- revivesDenied?: number;
3120
+ RevivesDenied?: number;
3132
3121
  /** Eliminations */
3133
- eliminations?: number;
3122
+ Eliminations?: number;
3134
3123
  /** Elimination assists */
3135
- eliminationAssists?: number;
3124
+ EliminationAssists?: number;
3136
3125
  /** Times revived */
3137
- timesRevived?: number;
3126
+ TimesRevived?: number;
3138
3127
  /** Rounds survived */
3139
- roundsSurvived?: number;
3128
+ RoundsSurvived?: number;
3140
3129
  /** Executions */
3141
- executions?: number;
3130
+ Executions?: number;
3142
3131
  /** Last spartans standing */
3143
- lastSpartansStanding?: number;
3132
+ LastSpartansStanding?: number;
3144
3133
  }
3145
3134
  /**
3146
3135
  * Extraction game mode stats.
3147
3136
  */
3148
3137
  interface ExtractionStats {
3149
3138
  /** Extractions initiated */
3150
- extractionInitiated?: number;
3139
+ ExtractionInitiated?: number;
3151
3140
  /** Extractions completed */
3152
- extractionCompleted?: number;
3141
+ ExtractionCompleted?: number;
3153
3142
  /** Extractions converted */
3154
- extractionConverted?: number;
3143
+ ExtractionConverted?: number;
3155
3144
  /** Extractions denied */
3156
- extractionDenied?: number;
3145
+ ExtractionDenied?: number;
3157
3146
  /** Successful extractions */
3158
- successfulExtractions?: number;
3147
+ SuccessfulExtractions?: number;
3159
3148
  /** Seconds converting */
3160
- secondsConverting?: number;
3149
+ SecondsConverting?: number;
3161
3150
  }
3162
3151
  /**
3163
3152
  * Infection game mode stats.
3164
3153
  */
3165
3154
  interface InfectionStats {
3166
3155
  /** Infected killed */
3167
- infectedKilled?: number;
3156
+ InfectedKilled?: number;
3168
3157
  /** Spartans infected */
3169
- spartansInfected?: number;
3158
+ SpartansInfected?: number;
3170
3159
  /** Spartans infected as last spartan */
3171
- spartansInfectedAsLastSpartan?: number;
3160
+ SpartansInfectedAsLastSpartan?: number;
3172
3161
  /** Infected killed as last spartan */
3173
- infectedKilledAsLastSpartan?: number;
3162
+ InfectedKilledAsLastSpartan?: number;
3174
3163
  /** Time as last spartan */
3175
- timeAsLastSpartan?: string;
3164
+ TimeAsLastSpartan?: string;
3176
3165
  /** Time as survivor */
3177
- timeAsSurvivor?: string;
3166
+ TimeAsSurvivor?: string;
3178
3167
  /** Rounds as survivor */
3179
- roundsAsSurvivor?: number;
3168
+ RoundsAsSurvivor?: number;
3180
3169
  /** Rounds as infected */
3181
- roundsAsInfected?: number;
3170
+ RoundsAsInfected?: number;
3182
3171
  /** Rounds survived as spartan */
3183
- roundsSurvivedAsSpartan?: number;
3172
+ RoundsSurvivedAsSpartan?: number;
3184
3173
  /** Rounds survived as last spartan */
3185
- roundsSurvivedAsLastSpartan?: number;
3174
+ RoundsSurvivedAsLastSpartan?: number;
3186
3175
  /** Kills as last spartan */
3187
- killsAsLastSpartan?: number;
3176
+ KillsAsLastSpartan?: number;
3188
3177
  /** Alpha infections */
3189
- alphaInfections?: number;
3178
+ AlphaInfections?: number;
3190
3179
  }
3191
3180
  /**
3192
3181
  * Oddball game mode stats.
3193
3182
  */
3194
3183
  interface OddballStats {
3195
3184
  /** Time with ball */
3196
- timeWithBall?: string;
3185
+ TimeWithBall?: string;
3197
3186
  /** Ball carriers killed */
3198
- ballCarriersKilled?: number;
3187
+ BallCarriersKilled?: number;
3199
3188
  /** Kills as ball carrier */
3200
- killsAsBallCarrier?: number;
3189
+ KillsAsBallCarrier?: number;
3201
3190
  /** Ball grabs */
3202
- ballGrabs?: number;
3191
+ BallGrabs?: number;
3203
3192
  /** Longest time with ball */
3204
- longestTimeWithBall?: string;
3193
+ LongestTimeWithBall?: string;
3205
3194
  }
3206
3195
  /**
3207
3196
  * Zones game mode stats (Land Grab, Strongholds, etc.).
3208
3197
  */
3209
3198
  interface ZonesStats {
3210
3199
  /** Zones captured */
3211
- zoneCaptures?: number;
3200
+ ZoneCaptures?: number;
3212
3201
  /** Zone defensive kills */
3213
- zoneDefensiveKills?: number;
3202
+ ZoneDefensiveKills?: number;
3214
3203
  /** Zone offensive kills */
3215
- zoneOffensiveKills?: number;
3204
+ ZoneOffensiveKills?: number;
3216
3205
  /** Zone securing kills */
3217
- zoneSecuringKills?: number;
3206
+ ZoneSecuringKills?: number;
3218
3207
  /** Zone occupation time */
3219
- zoneOccupationTime?: string;
3208
+ ZoneOccupationTime?: string;
3220
3209
  /** Zones scored */
3221
- zonesScored?: number;
3210
+ ZonesScored?: number;
3222
3211
  /** Zone scoring ticks */
3223
- zoneScoringTicks?: number;
3212
+ ZoneScoringTicks?: number;
3224
3213
  }
3225
3214
  /**
3226
3215
  * Stockpile game mode stats.
3227
3216
  */
3228
3217
  interface StockpileStats {
3229
3218
  /** Power seeds deposited */
3230
- powerSeedsDeposited?: number;
3219
+ PowerSeedsDeposited?: number;
3231
3220
  /** Power seeds stolen */
3232
- powerSeedsStolen?: number;
3221
+ PowerSeedsStolen?: number;
3233
3222
  /** Kill as power seed carrier */
3234
- killsAsPowerSeedCarrier?: number;
3223
+ KillsAsPowerSeedCarrier?: number;
3235
3224
  /** Power seed carriers killed */
3236
- powerSeedCarriersKilled?: number;
3225
+ PowerSeedCarriersKilled?: number;
3237
3226
  /** Time as power seed carrier */
3238
- timeAsPowerSeedCarrier?: string;
3227
+ TimeAsPowerSeedCarrier?: string;
3239
3228
  }
3240
3229
  /**
3241
3230
  * VIP game mode stats.
3242
3231
  */
3243
3232
  interface VipStats {
3244
3233
  /** VIP kills */
3245
- vipKills?: number;
3234
+ VipKills?: number;
3246
3235
  /** Kills as VIP */
3247
- killsAsVip?: number;
3236
+ KillsAsVip?: number;
3248
3237
  /** Time as VIP */
3249
- timeAsVip?: string;
3238
+ TimeAsVip?: string;
3250
3239
  }
3251
3240
  /**
3252
3241
  * PvE (Firefight) stats.
3253
3242
  */
3254
3243
  interface PveStats {
3255
3244
  /** Boss kills */
3256
- bossKills?: number;
3245
+ BossKills?: number;
3257
3246
  /** Emplacement kills */
3258
- emplacementKills?: number;
3247
+ EmplacementKills?: number;
3259
3248
  /** Enemy vehicle kills */
3260
- enemyVehicleKills?: number;
3249
+ EnemyVehicleKills?: number;
3261
3250
  /** Wave survived */
3262
- wavesSurvived?: number;
3251
+ WavesSurvived?: number;
3263
3252
  /** Last spartan standing */
3264
- lastSpartanStanding?: boolean;
3253
+ LastSpartanStanding?: boolean;
3265
3254
  }
3266
3255
  /**
3267
3256
  * PvP stats (used in some game modes).
3268
3257
  */
3269
3258
  interface PvpStats {
3270
3259
  /** Spartan kills */
3271
- spartanKills?: number;
3260
+ SpartanKills?: number;
3272
3261
  }
3273
3262
  /**
3274
3263
  * Container for all mode-specific stats.
3275
3264
  */
3276
3265
  interface Stats {
3277
3266
  /** Core stats (applies to all modes) */
3278
- coreStats?: CoreStats;
3267
+ CoreStats?: CoreStats;
3279
3268
  /** Bomb stats */
3280
- bombStats?: BombStats;
3269
+ BombStats?: BombStats;
3281
3270
  /** CTF stats */
3282
- captureTheFlagStats?: CaptureTheFlagStats;
3271
+ CaptureTheFlagStats?: CaptureTheFlagStats;
3283
3272
  /** Elimination stats */
3284
- eliminationStats?: EliminationStats;
3273
+ EliminationStats?: EliminationStats;
3285
3274
  /** Extraction stats */
3286
- extractionStats?: ExtractionStats;
3275
+ ExtractionStats?: ExtractionStats;
3287
3276
  /** Infection stats */
3288
- infectionStats?: InfectionStats;
3277
+ InfectionStats?: InfectionStats;
3289
3278
  /** Oddball stats */
3290
- oddballStats?: OddballStats;
3279
+ OddballStats?: OddballStats;
3291
3280
  /** Zones stats */
3292
- zonesStats?: ZonesStats;
3281
+ ZonesStats?: ZonesStats;
3293
3282
  /** Stockpile stats */
3294
- stockpileStats?: StockpileStats;
3283
+ StockpileStats?: StockpileStats;
3295
3284
  /** VIP stats */
3296
- vipStats?: VipStats;
3285
+ VipStats?: VipStats;
3297
3286
  /** PvE stats */
3298
- pveStats?: PveStats;
3287
+ PveStats?: PveStats;
3299
3288
  /** PvP stats */
3300
- pvpStats?: PvpStats;
3289
+ PvpStats?: PvpStats;
3301
3290
  }
3302
3291
 
3303
3292
  /**
@@ -3337,77 +3326,77 @@ type Outcome = (typeof Outcome)[keyof typeof Outcome];
3337
3326
  */
3338
3327
  interface BotAttributes {
3339
3328
  /** Bot difficulty */
3340
- difficulty?: number;
3329
+ Difficulty?: number;
3341
3330
  /** Bot skill level */
3342
- skillLevel?: number;
3331
+ SkillLevel?: number;
3343
3332
  }
3344
3333
  /**
3345
3334
  * Participation information for a player.
3346
3335
  */
3347
3336
  interface ParticipationInfo {
3348
3337
  /** Time played (ISO 8601 duration) */
3349
- timePlayed?: string;
3338
+ TimePlayed?: string;
3350
3339
  /** Whether player was present at start */
3351
- presentAtStart?: boolean;
3340
+ PresentAtStart?: boolean;
3352
3341
  /** Whether player was present at end */
3353
- presentAtEnd?: boolean;
3342
+ PresentAtEnd?: boolean;
3354
3343
  /** Whether player joined mid-match */
3355
- joinedInProgress?: boolean;
3344
+ JoinedInProgress?: boolean;
3356
3345
  /** When player joined (ISO 8601) */
3357
- joinedAt?: string;
3346
+ JoinedAt?: string;
3358
3347
  /** When player left (ISO 8601, if applicable) */
3359
- leftAt?: string;
3348
+ LeftAt?: string;
3360
3349
  /** First joined time (ISO 8601) */
3361
- firstJoinedTime?: string;
3350
+ FirstJoinedTime?: string;
3362
3351
  /** Last joined time (ISO 8601) */
3363
- lastJoinedTime?: string;
3352
+ LastJoinedTime?: string;
3364
3353
  /** Whether player left before completion */
3365
- leftInProgress?: boolean;
3354
+ LeftInProgress?: boolean;
3366
3355
  /** Confirmed participation */
3367
- confirmedParticipation?: boolean;
3356
+ ConfirmedParticipation?: boolean;
3368
3357
  }
3369
3358
  /**
3370
3359
  * Player's stats for a specific team.
3371
3360
  */
3372
3361
  interface PlayerTeamStat {
3373
3362
  /** Team identifier */
3374
- teamId?: number;
3363
+ TeamId?: number;
3375
3364
  /** Stats for this team */
3376
- stats?: Stats;
3365
+ Stats?: Stats;
3377
3366
  }
3378
3367
  /**
3379
3368
  * Player information from a match.
3380
3369
  */
3381
3370
  interface Player {
3382
3371
  /** Player identifier (format: "xuid(XUID)") */
3383
- playerId?: string;
3372
+ PlayerId?: string;
3384
3373
  /** Type of player (Human or Bot) */
3385
- playerType?: PlayerType;
3374
+ PlayerType?: PlayerType;
3386
3375
  /** Bot attributes (only if playerType is Bot) */
3387
- botAttributes?: BotAttributes;
3376
+ BotAttributes?: BotAttributes;
3388
3377
  /** Last team the player was on */
3389
- lastTeamId?: number;
3378
+ LastTeamId?: number;
3390
3379
  /** Match outcome for this player */
3391
- outcome?: Outcome;
3380
+ Outcome?: Outcome;
3392
3381
  /** Final rank/placement */
3393
- rank?: number;
3382
+ Rank?: number;
3394
3383
  /** Participation details */
3395
- participationInfo?: ParticipationInfo;
3384
+ ParticipationInfo?: ParticipationInfo;
3396
3385
  /** Stats broken down by team */
3397
- playerTeamStats?: PlayerTeamStat[];
3386
+ PlayerTeamStats?: PlayerTeamStat[];
3398
3387
  }
3399
3388
  /**
3400
3389
  * Team information from a match.
3401
3390
  */
3402
3391
  interface Team {
3403
3392
  /** Team identifier */
3404
- teamId?: number;
3393
+ TeamId?: number;
3405
3394
  /** Match outcome for this team */
3406
- outcome?: number;
3395
+ Outcome?: number;
3407
3396
  /** Final rank/placement */
3408
- rank?: number;
3397
+ Rank?: number;
3409
3398
  /** Team stats */
3410
- stats?: Stats;
3399
+ Stats?: Stats;
3411
3400
  }
3412
3401
 
3413
3402
  /**
@@ -3418,13 +3407,13 @@ interface Team {
3418
3407
  */
3419
3408
  interface MatchStats {
3420
3409
  /** Unique match identifier */
3421
- matchId?: string;
3410
+ MatchId?: string;
3422
3411
  /** General match information */
3423
- matchInfo?: MatchInfo;
3412
+ MatchInfo?: MatchInfo;
3424
3413
  /** List of teams in the match */
3425
- teams?: Team[];
3414
+ Teams?: Team[];
3426
3415
  /** List of players in the match */
3427
- players?: Player[];
3416
+ Players?: Player[];
3428
3417
  }
3429
3418
 
3430
3419
  /**
@@ -3432,56 +3421,56 @@ interface MatchStats {
3432
3421
  */
3433
3422
  interface MatchLinks {
3434
3423
  /** Link to next page of results */
3435
- next?: string;
3424
+ Next?: string;
3436
3425
  /** Link to previous page of results */
3437
- prev?: string;
3426
+ Prev?: string;
3438
3427
  }
3439
3428
  /**
3440
3429
  * Individual match record in match history.
3441
3430
  */
3442
3431
  interface PlayerMatchHistoryRecord {
3443
3432
  /** Unique match identifier */
3444
- matchId?: string;
3433
+ MatchId?: string;
3445
3434
  /** Match information */
3446
- matchInfo?: MatchInfo;
3435
+ MatchInfo?: MatchInfo;
3447
3436
  /** Last team the player was on */
3448
- lastTeamId?: number;
3437
+ LastTeamId?: number;
3449
3438
  /** Match outcome for this player */
3450
- outcome?: number;
3439
+ Outcome?: number;
3451
3440
  /** Final rank/placement */
3452
- rank?: number;
3441
+ Rank?: number;
3453
3442
  /** Whether player was present at end */
3454
- presentAtEnd?: boolean;
3443
+ PresentAtEnd?: boolean;
3455
3444
  /** Player-specific data for this match */
3456
- player?: Player;
3445
+ Player?: Player;
3457
3446
  }
3458
3447
  /**
3459
3448
  * Response container for match history queries.
3460
3449
  */
3461
3450
  interface MatchHistoryResponse {
3462
3451
  /** Starting index of results */
3463
- start?: number;
3452
+ Start?: number;
3464
3453
  /** Number of results requested */
3465
- count?: number;
3454
+ Count?: number;
3466
3455
  /** Number of results returned */
3467
- resultCount?: number;
3456
+ ResultCount?: number;
3468
3457
  /** List of match records */
3469
- results?: PlayerMatchHistoryRecord[];
3458
+ Results?: PlayerMatchHistoryRecord[];
3470
3459
  /** Pagination links */
3471
- links?: MatchLinks;
3460
+ Links?: MatchLinks;
3472
3461
  }
3473
3462
  /**
3474
3463
  * Player match count summary.
3475
3464
  */
3476
3465
  interface PlayerMatchCount {
3477
3466
  /** Player identifier */
3478
- playerId?: string;
3467
+ PlayerId?: string;
3479
3468
  /** Total custom game count */
3480
- customMatchesPlayedCount?: number;
3469
+ CustomMatchesPlayedCount?: number;
3481
3470
  /** Total matchmade games count */
3482
- matchmadeMatchesPlayedCount?: number;
3471
+ MatchmadeMatchesPlayedCount?: number;
3483
3472
  /** Total local games count */
3484
- localMatchesPlayedCount?: number;
3473
+ LocalMatchesPlayedCount?: number;
3485
3474
  }
3486
3475
 
3487
3476
  /**
@@ -3489,71 +3478,71 @@ interface PlayerMatchCount {
3489
3478
  */
3490
3479
  interface ServiceRecordSubqueries {
3491
3480
  /** Seasonal breakdown of stats */
3492
- seasons?: SeasonServiceRecord[];
3481
+ Seasons?: SeasonServiceRecord[];
3493
3482
  /** Map breakdown of stats */
3494
- maps?: MapServiceRecord[];
3483
+ Maps?: MapServiceRecord[];
3495
3484
  /** Game variant breakdown */
3496
- gameVariants?: GameVariantServiceRecord[];
3485
+ GameVariants?: GameVariantServiceRecord[];
3497
3486
  /** Playlist breakdown */
3498
- playlists?: PlaylistServiceRecord[];
3487
+ Playlists?: PlaylistServiceRecord[];
3499
3488
  }
3500
3489
  /**
3501
3490
  * Season-specific service record.
3502
3491
  */
3503
3492
  interface SeasonServiceRecord {
3504
3493
  /** Season identifier */
3505
- seasonId?: string;
3494
+ SeasonId?: string;
3506
3495
  /** Stats for this season */
3507
- stats?: Stats;
3496
+ Stats?: Stats;
3508
3497
  }
3509
3498
  /**
3510
3499
  * Map-specific service record.
3511
3500
  */
3512
3501
  interface MapServiceRecord {
3513
3502
  /** Map asset identifier */
3514
- assetId?: string;
3503
+ AssetId?: string;
3515
3504
  /** Stats for this map */
3516
- stats?: Stats;
3505
+ Stats?: Stats;
3517
3506
  }
3518
3507
  /**
3519
3508
  * Game variant-specific service record.
3520
3509
  */
3521
3510
  interface GameVariantServiceRecord {
3522
3511
  /** Game variant category */
3523
- gameVariantCategory?: number;
3512
+ GameVariantCategory?: number;
3524
3513
  /** Stats for this game variant */
3525
- stats?: Stats;
3514
+ Stats?: Stats;
3526
3515
  }
3527
3516
  /**
3528
3517
  * Playlist-specific service record.
3529
3518
  */
3530
3519
  interface PlaylistServiceRecord {
3531
3520
  /** Playlist asset identifier */
3532
- assetId?: string;
3521
+ AssetId?: string;
3533
3522
  /** Stats for this playlist */
3534
- stats?: Stats;
3523
+ Stats?: Stats;
3535
3524
  }
3536
3525
  /**
3537
3526
  * Time played breakdown.
3538
3527
  */
3539
3528
  interface TimePlayed {
3540
3529
  /** Total seconds played */
3541
- seconds?: number;
3530
+ Seconds?: number;
3542
3531
  /** Human-readable duration */
3543
- human?: string;
3532
+ Human?: string;
3544
3533
  }
3545
3534
  /**
3546
3535
  * Win-loss record.
3547
3536
  */
3548
3537
  interface WinLossRecord {
3549
3538
  /** Number of wins */
3550
- wins?: number;
3539
+ Wins?: number;
3551
3540
  /** Number of losses */
3552
- losses?: number;
3541
+ Losses?: number;
3553
3542
  /** Number of ties */
3554
- ties?: number;
3543
+ Ties?: number;
3555
3544
  /** Number of games left early */
3556
- left?: number;
3545
+ Left?: number;
3557
3546
  }
3558
3547
  /**
3559
3548
  * Player service record (career stats).
@@ -3562,17 +3551,17 @@ interface WinLossRecord {
3562
3551
  */
3563
3552
  interface PlayerServiceRecord {
3564
3553
  /** Player identifier */
3565
- playerId?: string;
3554
+ PlayerId?: string;
3566
3555
  /** Core aggregate stats */
3567
- stats?: Stats;
3556
+ Stats?: Stats;
3568
3557
  /** Time played breakdown */
3569
- timePlayed?: TimePlayed;
3558
+ TimePlayed?: TimePlayed;
3570
3559
  /** Win/loss/tie record */
3571
- winLossRecord?: WinLossRecord;
3560
+ WinLossRecord?: WinLossRecord;
3572
3561
  /** Matches played */
3573
- matchesPlayed?: number;
3562
+ MatchesPlayed?: number;
3574
3563
  /** Subquery breakdowns (by season, map, etc.) */
3575
- subqueries?: ServiceRecordSubqueries;
3564
+ Subqueries?: ServiceRecordSubqueries;
3576
3565
  }
3577
3566
 
3578
3567
  /**
@@ -3777,195 +3766,195 @@ type AssetKind = (typeof AssetKind)[keyof typeof AssetKind];
3777
3766
  */
3778
3767
  interface AssetVersionFile {
3779
3768
  /** Prefix for file URLs */
3780
- prefix?: string;
3769
+ Prefix?: string;
3781
3770
  /** List of file paths */
3782
- fileRelativePaths?: string[];
3771
+ FileRelativePaths?: string[];
3783
3772
  }
3784
3773
  /**
3785
3774
  * Asset play statistics.
3786
3775
  */
3787
3776
  interface PlayAssetStats {
3788
3777
  /** Number of plays */
3789
- playsRecent?: number;
3778
+ PlaysRecent?: number;
3790
3779
  /** All-time plays */
3791
- playsAllTime?: number;
3780
+ PlaysAllTime?: number;
3792
3781
  /** Favorites count */
3793
- favorites?: number;
3782
+ Favorites?: number;
3794
3783
  /** Average rating */
3795
- averageRating?: number;
3784
+ AverageRating?: number;
3796
3785
  /** Number of ratings */
3797
- numberOfRatings?: number;
3786
+ NumberOfRatings?: number;
3798
3787
  /** Parent asset ID (if this is a variant) */
3799
- parentAssetId?: string;
3788
+ ParentAssetId?: string;
3800
3789
  }
3801
3790
  /**
3802
3791
  * Base asset properties.
3803
3792
  */
3804
3793
  interface AssetBase {
3805
3794
  /** Asset unique identifier */
3806
- assetId?: string;
3795
+ AssetId?: string;
3807
3796
  /** Version identifier */
3808
- versionId?: string;
3797
+ VersionId?: string;
3809
3798
  /** Combined asset version ID */
3810
- assetVersionId?: string;
3799
+ AssetVersionId?: string;
3811
3800
  /** Public display name */
3812
- publicName?: string;
3801
+ PublicName?: string;
3813
3802
  /** Internal name */
3814
- name?: string;
3803
+ Name?: string;
3815
3804
  /** Description */
3816
- description?: string;
3805
+ Description?: string;
3817
3806
  /** Inspection result code */
3818
- inspectionResult?: number;
3807
+ InspectionResult?: number;
3819
3808
  /** Clone behavior setting */
3820
- cloneBehavior?: number;
3809
+ CloneBehavior?: number;
3821
3810
  /** Asset home (where it's stored) */
3822
- assetHome?: number;
3811
+ AssetHome?: number;
3823
3812
  /** Descriptive tags */
3824
- tags?: string[];
3813
+ Tags?: string[];
3825
3814
  /** Contributors (XUIDs) */
3826
- contributors?: string[];
3815
+ Contributors?: string[];
3827
3816
  /** File information */
3828
- files?: AssetVersionFile;
3817
+ Files?: AssetVersionFile;
3829
3818
  /** Type of asset */
3830
- assetKind?: AssetKind;
3819
+ AssetKind?: AssetKind;
3831
3820
  /** Display order */
3832
- order?: number;
3821
+ Order?: number;
3833
3822
  /** Play statistics */
3834
- assetStats?: PlayAssetStats;
3823
+ AssetStats?: PlayAssetStats;
3835
3824
  /** When published (ISO 8601) */
3836
- publishedDate?: string;
3825
+ PublishedDate?: string;
3837
3826
  /** Version number */
3838
- versionNumber?: number;
3827
+ VersionNumber?: number;
3839
3828
  /** Admin XUID */
3840
- admin?: string;
3829
+ Admin?: string;
3841
3830
  /** Display owner override */
3842
- displayOwnerOverride?: string;
3831
+ DisplayOwnerOverride?: string;
3843
3832
  }
3844
3833
  /**
3845
3834
  * UGC authoring asset.
3846
3835
  */
3847
3836
  interface AuthoringAsset extends AssetBase {
3848
3837
  /** Original author XUID */
3849
- originalAuthor?: string;
3838
+ OriginalAuthor?: string;
3850
3839
  /** Whether it's readonly */
3851
- readonly?: boolean;
3840
+ Readonly?: boolean;
3852
3841
  /** Custom data for the asset type */
3853
- customData?: Record<string, unknown>;
3842
+ CustomData?: Record<string, unknown>;
3854
3843
  /** Creation time (ISO 8601) */
3855
- createdAt?: string;
3844
+ CreatedAt?: string;
3856
3845
  /** Last modification time (ISO 8601) */
3857
- updatedAt?: string;
3846
+ UpdatedAt?: string;
3858
3847
  }
3859
3848
  /**
3860
3849
  * Authoring asset version.
3861
3850
  */
3862
3851
  interface AuthoringAssetVersion extends AssetBase {
3863
3852
  /** Readonly status */
3864
- readonly?: boolean;
3853
+ Readonly?: boolean;
3865
3854
  /** Custom data */
3866
- customData?: Record<string, unknown>;
3855
+ CustomData?: Record<string, unknown>;
3867
3856
  }
3868
3857
  /**
3869
3858
  * Container for multiple authoring assets.
3870
3859
  */
3871
3860
  interface AuthoringAssetContainer {
3872
3861
  /** Asset count */
3873
- count?: number;
3862
+ Count?: number;
3874
3863
  /** Total available */
3875
- total?: number;
3864
+ Total?: number;
3876
3865
  /** List of assets */
3877
- results?: AuthoringAsset[];
3866
+ Results?: AuthoringAsset[];
3878
3867
  /** Pagination links */
3879
- links?: AssetLinks;
3868
+ Links?: AssetLinks;
3880
3869
  }
3881
3870
  /**
3882
3871
  * Container for asset versions.
3883
3872
  */
3884
3873
  interface AuthoringAssetVersionContainer {
3885
3874
  /** List of versions */
3886
- results?: AuthoringAssetVersion[];
3875
+ Results?: AuthoringAssetVersion[];
3887
3876
  }
3888
3877
  /**
3889
3878
  * Pagination links.
3890
3879
  */
3891
3880
  interface AssetLinks {
3892
3881
  /** Link to current page */
3893
- self?: string;
3882
+ Self?: string;
3894
3883
  /** Link to next page */
3895
- next?: string;
3884
+ Next?: string;
3896
3885
  /** Link to previous page */
3897
- prev?: string;
3886
+ Prev?: string;
3898
3887
  }
3899
3888
  /**
3900
3889
  * Asset rating.
3901
3890
  */
3902
3891
  interface AuthoringAssetRating {
3903
3892
  /** User's rating value (1-5) */
3904
- rating?: number;
3893
+ Rating?: number;
3905
3894
  /** When rated (ISO 8601) */
3906
- timestamp?: string;
3895
+ Timestamp?: string;
3907
3896
  }
3908
3897
  /**
3909
3898
  * Favorite asset reference.
3910
3899
  */
3911
3900
  interface FavoriteAsset {
3912
3901
  /** Asset ID */
3913
- assetId?: string;
3902
+ AssetId?: string;
3914
3903
  /** Asset kind */
3915
- assetKind?: AssetKind;
3904
+ AssetKind?: AssetKind;
3916
3905
  /** When favorited (ISO 8601) */
3917
- favoritedAt?: string;
3906
+ FavoritedAt?: string;
3918
3907
  }
3919
3908
  /**
3920
3909
  * Container for favorite assets.
3921
3910
  */
3922
3911
  interface AuthoringFavoritesContainer {
3923
3912
  /** List of favorites */
3924
- results?: FavoriteAsset[];
3913
+ Results?: FavoriteAsset[];
3925
3914
  /** Total count */
3926
- total?: number;
3915
+ Total?: number;
3927
3916
  }
3928
3917
  /**
3929
3918
  * Permission for an asset.
3930
3919
  */
3931
3920
  interface Permission {
3932
3921
  /** Player XUID */
3933
- player?: string;
3922
+ Player?: string;
3934
3923
  /** Permission type */
3935
- permissionType?: string;
3924
+ PermissionType?: string;
3936
3925
  /** Whether permission is granted */
3937
- granted?: boolean;
3926
+ Granted?: boolean;
3938
3927
  }
3939
3928
  /**
3940
3929
  * Asset report for moderation.
3941
3930
  */
3942
3931
  interface AssetReport {
3943
3932
  /** Report reason */
3944
- reason?: string;
3933
+ Reason?: string;
3945
3934
  /** Additional details */
3946
- details?: string;
3935
+ Details?: string;
3947
3936
  /** When reported (ISO 8601) */
3948
- timestamp?: string;
3937
+ Timestamp?: string;
3949
3938
  }
3950
3939
  /**
3951
3940
  * Authoring session for asset editing.
3952
3941
  */
3953
3942
  interface AssetAuthoringSession {
3954
3943
  /** Session identifier */
3955
- sessionId?: string;
3944
+ SessionId?: string;
3956
3945
  /** Session expiration (ISO 8601) */
3957
- expiresAt?: string;
3946
+ ExpiresAt?: string;
3958
3947
  /** Container SAS URL for uploads */
3959
- containerSas?: string;
3948
+ ContainerSas?: string;
3960
3949
  }
3961
3950
  /**
3962
3951
  * Session starter for creating new versions.
3963
3952
  */
3964
3953
  interface AuthoringSessionSourceStarter {
3965
3954
  /** Source asset ID (to clone from) */
3966
- sourceAssetId?: string;
3955
+ SourceAssetId?: string;
3967
3956
  /** Source version ID */
3968
- sourceVersionId?: string;
3957
+ SourceVersionId?: string;
3969
3958
  }
3970
3959
 
3971
3960
  /**
@@ -3987,129 +3976,129 @@ type ResultOrder = (typeof ResultOrder)[keyof typeof ResultOrder];
3987
3976
  */
3988
3977
  interface UgcSearchParams {
3989
3978
  /** Search term */
3990
- term?: string;
3979
+ Term?: string;
3991
3980
  /** Asset kinds to include */
3992
- assetKinds?: AssetKind[];
3981
+ AssetKinds?: AssetKind[];
3993
3982
  /** Tags to filter by */
3994
- tags?: string[];
3983
+ Tags?: string[];
3995
3984
  /** Author XUID */
3996
- author?: string;
3985
+ Author?: string;
3997
3986
  /** Sort field */
3998
- sort?: string;
3987
+ Sort?: string;
3999
3988
  /** Sort order */
4000
- order?: ResultOrder;
3989
+ Order?: ResultOrder;
4001
3990
  /** Number of results to return */
4002
- count?: number;
3991
+ Count?: number;
4003
3992
  /** Starting offset */
4004
- start?: number;
3993
+ Start?: number;
4005
3994
  }
4006
3995
  /**
4007
3996
  * Search result container.
4008
3997
  */
4009
3998
  interface UgcSearchResult {
4010
3999
  /** Search results */
4011
- results?: AuthoringAsset[];
4000
+ Results?: AuthoringAsset[];
4012
4001
  /** Total matching results */
4013
- totalCount?: number;
4002
+ TotalCount?: number;
4014
4003
  /** Returned count */
4015
- count?: number;
4004
+ Count?: number;
4016
4005
  /** Starting offset */
4017
- start?: number;
4006
+ Start?: number;
4018
4007
  /** Pagination links */
4019
- links?: SearchLinks;
4008
+ Links?: SearchLinks;
4020
4009
  }
4021
4010
  /**
4022
4011
  * Search pagination links.
4023
4012
  */
4024
4013
  interface SearchLinks {
4025
4014
  /** Current page */
4026
- self?: string;
4015
+ Self?: string;
4027
4016
  /** Next page */
4028
- next?: string;
4017
+ Next?: string;
4029
4018
  /** Previous page */
4030
- prev?: string;
4019
+ Prev?: string;
4031
4020
  }
4032
4021
  /**
4033
4022
  * Map variant asset.
4034
4023
  */
4035
- interface MapAsset extends Omit<AuthoringAsset, 'customData'> {
4024
+ interface MapAsset extends Omit<AuthoringAsset, 'CustomData'> {
4036
4025
  /** Map-specific custom data */
4037
- customData?: MapCustomData;
4026
+ CustomData?: MapCustomData;
4038
4027
  }
4039
4028
  /**
4040
4029
  * Map custom data.
4041
4030
  */
4042
4031
  interface MapCustomData {
4043
4032
  /** Number of supported players */
4044
- supportedPlayerCount?: number;
4033
+ SupportedPlayerCount?: number;
4045
4034
  /** Recommended player count */
4046
- recommendedPlayerCount?: number;
4035
+ RecommendedPlayerCount?: number;
4047
4036
  /** Budget usage */
4048
- budgetUsed?: number;
4037
+ BudgetUsed?: number;
4049
4038
  /** Object count */
4050
- objectCount?: number;
4039
+ ObjectCount?: number;
4051
4040
  /** Has lightmap */
4052
- hasLightmap?: boolean;
4041
+ HasLightmap?: boolean;
4053
4042
  }
4054
4043
  /**
4055
4044
  * Game variant asset.
4056
4045
  */
4057
- interface UgcGameVariantAsset extends Omit<AuthoringAsset, 'customData'> {
4046
+ interface UgcGameVariantAsset extends Omit<AuthoringAsset, 'CustomData'> {
4058
4047
  /** Game variant custom data */
4059
- customData?: GameVariantCustomData;
4048
+ CustomData?: GameVariantCustomData;
4060
4049
  }
4061
4050
  /**
4062
4051
  * Game variant custom data.
4063
4052
  */
4064
4053
  interface GameVariantCustomData {
4065
4054
  /** Game variant category */
4066
- category?: number;
4055
+ Category?: number;
4067
4056
  /** Score to win */
4068
- scoreToWin?: number;
4057
+ ScoreToWin?: number;
4069
4058
  /** Time limit */
4070
- timeLimit?: number;
4059
+ TimeLimit?: number;
4071
4060
  /** Rounds to win */
4072
- roundsToWin?: number;
4061
+ RoundsToWin?: number;
4073
4062
  /** Max players */
4074
- maxPlayers?: number;
4063
+ MaxPlayers?: number;
4075
4064
  /** Min players */
4076
- minPlayers?: number;
4065
+ MinPlayers?: number;
4077
4066
  }
4078
4067
  /**
4079
4068
  * Film asset (theater recording).
4080
4069
  */
4081
- interface FilmAsset extends Omit<AuthoringAsset, 'customData'> {
4070
+ interface FilmAsset extends Omit<AuthoringAsset, 'CustomData'> {
4082
4071
  /** Film custom data */
4083
- customData?: FilmCustomData;
4072
+ CustomData?: FilmCustomData;
4084
4073
  }
4085
4074
  /**
4086
4075
  * Film custom data.
4087
4076
  */
4088
4077
  interface FilmCustomData {
4089
4078
  /** Match ID this film is from */
4090
- matchId?: string;
4079
+ MatchId?: string;
4091
4080
  /** Duration of the film */
4092
- duration?: string;
4081
+ Duration?: string;
4093
4082
  /** Map asset ID */
4094
- mapAssetId?: string;
4083
+ MapAssetId?: string;
4095
4084
  /** Game variant asset ID */
4096
- gameVariantAssetId?: string;
4085
+ GameVariantAssetId?: string;
4097
4086
  }
4098
4087
  /**
4099
4088
  * Prefab asset.
4100
4089
  */
4101
- interface PrefabAsset extends Omit<AuthoringAsset, 'customData'> {
4090
+ interface PrefabAsset extends Omit<AuthoringAsset, 'CustomData'> {
4102
4091
  /** Prefab custom data */
4103
- customData?: PrefabCustomData;
4092
+ CustomData?: PrefabCustomData;
4104
4093
  }
4105
4094
  /**
4106
4095
  * Prefab custom data.
4107
4096
  */
4108
4097
  interface PrefabCustomData {
4109
4098
  /** Object count */
4110
- objectCount?: number;
4099
+ ObjectCount?: number;
4111
4100
  /** Budget usage */
4112
- budgetUsed?: number;
4101
+ BudgetUsed?: number;
4113
4102
  }
4114
4103
 
4115
4104
  /**