seyfert 2.1.1-dev-12216466966.0 → 2.1.1-dev-12246048689.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.
@@ -114,7 +114,7 @@ class Client extends base_1.BaseClient {
114
114
  if (!this.memberUpdateHandler.check(packet.d)) {
115
115
  return;
116
116
  }
117
- await this.events?.execute(packet.t, packet, this, shardId);
117
+ await this.events?.execute(packet, this, shardId);
118
118
  }
119
119
  break;
120
120
  case 'PRESENCE_UPDATE':
@@ -122,7 +122,7 @@ class Client extends base_1.BaseClient {
122
122
  if (!this.presenceUpdateHandler.check(packet.d)) {
123
123
  return;
124
124
  }
125
- await this.events?.execute(packet.t, packet, this, shardId);
125
+ await this.events?.execute(packet, this, shardId);
126
126
  }
127
127
  break;
128
128
  case 'GUILD_DELETE':
@@ -138,7 +138,7 @@ class Client extends base_1.BaseClient {
138
138
  delete this.__handleGuilds;
139
139
  return this.cache.onPacket(packet);
140
140
  }
141
- await this.events?.execute(packet.t, packet, this, shardId);
141
+ await this.events?.execute(packet, this, shardId);
142
142
  break;
143
143
  }
144
144
  //rest of the events
@@ -146,13 +146,13 @@ class Client extends base_1.BaseClient {
146
146
  switch (packet.t) {
147
147
  case 'INTERACTION_CREATE':
148
148
  {
149
- await this.events?.execute(packet.t, packet, this, shardId);
149
+ await this.events?.execute(packet, this, shardId);
150
150
  await this.handleCommand.interaction(packet.d, shardId);
151
151
  }
152
152
  break;
153
153
  case 'MESSAGE_CREATE':
154
154
  {
155
- await this.events?.execute(packet.t, packet, this, shardId);
155
+ await this.events?.execute(packet, this, shardId);
156
156
  await this.handleCommand.message(packet.d, shardId);
157
157
  }
158
158
  break;
@@ -171,11 +171,11 @@ class Client extends base_1.BaseClient {
171
171
  delete this.__handleGuilds;
172
172
  }
173
173
  this.debugger?.debug(`#${shardId}[${packet.d.user.username}](${this.botId}) is online...`);
174
- await this.events?.execute(packet.t, packet, this, shardId);
174
+ await this.events?.execute(packet, this, shardId);
175
175
  break;
176
176
  }
177
177
  default:
178
- await this.events?.execute(packet.t, packet, this, shardId);
178
+ await this.events?.execute(packet, this, shardId);
179
179
  break;
180
180
  }
181
181
  break;
@@ -449,7 +449,7 @@ class WorkerClient extends base_1.BaseClient {
449
449
  if (!this.memberUpdateHandler.check(packet.d)) {
450
450
  return;
451
451
  }
452
- await this.events?.execute(packet.t, packet, this, shardId);
452
+ await this.events?.execute(packet, this, shardId);
453
453
  }
454
454
  break;
455
455
  case 'PRESENCE_UPDATE':
@@ -457,7 +457,7 @@ class WorkerClient extends base_1.BaseClient {
457
457
  if (!this.presenceUpdateHandler.check(packet.d)) {
458
458
  return;
459
459
  }
460
- await this.events?.execute(packet.t, packet, this, shardId);
460
+ await this.events?.execute(packet, this, shardId);
461
461
  }
462
462
  break;
463
463
  case 'GUILD_DELETE':
@@ -477,20 +477,20 @@ class WorkerClient extends base_1.BaseClient {
477
477
  delete this.__handleGuilds;
478
478
  return this.cache.onPacket(packet);
479
479
  }
480
- await this.events?.execute(packet.t, packet, this, shardId);
480
+ await this.events?.execute(packet, this, shardId);
481
481
  break;
482
482
  }
