@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,35 @@
1
+ import { get, post } from '../http.js';
2
+ const API_BASE = 'https://www.bungie.net/Platform/User/';
3
+ export function getBungieNetUserById(http, params) {
4
+ return get(http, `${API_BASE}GetBungieNetUserById/${params.id}/`);
5
+ }
6
+ export function getSanitizedPlatformDisplayNames(http, params) {
7
+ return get(http, `${API_BASE}GetSanitizedPlatformDisplayNames/${params.membershipId}/`);
8
+ }
9
+ export function getCredentialTypesForTargetAccount(http, params) {
10
+ return get(http, `${API_BASE}GetCredentialTypesForTargetAccount/${params.membershipId}/`);
11
+ }
12
+ export function getAvailableThemes(http) {
13
+ return get(http, `${API_BASE}GetAvailableThemes/`);
14
+ }
15
+ export function getMembershipDataById(http, params) {
16
+ return get(
17
+ http,
18
+ `${API_BASE}GetMembershipsById/${params.membershipId}/${params.membershipType}/`
19
+ );
20
+ }
21
+ export function getMembershipDataForCurrentUser(http) {
22
+ return get(http, `${API_BASE}GetMembershipsForCurrentUser/`);
23
+ }
24
+ export function getMembershipFromHardLinkedCredential(http, params) {
25
+ return get(
26
+ http,
27
+ `${API_BASE}GetMembershipFromHardLinkedCredential/${params.crType}/${params.credential}/`
28
+ );
29
+ }
30
+ export function searchByGlobalNamePrefix(http, params) {
31
+ return get(http, `${API_BASE}Search/Prefix/${params.displayNamePrefix}/${params.page}/`);
32
+ }
33
+ export function searchByGlobalNamePost(http, params, body) {
34
+ return post(http, `${API_BASE}Search/GlobalName/${params.page}/`, body);
35
+ }
@@ -0,0 +1,16 @@
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
+ export * from '../common.js';
13
+ export * from '../platform.js';
14
+ export type { HttpClientConfig, HttpClient } from '../http.js';
15
+ export * from './api.js';
16
+ export * from './interfaces.js';
@@ -0,0 +1,5 @@
1
+ export * from '../common.js';
2
+ export * from '../platform.js';
3
+ export * from './api.js';
4
+ export * from './interfaces.js';
5
+ export {};
@@ -0,0 +1,320 @@
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 { BungieMembershipType } from '../common.js';
13
+ import { GroupUserInfoCard } from '../groupv2/interfaces.js';
14
+ import { IgnoreResponse } from '../platform.js';
15
+ /**
16
+ * This contract supplies basic information commonly used to display a minimal
17
+ * amount of information about a user. Take care to not add more properties here
18
+ * unless the property applies in all (or at least the majority) of the situations
19
+ * where UserInfoCard is used. Avoid adding game specific or platform specific
20
+ * details here. In cases where UserInfoCard is a subset of the data needed in a
21
+ * contract, use UserInfoCard as a property of other contracts.
22
+ */
23
+ export interface UserInfoCard {
24
+ /**
25
+ * A platform specific additional display name - ex: psn Real Name, bnet Unique
26
+ * Name, etc.
27
+ */
28
+ readonly supplementalDisplayName: string;
29
+ /** URL the Icon if available. */
30
+ readonly iconPath: string;
31
+ /**
32
+ * If there is a cross save override in effect, this value will tell you the type
33
+ * that is overridding this one.
34
+ */
35
+ readonly crossSaveOverride: BungieMembershipType;
36
+ /**
37
+ * The list of Membership Types indicating the platforms on which this Membership
38
+ * can be used.
39
+ *
40
+ * Not in Cross Save = its original membership type. Cross Save Primary = Any
41
+ * membership types it is overridding, and its original membership type Cross Save
42
+ * Overridden = Empty list
43
+ */
44
+ readonly applicableMembershipTypes: BungieMembershipType[];
45
+ /** If True, this is a public user membership. */
46
+ readonly isPublic: boolean;
47
+ /** Type of the membership. Not necessarily the native type. */
48
+ readonly membershipType: BungieMembershipType;
49
+ /** Membership ID as they user is known in the Accounts service */
50
+ readonly membershipId: string;
51
+ /**
52
+ * Display Name the player has chosen for themselves. The display name is optional
53
+ * when the data type is used as input to a platform API.
54
+ */
55
+ readonly displayName: string;
56
+ /** The bungie global display name, if set. */
57
+ readonly bungieGlobalDisplayName: string;
58
+ /** The bungie global display name code, if set. */
59
+ readonly bungieGlobalDisplayNameCode?: number;
60
+ }
61
+ /**
62
+ * The types of credentials the Accounts system supports. This is the external
63
+ * facing enum used in place of the internal-only Bungie.SharedDefinitions.
64
+ * CredentialType.
65
+ */
66
+ export declare const enum BungieCredentialType {
67
+ None = 0,
68
+ Xuid = 1,
69
+ Psnid = 2,
70
+ Wlid = 3,
71
+ Fake = 4,
72
+ Facebook = 5,
73
+ Google = 8,
74
+ Windows = 9,
75
+ DemonId = 10,
76
+ SteamId = 12,
77
+ BattleNetId = 14,
78
+ StadiaId = 16,
79
+ TwitchId = 18,
80
+ EgsId = 20,
81
+ }
82
+ export interface UserSearchPrefixRequest {
83
+ readonly displayNamePrefix: string;
84
+ }
85
+ export interface GeneralUser {
86
+ readonly membershipId: string;
87
+ readonly uniqueName: string;
88
+ readonly normalizedName: string;
89
+ readonly displayName: string;
90
+ readonly profilePicture: number;
91
+ readonly profileTheme: number;
92
+ readonly userTitle: number;
93
+ readonly successMessageFlags: string;
94
+ readonly isDeleted: boolean;
95
+ readonly about: string;
96
+ readonly firstAccess?: string;
97
+ readonly lastUpdate?: string;
98
+ readonly legacyPortalUID?: string;
99
+ readonly context: UserToUserContext;
100
+ readonly psnDisplayName: string;
101
+ readonly xboxDisplayName: string;
102
+ readonly fbDisplayName: string;
103
+ readonly showActivity?: boolean;
104
+ readonly locale: string;
105
+ readonly localeInheritDefault: boolean;
106
+ readonly lastBanReportId?: string;
107
+ readonly showGroupMessaging: boolean;
108
+ readonly profilePicturePath: string;
109
+ readonly profilePictureWidePath: string;
110
+ readonly profileThemeName: string;
111
+ readonly userTitleDisplay: string;
112
+ readonly statusText: string;
113
+ readonly statusDate: string;
114
+ readonly profileBanExpire?: string;
115
+ readonly blizzardDisplayName: string;
116
+ readonly steamDisplayName: string;
117
+ readonly stadiaDisplayName: string;
118
+ readonly twitchDisplayName: string;
119
+ readonly cachedBungieGlobalDisplayName: string;
120
+ readonly cachedBungieGlobalDisplayNameCode?: number;
121
+ readonly egsDisplayName: string;
122
+ }
123
+ export interface UserToUserContext {
124
+ readonly isFollowing: boolean;
125
+ readonly ignoreStatus: IgnoreResponse;
126
+ readonly globalIgnoreEndDate?: string;
127
+ }
128
+ export interface GetCredentialTypesForAccountResponse {
129
+ readonly credentialType: BungieCredentialType;
130
+ readonly credentialDisplayName: string;
131
+ readonly isPublic: boolean;
132
+ readonly credentialAsString: string;
133
+ }
134
+ export interface UserTheme {
135
+ readonly userThemeId: number;
136
+ readonly userThemeName: string;
137
+ readonly userThemeDescription: string;
138
+ }
139
+ export interface UserMembershipData {
140
+ /**
141
+ * this allows you to see destiny memberships that are visible and linked to this
142
+ * account (regardless of whether or not they have characters on the world server)
143
+ */
144
+ readonly destinyMemberships: GroupUserInfoCard[];
145
+ /**
146
+ * If this property is populated, it will have the membership ID of the account
147
+ * considered to be "primary" in this user's cross save relationship.
148
+ *
149
+ * If null, this user has no cross save relationship, nor primary account.
150
+ */
151
+ readonly primaryMembershipId?: string;
152
+ /**
153
+ * If this property is populated, it will have the membershipId for the Marathon
154
+ * Membership on this user's account
155
+ *
156
+ * If null, this user has no Marathon (i.e. "GoliathGame") membership.
157
+ */
158
+ readonly marathonMembershipId?: string;
159
+ readonly bungieNetUser: GeneralUser;
160
+ }
161
+ export interface HardLinkedUserMembership {
162
+ readonly membershipType: BungieMembershipType;
163
+ readonly membershipId: string;
164
+ readonly CrossSaveOverriddenType: BungieMembershipType;
165
+ readonly CrossSaveOverriddenMembershipId?: string;
166
+ }
167
+ export interface UserSearchResponse {
168
+ readonly searchResults: UserSearchResponseDetail[];
169
+ readonly page: number;
170
+ readonly hasMore: boolean;
171
+ }
172
+ export interface UserSearchResponseDetail {
173
+ readonly bungieGlobalDisplayName: string;
174
+ readonly bungieGlobalDisplayNameCode?: number;
175
+ readonly bungieNetMembershipId?: string;
176
+ readonly destinyMemberships: UserInfoCard[];
177
+ }
178
+ /** Very basic info about a user as returned by the Account server. */
179
+ export interface UserMembership {
180
+ /** Type of the membership. Not necessarily the native type. */
181
+ readonly membershipType: BungieMembershipType;
182
+ /** Membership ID as they user is known in the Accounts service */
183
+ readonly membershipId: string;
184
+ /**
185
+ * Display Name the player has chosen for themselves. The display name is optional
186
+ * when the data type is used as input to a platform API.
187
+ */
188
+ readonly displayName: string;
189
+ /** The bungie global display name, if set. */
190
+ readonly bungieGlobalDisplayName: string;
191
+ /** The bungie global display name code, if set. */
192
+ readonly bungieGlobalDisplayNameCode?: number;
193
+ }
194
+ export interface ExactSearchRequest {
195
+ readonly displayName: string;
196
+ readonly displayNameCode: number;
197
+ }
198
+ /** The set of all email subscription/opt-in settings and definitions. */
199
+ export interface EmailSettings {
200
+ /** Keyed by the name identifier of the opt-in definition. */
201
+ readonly optInDefinitions: {
202
+ [key: string]: EmailOptInDefinition;
203
+ };
204
+ /** Keyed by the name identifier of the Subscription definition. */
205
+ readonly subscriptionDefinitions: {
206
+ [key: string]: EmailSubscriptionDefinition;
207
+ };
208
+ /** Keyed by the name identifier of the View definition. */
209
+ readonly views: {
210
+ [key: string]: EmailViewDefinition;
211
+ };
212
+ }
213
+ /**
214
+ * Defines a single opt-in category: a wide-scoped permission to send emails for
215
+ * the subject related to the opt-in.
216
+ */
217
+ export interface EmailOptInDefinition {
218
+ /** The unique identifier for this opt-in category. */
219
+ readonly name: string;
220
+ /**
221
+ * The flag value for this opt-in category. For historical reasons, this is defined
222
+ * as a flags enum.
223
+ *
224
+ * This enum represents a set of flags - use bitwise operators to check which of
225
+ * these match your value.
226
+ */
227
+ readonly value: OptInFlags;
228
+ /**
229
+ * If true, this opt-in setting should be set by default in situations where
230
+ * accounts are created without explicit choices about what they're opting into.
231
+ */
232
+ readonly setByDefault: boolean;
233
+ /** Information about the dependent subscriptions for this opt-in. */
234
+ readonly dependentSubscriptions: EmailSubscriptionDefinition[];
235
+ }
236
+ /**
237
+ * This enum represents a set of flags - use bitwise operators to check which of
238
+ * these match your value.
239
+ */
240
+ export declare const enum OptInFlags {
241
+ None = 0,
242
+ Newsletter = 1,
243
+ System = 2,
244
+ Marketing = 4,
245
+ UserResearch = 8,
246
+ CustomerService = 16,
247
+ Social = 32,
248
+ PlayTests = 64,
249
+ PlayTestsLocal = 128,
250
+ Careers = 256,
251
+ }
252
+ /**
253
+ * Defines a single subscription: permission to send emails for a specific, focused
254
+ * subject (generally timeboxed, such as for a specific release of a product or
255
+ * feature).
256
+ */
257
+ export interface EmailSubscriptionDefinition {
258
+ /** The unique identifier for this subscription. */
259
+ readonly name: string;
260
+ /** A dictionary of localized text for the EMail Opt-in setting, keyed by the locale. */
261
+ readonly localization: {
262
+ [key: string]: EMailSettingSubscriptionLocalization;
263
+ };
264
+ /** The bitflag value for this subscription. Should be a unique power of two value. */
265
+ readonly value: string;
266
+ }
267
+ /**
268
+ * Localized text relevant to a given EMail setting in a given localization. Extra
269
+ * settings specifically for subscriptions.
270
+ */
271
+ export interface EMailSettingSubscriptionLocalization {
272
+ readonly unknownUserDescription: string;
273
+ readonly registeredUserDescription: string;
274
+ readonly unregisteredUserDescription: string;
275
+ readonly unknownUserActionText: string;
276
+ readonly knownUserActionText: string;
277
+ readonly title: string;
278
+ readonly description: string;
279
+ }
280
+ /**
281
+ * Represents a data-driven view for Email settings. Web/Mobile UI can use this
282
+ * data to show new EMail settings consistently without further manual work.
283
+ */
284
+ export interface EmailViewDefinition {
285
+ /** The identifier for this view. */
286
+ readonly name: string;
287
+ /** The ordered list of settings to show in this view. */
288
+ readonly viewSettings: EmailViewDefinitionSetting[];
289
+ }
290
+ export interface EmailViewDefinitionSetting {
291
+ /**
292
+ * The identifier for this UI Setting, which can be used to relate it to custom
293
+ * strings or other data as desired.
294
+ */
295
+ readonly name: string;
296
+ /** A dictionary of localized text for the EMail setting, keyed by the locale. */
297
+ readonly localization: {
298
+ [key: string]: EMailSettingLocalization;
299
+ };
300
+ /**
301
+ * If true, this setting should be set by default if the user hasn't chosen whether
302
+ * it's set or cleared yet.
303
+ */
304
+ readonly setByDefault: boolean;
305
+ /**
306
+ * The OptInFlags value to set or clear if this setting is set or cleared in the UI.
307
+ * It is the aggregate of all underlying opt-in flags related to this setting.
308
+ *
309
+ * This enum represents a set of flags - use bitwise operators to check which of
310
+ * these match your value.
311
+ */
312
+ readonly optInAggregateValue: OptInFlags;
313
+ /** The subscriptions to show as children of this setting, if any. */
314
+ readonly subscriptions: EmailSubscriptionDefinition[];
315
+ }
316
+ /** Localized text relevant to a given EMail setting in a given localization. */
317
+ export interface EMailSettingLocalization {
318
+ readonly title: string;
319
+ readonly description: string;
320
+ }
@@ -0,0 +1,28 @@
1
+ export var BungieCredentialType = {
2
+ None: 0,
3
+ Xuid: 1,
4
+ Psnid: 2,
5
+ Wlid: 3,
6
+ Fake: 4,
7
+ Facebook: 5,
8
+ Google: 8,
9
+ Windows: 9,
10
+ DemonId: 10,
11
+ SteamId: 12,
12
+ BattleNetId: 14,
13
+ StadiaId: 16,
14
+ TwitchId: 18,
15
+ EgsId: 20,
16
+ };
17
+ export var OptInFlags = {
18
+ None: 0,
19
+ Newsletter: 1,
20
+ System: 2,
21
+ Marketing: 4,
22
+ UserResearch: 8,
23
+ CustomerService: 16,
24
+ Social: 32,
25
+ PlayTests: 64,
26
+ PlayTestsLocal: 128,
27
+ Careers: 256,
28
+ };
package/package.json ADDED
@@ -0,0 +1,60 @@
1
+ {
2
+ "name": "@taskeren/bungie-api-ts",
3
+ "version": "5.10.0",
4
+ "description": "TypeScript mappings for the Bungie.net API",
5
+ "type": "module",
6
+ "sideEffects": false,
7
+ "jest": {
8
+ "preset": "ts-jest/presets/js-with-babel-esm",
9
+ "testEnvironment": "node",
10
+ "moduleNameMapper": {
11
+ "^(\\.{1,2}/.*)\\.js$": "$1"
12
+ }
13
+ },
14
+ "engines": {
15
+ "node": ">=13.2.0"
16
+ },
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "https://github.com/DestinyItemManager/bungie-api-ts.git"
20
+ },
21
+ "author": "Ben Hollis",
22
+ "license": "MIT",
23
+ "bugs": {
24
+ "url": "https://github.com/DestinyItemManager/bungie-api-ts/issues"
25
+ },
26
+ "keywords": [
27
+ "Destiny",
28
+ "Bungie",
29
+ "Bungie.net",
30
+ "TypeScript"
31
+ ],
32
+ "homepage": "https://github.com/DestinyItemManager/bungie-api-ts",
33
+ "devDependencies": {
34
+ "@babel/cli": "^7.16.0",
35
+ "@babel/core": "^7.16.0",
36
+ "@babel/preset-env": "^7.16.4",
37
+ "@babel/preset-typescript": "^7.16.0",
38
+ "@types/jest": "^29.2.4",
39
+ "@types/lodash": "^4.14.191",
40
+ "@types/node": "^18.11.13",
41
+ "@types/node-fetch": "^2.6.2",
42
+ "@types/underscore": "^1.11.3",
43
+ "babel-jest": "^29.3.1",
44
+ "jest": "^29.3.1",
45
+ "lodash": "^4.17.21",
46
+ "mkdirp": "^2.1.3",
47
+ "openapi3-ts": "^2.0.1",
48
+ "prettier": "^2.8.1",
49
+ "ts-jest": "^29.0.3",
50
+ "typescript": "^5.7.3"
51
+ },
52
+ "packageManager": "pnpm@8.15.9+sha512.499434c9d8fdd1a2794ebf4552b3b25c0a633abcee5bb15e7b5de90f32f47b513aca98cd5cfd001c31f0db454bc3804edccd578501e4ca293a6816166bbd9f81",
53
+ "scripts": {
54
+ "tsc": "tsc",
55
+ "start": "sh ./build.sh",
56
+ "submodule": "git submodule init && git submodule update",
57
+ "updatespec": "git submodule update --remote --merge",
58
+ "test": "jest"
59
+ }
60
+ }
@@ -0,0 +1,5 @@
1
+ import { getDestinyManifest } from './lib/destiny2/api.js';
2
+
3
+ const fakeHttp = async (config) => console.log(config.url);
4
+
5
+ getDestinyManifest(fakeHttp);