xernerx 4.4.13 → 4.4.15

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 (98) hide show
  1. package/dist/build/ContextCommandBuilder.d.ts +34 -26
  2. package/dist/build/ContextCommandBuilder.d.ts.map +1 -1
  3. package/dist/build/ContextCommandBuilder.js +39 -39
  4. package/dist/build/ContextCommandBuilder.js.map +1 -1
  5. package/dist/build/EventBuilder.d.ts +2 -2
  6. package/dist/build/EventBuilder.d.ts.map +1 -1
  7. package/dist/build/EventBuilder.js +2 -2
  8. package/dist/build/EventBuilder.js.map +1 -1
  9. package/dist/build/InhibitorBuilder.d.ts +13 -4
  10. package/dist/build/InhibitorBuilder.d.ts.map +1 -1
  11. package/dist/build/InhibitorBuilder.js +2 -2
  12. package/dist/build/InhibitorBuilder.js.map +1 -1
  13. package/dist/build/MessageCommandBuilder.d.ts +29 -23
  14. package/dist/build/MessageCommandBuilder.d.ts.map +1 -1
  15. package/dist/build/MessageCommandBuilder.js +34 -34
  16. package/dist/build/MessageCommandBuilder.js.map +1 -1
  17. package/dist/build/SlashCommandBuilder.d.ts +42 -28
  18. package/dist/build/SlashCommandBuilder.d.ts.map +1 -1
  19. package/dist/build/SlashCommandBuilder.js +48 -48
  20. package/dist/build/SlashCommandBuilder.js.map +1 -1
  21. package/dist/client/XernerxClient.d.ts +30 -22
  22. package/dist/client/XernerxClient.js +33 -33
  23. package/dist/client/XernerxShardClient.d.ts +1 -1
  24. package/dist/client/XernerxShardClient.d.ts.map +1 -1
  25. package/dist/client/XernerxShardClient.js +18 -12
  26. package/dist/client/XernerxShardClient.js.map +1 -1
  27. package/dist/functions/delay.d.ts +1 -1
  28. package/dist/functions/delay.js +1 -1
  29. package/dist/functions/deploy.d.ts +1 -1
  30. package/dist/functions/deploy.js +13 -16
  31. package/dist/functions/isOwner.d.ts +1 -1
  32. package/dist/functions/isOwner.js +1 -1
  33. package/dist/functions/isVoter.d.ts +1 -1
  34. package/dist/functions/isVoter.js +1 -1
  35. package/dist/functions/load.d.ts +1 -1
  36. package/dist/functions/load.js +2 -3
  37. package/dist/functions/reload.d.ts +1 -1
  38. package/dist/functions/reload.js +9 -12
  39. package/dist/functions/sendWebhook.d.ts +1 -1
  40. package/dist/functions/sendWebhook.js +2 -3
  41. package/dist/functions/setPresence.d.ts +2 -2
  42. package/dist/functions/setPresence.js +12 -11
  43. package/dist/functions/xernerxUser.d.ts +1 -1
  44. package/dist/functions/xernerxUser.js +1 -1
  45. package/dist/handlers/CommandHandler.d.ts +1 -1
  46. package/dist/handlers/CommandHandler.js +82 -105
  47. package/dist/handlers/CommandHandler.js.map +1 -1
  48. package/dist/handlers/EventHandler.d.ts +1 -1
  49. package/dist/handlers/EventHandler.js +3 -3
  50. package/dist/handlers/ExtensionHandler.d.ts +1 -1
  51. package/dist/handlers/ExtensionHandler.js +3 -5
  52. package/dist/handlers/Handler.d.ts +1 -1
  53. package/dist/handlers/Handler.js +6 -16
  54. package/dist/handlers/InhibitorHandler.d.ts +1 -1
  55. package/dist/handlers/InhibitorHandler.js +3 -3
  56. package/dist/handlers/WebhookHandler.d.ts +2 -4
  57. package/dist/handlers/WebhookHandler.js +9 -6
  58. package/dist/main.d.ts +29 -22
  59. package/dist/main.js +29 -22
  60. package/dist/models/Arguments.d.ts +6 -3
  61. package/dist/models/Arguments.d.ts.map +1 -1
  62. package/dist/models/Arguments.js +48 -63
  63. package/dist/models/Arguments.js.map +1 -1
  64. package/dist/tools/XernerxError.d.ts +1 -1
  65. package/dist/tools/XernerxError.js +1 -1
  66. package/dist/tools/XernerxLog.d.ts +1 -1
  67. package/dist/tools/XernerxLog.js +7 -2
  68. package/dist/types/extenders.d.ts +8 -9
  69. package/dist/types/extenders.d.ts.map +1 -1
  70. package/dist/types/extenders.js +1 -1
  71. package/dist/types/extenders.js.map +1 -1
  72. package/dist/types/interfaces.d.ts +13 -8
  73. package/dist/types/interfaces.d.ts.map +1 -1
  74. package/dist/types/interfaces.js +1 -1
  75. package/dist/types/interfaces.js.map +1 -1
  76. package/dist/types/types.d.ts +179 -7
  77. package/dist/types/types.d.ts.map +1 -1
  78. package/dist/types/types.js +1 -1
  79. package/dist/types/types.js.map +1 -1
  80. package/dist/utils/ClientUtil.d.ts +4 -4
  81. package/dist/utils/ClientUtil.js +8 -14
  82. package/dist/utils/InteractionUtil.d.ts +4 -3
  83. package/dist/utils/InteractionUtil.d.ts.map +1 -1
  84. package/dist/utils/InteractionUtil.js +1 -1
  85. package/dist/utils/InteractionUtil.js.map +1 -1
  86. package/dist/utils/MessageUtil.d.ts +2 -2
  87. package/dist/utils/MessageUtil.js +5 -9
  88. package/dist/utils/Util.d.ts +1 -1
  89. package/dist/utils/Util.js +1 -1
  90. package/dist/validators/commandValidation.d.ts +6 -3
  91. package/dist/validators/commandValidation.d.ts.map +1 -1
  92. package/dist/validators/commandValidation.js +19 -29
  93. package/dist/validators/commandValidation.js.map +1 -1
  94. package/dist/validators/inhibitorValidations.d.ts +20 -4
  95. package/dist/validators/inhibitorValidations.d.ts.map +1 -1
  96. package/dist/validators/inhibitorValidations.js +1 -1
  97. package/dist/validators/inhibitorValidations.js.map +1 -1
  98. package/package.json +1 -1
package/dist/main.d.ts CHANGED
@@ -15,25 +15,32 @@ export * from './types/interfaces.js';
15
15
  import Discord from 'discord.js';
16
16
  declare const version: any;
17
17
  export default XernerxClient;