483
483
  default: {
484
484
  switch (packet.t) {
485
485
  case 'INTERACTION_CREATE':
486
486
  {
487
- await this.events?.execute(packet.t, packet, this, shardId);
487
+ await this.events?.execute(packet, this, shardId);
488
488
  await this.handleCommand.interaction(packet.d, shardId);
489
489
  }
490
490
  break;
491
491
  case 'MESSAGE_CREATE':
492
492
  {
493
- await this.events?.execute(packet.t, packet, this, shardId);
493
+ await this.events?.execute(packet, this, shardId);
494
494
  await this.handleCommand.message(packet.d, shardId);
495
495
  }
496
496
  break;
@@ -503,7 +503,7 @@ class WorkerClient extends base_1.BaseClient {
503
503
  this.botId = packet.d.user.id;
504
504
  this.applicationId = packet.d.application.id;
505
505
  this.me = transformers_1.Transformers.ClientUser(this, packet.d.user, packet.d.application);
506
- await this.events?.execute(packet.t, packet, this, shardId);
506
+ await this.events?.execute(packet, this, shardId);
507
507
  if (!this._ready && [...this.shards.values()].every(shard => shard.data.session_id)) {
508
508
  this._ready = true;
509
509
  this.postMessage({
@@ -526,7 +526,7 @@ class WorkerClient extends base_1.BaseClient {
526
526
  }
527
527
  break;
528
528
  default:
529
- await this.events?.execute(packet.t, packet, this, shardId);
529
+ await this.events?.execute(packet, this, shardId);
530
530
  break;
531
531
  }
532
532
  break;
@@ -41,8 +41,8 @@ export declare class EventHandler extends BaseHandler {
41
41
  discordEvents: ClientNameEvents[];
42
42
  set(events: ClientEvent[]): void;
43
43
  load(eventsDir: string): Promise<void>;
44
- execute(name: GatewayEvents, ...args: [GatewayDispatchPayload, Client<true> | WorkerClient<true>, number]): Promise<void>;
45
- runEvent(name: GatewayEvents, client: Client | WorkerClient, packet: any, shardId: number, runCache?: boolean): Promise<void>;
44
+ execute(raw: GatewayDispatchPayload, client: Client<true> | WorkerClient<true>, shardId: number): Promise<void>;
45
+ runEvent(name: GatewayEvents, client: Client | WorkerClient, packet: unknown, shardId: number, runCache?: boolean): Promise<void>;
46
46
  runCustom<T extends CustomEventsKeys>(name: T, ...args: ResolveEventRunParams<T>): Promise<void>;
47
47
  reload(name: GatewayEvents | CustomEventsKeys): Promise<any>;
48
48
  reloadAll(stopIfFail?: boolean): Promise<void>;
@@ -81,69 +81,65 @@ class EventHandler extends common_1.BaseHandler {
81
81
  }
82
82
  }
83
83
  }
84
- async execute(name, ...args) {
85
- switch (name) {
84
+ async execute(raw, client, shardId) {
85
+ switch (raw.t) {
86
86
  case 'MESSAGE_DELETE':
87
87
  {
88
- if (!args[1].components?.values.size)
88
+ if (!client.components?.values.size)
89
89
  break;
90
- const { d: data } = args[0];
91
- const value = args[1].components.values.get(data.id);
90
+ const value = client.components.values.get(raw.d.id);
92
91
  if (value) {
93
- args[1].components.deleteValue(value.messageId, 'messageDelete');
92
+ client.components.deleteValue(value.messageId, 'messageDelete');
94
93
  }
95
94
  }
96
95
  break;
97
96
  case 'MESSAGE_DELETE_BULK':
98
97
  {
99
- if (!args[1].components?.values.size)
98
+ if (!client.components?.values.size)
100
99
  break;
101
- const { d: payload } = args[0];
102
- for (const id of payload.ids) {
103
- const value = args[1].components.values.get(id);
100
+ for (const id of raw.d.ids) {
101
+ const value = client.components.values.get(id);
104
102
  if (value) {
105
- args[1].components.deleteValue(value.messageId, 'messageDelete');
103
+ client.components.deleteValue(value.messageId, 'messageDelete');
106
104
  }
107
105
  }
108
106
  }
109
107
  break;
110
108
  case 'GUILD_DELETE':
111
109
  {
112
- if (!args[1].components?.values.size)
110
+ if (!client.components?.values.size)
113
111
  break;
114
- const { d: payload } = args[0];
115
112
  // ignore unavailable guilds?
116
- if (payload.unavailable)
113
+ if (raw.d.unavailable)
117
114
  break;
118
- for (const [messageId, value] of args[1].components.values) {
119
- if (value.guildId === payload.id)
120
- args[1].components.deleteValue(messageId, 'guildDelete');
115
+ for (const [messageId, value] of client.components.values) {
116
+ if (value.guildId === raw.d.id)
117
+ client.components.deleteValue(messageId, 'guildDelete');
121
118
  }
122
119
  }
123
120
  break;
124
121
  case 'CHANNEL_DELETE':
125
122
  {
126
- if (!args[1].components?.values.size)
123
+ if (!client.components?.values.size)
127
124
  break;
128
- const { d: payload } = args[0];
129
- if (payload.type === types_1.ChannelType.DM || payload.type === types_1.ChannelType.GroupDM) {
130
- for (const value of args[1].components.values) {
131
- if (payload.id === value[1].channelId)
132
- args[1].components.deleteValue(value[0], 'channelDelete');
125
+ if (raw.d.type === types_1.ChannelType.DM || raw.d.type === types_1.ChannelType.GroupDM) {
126
+ for (const value of client.components.values) {
127
+ if (raw.d.id === value[1].channelId)
128
+ client.components.deleteValue(value[0], 'channelDelete');
133
129
  }
134
130
  }
135
131
  else {
136
- if (!payload.guild_id)
132
+ if (!raw.d.guild_id)
137
133
  break;
138
134
  // this is why we dont recommend to use collectors, use ComponentCommand instead
139
- const channels = await args[1].cache.channels?.valuesRaw(payload.guild_id);
135
+ const channels = await client.cache.channels?.valuesRaw(raw.d.guild_id);
140
136
  const threads = channels
141
- ?.filter(x => [types_1.ChannelType.PublicThread, types_1.ChannelType.PrivateThread, types_1.ChannelType.AnnouncementThread].includes(x.type) && x.parent_id === payload.id)
137
+ ?.filter(x => [types_1.ChannelType.PublicThread, types_1.ChannelType.PrivateThread, types_1.ChannelType.AnnouncementThread].includes(x.type) && x.parent_id === raw.d.id)
142
138
  .map(x => x.id);
143
- for (const value of args[1].components.values) {
139
+ for (const value of client.components.values) {
144
140
  const channelId = value[1].channelId;
145
- if (payload.id === channelId || threads?.includes(channelId)) {
146
- args[1].components.deleteValue(value[0], 'channelDelete');
141
+ if (raw.d.id === channelId || threads?.includes(channelId)) {
142
+ client.components.deleteValue(value[0], 'channelDelete');
147
143
  }
148
144
  }
149
145
  }
@@ -151,20 +147,19 @@ class EventHandler extends common_1.BaseHandler {
151
147
  break;
152
148
  case 'THREAD_DELETE':
153
149
  {
154
- if (!args[1].components?.values.size)
150
+ if (!client.components?.values.size)
155
151
  break;
156
- const { d: payload } = args[0];
157
- for (const value of args[1].components.values) {
158
- if (value[1].channelId === payload.id) {
159
- args[1].components.deleteValue(value[0], 'channelDelete');
152
+ for (const value of client.components.values) {
153
+ if (value[1].channelId === raw.d.id) {
154
+ client.components.deleteValue(value[0], 'channelDelete');
160
155
  }
161
156
  }
162
157
  }
163
158
  break;
164
159
  }
165
160
  await Promise.all([
166
- this.runEvent(args[0].t, args[1], args[0].d, args[2]),
167
- this.client.collectors.run(args[0].t, args[0].d, this.client),
161
+ this.runEvent(raw.t, client, raw.d, shardId),
162
+ this.client.collectors.run(raw.t, raw.d, this.client),
168
163
  ]);
169
164
  }
170
165
  async runEvent(name, client, packet, shardId, runCache = true) {
@@ -1,4 +1,5 @@
1
1
  import { Collection, type RawFile, type ReturnCache } from '..';
2
+ import type { Overwrites } from '../cache/resources/overwrites';
2
3
  import { type BaseChannelStructure, type BaseGuildChannelStructure, type CategoryChannelStructure, type DMChannelStructure, type DirectoryChannelStructure, type ForumChannelStructure, type MediaChannelStructure, type NewsChannelStructure, type StageChannelStructure, type TextGuildChannelStructure, type ThreadChannelStructure, type VoiceChannelStructure, type VoiceStateStructure } from '../client';
3
4
  import type { UsingClient } from '../commands';
4
5
  import { type EmojiResolvable, type MessageCreateBodyRequest, type MessageUpdateBodyRequest, type MethodContext, type ObjectToLower, type StringToNumber, type ToClass } from '../common';
@@ -42,7 +43,7 @@ export declare class BaseNoEditableChannel<T extends ChannelType> extends Discor
42
43
  };
43
44
  }
44
45
  export declare class BaseChannel<T extends ChannelType> extends BaseNoEditableChannel<T> {
45
- edit(body: RESTPatchAPIChannelJSONBody, reason?: string): Promise<AllChannels>;
46
+ edit(body: RESTPatchAPIChannelJSONBody, reason?: string): Promise<this>;
46
47
  }
47
48
  interface IChannelTypes {
48
49
  GuildStageVoice: StageChannel;
@@ -63,20 +64,8 @@ export interface BaseGuildChannel extends ObjectToLower<Omit<APIGuildChannel<Cha
63
64
  export declare class BaseGuildChannel extends BaseChannel<ChannelType> {
64
65
  constructor(client: UsingClient, data: APIGuildChannel<ChannelType>);
65
66
  permissionOverwrites: {
66
- fetch: () => ReturnCache<{
67
- type: number;
68
- id: string;
69
- deny: import("./extra/Permissions").PermissionsBitField;
70
- allow: import("./extra/Permissions").PermissionsBitField;
71
- guildId: string;
72
- }[] | undefined>;
73
- values: () => {
74
- type: number;
75
- id: string;
76
- deny: import("./extra/Permissions").PermissionsBitField;
77
- allow: import("./extra/Permissions").PermissionsBitField;
78
- guildId: string;
79
- }[][];
67
+ fetch: () => ReturnType<Overwrites["get"]>;
68
+ values: () => ReturnCache<ReturnType<Overwrites["values"]>>;
80
69
  };
81
70
  memberPermissions(member: GuildMember, checkAdmin?: boolean): Promise<import("./extra/Permissions").PermissionsBitField>;
82
71
  rolePermissions(role: GuildRole, checkAdmin?: boolean): Promise<import("./extra/Permissions").PermissionsBitField>;
@@ -105,9 +94,9 @@ export declare class BaseGuildChannel extends BaseChannel<ChannelType> {
105
94
  }>;
106
95
  guild(force?: boolean): Promise<import("./Guild").Guild<"api">>;
107
96
  get url(): string;
108
- setPosition(position: number, reason?: string): Promise<AllChannels>;
109
- setName(name: string, reason?: string): Promise<AllChannels>;
110
- setParent(parent_id: string | null, reason?: string): Promise<AllChannels>;
97
+ setPosition(position: number, reason?: string): Promise<this>;
98
+ setName(name: string, reason?: string): Promise<this>;
99
+ setParent(parent_id: string | null, reason?: string): Promise<this>;
111
100
  }
112
101
  export interface MessagesMethods extends BaseNoEditableChannel<ChannelType> {
113
102
  }
@@ -169,26 +158,26 @@ export declare function channelFrom(data: APIChannelBase<ChannelType>, client: U
169
158
  export interface TopicableGuildChannel extends BaseChannel<ChannelType> {
170
159
  }
171
160
  export declare class TopicableGuildChannel extends DiscordBase {
172
- setTopic(topic: string | null, reason?: string): Promise<AllChannels>;
161
+ setTopic(topic: string | null, reason?: string): Promise<this>;
173
162
  }
174
163
  export interface ThreadOnlyMethods extends BaseChannel<ChannelType>, TopicableGuildChannel {
175
164
  }
176
165
  export declare class ThreadOnlyMethods extends DiscordBase {
177
- setTags(tags: APIGuildForumTag[], reason?: string): Promise<AllChannels>;
178
- setAutoArchiveDuration(duration: ThreadAutoArchiveDuration, reason?: string): Promise<AllChannels>;
179
- setReactionEmoji(emoji: APIGuildForumDefaultReactionEmoji, reason?: string): Promise<AllChannels>;
180
- setSortOrder(sort: SortOrderType, reason?: string): Promise<AllChannels>;
181
- setThreadRateLimit(rate: number, reason?: string): Promise<AllChannels>;
166
+ setTags(tags: APIGuildForumTag[], reason?: string): Promise<this>;
167
+ setAutoArchiveDuration(duration: ThreadAutoArchiveDuration, reason?: string): Promise<this>;
168
+ setReactionEmoji(emoji: APIGuildForumDefaultReactionEmoji, reason?: string): Promise<this>;
169
+ setSortOrder(sort: SortOrderType, reason?: string): Promise<this>;
170
+ setThreadRateLimit(rate: number, reason?: string): Promise<this>;
182
171
  thread(body: RESTPostAPIGuildForumThreadsJSONBody, reason?: string): Promise<ThreadChannel>;
183
172
  }
184
173
  export interface VoiceChannelMethods extends BaseChannel<ChannelType> {
174
+ guildId?: string;
185
175
  }
186
176
  export declare class VoiceChannelMethods extends DiscordBase {
187
- guildId?: string;
188
- setBitrate(bitrate: number | null, reason?: string): Promise<AllChannels>;
189
- setUserLimit(user_limit: number | null, reason?: string): Promise<AllChannels>;
190
- setRTC(rtc_region: string | null, reason?: string): Promise<AllChannels>;
191
- setVideoQuality(quality: keyof typeof VideoQualityMode, reason?: string): Promise<AllChannels>;
177
+ setBitrate(bitrate: number | null, reason?: string): Promise<this>;
178
+ setUserLimit(user_limit: number | null, reason?: string): Promise<this>;
179
+ setRTC(rtc_region: string | null, reason?: string): Promise<this>;
180
+ setVideoQuality(quality: keyof typeof VideoQualityMode, reason?: string): Promise<this>;
192
181
  setVoiceState(status?: string | null): Promise<never>;
193
182
  states(): ReturnCache<VoiceStateStructure[]>;
194
183
  members(force?: boolean): Promise<Collection<string, GuildMember>>;
@@ -219,15 +208,15 @@ export interface TextGuildChannel extends ObjectToLower<Omit<APITextChannel, 'ty
219
208
  }
220
209
  export declare class TextGuildChannel extends BaseGuildChannel {
221
210
  type: ChannelType.GuildText;
222
- setRatelimitPerUser(rate_limit_per_user: number | null | undefined): Promise<AllChannels>;
223
- setNsfw(nsfw?: boolean, reason?: string): Promise<AllChannels>;
211
+ setRatelimitPerUser(rate_limit_per_user: number | null | undefined): Promise<this>;
212
+ setNsfw(nsfw?: boolean, reason?: string): Promise<this>;
224
213
  }
225
214
  export interface DMChannel extends ObjectToLower<APIDMChannel>, MessagesMethods {
226
215
  }
227
216
  export declare class DMChannel extends BaseNoEditableChannel<ChannelType.DM> {
228
217
  type: ChannelType.DM;
229
218
  }
230
- export interface VoiceChannel extends ObjectToLower<Omit<APIGuildVoiceChannel, 'permission_overwrites'>>, Omit<TextGuildChannel, 'type'>, VoiceChannelMethods, WebhookChannelMethods {
219
+ export interface VoiceChannel extends ObjectToLower<Omit<APIGuildVoiceChannel, 'permission_overwrites'>>, Omit<TextGuildChannel, 'type' | 'edit'>, VoiceChannelMethods, WebhookChannelMethods {
231
220
  }
232
221
  export declare class VoiceChannel extends BaseChannel<ChannelType.GuildVoice> {
233
222
  type: ChannelType.GuildVoice;
@@ -242,7 +231,7 @@ export interface MediaChannel extends ObjectToLower<Omit<APIGuildMediaChannel, '
242
231
  export declare class MediaChannel extends BaseChannel<ChannelType> {
243
232
  type: ChannelType.GuildMedia;
244
233
  }
245
- export interface ForumChannel extends ObjectToLower<APIGuildForumChannel>, Omit<ThreadOnlyMethods, 'type'>, WebhookChannelMethods {
234
+ export interface ForumChannel extends ObjectToLower<APIGuildForumChannel>, Omit<ThreadOnlyMethods, 'type' | 'edit'>, WebhookChannelMethods {
246
235
  }
247
236
  export declare class ForumChannel extends BaseChannel<ChannelType.GuildForum> {
248
237
  type: ChannelType.GuildForum;
@@ -257,14 +246,14 @@ export declare class ThreadChannel extends BaseChannel<ChannelType.PublicThread
257
246
  };
258
247
  join(): Promise<this>;
259
248
  leave(): Promise<this>;
260
- setRatelimitPerUser(rate_limit_per_user: number | null | undefined): Promise<AllChannels>;
261
- pin(reason?: string): Promise<AllChannels>;
262
- unpin(reason?: string): Promise<AllChannels>;
263
- setTags(applied_tags: string[], reason?: string): Promise<AllChannels>;
264
- setArchived(archived?: boolean, reason?: string): Promise<AllChannels>;
265
- setAutoArchiveDuration(auto_archive_duration: StringToNumber<`${ThreadAutoArchiveDuration}`>, reason?: string): Promise<AllChannels>;
266
- setInvitable(invitable?: boolean, reason?: string): Promise<AllChannels>;
267
- setLocked(locked?: boolean, reason?: string): Promise<AllChannels>;
249
+ setRatelimitPerUser(rate_limit_per_user: number | null | undefined): Promise<this>;
250
+ pin(reason?: string): Promise<this>;
251
+ unpin(reason?: string): Promise<this>;
252
+ setTags(applied_tags: string[], reason?: string): Promise<this>;
253
+ setArchived(archived?: boolean, reason?: string): Promise<this>;
254
+ setAutoArchiveDuration(auto_archive_duration: StringToNumber<`${ThreadAutoArchiveDuration}`>, reason?: string): Promise<this>;
255
+ setInvitable(invitable?: boolean, reason?: string): Promise<this>;
256
+ setLocked(locked?: boolean, reason?: string): Promise<this>;
268
257
  }
269
258
  export interface CategoryChannel extends ObjectToLower<Omit<APIGuildCategoryChannel, 'permission_overwrites'>> {
270
259
  }
@@ -104,8 +104,14 @@ class BaseGuildChannel extends BaseChannel {
104
104
  super(client, rest);
105
105
  }
106
106
  permissionOverwrites = {
107
- fetch: () => this.client.cache.overwrites?.get(this.id),
108
- values: () => (this.guildId ? (this.client.cache.overwrites?.values(this.guildId) ?? []) : []),
107
+ fetch: () => this.client.cache.overwrites?.get(this.id) ||
108
+ (this.client.cache.adapter.isAsync ? Promise.resolve() : undefined),
109
+ values: () => this.guildId
110
+ ? this.client.cache.overwrites?.values(this.guildId) ||
111
+ (this.client.cache.adapter.isAsync ? Promise.resolve([]) : [])
112
+ : this.client.cache.adapter.isAsync
113
+ ? Promise.resolve([])
114
+ : [],
109
115
  };
110
116
  memberPermissions(member, checkAdmin = true) {
111
117
  return this.client.channels.memberPermissions(this.id, member, checkAdmin);
@@ -267,7 +273,6 @@ exports.ThreadOnlyMethods = ThreadOnlyMethods = __decorate([
267
273
  (0, mixer_1.mix)(TopicableGuildChannel)
268
274
  ], ThreadOnlyMethods);
269
275
  class VoiceChannelMethods extends DiscordBase_1.DiscordBase {
270
- guildId;
271
276
  setBitrate(bitrate, reason) {
272
277
  return this.edit({ bitrate }, reason);
273
278
  }
@@ -287,9 +292,7 @@ class VoiceChannelMethods extends DiscordBase_1.DiscordBase {
287
292
  if (!this.guildId)
288
293
  return this.cache.adapter.isAsync ? Promise.resolve([]) : [];
289
294
  return (0, common_1.fakePromise)(this.cache.voiceStates?.values(this.guildId) ??
290
- (this.cache.adapter.isAsync
291
- ? Promise.resolve([])
292
- : [])).then(states => {
295
+ (this.cache.adapter.isAsync ? Promise.resolve([]) : [])).then(states => {
293
296
  return states.filter(state => state.channelId === this.id);
294
297
  });
295
298
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "seyfert",
3
- "version": "2.1.1-dev-12216466966.0",
3
+ "version": "2.1.1-dev-12246048689.0",
4
4
  "description": "The most advanced framework for discord bots",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib/index.js",