@taskeren/bungie-api-ts 5.10.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.
Files changed (164) hide show
  1. package/.babelrc +4 -0
  2. package/.gitattributes +2 -0
  3. package/.github/workflows/pr-build.yml +50 -0
  4. package/.github/workflows/publish.yml +48 -0
  5. package/.github/workflows/update.yml +55 -0
  6. package/.gitmodules +3 -0
  7. package/.nvmrc +1 -0
  8. package/.prettierrc +10 -0
  9. package/.vscode/extensions.json +8 -0
  10. package/.vscode/settings.json +7 -0
  11. package/LICENSE.md +21 -0
  12. package/README.md +97 -0
  13. package/api-src/.github/workflows/close-inactive.yml +24 -0
  14. package/api-src/CHANGELOG.md +271 -0
  15. package/api-src/CONTRIBUTING.md +19 -0
  16. package/api-src/LICENSE +28 -0
  17. package/api-src/README.md +378 -0
  18. package/api-src/openapi-2.json +44518 -0
  19. package/api-src/openapi.json +46467 -0
  20. package/build.sh +30 -0
  21. package/bungie-api-LICENSE +29 -0
  22. package/generated-src/app/api.ts +50 -0
  23. package/generated-src/app/index.ts +17 -0
  24. package/generated-src/app/interfaces.ts +119 -0
  25. package/generated-src/common.ts +985 -0
  26. package/generated-src/communitycontent/api.ts +36 -0
  27. package/generated-src/communitycontent/index.ts +16 -0
  28. package/generated-src/content/api.ts +142 -0
  29. package/generated-src/content/index.ts +17 -0
  30. package/generated-src/content/interfaces.ts +225 -0
  31. package/generated-src/core/api.ts +57 -0
  32. package/generated-src/core/index.ts +17 -0
  33. package/generated-src/core/interfaces.ts +151 -0
  34. package/generated-src/destiny2/api.ts +821 -0
  35. package/generated-src/destiny2/index.ts +17 -0
  36. package/generated-src/destiny2/interfaces.ts +15714 -0
  37. package/generated-src/destiny2/manifest.ts +341 -0
  38. package/generated-src/fireteam/api.ts +151 -0
  39. package/generated-src/fireteam/index.ts +17 -0
  40. package/generated-src/fireteam/interfaces.ts +183 -0
  41. package/generated-src/forum/api.ts +197 -0
  42. package/generated-src/forum/index.ts +17 -0
  43. package/generated-src/forum/interfaces.ts +171 -0
  44. package/generated-src/groupv2/api.ts +515 -0
  45. package/generated-src/groupv2/index.ts +17 -0
  46. package/generated-src/groupv2/interfaces.ts +773 -0
  47. package/generated-src/http.ts +52 -0
  48. package/generated-src/index.ts +37 -0
  49. package/generated-src/package.json.notyet +99 -0
  50. package/generated-src/platform.ts +39 -0
  51. package/generated-src/social/api.ts +115 -0
  52. package/generated-src/social/index.ts +17 -0
  53. package/generated-src/social/interfaces.ts +89 -0
  54. package/generated-src/tokens/api.ts +126 -0
  55. package/generated-src/tokens/index.ts +17 -0
  56. package/generated-src/tokens/interfaces.ts +102 -0
  57. package/generated-src/trending/api.ts +62 -0
  58. package/generated-src/trending/index.ts +17 -0
  59. package/generated-src/trending/interfaces.ts +188 -0
  60. package/generated-src/user/api.ts +130 -0
  61. package/generated-src/user/index.ts +17 -0
  62. package/generated-src/user/interfaces.ts +338 -0
  63. package/generator/generate-api.ts +254 -0
  64. package/generator/generate-common.ts +123 -0
  65. package/generator/generate-index.ts +45 -0
  66. package/generator/generate-interfaces.ts +173 -0
  67. package/generator/generate-manifest.ts +217 -0
  68. package/generator/generate-package-json.ts +45 -0
  69. package/generator/generate.ts +54 -0
  70. package/generator/http.ts +52 -0
  71. package/generator/missing-props.ts +11 -0
  72. package/generator/type-index.ts +184 -0
  73. package/generator/util.ts +131 -0
  74. package/lib/README.md +97 -0
  75. package/lib/app/api.d.ts +36 -0
  76. package/lib/app/api.js +15 -0
  77. package/lib/app/index.d.ts +16 -0
  78. package/lib/app/index.js +5 -0
  79. package/lib/app/interfaces.d.ts +108 -0
  80. package/lib/app/interfaces.js +17 -0
  81. package/lib/bungie-api-LICENSE +29 -0
  82. package/lib/common.d.ts +979 -0
  83. package/lib/common.js +923 -0
  84. package/lib/communitycontent/api.d.ts +31 -0
  85. package/lib/communitycontent/api.js +7 -0
  86. package/lib/communitycontent/index.d.ts +15 -0
  87. package/lib/communitycontent/index.js +4 -0
  88. package/lib/content/api.d.ts +111 -0
  89. package/lib/content/api.js +75 -0
  90. package/lib/content/index.d.ts +16 -0
  91. package/lib/content/index.js +5 -0
  92. package/lib/content/interfaces.d.ts +214 -0
  93. package/lib/content/interfaces.js +17 -0
  94. package/lib/core/api.d.ts +45 -0
  95. package/lib/core/api.js +18 -0
  96. package/lib/core/index.d.ts +16 -0
  97. package/lib/core/index.js +5 -0
  98. package/lib/core/interfaces.d.ts +144 -0
  99. package/lib/core/interfaces.js +10 -0
  100. package/lib/destiny2/api.d.ts +765 -0
  101. package/lib/destiny2/api.js +295 -0
  102. package/lib/destiny2/index.d.ts +16 -0
  103. package/lib/destiny2/index.js +5 -0
  104. package/lib/destiny2/interfaces.d.ts +15340 -0
  105. package/lib/destiny2/interfaces.js +826 -0
  106. package/lib/destiny2/manifest.d.ts +465 -0
  107. package/lib/destiny2/manifest.js +56 -0
  108. package/lib/fireteam/api.d.ts +131 -0
  109. package/lib/fireteam/api.js +50 -0
  110. package/lib/fireteam/index.d.ts +16 -0
  111. package/lib/fireteam/index.js +5 -0
  112. package/lib/fireteam/interfaces.d.ts +166 -0
  113. package/lib/fireteam/interfaces.js +33 -0
  114. package/lib/forum/api.d.ts +165 -0
  115. package/lib/forum/api.js +79 -0
  116. package/lib/forum/index.d.ts +16 -0
  117. package/lib/forum/index.js +5 -0
  118. package/lib/forum/interfaces.d.ts +147 -0
  119. package/lib/forum/interfaces.js +61 -0
  120. package/lib/groupv2/api.d.ts +484 -0
  121. package/lib/groupv2/api.js +154 -0
  122. package/lib/groupv2/index.d.ts +16 -0
  123. package/lib/groupv2/index.js +5 -0
  124. package/lib/groupv2/interfaces.d.ts +718 -0
  125. package/lib/groupv2/interfaces.js +100 -0
  126. package/lib/http.d.ts +18 -0
  127. package/lib/http.js +20 -0
  128. package/lib/index.d.ts +35 -0
  129. package/lib/index.js +24 -0
  130. package/lib/package.json +99 -0
  131. package/lib/platform.d.ts +36 -0
  132. package/lib/platform.js +9 -0
  133. package/lib/social/api.d.ts +101 -0
  134. package/lib/social/api.js +26 -0
  135. package/lib/social/index.d.ts +16 -0
  136. package/lib/social/index.js +5 -0
  137. package/lib/social/interfaces.d.ts +75 -0
  138. package/lib/social/interfaces.js +22 -0
  139. package/lib/tokens/api.d.ts +120 -0
  140. package/lib/tokens/api.js +38 -0
  141. package/lib/tokens/index.d.ts +16 -0
  142. package/lib/tokens/index.js +5 -0
  143. package/lib/tokens/interfaces.d.ts +88 -0
  144. package/lib/tokens/interfaces.js +5 -0
  145. package/lib/trending/api.d.ts +53 -0
  146. package/lib/trending/api.js +11 -0
  147. package/lib/trending/index.d.ts +16 -0
  148. package/lib/trending/index.js +5 -0
  149. package/lib/trending/interfaces.d.ts +171 -0
  150. package/lib/trending/interfaces.js +14 -0
  151. package/lib/user/api.d.ts +117 -0
  152. package/lib/user/api.js +35 -0
  153. package/lib/user/index.d.ts +16 -0
  154. package/lib/user/index.js +5 -0
  155. package/lib/user/interfaces.d.ts +320 -0
  156. package/lib/user/interfaces.js +28 -0
  157. package/package.json +60 -0
  158. package/test-consumer.ts +5 -0
  159. package/tests/__snapshots__/config-builders.test.ts.snap +343 -0
  160. package/tests/config-builders.test.ts +145 -0
  161. package/tests/manifest-fetcher.test.ts +43 -0
  162. package/tests/test-manifest.js +69 -0
  163. package/tsconfig-package.json +14 -0
  164. package/tsconfig.json +17 -0