18
- export {
19
- /**
20
- ** Clients
21
- */
22
- XernerxClient, XernerxShardClient,
23
- /**
24
- ** Builders
25
- */
26
- MessageCommandBuilder, SlashCommandBuilder, ContextCommandBuilder, EventBuilder, InhibitorBuilder, ExtensionBuilder,
27
- /**
28
- ** Imported exports
29
- */
30
- Discord,
31
- /**
32
- ** Properties
33
- */
34
- version,
35
- /**
36
- ** Tools
37
- */
38
- XernerxLog, };
39
- //# sourceMappingURL=main.d.ts.map
18
+ export {
19
+ /**
20
+ ** Clients
21
+ */
22
+ XernerxClient,
23
+ XernerxShardClient,
24
+ /**
25
+ ** Builders
26
+ */
27
+ MessageCommandBuilder,
28
+ SlashCommandBuilder,
29
+ ContextCommandBuilder,
30
+ EventBuilder,
31
+ InhibitorBuilder,
32
+ ExtensionBuilder,
33
+ /**
34
+ ** Imported exports
35
+ */
36
+ Discord,
37
+ /**
38
+ ** Properties
39
+ */
40
+ version,
41
+ /**
42
+ ** Tools
43
+ */
44
+ XernerxLog,
45
+ };
46
+ //# sourceMappingURL=main.d.ts.map
package/dist/main.js CHANGED
@@ -16,25 +16,32 @@ export * from './types/interfaces.js';
16
16
  import Discord from 'discord.js';
17
17
  const version = JSON.parse(fs.readFileSync('node_modules/xernerx/package.json', 'utf-8')).version;
18
18
  export default XernerxClient;
19
- export {
20
- /**
21
- ** Clients
22
- */
23
- XernerxClient, XernerxShardClient,
24
- /**
25
- ** Builders
26
- */
27
- MessageCommandBuilder, SlashCommandBuilder, ContextCommandBuilder, EventBuilder, InhibitorBuilder, ExtensionBuilder,
28
- /**
29
- ** Imported exports
30
- */
31
- Discord,
32
- /**
33
- ** Properties
34
- */
35
- version,
36
- /**
37
- ** Tools
38
- */
39
- XernerxLog, };
40
- //# sourceMappingURL=main.js.map
19
+ export {
20
+ /**
21
+ ** Clients
22
+ */
23
+ XernerxClient,
24
+ XernerxShardClient,
25
+ /**
26
+ ** Builders
27
+ */
28
+ MessageCommandBuilder,
29
+ SlashCommandBuilder,
30
+ ContextCommandBuilder,
31
+ EventBuilder,
32
+ InhibitorBuilder,
33
+ ExtensionBuilder,
34
+ /**
35
+ ** Imported exports
36
+ */
37
+ Discord,
38
+ /**
39
+ ** Properties
40
+ */
41
+ version,
42
+ /**
43
+ ** Tools
44
+ */
45
+ XernerxLog,
46
+ };
47
+ //# sourceMappingURL=main.js.map
@@ -1,9 +1,12 @@
1
1
  import SlashCommandBuilder from '../build/SlashCommandBuilder.js';
2
2
  import ContextCommandBuilder from '../build/ContextCommandBuilder.js';
3
3
  import MessageCommandBuilder from '../build/MessageCommandBuilder.js';
4
- import { XernerxMessage } from '../types/extenders.js';
4
+ import { XernerxMessage, XernerxMessageContextInteraction, XernerxSlashInteraction, XernerxUserContextInteraction } from '../types/extenders.js';
5
5
  import { MessageCommandArguments } from '../types/interfaces.js';
6
6
  import { XernerxInteraction } from '../types/types.js';
7
7
  export declare function messageArguments(message: XernerxMessage, command: MessageCommandBuilder): Promise<MessageCommandArguments>;
