discord-sb.js 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/package.json +1 -1
- package/src/managers/QuestManager.js +6 -2
- package/src/managers/UserManager.js +46 -0
- package/src/structures/User.js +143 -0
- package/typings/enums.d.ts +1 -101
- package/typings/index.d.ts +54 -0
package/package.json
CHANGED
|
@@ -278,8 +278,11 @@ class QuestManager extends BaseManager {
|
|
|
278
278
|
* @returns {Promise<void>}
|
|
279
279
|
*/
|
|
280
280
|
async doingQuest(quest) {
|
|
281
|
-
|
|
281
|
+
if (!(quest instanceof Quest)) {
|
|
282
|
+
quest = new Quest(quest);
|
|
283
|
+
}
|
|
282
284
|
|
|
285
|
+
const questName = quest.config.messages?.quest_name || 'Unknown Quest';
|
|
283
286
|
if (!quest.isEnrolledQuest()) await this.acceptQuest(quest.id);
|
|
284
287
|
|
|
285
288
|
const taskConfig = quest.config.task_config;
|
|
@@ -364,7 +367,8 @@ class QuestManager extends BaseManager {
|
|
|
364
367
|
|
|
365
368
|
/**
|
|
366
369
|
* Get cache size
|
|
367
|
-
* @
|
|
370
|
+
* @type {number}
|
|
371
|
+
* @readonly
|
|
368
372
|
*/
|
|
369
373
|
get size() {
|
|
370
374
|
return this.cache.size;
|
|
@@ -7,6 +7,33 @@ const { Message } = require('../structures/Message');
|
|
|
7
7
|
const ThreadMember = require('../structures/ThreadMember');
|
|
8
8
|
const User = require('../structures/User');
|
|
9
9
|
|
|
10
|
+
const ALLOWED_CONNECTED_ACCOUNT_TYPES = new Set([
|
|
11
|
+
'spotify',
|
|
12
|
+
'twitter',
|
|
13
|
+
'x',
|
|
14
|
+
'github',
|
|
15
|
+
'youtube',
|
|
16
|
+
'twitch',
|
|
17
|
+
'steam',
|
|
18
|
+
'reddit',
|
|
19
|
+
'facebook',
|
|
20
|
+
'roblox',
|
|
21
|
+
'tiktok',
|
|
22
|
+
'domain',
|
|
23
|
+
'bluesky',
|
|
24
|
+
'amazonmusic',
|
|
25
|
+
'battlenet',
|
|
26
|
+
'bungeenet',
|
|
27
|
+
'crunchyroll',
|
|
28
|
+
'ebay',
|
|
29
|
+
'epicgames',
|
|
30
|
+
'lol',
|
|
31
|
+
'paypal',
|
|
32
|
+
'playstation',
|
|
33
|
+
'riotgames',
|
|
34
|
+
'xbox',
|
|
35
|
+
]);
|
|
36
|
+
|
|
10
37
|
/**
|
|
11
38
|
* Manages API methods for users and stores their cache.
|
|
12
39
|
* @extends {CachedManager}
|
|
@@ -118,6 +145,25 @@ class UserManager extends CachedManager {
|
|
|
118
145
|
data.accent_color = profile.user_profile.accent_color;
|
|
119
146
|
}
|
|
120
147
|
}
|
|
148
|
+
if (profile) {
|
|
149
|
+
data.premiumSince = profile.premium_since ?? null;
|
|
150
|
+
data.premiumGuildSince = profile.premium_guild_since ?? null;
|
|
151
|
+
if (typeof profile.premium_type !== 'undefined') data.premiumType = profile.premium_type;
|
|
152
|
+
data.connectedAccounts = Array.isArray(profile.connected_accounts)
|
|
153
|
+
? profile.connected_accounts.filter(ca => ALLOWED_CONNECTED_ACCOUNT_TYPES.has(ca?.type))
|
|
154
|
+
: null;
|
|
155
|
+
if (typeof profile.legacy_username !== 'undefined') data.legacyUsername = profile.legacy_username;
|
|
156
|
+
else if (typeof profile.user?.legacy_username !== 'undefined') data.legacyUsername = profile.user.legacy_username;
|
|
157
|
+
if (typeof profile.user?.premium_type !== 'undefined' && typeof data.premiumType === 'undefined') {
|
|
158
|
+
data.premiumType = profile.user.premium_type;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
if (typeof data.premium_type !== 'undefined' && typeof data.premiumType === 'undefined') {
|
|
162
|
+
data.premiumType = data.premium_type;
|
|
163
|
+
}
|
|
164
|
+
data.mutualFriendsCount = profile?.mutual_friends_count ?? null;
|
|
165
|
+
data.mutualGuilds = profile?.mutual_guilds ?? null;
|
|
166
|
+
data.mutualGuildsCount = Array.isArray(data.mutualGuilds) ? data.mutualGuilds.length : null;
|
|
121
167
|
return this._add(data, cache);
|
|
122
168
|
}
|
|
123
169
|
|
package/src/structures/User.js
CHANGED
|
@@ -30,6 +30,22 @@ class User extends Base {
|
|
|
30
30
|
|
|
31
31
|
this.flags = null;
|
|
32
32
|
|
|
33
|
+
this.premiumSinceTimestamp = null;
|
|
34
|
+
|
|
35
|
+
this.premiumGuildSinceTimestamp = null;
|
|
36
|
+
|
|
37
|
+
this.premiumType = null;
|
|
38
|
+
|
|
39
|
+
this.legacyUsername = null;
|
|
40
|
+
|
|
41
|
+
this.connectedAccounts = null;
|
|
42
|
+
|
|
43
|
+
this.mutualFriendsCount = null;
|
|
44
|
+
|
|
45
|
+
this.mutualGuilds = null;
|
|
46
|
+
|
|
47
|
+
this.mutualGuildsCount = null;
|
|
48
|
+
|
|
33
49
|
this._patch(data);
|
|
34
50
|
}
|
|
35
51
|
|
|
@@ -136,6 +152,111 @@ class User extends Base {
|
|
|
136
152
|
this.pronouns = data.pronouns;
|
|
137
153
|
}
|
|
138
154
|
|
|
155
|
+
const premiumSince = 'premium_since' in data ? data.premium_since : data.premiumSince;
|
|
156
|
+
if (typeof premiumSince !== 'undefined') {
|
|
157
|
+
/**
|
|
158
|
+
* Timestamp the user started boosting Nitro
|
|
159
|
+
* @type {?number}
|
|
160
|
+
*/
|
|
161
|
+
this.premiumSinceTimestamp = premiumSince ? new Date(premiumSince).getTime() : null;
|
|
162
|
+
} else {
|
|
163
|
+
this.premiumSinceTimestamp ??= null;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
const premiumGuildSince = 'premium_guild_since' in data ? data.premium_guild_since : data.premiumGuildSince;
|
|
167
|
+
if (typeof premiumGuildSince !== 'undefined') {
|
|
168
|
+
/**
|
|
169
|
+
* Timestamp the user started boosting the mutual guild (if provided)
|
|
170
|
+
* @type {?number}
|
|
171
|
+
*/
|
|
172
|
+
this.premiumGuildSinceTimestamp = premiumGuildSince ? new Date(premiumGuildSince).getTime() : null;
|
|
173
|
+
} else {
|
|
174
|
+
this.premiumGuildSinceTimestamp ??= null;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
if ('premium_type' in data) {
|
|
178
|
+
/**
|
|
179
|
+
* Premium type level for this user
|
|
180
|
+
* @type {?number}
|
|
181
|
+
*/
|
|
182
|
+
this.premiumType = data.premium_type ?? null;
|
|
183
|
+
} else if ('premiumType' in data) {
|
|
184
|
+
this.premiumType = data.premiumType ?? null;
|
|
185
|
+
} else {
|
|
186
|
+
this.premiumType ??= null;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
if ('legacy_username' in data) {
|
|
190
|
+
/**
|
|
191
|
+
* Legacy username (pre-unique username migration)
|
|
192
|
+
* @type {?string}
|
|
193
|
+
*/
|
|
194
|
+
this.legacyUsername = data.legacy_username ?? null;
|
|
195
|
+
} else if ('legacyUsername' in data) {
|
|
196
|
+
this.legacyUsername = data.legacyUsername ?? null;
|
|
197
|
+
} else {
|
|
198
|
+
this.legacyUsername ??= null;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* @typedef {Object} ConnectedAccount
|
|
203
|
+
* @property {string} id The id of the connected account
|
|
204
|
+
* @property {string} name The name of the connected account
|
|
205
|
+
* @property {string} type The type of the connected account (ex: spotify, twitter, ...)
|
|
206
|
+
* @property {?boolean} [verified] Whether the connection is verified
|
|
207
|
+
* @property {?number} [visibility] Visibility of the connection
|
|
208
|
+
*/
|
|
209
|
+
|
|
210
|
+
if ('connected_accounts' in data) {
|
|
211
|
+
/**
|
|
212
|
+
* Connected accounts for this user
|
|
213
|
+
* @type {?ConnectedAccount[]}
|
|
214
|
+
*/
|
|
215
|
+
this.connectedAccounts = data.connected_accounts ?? null;
|
|
216
|
+
} else if ('connectedAccounts' in data) {
|
|
217
|
+
this.connectedAccounts = data.connectedAccounts ?? null;
|
|
218
|
+
} else {
|
|
219
|
+
this.connectedAccounts ??= null;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* @typedef {Object} MutualGuild
|
|
224
|
+
* @property {Snowflake} id The id of the mutual guild
|
|
225
|
+
* @property {?string} nick The nickname of the user in the mutual guild
|
|
226
|
+
*/
|
|
227
|
+
|
|
228
|
+
if ('mutualGuilds' in data) {
|
|
229
|
+
/**
|
|
230
|
+
* The guilds that this user shares with the client user
|
|
231
|
+
* @type {?MutualGuild[]}
|
|
232
|
+
*/
|
|
233
|
+
this.mutualGuilds = data.mutualGuilds ?? null;
|
|
234
|
+
} else {
|
|
235
|
+
this.mutualGuilds ??= null;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
if ('mutualGuildsCount' in data) {
|
|
239
|
+
/**
|
|
240
|
+
* The number of guilds that this user shares with the client user
|
|
241
|
+
* @type {?number}
|
|
242
|
+
*/
|
|
243
|
+
this.mutualGuildsCount = data.mutualGuildsCount;
|
|
244
|
+
} else if (this.mutualGuildsCount == null && Array.isArray(this.mutualGuilds)) {
|
|
245
|
+
this.mutualGuildsCount = this.mutualGuilds.length;
|
|
246
|
+
} else {
|
|
247
|
+
this.mutualGuildsCount ??= null;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
if ('mutualFriendsCount' in data) {
|
|
251
|
+
/**
|
|
252
|
+
* The number of friends that this user shares with the client user
|
|
253
|
+
* @type {?number}
|
|
254
|
+
*/
|
|
255
|
+
this.mutualFriendsCount = data.mutualFriendsCount;
|
|
256
|
+
} else {
|
|
257
|
+
this.mutualFriendsCount ??= null;
|
|
258
|
+
}
|
|
259
|
+
|
|
139
260
|
if ('system' in data) {
|
|
140
261
|
/**
|
|
141
262
|
* Whether the user is an Official Discord System user (part of the urgent message system)
|
|
@@ -303,6 +424,24 @@ class User extends Base {
|
|
|
303
424
|
return new Date(this.createdTimestamp);
|
|
304
425
|
}
|
|
305
426
|
|
|
427
|
+
/**
|
|
428
|
+
* The time the user started Nitro
|
|
429
|
+
* @type {?Date}
|
|
430
|
+
* @readonly
|
|
431
|
+
*/
|
|
432
|
+
get premiumSince() {
|
|
433
|
+
return this.premiumSinceTimestamp ? new Date(this.premiumSinceTimestamp) : null;
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
/**
|
|
437
|
+
* The time the user started boosting the mutual guild (if provided)
|
|
438
|
+
* @type {?Date}
|
|
439
|
+
* @readonly
|
|
440
|
+
*/
|
|
441
|
+
get premiumGuildSince() {
|
|
442
|
+
return this.premiumGuildSinceTimestamp ? new Date(this.premiumGuildSinceTimestamp) : null;
|
|
443
|
+
}
|
|
444
|
+
|
|
306
445
|
/**
|
|
307
446
|
* A link to the user's avatar.
|
|
308
447
|
* @param {ImageURLOptions} [options={}] Options for the Image URL
|
|
@@ -457,6 +596,10 @@ class User extends Base {
|
|
|
457
596
|
this.accentColor === user.accentColor &&
|
|
458
597
|
this.bio === user.bio &&
|
|
459
598
|
this.pronouns === user.pronouns &&
|
|
599
|
+
this.premiumSinceTimestamp === user.premiumSinceTimestamp &&
|
|
600
|
+
this.premiumGuildSinceTimestamp === user.premiumGuildSinceTimestamp &&
|
|
601
|
+
this.premiumType === user.premiumType &&
|
|
602
|
+
this.legacyUsername === user.legacyUsername &&
|
|
460
603
|
this.avatarDecorationData?.asset === user.avatarDecorationData?.asset &&
|
|
461
604
|
this.avatarDecorationData?.skuId === user.avatarDecorationData?.skuId &&
|
|
462
605
|
this.collectibles?.nameplate?.skuId === user.collectibles?.nameplate?.skuId &&
|
package/typings/enums.d.ts
CHANGED
|
@@ -434,104 +434,4 @@ export const enum ApplicationType {
|
|
|
434
434
|
* A limited application used for creator monetization (e.g. role subscription) SKUs
|
|
435
435
|
*/
|
|
436
436
|
CREATOR_MONETIZATION = 4,
|
|
437
|
-
}
|
|
438
|
-
|
|
439
|
-
export const enum ClientEvents {
|
|
440
|
-
RateLimit = 'rateLimit',
|
|
441
|
-
InvalidRequestWarning = 'invalidRequestWarning',
|
|
442
|
-
ApiResponse = 'apiResponse',
|
|
443
|
-
ApiRequest = 'apiRequest',
|
|
444
|
-
ClientReady = 'ready',
|
|
445
|
-
ApplicationCommandCreate = 'applicationCommandCreate',
|
|
446
|
-
ApplicationCommandDelete = 'applicationCommandDelete',
|
|
447
|
-
ApplicationCommandUpdate = 'applicationCommandUpdate',
|
|
448
|
-
ApplicationCommandPermissionsUpdate = 'applicationCommandPermissionsUpdate',
|
|
449
|
-
AutoModerationActionExecution = 'autoModerationActionExecution',
|
|
450
|
-
AutoModerationRuleCreate = 'autoModerationRuleCreate',
|
|
451
|
-
AutoModerationRuleDelete = 'autoModerationRuleDelete',
|
|
452
|
-
AutoModerationRuleUpdate = 'autoModerationRuleUpdate',
|
|
453
|
-
GuildAvailable = 'guildAvailable',
|
|
454
|
-
GuildCreate = 'guildCreate',
|
|
455
|
-
GuildDelete = 'guildDelete',
|
|
456
|
-
GuildUpdate = 'guildUpdate',
|
|
457
|
-
GuildUnavailable = 'guildUnavailable',
|
|
458
|
-
GuildMemberAdd = 'guildMemberAdd',
|
|
459
|
-
GuildMemberRemove = 'guildMemberRemove',
|
|
460
|
-
GuildMemberUpdate = 'guildMemberUpdate',
|
|
461
|
-
GuildMemberAvailable = 'guildMemberAvailable',
|
|
462
|
-
GuildMembersChunk = 'guildMembersChunk',
|
|
463
|
-
GuildIntegrationsUpdate = 'guildIntegrationsUpdate',
|
|
464
|
-
GuildRoleCreate = 'roleCreate',
|
|
465
|
-
GuildRoleDelete = 'roleDelete',
|
|
466
|
-
InviteCreate = 'inviteCreate',
|
|
467
|
-
InviteDelete = 'inviteDelete',
|
|
468
|
-
GuildRoleUpdate = 'roleUpdate',
|
|
469
|
-
GuildEmojiCreate = 'emojiCreate',
|
|
470
|
-
GuildEmojiDelete = 'emojiDelete',
|
|
471
|
-
GuildEmojiUpdate = 'emojiUpdate',
|
|
472
|
-
GuildBanAdd = 'guildBanAdd',
|
|
473
|
-
GuildBanRemove = 'guildBanRemove',
|
|
474
|
-
ChannelCreate = 'channelCreate',
|
|
475
|
-
ChannelDelete = 'channelDelete',
|
|
476
|
-
ChannelUpdate = 'channelUpdate',
|
|
477
|
-
ChannelPinsUpdate = 'channelPinsUpdate',
|
|
478
|
-
MessageCreate = 'messageCreate',
|
|
479
|
-
MessageDelete = 'messageDelete',
|
|
480
|
-
MessageUpdate = 'messageUpdate',
|
|
481
|
-
MessageBulkDelete = 'messageDeleteBulk',
|
|
482
|
-
MessageReactionAdd = 'messageReactionAdd',
|
|
483
|
-
MessageReactionRemove = 'messageReactionRemove',
|
|
484
|
-
MessageReactionRemoveAll = 'messageReactionRemoveAll',
|
|
485
|
-
MessageReactionRemoveEmoji = 'messageReactionRemoveEmoji',
|
|
486
|
-
ThreadCreate = 'threadCreate',
|
|
487
|
-
ThreadDelete = 'threadDelete',
|
|
488
|
-
ThreadUpdate = 'threadUpdate',
|
|
489
|
-
ThreadListSync = 'threadListSync',
|
|
490
|
-
ThreadMemberUpdate = 'threadMemberUpdate',
|
|
491
|
-
ThreadMembersUpdate = 'threadMembersUpdate',
|
|
492
|
-
UserUpdate = 'userUpdate',
|
|
493
|
-
PresenceUpdate = 'presenceUpdate',
|
|
494
|
-
VoiceServerUpdate = 'voiceServerUpdate',
|
|
495
|
-
VoiceStateUpdate = 'voiceStateUpdate',
|
|
496
|
-
TypingStart = 'typingStart',
|
|
497
|
-
WebhooksUpdate = 'webhookUpdate',
|
|
498
|
-
Error = 'error',
|
|
499
|
-
Warn = 'warn',
|
|
500
|
-
Debug = 'debug',
|
|
501
|
-
CacheSweep = 'cacheSweep',
|
|
502
|
-
ShardDisconnect = 'shardDisconnect',
|
|
503
|
-
ShardError = 'shardError',
|
|
504
|
-
ShardReconnecting = 'shardReconnecting',
|
|
505
|
-
ShardReady = 'shardReady',
|
|
506
|
-
ShardResume = 'shardResume',
|
|
507
|
-
Invalidated = 'invalidated',
|
|
508
|
-
Raw = 'raw',
|
|
509
|
-
StageInstanceCreate = 'stageInstanceCreate',
|
|
510
|
-
StageInstanceUpdate = 'stageInstanceUpdate',
|
|
511
|
-
StageInstanceDelete = 'stageInstanceDelete',
|
|
512
|
-
GuildStickerCreate = 'stickerCreate',
|
|
513
|
-
GuildStickerDelete = 'stickerDelete',
|
|
514
|
-
GuildStickerUpdate = 'stickerUpdate',
|
|
515
|
-
GuildScheduledEventCreate = 'guildScheduledEventCreate',
|
|
516
|
-
GuildScheduledEventUpdate = 'guildScheduledEventUpdate',
|
|
517
|
-
GuildScheduledEventDelete = 'guildScheduledEventDelete',
|
|
518
|
-
GuildScheduledEventUserAdd = 'guildScheduledEventUserAdd',
|
|
519
|
-
GuildScheduledEventUserRemove = 'guildScheduledEventUserRemove',
|
|
520
|
-
GuildAuditLogEntryCreate = 'guildAuditLogEntryCreate',
|
|
521
|
-
UnhandledPacket = 'unhandledPacket',
|
|
522
|
-
RelationshipAdd = 'relationshipAdd',
|
|
523
|
-
RelationshipUpdate = 'relationshipUpdate',
|
|
524
|
-
RelationshipRemove = 'relationshipRemove',
|
|
525
|
-
ChannelRecipientAdd = 'channelRecipientAdd',
|
|
526
|
-
ChannelRecipientRemove = 'channelRecipientRemove',
|
|
527
|
-
InteractionCreate = 'interactionCreate',
|
|
528
|
-
InteractionModalCreate = 'interactionModalCreate',
|
|
529
|
-
CallCreate = 'callCreate',
|
|
530
|
-
CallUpdate = 'callUpdate',
|
|
531
|
-
CallDelete = 'callDelete',
|
|
532
|
-
MessagePollVoteAdd = 'messagePollVoteAdd',
|
|
533
|
-
MessagePollVoteRemove = 'messagePollVoteRemove',
|
|
534
|
-
VoiceChannelEffectSend = 'voiceChannelEffectSend',
|
|
535
|
-
VoiceBroadcastSubscribe = 'subscribe',
|
|
536
|
-
VoiceBroadcastUnsubscribe = 'unsubscribe',
|
|
537
|
-
}
|
|
437
|
+
}
|
package/typings/index.d.ts
CHANGED
|
@@ -3860,6 +3860,50 @@ export interface UserPrimaryGuild {
|
|
|
3860
3860
|
tag: string | null;
|
|
3861
3861
|
}
|
|
3862
3862
|
|
|
3863
|
+
export interface MutualGuild {
|
|
3864
|
+
id: Snowflake;
|
|
3865
|
+
nick?: string | null;
|
|
3866
|
+
}
|
|
3867
|
+
|
|
3868
|
+
export type ConnectedAccountType =
|
|
3869
|
+
| 'spotify'
|
|
3870
|
+
| 'twitter'
|
|
3871
|
+
| 'x'
|
|
3872
|
+
| 'github'
|
|
3873
|
+
| 'youtube'
|
|
3874
|
+
| 'twitch'
|
|
3875
|
+
| 'steam'
|
|
3876
|
+
| 'reddit'
|
|
3877
|
+
| 'facebook'
|
|
3878
|
+
| 'roblox'
|
|
3879
|
+
| 'tiktok'
|
|
3880
|
+
| 'domain'
|
|
3881
|
+
| 'bluesky'
|
|
3882
|
+
| 'amazonmusic'
|
|
3883
|
+
| 'battlenet'
|
|
3884
|
+
| 'bungeenet'
|
|
3885
|
+
| 'crunchyroll'
|
|
3886
|
+
| 'ebay'
|
|
3887
|
+
| 'epicgames'
|
|
3888
|
+
| 'lol'
|
|
3889
|
+
| 'paypal'
|
|
3890
|
+
| 'playstation'
|
|
3891
|
+
| 'riotgames'
|
|
3892
|
+
| 'xbox';
|
|
3893
|
+
|
|
3894
|
+
export interface ConnectedAccount {
|
|
3895
|
+
id: string;
|
|
3896
|
+
name: string;
|
|
3897
|
+
type: ConnectedAccountType;
|
|
3898
|
+
verified?: boolean;
|
|
3899
|
+
visibility?: number;
|
|
3900
|
+
show_activity?: boolean;
|
|
3901
|
+
friend_sync?: boolean;
|
|
3902
|
+
two_way_link?: boolean;
|
|
3903
|
+
metadata_visibility?: number;
|
|
3904
|
+
metadata?: unknown;
|
|
3905
|
+
}
|
|
3906
|
+
|
|
3863
3907
|
export interface AvatarDecorationData {
|
|
3864
3908
|
asset: string;
|
|
3865
3909
|
skuId: Snowflake;
|
|
@@ -4005,6 +4049,16 @@ export class User extends PartialTextBasedChannel(Base) {
|
|
|
4005
4049
|
public collectibles: Collectibles | null;
|
|
4006
4050
|
public discriminator: string;
|
|
4007
4051
|
public pronouns?: string | null;
|
|
4052
|
+
public premiumSinceTimestamp: number | null;
|
|
4053
|
+
public readonly premiumSince: Date | null;
|
|
4054
|
+
public premiumGuildSinceTimestamp: number | null;
|
|
4055
|
+
public readonly premiumGuildSince: Date | null;
|
|
4056
|
+
public premiumType: number | null;
|
|
4057
|
+
public legacyUsername: string | null;
|
|
4058
|
+
public connectedAccounts: ConnectedAccount[] | null;
|
|
4059
|
+
public mutualFriendsCount: number | null;
|
|
4060
|
+
public mutualGuildsCount: number | null;
|
|
4061
|
+
public mutualGuilds: MutualGuild[] | null;
|
|
4008
4062
|
public readonly displayName: string;
|
|
4009
4063
|
public readonly defaultAvatarURL: string;
|
|
4010
4064
|
public readonly dmChannel: DMChannel | null;
|