@@ -0,0 +1,765 @@
1
+ /**
2
+ * Bungie.Net API
3
+ * These endpoints constitute the functionality exposed by Bungie.net, both for more traditional website functionality and for connectivity to Bungie video games and their related functionality.
4
+ *
5
+ * OpenAPI spec version: 2.21.9
6
+ * Contact: support@bungie.com
7
+ *
8
+ * NOTE: This class is auto generated by the bungie-api-ts code generator program.
9
+ * https://github.com/DestinyItemManager/bungie-api-ts
10
+ * Do not edit these files manually.
11
+ */
12
+ import { HttpClient } from '../http.js';
13
+ import {
14
+ AwaAuthorizationResult,
15
+ AwaInitializeResponse,
16
+ AwaPermissionRequested,
17
+ AwaUserResponse,
18
+ ClanBannerSource,
19
+ DestinyActivityHistoryResults,
20
+ DestinyActivityModeType,
21
+ DestinyAggregateActivityResults,
22
+ DestinyCharacterResponse,
23
+ DestinyClanAggregateStat,
24
+ DestinyCollectibleNodeDetailResponse,
25
+ DestinyComponentType,
26
+ DestinyDefinition,
27
+ DestinyEntitySearchResult,
28
+ DestinyEquipItemResults,
29
+ DestinyHistoricalStatsAccountResult,
30
+ DestinyHistoricalStatsByPeriod,
31
+ DestinyHistoricalStatsDefinition,
32
+ DestinyHistoricalWeaponStatsData,
33
+ DestinyInsertPlugsActionRequest,
34
+ DestinyInsertPlugsFreeActionRequest,
35
+ DestinyItemActionRequest,
36
+ DestinyItemChangeResponse,
37
+ DestinyItemResponse,
38
+ DestinyItemSetActionRequest,
39
+ DestinyItemStateRequest,
40
+ DestinyItemTransferRequest,
41
+ DestinyLeaderboard,
42
+ DestinyLinkedProfilesResponse,
43
+ DestinyLoadoutActionRequest,
44
+ DestinyLoadoutUpdateActionRequest,
45
+ DestinyManifest,
46
+ DestinyMilestone,
47
+ DestinyMilestoneContent,
48
+ DestinyPostGameCarnageReportData,
49
+ DestinyPostmasterTransferRequest,
50
+ DestinyProfileResponse,
51
+ DestinyPublicMilestone,
52
+ DestinyPublicVendorsResponse,
53
+ DestinyReportOffensePgcrRequest,
54
+ DestinyStatsGroupType,
55
+ DestinyVendorFilter,
56
+ DestinyVendorResponse,
57
+ DestinyVendorsResponse,
58
+ PeriodType,
59
+ } from './interfaces.js';
60
+ import { BungieMembershipType, ServerResponse } from '../common.js';
61
+ import { ExactSearchRequest, UserInfoCard } from '../user/interfaces.js';
62
+ /** Returns the current version of the manifest as a json object. */
63
+ export declare function getDestinyManifest(
64
+ http: HttpClient
65
+ ): Promise<ServerResponse<DestinyManifest>>;
66
+ export interface GetDestinyEntityDefinitionParams {
67
+ /**
68
+ * The type of entity for whom you would like results. These correspond to the
69
+ * entity's definition contract name. For instance, if you are looking for items,
70
+ * this property should be 'DestinyInventoryItemDefinition'. PREVIEW: This endpoint
71
+ * is still in beta, and may experience rough edges. The schema is tentatively in
72
+ * final form, but there may be bugs that prevent desirable operation.
73
+ */
74
+ entityType: string;
75
+ /** The hash identifier for the specific Entity you want returned. */
76
+ hashIdentifier: number;
77
+ }
78
+ /**
79
+ * Returns the static definition of an entity of the given Type and hash identifier.
80
+ * Examine the API Documentation for the Type Names of entities that have their
81
+ * own definitions. Note that the return type will always *inherit from*
82
+ * DestinyDefinition, but the specific type returned will be the requested entity
83
+ * type if it can be found. Please don't use this as a chatty alternative to the
84
+ * Manifest database if you require large sets of data, but for simple and one-off
85
+ * accesses this should be handy.
86
+ */
87
+ export declare function getDestinyEntityDefinition(
88
+ http: HttpClient,
89
+ params: GetDestinyEntityDefinitionParams
90
+ ): Promise<ServerResponse<DestinyDefinition>>;
91
+ export interface SearchDestinyPlayerByBungieNameParams {
92
+ /**
93
+ * A valid non-BungieNet membership type, or All. Indicates which memberships to
94
+ * return. You probably want this set to All.
95
+ */
96
+ membershipType: BungieMembershipType;
97
+ }
98
+ /**
99
+ * Returns a list of Destiny memberships given a global Bungie Display Name. This
100
+ * method will hide overridden memberships due to cross save.
101
+ */
102
+ export declare function searchDestinyPlayerByBungieName(
103
+ http: HttpClient,
104
+ params: SearchDestinyPlayerByBungieNameParams,
105
+ body: ExactSearchRequest
106
+ ): Promise<ServerResponse<UserInfoCard[]>>;
107
+ export interface GetLinkedProfilesParams {
108
+ /**
109
+ * (optional) if set to 'true', all memberships regardless of whether they're
110
+ * obscured by overrides will be returned. Normal privacy restrictions on account
111
+ * linking will still apply no matter what.
112
+ */
113
+ getAllMemberships?: boolean;
114
+ /**
115
+ * The ID of the membership whose linked Destiny accounts you want returned. Make
116
+ * sure your membership ID matches its Membership Type: don't pass us a PSN
117
+ * membership ID and the XBox membership type, it's not going to work!
118
+ */
119
+ membershipId: string;
120
+ /** The type for the membership whose linked Destiny accounts you want returned. */
121
+ membershipType: BungieMembershipType;
122
+ }
123
+ /**
124
+ * Returns a summary information about all profiles linked to the requesting
125
+ * membership type/membership ID that have valid Destiny information. The passed-in
126
+ * Membership Type/Membership ID may be a Bungie.Net membership or a Destiny
127
+ * membership. It only returns the minimal amount of data to begin making more
128
+ * substantive requests, but will hopefully serve as a useful alternative to
129
+ * UserServices for people who just care about Destiny data. Note that it will only
130
+ * return linked accounts whose linkages you are allowed to view.
131
+ */
132
+ export declare function getLinkedProfiles(
133
+ http: HttpClient,
134
+ params: GetLinkedProfilesParams
135
+ ): Promise<ServerResponse<DestinyLinkedProfilesResponse>>;
136
+ export interface GetProfileParams {
137
+ /**
138
+ * A comma separated list of components to return (as strings or numeric values).
139
+ * See the DestinyComponentType enum for valid components to request. You must
140
+ * request at least one component to receive results.
141
+ */
142
+ components: DestinyComponentType[];
143
+ /** Destiny membership ID. */
144
+ destinyMembershipId: string;
145
+ /** A valid non-BungieNet membership type. */
146
+ membershipType: BungieMembershipType;
147
+ }
148
+ /** Returns Destiny Profile information for the supplied membership. */
149
+ export declare function getProfile(
150
+ http: HttpClient,
151
+ params: GetProfileParams
152
+ ): Promise<ServerResponse<DestinyProfileResponse>>;
153
+ export interface GetCharacterParams {
154
+ /** ID of the character. */
155
+ characterId: string;
156
+ /**
157
+ * A comma separated list of components to return (as strings or numeric values).
158
+ * See the DestinyComponentType enum for valid components to request. You must
159
+ * request at least one component to receive results.
160
+ */
161
+ components: DestinyComponentType[];
162
+ /** Destiny membership ID. */
163
+ destinyMembershipId: string;
164
+ /** A valid non-BungieNet membership type. */
165
+ membershipType: BungieMembershipType;
166
+ }
167
+ /** Returns character information for the supplied character. */
168
+ export declare function getCharacter(
169
+ http: HttpClient,
170
+ params: GetCharacterParams
171
+ ): Promise<ServerResponse<DestinyCharacterResponse>>;
172
+ export interface GetClanWeeklyRewardStateParams {
173
+ /** A valid group id of clan. */
174
+ groupId: string;
175
+ }
176
+ /**
177
+ * Returns information on the weekly clan rewards and if the clan has earned them
178
+ * or not. Note that this will always report rewards as not redeemed.
179
+ */
180
+ export declare function getClanWeeklyRewardState(
181
+ http: HttpClient,
182
+ params: GetClanWeeklyRewardStateParams
183
+ ): Promise<ServerResponse<DestinyMilestone>>;
184
+ /** Returns the dictionary of values for the Clan Banner */
185
+ export declare function getClanBannerSource(
186
+ http: HttpClient
187
+ ): Promise<ServerResponse<ClanBannerSource>>;
188
+ export interface GetItemParams {
189
+ /**
190
+ * A comma separated list of components to return (as strings or numeric values).
191
+ * See the DestinyComponentType enum for valid components to request. You must
192
+ * request at least one component to receive results.
193
+ */
194
+ components: DestinyComponentType[];
195
+ /** The membership ID of the destiny profile. */
196
+ destinyMembershipId: string;
197
+ /** The Instance ID of the destiny item. */
198
+ itemInstanceId: string;
199
+ /** A valid non-BungieNet membership type. */
200
+ membershipType: BungieMembershipType;
201
+ }
202
+ /**
203
+ * Retrieve the details of an instanced Destiny Item. An instanced Destiny item is
204
+ * one with an ItemInstanceId. Non-instanced items, such as materials, have no
205
+ * useful instance-specific details and thus are not queryable here.
206
+ */
207
+ export declare function getItem(
208
+ http: HttpClient,
209
+ params: GetItemParams
210
+ ): Promise<ServerResponse<DestinyItemResponse>>;
211
+ export interface GetVendorsParams {
212
+ /** The Destiny Character ID of the character for whom we're getting vendor info. */
213
+ characterId: string;
214
+ /**
215
+ * A comma separated list of components to return (as strings or numeric values).
216
+ * See the DestinyComponentType enum for valid components to request. You must
217
+ * request at least one component to receive results.
218
+ */
219
+ components: DestinyComponentType[];
220
+ /** Destiny membership ID of another user. You may be denied. */
221
+ destinyMembershipId: string;
222
+ /** The filter of what vendors and items to return, if any. */
223
+ filter?: DestinyVendorFilter;
224
+ /** A valid non-BungieNet membership type. */
225
+ membershipType: BungieMembershipType;
226
+ }
227
+ /**
228
+ * Get currently available vendors from the list of vendors that can possibly have
229
+ * rotating inventory. Note that this does not include things like preview vendors
230
+ * and vendors-as-kiosks, neither of whom have rotating/dynamic inventories. Use
231
+ * their definitions as-is for those.
232
+ */
233
+ export declare function getVendors(
234
+ http: HttpClient,
235
+ params: GetVendorsParams
236
+ ): Promise<ServerResponse<DestinyVendorsResponse>>;
237
+ export interface GetVendorParams {
238
+ /** The Destiny Character ID of the character for whom we're getting vendor info. */
239
+ characterId: string;
240
+ /**
241
+ * A comma separated list of components to return (as strings or numeric values).
242
+ * See the DestinyComponentType enum for valid components to request. You must
243
+ * request at least one component to receive results.
244
+ */
245
+ components: DestinyComponentType[];
246
+ /** Destiny membership ID of another user. You may be denied. */
247
+ destinyMembershipId: string;
248
+ /** A valid non-BungieNet membership type. */
249
+ membershipType: BungieMembershipType;
250
+ /** The Hash identifier of the Vendor to be returned. */
251
+ vendorHash: number;
252
+ }
253
+ /** Get the details of a specific Vendor. */
254
+ export declare function getVendor(
255
+ http: HttpClient,
256
+ params: GetVendorParams
257
+ ): Promise<ServerResponse<DestinyVendorResponse>>;
258
+ export interface GetPublicVendorsParams {
259
+ /**
260
+ * A comma separated list of components to return (as strings or numeric values).
261
+ * See the DestinyComponentType enum for valid components to request. You must
262
+ * request at least one component to receive results.
263
+ */
264
+ components: DestinyComponentType[];
265
+ }
266
+ /**
267
+ * Get items available from vendors where the vendors have items for sale that are
268
+ * common for everyone. If any portion of the Vendor's available inventory is
269
+ * character or account specific, we will be unable to return their data from this
270
+ * endpoint due to the way that available inventory is computed. As I am often
271
+ * guilty of saying: 'It's a long story...'
272
+ */
273
+ export declare function getPublicVendors(
274
+ http: HttpClient,
275
+ params: GetPublicVendorsParams
276
+ ): Promise<ServerResponse<DestinyPublicVendorsResponse>>;
277
+ export interface GetCollectibleNodeDetailsParams {
278
+ /**
279
+ * The Destiny Character ID of the character for whom we're getting collectible
280
+ * detail info.
281
+ */
282
+ characterId: string;
283
+ /**
284
+ * The hash identifier of the Presentation Node for whom we should return
285
+ * collectible details. Details will only be returned for collectibles that are
286
+ * direct descendants of this node.
287
+ */
288
+ collectiblePresentationNodeHash: number;
289
+ /**
290
+ * A comma separated list of components to return (as strings or numeric values).
291
+ * See the DestinyComponentType enum for valid components to request. You must
292
+ * request at least one component to receive results.
293
+ */
294
+ components: DestinyComponentType[];
295
+ /** Destiny membership ID of another user. You may be denied. */
296
+ destinyMembershipId: string;
297
+ /** A valid non-BungieNet membership type. */
298
+ membershipType: BungieMembershipType;
299
+ }
300
+ /**
301
+ * Given a Presentation Node that has Collectibles as direct descendants, this will
302
+ * return item details about those descendants in the context of the requesting
303
+ * character.
304
+ */
305
+ export declare function getCollectibleNodeDetails(
306
+ http: HttpClient,
307
+ params: GetCollectibleNodeDetailsParams
308
+ ): Promise<ServerResponse<DestinyCollectibleNodeDetailResponse>>;
309
+ /**
310
+ * Transfer an item to/from your vault. You must have a valid Destiny account. You
311
+ * must also pass BOTH a reference AND an instance ID if it's an instanced item.
312
+ * itshappening.gif
313
+ *
314
+ * Wait at least 0.1s between actions.
315
+ */
316
+ export declare function transferItem(
317
+ http: HttpClient,
318
+ body: DestinyItemTransferRequest
319
+ ): Promise<ServerResponse<number>>;
320
+ /**
321
+ * Extract an item from the Postmaster, with whatever implications that may entail.
322
+ * You must have a valid Destiny account. You must also pass BOTH a reference AND
323
+ * an instance ID if it's an instanced item.
324
+ *
325
+ * Wait at least 0.1s between actions.
326
+ */
327
+ export declare function pullFromPostmaster(
328
+ http: HttpClient,
329
+ body: DestinyPostmasterTransferRequest
330
+ ): Promise<ServerResponse<number>>;
331
+ /**
332
+ * Equip an item. You must have a valid Destiny Account, and either be in a social
333
+ * space, in orbit, or offline.
334
+ *
335
+ * Wait at least 0.1s between actions.
336
+ */
337
+ export declare function equipItem(
338
+ http: HttpClient,
339
+ body: DestinyItemActionRequest
340
+ ): Promise<ServerResponse<number>>;
341
+ /**
342
+ * Equip a list of items by itemInstanceIds. You must have a valid Destiny Account,
343
+ * and either be in a social space, in orbit, or offline. Any items not found on
344
+ * your character will be ignored.
345
+ *
346
+ * Wait at least 0.1s between actions.
347
+ */
348
+ export declare function equipItems(
349
+ http: HttpClient,
350
+ body: DestinyItemSetActionRequest
351
+ ): Promise<ServerResponse<DestinyEquipItemResults>>;
352
+ /**
353
+ * Equip a loadout. You must have a valid Destiny Account, and either be in a
354
+ * social space, in orbit, or offline.
355
+ *
356
+ * Wait at least 1s between actions.
357
+ */
358
+ export declare function equipLoadout(
359
+ http: HttpClient,
360
+ body: DestinyLoadoutActionRequest
361
+ ): Promise<ServerResponse<number>>;
362
+ /**
363
+ * Snapshot a loadout with the currently equipped items.
364
+ *
365
+ * Wait at least 1s between actions.
366
+ */
367
+ export declare function snapshotLoadout(
368
+ http: HttpClient,
369
+ body: DestinyLoadoutUpdateActionRequest
370
+ ): Promise<ServerResponse<number>>;
371
+ /**
372
+ * Update the color, icon, and name of a loadout.
373
+ *
374
+ * Wait at least 1s between actions.
375
+ */
376
+ export declare function updateLoadoutIdentifiers(
377
+ http: HttpClient,
378
+ body: DestinyLoadoutUpdateActionRequest
379
+ ): Promise<ServerResponse<number>>;
380
+ /**
381
+ * Clear the identifiers and items of a loadout.
382
+ *
383
+ * Wait at least 1s between actions.
384
+ */
385
+ export declare function clearLoadout(
386
+ http: HttpClient,
387
+ body: DestinyLoadoutActionRequest
388
+ ): Promise<ServerResponse<number>>;
389
+ /**
390
+ * Set the Lock State for an instanced item. You must have a valid Destiny Account.
391
+ *
392
+ * Wait at least 0.1s between actions.
393
+ */
394
+ export declare function setItemLockState(
395
+ http: HttpClient,
396
+ body: DestinyItemStateRequest
397
+ ): Promise<ServerResponse<number>>;
398
+ /**
399
+ * Set the Tracking State for an instanced item, if that item is a Quest or Bounty.
400
+ * You must have a valid Destiny Account. Yeah, it's an item.
401
+ *
402
+ * Wait at least 1s between actions.
403
+ */
404
+ export declare function setQuestTrackedState(
405
+ http: HttpClient,
406
+ body: DestinyItemStateRequest
407
+ ): Promise<ServerResponse<number>>;
408
+ /**
409
+ * Insert a plug into a socketed item. I know how it sounds, but I assure you it's
410
+ * much more G-rated than you might be guessing. We haven't decided yet whether
411
+ * this will be able to insert plugs that have side effects, but if we do it will
412
+ * require special scope permission for an application attempting to do so. You
413
+ * must have a valid Destiny Account, and either be in a social space, in orbit, or
414
+ * offline. Request must include proof of permission for 'InsertPlugs' from the
415
+ * account owner.
416
+ *
417
+ * Wait at least 0.5s between actions.
418
+ */
419
+ export declare function insertSocketPlug(
420
+ http: HttpClient,
421
+ body: DestinyInsertPlugsActionRequest
422
+ ): Promise<ServerResponse<DestinyItemChangeResponse>>;
423
+ /**
424
+ * Insert a 'free' plug into an item's socket. This does not require 'Advanced
425
+ * Write Action' authorization and is available to 3rd-party apps, but will only
426
+ * work on 'free and reversible' socket actions (Perks, Armor Mods, Shaders,
427
+ * Ornaments, etc.). You must have a valid Destiny Account, and the character must
428
+ * either be in a social space, in orbit, or offline.
429
+ *
430
+ * Wait at least 0.5s between actions.
431
+ */
432
+ export declare function insertSocketPlugFree(
433
+ http: HttpClient,
434
+ body: DestinyInsertPlugsFreeActionRequest
435
+ ): Promise<ServerResponse<DestinyItemChangeResponse>>;
436
+ export interface GetPostGameCarnageReportParams {
437
+ /** The ID of the activity whose PGCR is requested. */
438
+ activityId: string;
439
+ }
440
+ /** Gets the available post game carnage report for the activity ID. */
441
+ export declare function getPostGameCarnageReport(
442
+ http: HttpClient,
443
+ params: GetPostGameCarnageReportParams
444
+ ): Promise<ServerResponse<DestinyPostGameCarnageReportData>>;
445
+ export interface ReportOffensivePostGameCarnageReportPlayerParams {
446
+ /** The ID of the activity where you ran into the brigand that you're reporting. */
447
+ activityId: string;
448
+ }
449
+ /**
450
+ * Report a player that you met in an activity that was engaging in ToS-violating
451
+ * activities. Both you and the offending player must have played in the activityId
452
+ * passed in. Please use this judiciously and only when you have strong suspicions
453
+ * of violation, pretty please.
454
+ */
455
+ export declare function reportOffensivePostGameCarnageReportPlayer(
456
+ http: HttpClient,
457
+ params: ReportOffensivePostGameCarnageReportPlayerParams,
458
+ body: DestinyReportOffensePgcrRequest
459
+ ): Promise<ServerResponse<number>>;
460
+ /** Gets historical stats definitions. */
461
+ export declare function getHistoricalStatsDefinition(http: HttpClient): Promise<
462
+ ServerResponse<{
463
+ [key: string]: DestinyHistoricalStatsDefinition;
464
+ }>
465
+ >;
466
+ export interface GetClanLeaderboardsParams {
467
+ /** Group ID of the clan whose leaderboards you wish to fetch. */
468
+ groupId: string;
469
+ /**
470
+ * Maximum number of top players to return. Use a large number to get entire
471
+ * leaderboard.
472
+ */
473
+ maxtop?: number;
474
+ /**
475
+ * List of game modes for which to get leaderboards. See the documentation for
476
+ * DestinyActivityModeType for valid values, and pass in string representation,
477
+ * comma delimited.
478
+ */
479
+ modes?: string;
480
+ /** ID of stat to return rather than returning all Leaderboard stats. */
481
+ statid?: string;
482
+ }
483
+ /**
484
+ * Gets leaderboards with the signed in user's friends and the supplied
485
+ * destinyMembershipId as the focus. PREVIEW: This endpoint is still in beta, and
486
+ * may experience rough edges. The schema is in final form, but there may be bugs
487
+ * that prevent desirable operation.
488
+ */
489
+ export declare function getClanLeaderboards(
490
+ http: HttpClient,
491
+ params: GetClanLeaderboardsParams
492
+ ): Promise<
493
+ ServerResponse<{
494
+ [key: string]: {
495
+ [key: string]: DestinyLeaderboard;
496
+ };
497
+ }>
498
+ >;
499
+ export interface GetClanAggregateStatsParams {
500
+ /** Group ID of the clan whose leaderboards you wish to fetch. */
501
+ groupId: string;
502
+ /**
503
+ * List of game modes for which to get leaderboards. See the documentation for
504
+ * DestinyActivityModeType for valid values, and pass in string representation,
505
+ * comma delimited.
506
+ */
507
+ modes?: string;
508
+ }
509
+ /**
510
+ * Gets aggregated stats for a clan using the same categories as the clan
511
+ * leaderboards. PREVIEW: This endpoint is still in beta, and may experience rough
512
+ * edges. The schema is in final form, but there may be bugs that prevent desirable
513
+ * operation.
514
+ */
515
+ export declare function getClanAggregateStats(
516
+ http: HttpClient,
517
+ params: GetClanAggregateStatsParams
518
+ ): Promise<ServerResponse<DestinyClanAggregateStat[]>>;
519
+ export interface GetLeaderboardsParams {
520
+ /** The Destiny membershipId of the user to retrieve. */
521
+ destinyMembershipId: string;
522
+ /**
523
+ * Maximum number of top players to return. Use a large number to get entire
524
+ * leaderboard.
525
+ */
526
+ maxtop?: number;
527
+ /** A valid non-BungieNet membership type. */
528
+ membershipType: BungieMembershipType;
529
+ /**
530
+ * List of game modes for which to get leaderboards. See the documentation for
531
+ * DestinyActivityModeType for valid values, and pass in string representation,
532
+ * comma delimited.
533
+ */
534
+ modes?: string;
535
+ /** ID of stat to return rather than returning all Leaderboard stats. */
536
+ statid?: string;
537
+ }
538
+ /**
539
+ * Gets leaderboards with the signed in user's friends and the supplied
540
+ * destinyMembershipId as the focus. PREVIEW: This endpoint has not yet been
541
+ * implemented. It is being returned for a preview of future functionality, and for
542
+ * public comment/suggestion/preparation.
543
+ */
544
+ export declare function getLeaderboards(
545
+ http: HttpClient,
546
+ params: GetLeaderboardsParams
547
+ ): Promise<
548
+ ServerResponse<{
549
+ [key: string]: {
550
+ [key: string]: DestinyLeaderboard;
551
+ };
552
+ }>
553
+ >;
554
+ export interface GetLeaderboardsForCharacterParams {
555
+ /**
556
+ * The specific character to build the leaderboard around for the provided Destiny
557
+ * Membership.
558
+ */
559
+ characterId: string;
560
+ /** The Destiny membershipId of the user to retrieve. */
561
+ destinyMembershipId: string;
562
+ /**
563
+ * Maximum number of top players to return. Use a large number to get entire
564
+ * leaderboard.
565
+ */
566
+ maxtop?: number;
567
+ /** A valid non-BungieNet membership type. */
568
+ membershipType: BungieMembershipType;
569
+ /**
570
+ * List of game modes for which to get leaderboards. See the documentation for
571
+ * DestinyActivityModeType for valid values, and pass in string representation,
572
+ * comma delimited.
573
+ */
574
+ modes?: string;
575
+ /** ID of stat to return rather than returning all Leaderboard stats. */
576
+ statid?: string;
577
+ }
578
+ /**
579
+ * Gets leaderboards with the signed in user's friends and the supplied
580
+ * destinyMembershipId as the focus. PREVIEW: This endpoint is still in beta, and
581
+ * may experience rough edges. The schema is in final form, but there may be bugs
582
+ * that prevent desirable operation.
583
+ */
584
+ export declare function getLeaderboardsForCharacter(
585
+ http: HttpClient,
586
+ params: GetLeaderboardsForCharacterParams
587
+ ): Promise<
588
+ ServerResponse<{
589
+ [key: string]: {
590
+ [key: string]: DestinyLeaderboard;
591
+ };
592
+ }>
593
+ >;
594
+ export interface SearchDestinyEntitiesParams {
595
+ /** Page number to return, starting with 0. */
596
+ page?: number;
597
+ /** The string to use when searching for Destiny entities. */
598
+ searchTerm: string;
599
+ /**
600
+ * The type of entity for whom you would like results. These correspond to the
601
+ * entity's definition contract name. For instance, if you are looking for items,
602
+ * this property should be 'DestinyInventoryItemDefinition'.
603
+ */
604
+ type: string;
605
+ }
606
+ /** Gets a page list of Destiny items. */
607
+ export declare function searchDestinyEntities(
608
+ http: HttpClient,
609
+ params: SearchDestinyEntitiesParams
610
+ ): Promise<ServerResponse<DestinyEntitySearchResult>>;
611
+ export interface GetHistoricalStatsParams {
612
+ /**
613
+ * The id of the character to retrieve. You can omit this character ID or set it to
614
+ * 0 to get aggregate stats across all characters.
615
+ */
616
+ characterId: string;
617
+ /**
618
+ * Last day to return when daily stats are requested. Use the format YYYY-MM-DD.
619
+ * Currently, we cannot allow more than 31 days of daily data to be requested in a
620
+ * single request.
621
+ */
622
+ dayend?: string;
623
+ /**
624
+ * First day to return when daily stats are requested. Use the format YYYY-MM-DD.
625
+ * Currently, we cannot allow more than 31 days of daily data to be requested in a
626
+ * single request.
627
+ */
628
+ daystart?: string;
629
+ /** The Destiny membershipId of the user to retrieve. */
630
+ destinyMembershipId: string;
631
+ /**
632
+ * Group of stats to include, otherwise only general stats are returned. Comma
633
+ * separated list is allowed. Values: General, Weapons, Medals
634
+ */
635
+ groups?: DestinyStatsGroupType[];
636
+ /** A valid non-BungieNet membership type. */
637
+ membershipType: BungieMembershipType;
638
+ /**
639
+ * Game modes to return. See the documentation for DestinyActivityModeType for
640
+ * valid values, and pass in string representation, comma delimited.
641
+ */
642
+ modes?: DestinyActivityModeType[];
643
+ /**
644
+ * Indicates a specific period type to return. Optional. May be: Daily, AllTime, or
645
+ * Activity
646
+ */
647
+ periodType?: PeriodType;
648
+ }
649
+ /** Gets historical stats for indicated character. */
650
+ export declare function getHistoricalStats(
651
+ http: HttpClient,
652
+ params: GetHistoricalStatsParams
653
+ ): Promise<
654
+ ServerResponse<{
655
+ [key: string]: DestinyHistoricalStatsByPeriod;
656
+ }>
657
+ >;
658
+ export interface GetHistoricalStatsForAccountParams {
659
+ /** The Destiny membershipId of the user to retrieve. */
660
+ destinyMembershipId: string;
661
+ /**
662
+ * Groups of stats to include, otherwise only general stats are returned. Comma
663
+ * separated list is allowed. Values: General, Weapons, Medals.
664
+ */
665
+ groups?: DestinyStatsGroupType[];
666
+ /** A valid non-BungieNet membership type. */
667
+ membershipType: BungieMembershipType;
668
+ }
669
+ /**
670
+ * Gets aggregate historical stats organized around each character for a given
671
+ * account.
672
+ */
673
+ export declare function getHistoricalStatsForAccount(
674
+ http: HttpClient,
675
+ params: GetHistoricalStatsForAccountParams
676
+ ): Promise<ServerResponse<DestinyHistoricalStatsAccountResult>>;
677
+ export interface GetActivityHistoryParams {
678
+ /** The id of the character to retrieve. */
679
+ characterId: string;
680
+ /** Number of rows to return */
681
+ count?: number;
682
+ /** The Destiny membershipId of the user to retrieve. */
683
+ destinyMembershipId: string;
684
+ /** A valid non-BungieNet membership type. */
685
+ membershipType: BungieMembershipType;
686
+ /**
687
+ * A filter for the activity mode to be returned. None returns all activities. See
688
+ * the documentation for DestinyActivityModeType for valid values, and pass in
689
+ * string representation.
690
+ */
691
+ mode?: DestinyActivityModeType;
692
+ /** Page number to return, starting with 0. */
693
+ page?: number;
694
+ }
695
+ /** Gets activity history stats for indicated character. */
696
+ export declare function getActivityHistory(
697
+ http: HttpClient,
698
+ params: GetActivityHistoryParams
699
+ ): Promise<ServerResponse<DestinyActivityHistoryResults>>;
700
+ export interface GetUniqueWeaponHistoryParams {
701
+ /** The id of the character to retrieve. */
702
+ characterId: string;
703
+ /** The Destiny membershipId of the user to retrieve. */
704
+ destinyMembershipId: string;
705
+ /** A valid non-BungieNet membership type. */
706
+ membershipType: BungieMembershipType;
707
+ }
708
+ /** Gets details about unique weapon usage, including all exotic weapons. */
709
+ export declare function getUniqueWeaponHistory(
710
+ http: HttpClient,
711
+ params: GetUniqueWeaponHistoryParams
712
+ ): Promise<ServerResponse<DestinyHistoricalWeaponStatsData>>;
713
+ export interface GetDestinyAggregateActivityStatsParams {
714
+ /** The specific character whose activities should be returned. */
715
+ characterId: string;
716
+ /** The Destiny membershipId of the user to retrieve. */
717
+ destinyMembershipId: string;
718
+ /** A valid non-BungieNet membership type. */
719
+ membershipType: BungieMembershipType;
720
+ }
721
+ /**
722
+ * Gets all activities the character has participated in together with aggregate
723
+ * statistics for those activities.
724
+ */
725
+ export declare function getDestinyAggregateActivityStats(
726
+ http: HttpClient,
727
+ params: GetDestinyAggregateActivityStatsParams
728
+ ): Promise<ServerResponse<DestinyAggregateActivityResults>>;
729
+ export interface GetPublicMilestoneContentParams {
730
+ /** The identifier for the milestone to be returned. */
731
+ milestoneHash: number;
732
+ }
733
+ /** Gets custom localized content for the milestone of the given hash, if it exists. */
734
+ export declare function getPublicMilestoneContent(
735
+ http: HttpClient,
736
+ params: GetPublicMilestoneContentParams
737
+ ): Promise<ServerResponse<DestinyMilestoneContent>>;
738
+ /** Gets public information about currently available Milestones. */
739
+ export declare function getPublicMilestones(http: HttpClient): Promise<
740
+ ServerResponse<{
741
+ [key: number]: DestinyPublicMilestone;
742
+ }>
743
+ >;
744
+ /** Initialize a request to perform an advanced write action. */
745
+ export declare function awaInitializeRequest(
746
+ http: HttpClient,
747
+ body: AwaPermissionRequested
748
+ ): Promise<ServerResponse<AwaInitializeResponse>>;
749
+ /**
750
+ * Provide the result of the user interaction. Called by the Bungie Destiny App to
751
+ * approve or reject a request.
752
+ */
753
+ export declare function awaProvideAuthorizationResult(
754
+ http: HttpClient,
755
+ body: AwaUserResponse
756
+ ): Promise<ServerResponse<number>>;
757
+ export interface AwaGetActionTokenParams {
758
+ /** The identifier for the advanced write action request. */
759
+ correlationId: string;
760
+ }
761
+ /** Returns the action token if user approves the request. */
762
+ export declare function awaGetActionToken(
763
+ http: HttpClient,
764
+ params: AwaGetActionTokenParams
765
+ ): Promise<ServerResponse<AwaAuthorizationResult>>;