8
- export declare function interactionArguments(interaction: XernerxInteraction | any, command: ContextCommandBuilder | SlashCommandBuilder): Promise<any>;
9
- //# sourceMappingURL=Arguments.d.ts.map
8
+ export declare function interactionArguments(
9
+ interaction: XernerxInteraction<XernerxSlashInteraction | XernerxUserContextInteraction | XernerxMessageContextInteraction> | any,
10
+ command: ContextCommandBuilder | SlashCommandBuilder
11
+ ): Promise<any>;
12
+ //# sourceMappingURL=Arguments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Arguments.d.ts","sourceRoot":"","sources":["../../src/models/Arguments.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,iCAAiC,CAAC;AAClE,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAkJhI;AAED,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,kBAAkB,GAAG,GAAG,EAAE,OAAO,EAAE,qBAAqB,GAAG,mBAAmB,gBAuBrI"}
1
+ {"version":3,"file":"Arguments.d.ts","sourceRoot":"","sources":["../../src/models/Arguments.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,iCAAiC,CAAC;AAClE,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,gCAAgC,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACjJ,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAkJhI;AAED,wBAAsB,oBAAoB,CACtC,WAAW,EAAE,kBAAkB,CAAC,uBAAuB,GAAG,6BAA6B,GAAG,gCAAgC,CAAC,GAAG,GAAG,EACjI,OAAO,EAAE,qBAAqB,GAAG,mBAAmB,gBAwBvD"}
@@ -1,45 +1,35 @@
1
1
  export async function messageArguments(message, command) {
2
- const separator = command.separator || ' ', content = message.content.split(separator).slice(1);
3
- let args = {}, flags = {};
2
+ const separator = command.separator || ' ',
3
+ content = message.content.split(separator).slice(1);
4
+ let args = {},
5
+ flags = {};
4
6
  if (command.flags)
5
7
  command.flags.map((flag) => {
6
- if (!flags)
7
- flags = {};
8
- if (content.includes(flag.match))
9
- flags[flag.name] = true;
10
- else
11
- flags[flag.name] = false;
8
+ if (!flags) flags = {};
9
+ if (content.includes(flag.match)) flags[flag.name] = true;
10
+ else flags[flag.name] = false;
12
11
  const index = content.indexOf(flag.match);
13
- if (index > 0)
14
- content.splice(index, 1);
12
+ if (index > 0) content.splice(index, 1);
15
13
  });
16
14
  if (command.args)
17
15
  for (const argument of command.args) {
18
16
  const element = content.at(0) || null;
19
17
  if (!element) {
20
- if (typeof argument.default === 'function')
21
- args[argument.name] = argument.default(message);
18
+ if (typeof argument.default === 'function') args[argument.name] = argument.default(message);
22
19
  args[argument.name] = argument.default || null;
23
20
  continue;
24
21
  }
25
- if (argument.type === 'option')
26
- argument.match?.includes(element) ? (args[argument.name] = element) : (args[argument.name] = null);
27
- if (argument.type === 'number')
28
- args[argument.name] = parseInt(element);
29
- if (argument.type === 'integer')
30
- args[argument.name] = parseInt(element);
31
- if (argument.type === 'boolean')
32
- args[argument.name] = element === 'true' ? true : false;
33
- if (argument.type === 'confirm')
34
- args[argument.name] = element === 'yes' ? 'yes' : 'no';
35
- if (argument.type === 'string')
36
- args[argument.name] = element;
22
+ if (argument.type === 'option') argument.match?.includes(element) ? (args[argument.name] = element) : (args[argument.name] = null);
23
+ if (argument.type === 'number') args[argument.name] = parseInt(element);
24
+ if (argument.type === 'integer') args[argument.name] = parseInt(element);
25
+ if (argument.type === 'boolean') args[argument.name] = element === 'true' ? true : false;
26
+ if (argument.type === 'confirm') args[argument.name] = element === 'yes' ? 'yes' : 'no';
27
+ if (argument.type === 'string') args[argument.name] = element;
37
28
  if (argument.type === 'channel') {
38
29
  try {
39
30
  const channel = await message.client.channels.fetch(element);
40
31
  args[argument.name] = channel;
41
- }
42
- catch (e) {
32
+ } catch (e) {
43
33
  args[argument.name] = null;
44
34
  }
45
35
  }
@@ -47,32 +37,33 @@ export async function messageArguments(message, command) {
47
37
  try {
48
38
  const guild = await message.client.guilds.fetch(element);
49
39
  args[argument.name] = guild;
50
- }
51
- catch (e) {
40
+ } catch (e) {
52
41
  args[argument.name] = null;
53
42
  }
54
43
  }
55
44
  if (argument.type === 'mentionable') {
56
- (await Promise.all([message.guild?.roles, message.client.users, message.client.guilds, message.client.channels, message.guild?.members, message.channel.messages].map((req) => req
57
- ? req
58
- .fetch(element)
59
- .then((r) => r)
60
- .catch(() => null)
61
- : null))).map((mentionable) => {
62
- if (!args)
63
- args = {};
64
- if (mentionable)
65
- return (args[argument.name] = mentionable);
66
- else
67
- return (args[argument.name] = null);
45
+ (
46
+ await Promise.all(
47
+ [message.guild?.roles, message.client.users, message.client.guilds, message.client.channels, message.guild?.members, message.channel.messages].map((req) =>
48
+ req
49
+ ? req
50
+ .fetch(element)
51
+ .then((r) => r)
52
+ .catch(() => null)
53
+ : null
54
+ )
55
+ )
56
+ ).map((mentionable) => {
57
+ if (!args) args = {};
58
+ if (mentionable) return (args[argument.name] = mentionable);
59
+ else return (args[argument.name] = null);
68
60
  });
69
61
  }
70
62
  if (argument.type === 'role') {
71
63
  try {
72
64
  const role = await message.guild?.roles.fetch(element);
73
65
  args[argument.name] = role;
74
- }
75
- catch (e) {
66
+ } catch (e) {
76
67
  args[argument.name] = null;
77
68
  }
78
69
  }
@@ -80,8 +71,7 @@ export async function messageArguments(message, command) {
80
71
  try {
81
72
  const user = await message.client.users.fetch(element);
82
73
  args[argument.name] = user;
83
- }
84
- catch (e) {
74
+ } catch (e) {
85
75
  args[argument.name] = null;
86
76
  }
87
77
  }
@@ -89,8 +79,7 @@ export async function messageArguments(message, command) {
89
79
  try {
90
80
  const member = await message.guild?.members.fetch(element);
91
81
  args[argument.name] = member;
92
- }
93
- catch (e) {
82
+ } catch (e) {
94
83
  args[argument.name] = null;
95
84
  }
96
85
  }
@@ -98,20 +87,18 @@ export async function messageArguments(message, command) {
98
87
  try {
99
88
  const msg = await message.channel?.messages.fetch(element);
100
89
  args[argument.name] = msg;
101
- }
102
- catch (e) {
90
+ } catch (e) {
103
91
  args[argument.name] = null;
104
92
  }
105
93
  }
106
94
  if (argument.type === 'list') {
107
95
  let separator = String(argument.separator) || ',';
108
- if (separator.startsWith('/') && separator.endsWith('/'))
109
- separator = separator.replace(/^\/|\/$/gim, '');
96
+ if (separator.startsWith('/') && separator.endsWith('/')) separator = separator.replace(/^\/|\/$/gim, '');
110
97
  const items = content.join(' ').split(new RegExp(' *' + separator + ' *', 'gi'));
111
- if (!argument.content)
112
- args[argument.name] = items;
98
+ if (!argument.content) args[argument.name] = items;
113
99
  else {
114
- const contents = argument.content.map((content) => content.toLowerCase()), itemList = [];
100
+ const contents = argument.content.map((content) => content.toLowerCase()),
101
+ itemList = [];
115
102
  items.map((item) => (contents.includes(item.toLowerCase()) ? itemList.push(argument.content?.at(contents.indexOf(item.toLowerCase()))) : null));
116
103
  args[argument.name] = itemList;
117
104
  break;
@@ -123,16 +110,16 @@ export async function messageArguments(message, command) {
123
110
  }
124
111
  content.splice(0, 1);
125
112
  }
126
- if (!command.flags)
127
- flags = null;
128
- if (!command.args)
129
- args = null;
113
+ if (!command.flags) flags = null;
114
+ if (!command.args) args = null;
130
115
  return { args, flags };
131
116
  }
132
117
  export async function interactionArguments(interaction, command) {
133
118
  if (command.fileType === 'SlashCommand') {
134
119
  const options = {};
135
- let args = interaction?.options?._hoistedOptions, group = interaction?.options?._group, subcommand = interaction?.options?._subcommand;
120
+ let args = interaction?.options?._hoistedOptions,
121
+ group = interaction?.options?._group,
122
+ subcommand = interaction?.options?._subcommand;
136
123
  if (interaction.options._hoistedOptions) {
137
124
  for (const option of interaction.options._hoistedOptions) {
138
125
  options[option.name] = option.member || option.channel || option.user || option.role || option.value;
@@ -142,10 +129,8 @@ export async function interactionArguments(interaction, command) {
142
129
  return { args, group, subcommand };
143
130
  }
144
131
  if (command.fileType === 'ContextCommand') {
145
- if (command.type === 'user')
146
- return await interaction.client.users.fetch(interaction.targetId);
147
- if (command.type === 'message')
148
- return await interaction.channel.messages.fetch(interaction.targetId);
132
+ if (command.type === 'user') return await interaction.client.users.fetch(interaction.targetId);
133
+ if (command.type === 'message') return await interaction.channel.messages.fetch(interaction.targetId);
149
134
  }
150
135
  }
151
- //# sourceMappingURL=Arguments.js.map
136
+ //# sourceMappingURL=Arguments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Arguments.js","sourceRoot":"","sources":["../../src/models/Arguments.ts"],"names":[],"mappings":"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","sourcesContent":["import SlashCommandBuilder from '../build/SlashCommandBuilder.js';\nimport ContextCommandBuilder from '../build/ContextCommandBuilder.js';\nimport MessageCommandBuilder from '../build/MessageCommandBuilder.js';\nimport { XernerxMessage } from '../types/extenders.js';\nimport { MessageCommandArguments } from '../types/interfaces.js';\nimport { XernerxInteraction } from '../types/types.js';\n\nexport async function messageArguments(message: XernerxMessage, command: MessageCommandBuilder): Promise<MessageCommandArguments> {\n const separator = command.separator || ' ',\n content = message.content.split(separator).slice(1);\n\n let args: Record<string, unknown> | null = {},\n flags: Record<string, boolean> | null = {};\n\n if (command.flags)\n command.flags.map((flag) => {\n if (!flags) flags = {};\n\n if (content.includes(flag.match)) flags[flag.name] = true;\n else flags[flag.name] = false;\n\n const index = content.indexOf(flag.match);\n\n if (index > 0) content.splice(index, 1);\n });\n\n if (command.args)\n for (const argument of command.args) {\n const element = content.at(0) || null;\n\n if (!element) {\n if (typeof argument.default === 'function') args[argument.name] = argument.default(message);\n args[argument.name] = argument.default || null;\n continue;\n }\n\n if (argument.type === 'option') argument.match?.includes(element) ? (args[argument.name] = element) : (args[argument.name] = null);\n\n if (argument.type === 'number') args[argument.name] = parseInt(element);\n\n if (argument.type === 'integer') args[argument.name] = parseInt(element);\n\n if (argument.type === 'boolean') args[argument.name] = element === 'true' ? true : false;\n\n if (argument.type === 'confirm') args[argument.name] = element === 'yes' ? 'yes' : 'no';\n\n if (argument.type === 'string') args[argument.name] = element;\n\n if (argument.type === 'channel') {\n try {\n const channel = await message.client.channels.fetch(element);\n\n args[argument.name] = channel;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n\n if (argument.type === 'guild') {\n try {\n const guild = await message.client.guilds.fetch(element);\n\n args[argument.name] = guild;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n\n if (argument.type === 'mentionable') {\n (\n await Promise.all(\n [message.guild?.roles, message.client.users, message.client.guilds, message.client.channels, message.guild?.members, message.channel.messages].map((req) =>\n req\n ? req\n .fetch(element)\n .then((r) => r)\n .catch(() => null)\n : null\n )\n )\n ).map((mentionable) => {\n if (!args) args = {};\n if (mentionable) return (args[argument.name] = mentionable);\n else return (args[argument.name] = null);\n });\n }\n if (argument.type === 'role') {\n try {\n const role = await message.guild?.roles.fetch(element);\n\n args[argument.name] = role;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'user') {\n try {\n const user = await message.client.users.fetch(element);\n\n args[argument.name] = user;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'member') {\n try {\n const member = await message.guild?.members.fetch(element);\n\n args[argument.name] = member;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'message') {\n try {\n const msg = await message.channel?.messages.fetch(element);\n\n args[argument.name] = msg;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'list') {\n let separator = String(argument.separator) || ',';\n\n if (separator.startsWith('/') && separator.endsWith('/')) separator = separator.replace(/^\\/|\\/$/gim, '');\n\n const items = content.join(' ').split(new RegExp(' *' + separator + ' *', 'gi'));\n\n if (!argument.content) args[argument.name] = items;\n else {\n const contents = argument.content.map((content) => content.toLowerCase()),\n itemList: Array<string> = [];\n\n items.map((item) => (contents.includes(item.toLowerCase()) ? itemList.push(argument.content?.at(contents.indexOf(item.toLowerCase())) as string) : null));\n\n args[argument.name] = itemList;\n break;\n }\n }\n\n if (argument.type === 'rest') {\n args[argument.name] = content.join(separator);\n break;\n }\n\n content.splice(0, 1);\n }\n\n if (!command.flags) flags = null;\n if (!command.args) args = null;\n\n return { args, flags };\n}\n\nexport async function interactionArguments(interaction: XernerxInteraction | any, command: ContextCommandBuilder | SlashCommandBuilder) {\n if (command.fileType === 'SlashCommand') {\n const options: Record<string, string> = {};\n\n let args = interaction?.options?._hoistedOptions,\n group = interaction?.options?._group,\n subcommand = interaction?.options?._subcommand;\n\n if (interaction.options._hoistedOptions) {\n for (const option of interaction.options._hoistedOptions) {\n options[option.name] = option.member || option.channel || option.user || option.role || option.value;\n }\n\n args = options;\n }\n\n return { args, group, subcommand };\n }\n\n if (command.fileType === 'ContextCommand') {\n if (command.type === 'user') return await interaction.client.users.fetch(interaction.targetId);\n if (command.type === 'message') return await interaction.channel.messages.fetch(interaction.targetId);\n }\n}\n"]}
1
+ {"version":3,"file":"Arguments.js","sourceRoot":"","sources":["../../src/models/Arguments.ts"],"names":[],"mappings":"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","sourcesContent":["import SlashCommandBuilder from '../build/SlashCommandBuilder.js';\nimport ContextCommandBuilder from '../build/ContextCommandBuilder.js';\nimport MessageCommandBuilder from '../build/MessageCommandBuilder.js';\nimport { XernerxMessage, XernerxMessageContextInteraction, XernerxSlashInteraction, XernerxUserContextInteraction } from '../types/extenders.js';\nimport { MessageCommandArguments } from '../types/interfaces.js';\nimport { XernerxInteraction } from '../types/types.js';\n\nexport async function messageArguments(message: XernerxMessage, command: MessageCommandBuilder): Promise<MessageCommandArguments> {\n const separator = command.separator || ' ',\n content = message.content.split(separator).slice(1);\n\n let args: Record<string, unknown> | null = {},\n flags: Record<string, boolean> | null = {};\n\n if (command.flags)\n command.flags.map((flag) => {\n if (!flags) flags = {};\n\n if (content.includes(flag.match)) flags[flag.name] = true;\n else flags[flag.name] = false;\n\n const index = content.indexOf(flag.match);\n\n if (index > 0) content.splice(index, 1);\n });\n\n if (command.args)\n for (const argument of command.args) {\n const element = content.at(0) || null;\n\n if (!element) {\n if (typeof argument.default === 'function') args[argument.name] = argument.default(message);\n args[argument.name] = argument.default || null;\n continue;\n }\n\n if (argument.type === 'option') argument.match?.includes(element) ? (args[argument.name] = element) : (args[argument.name] = null);\n\n if (argument.type === 'number') args[argument.name] = parseInt(element);\n\n if (argument.type === 'integer') args[argument.name] = parseInt(element);\n\n if (argument.type === 'boolean') args[argument.name] = element === 'true' ? true : false;\n\n if (argument.type === 'confirm') args[argument.name] = element === 'yes' ? 'yes' : 'no';\n\n if (argument.type === 'string') args[argument.name] = element;\n\n if (argument.type === 'channel') {\n try {\n const channel = await message.client.channels.fetch(element);\n\n args[argument.name] = channel;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n\n if (argument.type === 'guild') {\n try {\n const guild = await message.client.guilds.fetch(element);\n\n args[argument.name] = guild;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n\n if (argument.type === 'mentionable') {\n (\n await Promise.all(\n [message.guild?.roles, message.client.users, message.client.guilds, message.client.channels, message.guild?.members, message.channel.messages].map((req) =>\n req\n ? req\n .fetch(element)\n .then((r) => r)\n .catch(() => null)\n : null\n )\n )\n ).map((mentionable) => {\n if (!args) args = {};\n if (mentionable) return (args[argument.name] = mentionable);\n else return (args[argument.name] = null);\n });\n }\n if (argument.type === 'role') {\n try {\n const role = await message.guild?.roles.fetch(element);\n\n args[argument.name] = role;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'user') {\n try {\n const user = await message.client.users.fetch(element);\n\n args[argument.name] = user;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'member') {\n try {\n const member = await message.guild?.members.fetch(element);\n\n args[argument.name] = member;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'message') {\n try {\n const msg = await message.channel?.messages.fetch(element);\n\n args[argument.name] = msg;\n } catch (e) {\n args[argument.name] = null;\n }\n }\n if (argument.type === 'list') {\n let separator = String(argument.separator) || ',';\n\n if (separator.startsWith('/') && separator.endsWith('/')) separator = separator.replace(/^\\/|\\/$/gim, '');\n\n const items = content.join(' ').split(new RegExp(' *' + separator + ' *', 'gi'));\n\n if (!argument.content) args[argument.name] = items;\n else {\n const contents = argument.content.map((content) => content.toLowerCase()),\n itemList: Array<string> = [];\n\n items.map((item) => (contents.includes(item.toLowerCase()) ? itemList.push(argument.content?.at(contents.indexOf(item.toLowerCase())) as string) : null));\n\n args[argument.name] = itemList;\n break;\n }\n }\n\n if (argument.type === 'rest') {\n args[argument.name] = content.join(separator);\n break;\n }\n\n content.splice(0, 1);\n }\n\n if (!command.flags) flags = null;\n if (!command.args) args = null;\n\n return { args, flags };\n}\n\nexport async function interactionArguments(\n interaction: XernerxInteraction<XernerxSlashInteraction | XernerxUserContextInteraction | XernerxMessageContextInteraction> | any,\n command: ContextCommandBuilder | SlashCommandBuilder\n) {\n if (command.fileType === 'SlashCommand') {\n const options: Record<string, string> = {};\n\n let args = interaction?.options?._hoistedOptions,\n group = interaction?.options?._group,\n subcommand = interaction?.options?._subcommand;\n\n if (interaction.options._hoistedOptions) {\n for (const option of interaction.options._hoistedOptions) {\n options[option.name] = option.member || option.channel || option.user || option.role || option.value;\n }\n\n args = options;\n }\n\n return { args, group, subcommand };\n }\n\n if (command.fileType === 'ContextCommand') {\n if (command.type === 'user') return await interaction.client.users.fetch(interaction.targetId);\n if (command.type === 'message') return await interaction.channel.messages.fetch(interaction.targetId);\n }\n}\n"]}
@@ -4,4 +4,4 @@ export default class XernerxError {
4
4
  stack: {} | undefined;
5
5
  constructor(message?: string, error?: Error | unknown);
6
6
  }
7
- //# sourceMappingURL=XernerxError.d.ts.map
7
+ //# sourceMappingURL=XernerxError.d.ts.map
@@ -8,4 +8,4 @@ export default class XernerxError {
8
8
  this.stack = error || new Error().stack;
9
9
  }
10
10
  }
11
- //# sourceMappingURL=XernerxError.js.map
11
+ //# sourceMappingURL=XernerxError.js.map
@@ -12,4 +12,4 @@ export default class XernerxLog {
12
12
  error(message: string, error?: XernerxError | unknown): void | null;
13
13
  ready(): void;
14
14
  }
15
- //# sourceMappingURL=XernerxLog.d.ts.map
15
+ //# sourceMappingURL=XernerxLog.d.ts.map
@@ -18,7 +18,12 @@ export default class XernerxLog {
18
18
  }
19
19
  ready() {
20
20
  this.client.prependOnceListener('ready', async (synced) => {
21
- this.info(`${synced.user.tag} is now online, watching ${this.client.guilds.cache.size} guilds, using ${this.client.settings.local ? await this.client.guilds.fetch(this.client.settings.local) : 'none'} as local guild.`, this.readyLog);
21
+ this.info(
22
+ `${synced.user.tag} is now online, watching ${this.client.guilds.cache.size} guilds, using ${
23
+ this.client.settings.local ? await this.client.guilds.fetch(this.client.settings.local) : 'none'
24
+ } as local guild.`,
25
+ this.readyLog
26
+ );
22
27
  const files = [];
23
28
  for (const [id, data] of this.client.commands.message) {
24
29
  files.push(data);
@@ -46,4 +51,4 @@ export default class XernerxLog {
46
51
  });
47
52
  }
48
53
  }
49
- //# sourceMappingURL=XernerxLog.js.map
54
+ //# sourceMappingURL=XernerxLog.js.map
@@ -8,26 +8,25 @@ export interface XernerxUser extends User {
8
8
  export interface XernerxMember extends GuildMember {
9
9
  username: string;
10
10
  }
11
- export interface XernerxGuild extends Guild {
12
- }
13
- export interface XernerxGuildChannel extends GuildChannel {
14
- }
15
- export interface XernerxDMChannel extends DMChannel {
16
- }
17
- interface XernerxCommand {
18
- }
11
+ export interface XernerxGuild extends Guild {}
12
+ export interface XernerxGuildChannel extends GuildChannel {}
13
+ export interface XernerxDMChannel extends DMChannel {}
14
+ interface XernerxCommand {}
19
15
  export interface XernerxMessage extends Message, XernerxCommand {
20
16
  user: XernerxUser;
21
17
  util: MessageUtil;
22
18
  }
23
19
  export interface XernerxSlashInteraction extends ChatInputCommandInteraction, XernerxCommand {
20
+ user: XernerxUser;
24
21
  util: InteractionUtil;
25
22
  }
26
23
  export interface XernerxUserContextInteraction extends UserContextMenuCommandInteraction, XernerxCommand {
24
+ user: XernerxUser;
27
25
  util: InteractionUtil;
28
26
  }
29
27
  export interface XernerxMessageContextInteraction extends MessageContextMenuCommandInteraction, XernerxCommand {
28
+ user: XernerxUser;
30
29
  util: InteractionUtil;
31
30
  }
32
31
  export {};
33
- //# sourceMappingURL=extenders.d.ts.map
32
+ //# sourceMappingURL=extenders.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extenders.d.ts","sourceRoot":"","sources":["../../src/types/extenders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,oCAAoC,EAAE,IAAI,EAAE,iCAAiC,EAAE,MAAM,YAAY,CAAC;AAC9L,OAAO,eAAe,MAAM,6BAA6B,CAAC;AAC1D,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAElD,MAAM,WAAW,WAAY,SAAQ,IAAI;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IAC9C,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAa,SAAQ,KAAK;CAAG;AAE9C,MAAM,WAAW,mBAAoB,SAAQ,YAAY;CAAG;AAE5D,MAAM,WAAW,gBAAiB,SAAQ,SAAS;CAAG;AAEtD,UAAU,cAAc;CAAG;AAE3B,MAAM,WAAW,cAAe,SAAQ,OAAO,EAAE,cAAc;IAC3D,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,uBAAwB,SAAQ,2BAA2B,EAAE,cAAc;IACxF,IAAI,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,WAAW,6BAA8B,SAAQ,iCAAiC,EAAE,cAAc;IACpG,IAAI,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,WAAW,gCAAiC,SAAQ,oCAAoC,EAAE,cAAc;IAC1G,IAAI,EAAE,eAAe,CAAC;CACzB"}
1
+ {"version":3,"file":"extenders.d.ts","sourceRoot":"","sources":["../../src/types/extenders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,oCAAoC,EAAE,IAAI,EAAE,iCAAiC,EAAE,MAAM,YAAY,CAAC;AAC9L,OAAO,eAAe,MAAM,6BAA6B,CAAC;AAC1D,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAElD,MAAM,WAAW,WAAY,SAAQ,IAAI;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IAC9C,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAa,SAAQ,KAAK;CAAG;AAE9C,MAAM,WAAW,mBAAoB,SAAQ,YAAY;CAAG;AAE5D,MAAM,WAAW,gBAAiB,SAAQ,SAAS;CAAG;AAEtD,UAAU,cAAc;CAAG;AAE3B,MAAM,WAAW,cAAe,SAAQ,OAAO,EAAE,cAAc;IAC3D,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,uBAAwB,SAAQ,2BAA2B,EAAE,cAAc;IACxF,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,WAAW,6BAA8B,SAAQ,iCAAiC,EAAE,cAAc;IACpG,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,WAAW,gCAAiC,SAAQ,oCAAoC,EAAE,cAAc;IAC1G,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,eAAe,CAAC;CACzB"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=extenders.js.map
2
+ //# sourceMappingURL=extenders.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extenders.js","sourceRoot":"","sources":["../../src/types/extenders.ts"],"names":[],"mappings":"","sourcesContent":["import { ChatInputCommandInteraction, DMChannel, Guild, GuildChannel, GuildMember, Message, MessageContextMenuCommandInteraction, User, UserContextMenuCommandInteraction } from 'discord.js';\nimport InteractionUtil from '../utils/InteractionUtil.js';\nimport MessageUtil from '../utils/MessageUtil.js';\n\nexport interface XernerxUser extends User {\n owner: boolean;\n voted: boolean | null;\n}\n\nexport interface XernerxMember extends GuildMember {\n username: string;\n}\n\nexport interface XernerxGuild extends Guild {}\n\nexport interface XernerxGuildChannel extends GuildChannel {}\n\nexport interface XernerxDMChannel extends DMChannel {}\n\ninterface XernerxCommand {}\n\nexport interface XernerxMessage extends Message, XernerxCommand {\n user: XernerxUser;\n util: MessageUtil;\n}\n\nexport interface XernerxSlashInteraction extends ChatInputCommandInteraction, XernerxCommand {\n util: InteractionUtil;\n}\n\nexport interface XernerxUserContextInteraction extends UserContextMenuCommandInteraction, XernerxCommand {\n util: InteractionUtil;\n}\n\nexport interface XernerxMessageContextInteraction extends MessageContextMenuCommandInteraction, XernerxCommand {\n util: InteractionUtil;\n}\n"]}
1
+ {"version":3,"file":"extenders.js","sourceRoot":"","sources":["../../src/types/extenders.ts"],"names":[],"mappings":"","sourcesContent":["import { ChatInputCommandInteraction, DMChannel, Guild, GuildChannel, GuildMember, Message, MessageContextMenuCommandInteraction, User, UserContextMenuCommandInteraction } from 'discord.js';\nimport InteractionUtil from '../utils/InteractionUtil.js';\nimport MessageUtil from '../utils/MessageUtil.js';\n\nexport interface XernerxUser extends User {\n owner: boolean;\n voted: boolean | null;\n}\n\nexport interface XernerxMember extends GuildMember {\n username: string;\n}\n\nexport interface XernerxGuild extends Guild {}\n\nexport interface XernerxGuildChannel extends GuildChannel {}\n\nexport interface XernerxDMChannel extends DMChannel {}\n\ninterface XernerxCommand {}\n\nexport interface XernerxMessage extends Message, XernerxCommand {\n user: XernerxUser;\n util: MessageUtil;\n}\n\nexport interface XernerxSlashInteraction extends ChatInputCommandInteraction, XernerxCommand {\n user: XernerxUser;\n util: InteractionUtil;\n}\n\nexport interface XernerxUserContextInteraction extends UserContextMenuCommandInteraction, XernerxCommand {\n user: XernerxUser;\n util: InteractionUtil;\n}\n\nexport interface XernerxMessageContextInteraction extends MessageContextMenuCommandInteraction, XernerxCommand {\n user: XernerxUser;\n util: InteractionUtil;\n}\n"]}
@@ -8,6 +8,7 @@ import MessageCommandBuilder from '../build/MessageCommandBuilder.js';
8
8
  import SlashCommandBuilder from '../build/SlashCommandBuilder.js';
9
9
  import { Locales, MessageCommandArgumentType, PermissionNames, SlashCommandArgumentType, EventType, InhibitorType } from './types.js';
10
10
  import ExtensionHandler from '../handlers/ExtensionHandler.js';
11
+ import { XernerxMessage, XernerxUser } from './extenders.js';
11
12
  export interface XernerxOptions {
12
13
  local?: string;
13
14
  global?: boolean;
@@ -67,11 +68,14 @@ export interface DBLOptions {
67
68
  }
68
69
  export interface XernerxCache {
69
70
  messages: Collection<string, string>;
70
- cooldowns: Collection<string, {
71
- id: string;
72
- command: string;
73
- createdTimestamp: number;
74
- }>;
71
+ cooldowns: Collection<
72
+ string,
73
+ {
74
+ id: string;
75
+ command: string;
76
+ createdTimestamp: number;
77
+ }
78
+ >;
75
79
  }
76
80
  interface CommandHandlerOptions {
77
81
  directory: string;
@@ -207,8 +211,8 @@ export interface SlashCommandGroupOptions {
207
211
  }
208
212
  export interface SlashCommandArguments {
209
213
  args: Record<string, string>;
210
- subcommand: Record<string, string>;
211
- group: Record<string, string>;
214
+ subcommand: string;
215
+ group: string;
212
216
  }
213
217
  export interface EventBuilderOptions {
214
218
  name: EventType;
@@ -227,5 +231,6 @@ export interface PresenceOptions {
227
231
  status?: PresenceStatusData;
228
232
  interval?: number;
229
233
  }
234
+ export type ContextCommandArguments<T extends 'user' | 'message'> = T extends 'user' ? XernerxUser : XernerxMessage;
230
235
  export {};
231
- //# sourceMappingURL=interfaces.d.ts.map
236
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/types/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEvF,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAC/D,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,qBAAqB,MAAM,mCAAmC,CAAC;AACtE,OAAO,mBAAmB,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,wBAAwB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACtI,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAE/D,MAAM,WAAW,cAAc;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE;QACV,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACvB,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACrB,EAAE,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KAC1B,CAAC;IACF,GAAG,CAAC,EAAE;QACF,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,CAAC,CAAC;KAC/E,CAAC;IACF,QAAQ,CAAC,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACL;AAED,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE;QACL,OAAO,CAAC,EAAE,qBAAqB,CAAC;QAChC,KAAK,CAAC,EAAE,mBAAmB,CAAC;QAC5B,OAAO,CAAC,EAAE,qBAAqB,CAAC;QAChC,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B,UAAU,CAAC,EAAE,uBAAuB,CAAC;KACxC,CAAC;IACF,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;CACtC;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IACnD,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC/C,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE;QACH,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,GAAG,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,EAAE;QACJ,KAAK,EAAE,OAAO,CAAC;QACf,IAAI,EAAE,OAAO,CAAC;KACjB,CAAC;CACL;AAED,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,SAAS,EAAE,UAAU,CACjB,MAAM,EACN;QACI,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,gBAAgB,EAAE,MAAM,CAAC;KAC5B,CACJ,CAAC;CACL;AAED,UAAU,qBAAqB;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACvB,EAAE,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAChE,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AACD,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAC9D,KAAK,CAAC,EAAE;QACJ,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;CACL;AACD,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAChE,KAAK,CAAC,EAAE;QACJ,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;CACL;AAED,MAAM,WAAW,mBAAmB;IAChC,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACpC,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,cAAc;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KAC1B,CAAC;IACF,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KAC1B,CAAC;IACF,WAAW,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAChD,EAAE,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACL;AAED,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IACzD,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,6BAA6B;IAC1C,IAAI,EAAE,0BAA0B,CAAC;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACL;AAED,MAAM,WAAW,yBAAyB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,wBAAwB,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACjE,KAAK,CAAC,EAAE;QACJ,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;IACF,IAAI,CAAC,EAAE,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC1C,WAAW,CAAC,EAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,MAAM,CAAC,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;CAC5C;AACD,MAAM,WAAW,qBAAsB,SAAQ,cAAc;IACzD,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1D,KAAK,CAAC,EAAE;QACJ,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,OAAO,CAAC;KACxB,CAAC;CACL;AAED,MAAM,WAAW,2BAA2B;IACxC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,6BAA6B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,2BAA2B,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,wBAAwB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,GAAG,YAAY,CAAC,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC;IAC/H,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/types/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=interfaces.js.map
2
+ //# sourceMappingURL=interfaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/types/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["import { ActivityType, ChannelType, Collection, PresenceStatusData } from 'discord.js';\n\nimport CommandHandler from '../handlers/CommandHandler.js';\nimport EventHandler from '../handlers/EventHandler.js';\nimport InhibitorHandler from '../handlers/InhibitorHandler.js';\nimport WebhookHandler from '../handlers/WebhookHandler.js';\nimport ContextCommandBuilder from '../build/ContextCommandBuilder.js';\nimport MessageCommandBuilder from '../build/MessageCommandBuilder.js';\nimport SlashCommandBuilder from '../build/SlashCommandBuilder.js';\nimport { Locales, MessageCommandArgumentType, PermissionNames, SlashCommandArgumentType, EventType, InhibitorType } from './types.js';\nimport ExtensionHandler from '../handlers/ExtensionHandler.js';\n\nexport interface XernerxOptions {\n local?: string;\n global?: boolean;\n ownerId?: string | Array<string>;\n permissions?: {\n client?: Array<string>;\n user?: Array<string>;\n dm?: boolean;\n };\n ignore?: {\n owner?: boolean;\n users?: Array<string>;\n channels?: Array<string>;\n guilds?: Array<string>;\n };\n log?: {\n ready?: boolean;\n info?: boolean;\n error?: boolean;\n table?: Array<'name' | 'aliases' | 'description' | 'fileType' | 'category'>;\n };\n cooldown?: {\n command?: number;\n cache?: number;\n };\n}\n\nexport interface ModuleOptions {\n options: {\n message?: MessageHandlerOptions;\n slash?: SlashHandlerOptions;\n context?: ContextHandlerOptions;\n events?: EventHandlerOptions;\n inhibitors?: InhibitorHandlerOptions;\n };\n commandHandler: CommandHandler;\n eventHandler: EventHandler;\n inhibitorHandler: InhibitorHandler;\n webhookHandler: WebhookHandler;\n extensionHandler: ExtensionHandler;\n}\n\nexport interface XernerxCommands {\n message: Collection<string, MessageCommandBuilder>;\n slash: Collection<string, SlashCommandBuilder>;\n context: Collection<string, ContextCommandBuilder>;\n}\n\nexport interface DBLOptions {\n topgg: {\n token: string;\n };\n dbl: {\n token: string;\n };\n config: {\n emits: boolean;\n logs: boolean;\n };\n}\n\nexport interface XernerxCache {\n messages: Collection<string, string>;\n cooldowns: Collection<\n string,\n {\n id: string;\n command: string;\n createdTimestamp: number;\n }\n >;\n}\n\ninterface CommandHandlerOptions {\n directory: string;\n cooldown?: number;\n permissions?: {\n user?: Array<string>;\n client?: Array<string>;\n dm?: boolean;\n };\n logging?: boolean;\n}\n\nexport interface MessageHandlerOptions extends CommandHandlerOptions {\n prefix: string | Array<string>;\n allowMention?: boolean;\n handleEdits?: boolean;\n handleDeletes?: boolean;\n handleTyping?: boolean;\n}\nexport interface SlashHandlerOptions extends CommandHandlerOptions {\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n}\nexport interface ContextHandlerOptions extends CommandHandlerOptions {\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n}\n\nexport interface EventHandlerOptions {\n directory: string;\n}\n\nexport interface InhibitorHandlerOptions {\n directory: string;\n}\n\ninterface CommandOptions {\n name: string;\n description?: string | null;\n usage?: string | null;\n info?: string | null;\n category?: string | null;\n cooldown?: number | null;\n ignore?: {\n owner?: boolean;\n users?: Array<string>;\n channels?: Array<string>;\n guilds?: Array<string>;\n };\n strict?: {\n owner?: boolean;\n users?: Array<string>;\n channels?: Array<string>;\n guilds?: Array<string>;\n };\n permissions?: {\n user?: Array<PermissionNames> | Array<string>;\n client?: Array<PermissionNames> | Array<string>;\n dm?: boolean;\n };\n}\n\nexport interface MessageCommandOptions extends CommandOptions {\n aliases?: Array<string>;\n separator?: string;\n prefix?: Array<string> | string;\n regex?: RegExp;\n channelType?: Array<ChannelType>;\n args?: Array<MessageCommandArgumentOptions>;\n flags?: Array<MessageCommandFlagOptions>;\n}\n\nexport interface MessageCommandArgumentOptions {\n type: MessageCommandArgumentType;\n name: string;\n content?: Array<string>;\n match?: string | Array<string>;\n description?: string;\n default?: string | Function;\n separator?: string | RegExp;\n prompt?: {\n reply?: string;\n send?: string;\n };\n}\n\nexport interface MessageCommandFlagOptions {\n name: string;\n match: string;\n}\n\nexport interface MessageCommandArguments {\n args: Record<string, unknown> | null;\n flags: Record<string, boolean> | null;\n}\n\nexport interface SlashCommandOptions extends CommandOptions {\n description: string;\n nameLocalizations?: Record<Locales, string | null> | null;\n descriptionLocalizations?: Record<Locales, string | null> | null;\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n args?: Array<SlashCommandArgumentOptions>;\n subcommands?: Array<SlashCommandSubcommandOptions>;\n groups?: Array<SlashCommandGroupOptions>;\n}\nexport interface ContextCommandOptions extends CommandOptions {\n type: 'user' | 'message';\n nameLocalizations?: Record<Locales, string | null> | null;\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n}\n\nexport interface SlashCommandArgumentOptions {\n type: SlashCommandArgumentType;\n name: string;\n description: string;\n required?: boolean;\n autocomplete?: boolean;\n choices?: Array<Record<string, string>>;\n}\n\nexport interface SlashCommandSubcommandOptions {\n name: string;\n description: string;\n args?: Array<SlashCommandArgumentOptions>;\n}\n\nexport interface SlashCommandGroupOptions {\n name: string;\n description: string;\n subcommands: Array<SlashCommandSubcommandOptions>;\n}\n\nexport interface SlashCommandArguments {\n args: Record<string, string>;\n subcommand: Record<string, string>;\n group: Record<string, string>;\n}\n\nexport interface EventBuilderOptions {\n name: EventType;\n emitter: 'client' | 'process';\n type: 'discord';\n once: boolean;\n}\n\nexport interface InhibitorBuilderOptions {\n name: string;\n type: InhibitorType;\n}\n\nexport interface PresenceOptions {\n text: string;\n type?: ActivityType.Playing | ActivityType.Streaming | ActivityType.Listening | ActivityType.Watching | ActivityType.Competing;\n url: string;\n status?: PresenceStatusData;\n interval?: number;\n}\n"]}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/types/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["import { ActivityType, ChannelType, Collection, PresenceStatusData } from 'discord.js';\n\nimport CommandHandler from '../handlers/CommandHandler.js';\nimport EventHandler from '../handlers/EventHandler.js';\nimport InhibitorHandler from '../handlers/InhibitorHandler.js';\nimport WebhookHandler from '../handlers/WebhookHandler.js';\nimport ContextCommandBuilder from '../build/ContextCommandBuilder.js';\nimport MessageCommandBuilder from '../build/MessageCommandBuilder.js';\nimport SlashCommandBuilder from '../build/SlashCommandBuilder.js';\nimport { Locales, MessageCommandArgumentType, PermissionNames, SlashCommandArgumentType, EventType, InhibitorType } from './types.js';\nimport ExtensionHandler from '../handlers/ExtensionHandler.js';\nimport { XernerxMessage, XernerxUser } from './extenders.js';\n\nexport interface XernerxOptions {\n local?: string;\n global?: boolean;\n ownerId?: string | Array<string>;\n permissions?: {\n client?: Array<string>;\n user?: Array<string>;\n dm?: boolean;\n };\n ignore?: {\n owner?: boolean;\n users?: Array<string>;\n channels?: Array<string>;\n guilds?: Array<string>;\n };\n log?: {\n ready?: boolean;\n info?: boolean;\n error?: boolean;\n table?: Array<'name' | 'aliases' | 'description' | 'fileType' | 'category'>;\n };\n cooldown?: {\n command?: number;\n cache?: number;\n };\n}\n\nexport interface ModuleOptions {\n options: {\n message?: MessageHandlerOptions;\n slash?: SlashHandlerOptions;\n context?: ContextHandlerOptions;\n events?: EventHandlerOptions;\n inhibitors?: InhibitorHandlerOptions;\n };\n commandHandler: CommandHandler;\n eventHandler: EventHandler;\n inhibitorHandler: InhibitorHandler;\n webhookHandler: WebhookHandler;\n extensionHandler: ExtensionHandler;\n}\n\nexport interface XernerxCommands {\n message: Collection<string, MessageCommandBuilder>;\n slash: Collection<string, SlashCommandBuilder>;\n context: Collection<string, ContextCommandBuilder>;\n}\n\nexport interface DBLOptions {\n topgg: {\n token: string;\n };\n dbl: {\n token: string;\n };\n config: {\n emits: boolean;\n logs: boolean;\n };\n}\n\nexport interface XernerxCache {\n messages: Collection<string, string>;\n cooldowns: Collection<\n string,\n {\n id: string;\n command: string;\n createdTimestamp: number;\n }\n >;\n}\n\ninterface CommandHandlerOptions {\n directory: string;\n cooldown?: number;\n permissions?: {\n user?: Array<string>;\n client?: Array<string>;\n dm?: boolean;\n };\n logging?: boolean;\n}\n\nexport interface MessageHandlerOptions extends CommandHandlerOptions {\n prefix: string | Array<string>;\n allowMention?: boolean;\n handleEdits?: boolean;\n handleDeletes?: boolean;\n handleTyping?: boolean;\n}\nexport interface SlashHandlerOptions extends CommandHandlerOptions {\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n}\nexport interface ContextHandlerOptions extends CommandHandlerOptions {\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n}\n\nexport interface EventHandlerOptions {\n directory: string;\n}\n\nexport interface InhibitorHandlerOptions {\n directory: string;\n}\n\ninterface CommandOptions {\n name: string;\n description?: string | null;\n usage?: string | null;\n info?: string | null;\n category?: string | null;\n cooldown?: number | null;\n ignore?: {\n owner?: boolean;\n users?: Array<string>;\n channels?: Array<string>;\n guilds?: Array<string>;\n };\n strict?: {\n owner?: boolean;\n users?: Array<string>;\n channels?: Array<string>;\n guilds?: Array<string>;\n };\n permissions?: {\n user?: Array<PermissionNames> | Array<string>;\n client?: Array<PermissionNames> | Array<string>;\n dm?: boolean;\n };\n}\n\nexport interface MessageCommandOptions extends CommandOptions {\n aliases?: Array<string>;\n separator?: string;\n prefix?: Array<string> | string;\n regex?: RegExp;\n channelType?: Array<ChannelType>;\n args?: Array<MessageCommandArgumentOptions>;\n flags?: Array<MessageCommandFlagOptions>;\n}\n\nexport interface MessageCommandArgumentOptions {\n type: MessageCommandArgumentType;\n name: string;\n content?: Array<string>;\n match?: string | Array<string>;\n description?: string;\n default?: string | Function;\n separator?: string | RegExp;\n prompt?: {\n reply?: string;\n send?: string;\n };\n}\n\nexport interface MessageCommandFlagOptions {\n name: string;\n match: string;\n}\n\nexport interface MessageCommandArguments {\n args: Record<string, unknown> | null;\n flags: Record<string, boolean> | null;\n}\n\nexport interface SlashCommandOptions extends CommandOptions {\n description: string;\n nameLocalizations?: Record<Locales, string | null> | null;\n descriptionLocalizations?: Record<Locales, string | null> | null;\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n args?: Array<SlashCommandArgumentOptions>;\n subcommands?: Array<SlashCommandSubcommandOptions>;\n groups?: Array<SlashCommandGroupOptions>;\n}\nexport interface ContextCommandOptions extends CommandOptions {\n type: 'user' | 'message';\n nameLocalizations?: Record<Locales, string | null> | null;\n defer?: {\n reply?: boolean;\n ephemeral?: boolean;\n fetchReply?: boolean;\n };\n}\n\nexport interface SlashCommandArgumentOptions {\n type: SlashCommandArgumentType;\n name: string;\n description: string;\n required?: boolean;\n autocomplete?: boolean;\n choices?: Array<Record<string, string>>;\n}\n\nexport interface SlashCommandSubcommandOptions {\n name: string;\n description: string;\n args?: Array<SlashCommandArgumentOptions>;\n}\n\nexport interface SlashCommandGroupOptions {\n name: string;\n description: string;\n subcommands: Array<SlashCommandSubcommandOptions>;\n}\n\nexport interface SlashCommandArguments {\n args: Record<string, string>;\n subcommand: string;\n group: string;\n}\n\nexport interface EventBuilderOptions {\n name: EventType;\n emitter: 'client' | 'process';\n type: 'discord';\n once: boolean;\n}\n\nexport interface InhibitorBuilderOptions {\n name: string;\n type: InhibitorType;\n}\n\nexport interface PresenceOptions {\n text: string;\n type?: ActivityType.Playing | ActivityType.Streaming | ActivityType.Listening | ActivityType.Watching | ActivityType.Competing;\n url: string;\n status?: PresenceStatusData;\n interval?: number;\n}\n\nexport type ContextCommandArguments<T extends 'user' | 'message'> = T extends 'user' ? XernerxUser : XernerxMessage;\n"]}