@duque.edits/sdk 1.1.3 → 1.3.1

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 (277) hide show
  1. package/README.md +1 -1
  2. package/dist/{index-BPxglVSk.d.ts → index-xkfp9hFj.d.ts} +442 -193
  3. package/dist/index.d.ts +2 -1
  4. package/dist/index.js +9 -4225
  5. package/dist/managers/automaticmessage/AutomaticMessageManager.d.ts +2 -1
  6. package/dist/managers/automaticmessage/AutomaticMessageManager.js +41 -739
  7. package/dist/managers/base.d.ts +2 -1
  8. package/dist/managers/base.js +7 -89
  9. package/dist/managers/bet/GuildBetManager.d.ts +2 -1
  10. package/dist/managers/bet/GuildBetManager.js +20 -901
  11. package/dist/managers/betuser/GuildBetUserManager.d.ts +2 -1
  12. package/dist/managers/betuser/GuildBetUserManager.js +21 -444
  13. package/dist/managers/buffer/BufferManager.d.ts +2 -1
  14. package/dist/managers/buffer/BufferManager.js +7 -192
  15. package/dist/managers/guild/GuildManager.d.ts +2 -1
  16. package/dist/managers/guild/GuildManager.js +37 -3704
  17. package/dist/managers/index.d.ts +2 -1
  18. package/dist/managers/index.js +39 -3937
  19. package/dist/managers/logs/LogManager.d.ts +2 -1
  20. package/dist/managers/logs/LogManager.js +15 -673
  21. package/dist/managers/match/GuildMatchManager.d.ts +2 -1
  22. package/dist/managers/match/GuildMatchManager.js +25 -1225
  23. package/dist/managers/mediator/GuildMediatorManager.d.ts +2 -1
  24. package/dist/managers/mediator/GuildMediatorManager.js +22 -365
  25. package/dist/managers/message/MessagesManager.d.ts +2 -1
  26. package/dist/managers/message/MessagesManager.js +4 -88
  27. package/dist/managers/minesgame/MinesGameManager.d.ts +2 -1
  28. package/dist/managers/minesgame/MinesGameManager.js +15 -655
  29. package/dist/managers/permission/GuildPermissionManager.d.ts +2 -1
  30. package/dist/managers/permission/GuildPermissionManager.js +21 -212
  31. package/dist/managers/player/PlayerManager.d.ts +2 -1
  32. package/dist/managers/player/PlayerManager.js +3 -87
  33. package/dist/managers/product/ProductManager.d.ts +22 -0
  34. package/dist/managers/product/ProductManager.js +100 -0
  35. package/dist/managers/shop/ShopManager.d.ts +22 -0
  36. package/dist/managers/shop/ShopManager.js +98 -0
  37. package/dist/managers/ticket/TicketManager.d.ts +2 -1
  38. package/dist/managers/ticket/TicketManager.js +24 -707
  39. package/dist/managers/ticketpanel/TicketPanelManager.d.ts +22 -0
  40. package/dist/managers/ticketpanel/TicketPanelManager.js +81 -0
  41. package/dist/managers/tournament/TournamentManager.d.ts +2 -1
  42. package/dist/managers/tournament/TournamentManager.js +32 -686
  43. package/dist/managers/user/GuildUserManager.d.ts +2 -1
  44. package/dist/managers/user/GuildUserManager.js +27 -506
  45. package/dist/managers/vipmember/VipMemberManager.d.ts +2 -1
  46. package/dist/managers/vipmember/VipMemberManager.js +29 -425
  47. package/dist/rest/APIEndpoints.js +3 -5
  48. package/dist/rest/REST.d.ts +2 -1
  49. package/dist/rest/REST.js +56 -3932
  50. package/dist/rest/Routes.d.ts +79 -87
  51. package/dist/rest/Routes.js +8 -18
  52. package/dist/rest/index.d.ts +2 -1
  53. package/dist/rest/index.js +7 -4027
  54. package/dist/structures/Collection.js +5 -7
  55. package/dist/structures/automaticmessage/AutomaticMessage.d.ts +3 -2
  56. package/dist/structures/automaticmessage/AutomaticMessage.js +50 -531
  57. package/dist/structures/bet/GuildBet.d.ts +2 -1
  58. package/dist/structures/bet/GuildBet.js +20 -696
  59. package/dist/structures/betuser/GuildBetUser.d.ts +2 -1
  60. package/dist/structures/betuser/GuildBetUser.js +31 -130
  61. package/dist/structures/guild/Guild.d.ts +5 -4
  62. package/dist/structures/guild/Guild.js +196 -3322
  63. package/dist/structures/index.d.ts +2 -1
  64. package/dist/structures/index.js +33 -3772
  65. package/dist/structures/logentry/LogEntry.d.ts +2 -1
  66. package/dist/structures/logentry/LogEntry.js +23 -497
  67. package/dist/structures/match/GuildMatch.d.ts +2 -1
  68. package/dist/structures/match/GuildMatch.js +55 -950
  69. package/dist/structures/mediator/GuildMediator.d.ts +2 -1
  70. package/dist/structures/mediator/GuildMediator.js +18 -123
  71. package/dist/structures/minesgame/MinesGame.d.ts +2 -1
  72. package/dist/structures/minesgame/MinesGame.js +14 -496
  73. package/dist/structures/product/Product.d.ts +22 -0
  74. package/dist/structures/product/Product.js +123 -0
  75. package/dist/structures/shop/Shop.d.ts +22 -0
  76. package/dist/structures/shop/Shop.js +124 -0
  77. package/dist/structures/ticket/Ticket.d.ts +3 -2
  78. package/dist/structures/ticket/Ticket.js +38 -517
  79. package/dist/structures/ticketpanel/TicketPanel.d.ts +22 -0
  80. package/dist/structures/ticketpanel/TicketPanel.js +175 -0
  81. package/dist/structures/tournament/Tournament.d.ts +2 -1
  82. package/dist/structures/tournament/Tournament.js +13 -493
  83. package/dist/structures/user/GuildUser.d.ts +2 -1
  84. package/dist/structures/user/GuildUser.js +253 -147
  85. package/dist/structures/vipmember/VipMember.d.ts +2 -1
  86. package/dist/structures/vipmember/VipMember.js +11 -116
  87. package/dist/types/RestTypes.d.ts +2 -1
  88. package/dist/types/RestTypes.js +0 -2
  89. package/dist/types/api/APIAdvert.js +0 -2
  90. package/dist/types/api/APIAutomaticMessage.d.ts +2 -1
  91. package/dist/types/api/APIAutomaticMessage.js +0 -2
  92. package/dist/types/api/APIBaseChannel.js +0 -2
  93. package/dist/types/api/APIBetChannel.js +0 -2
  94. package/dist/types/api/APICode.js +0 -2
  95. package/dist/types/api/APIGiveaway.js +0 -2
  96. package/dist/types/api/APIGuild.d.ts +5 -4
  97. package/dist/types/api/APIGuild.js +1 -2
  98. package/dist/types/api/APIGuildAdvert.js +0 -2
  99. package/dist/types/api/APIGuildBet.d.ts +2 -1
  100. package/dist/types/api/APIGuildBet.js +0 -2
  101. package/dist/types/api/APIGuildBetUser.d.ts +2 -1
  102. package/dist/types/api/APIGuildBetUser.js +0 -2
  103. package/dist/types/api/APIGuildChannel.js +0 -2
  104. package/dist/types/api/APIGuildGroupedChannel.d.ts +2 -1
  105. package/dist/types/api/APIGuildGroupedChannel.js +0 -2
  106. package/dist/types/api/APIGuildMatch.d.ts +2 -1
  107. package/dist/types/api/APIGuildMatch.js +0 -2
  108. package/dist/types/api/APIGuildMediator.js +0 -2
  109. package/dist/types/api/APIGuildPermissions.d.ts +18 -2
  110. package/dist/types/api/APIGuildPermissions.js +17 -3
  111. package/dist/types/api/APIGuildShop.d.ts +6 -1
  112. package/dist/types/api/APIGuildShop.js +0 -2
  113. package/dist/types/api/APIGuildTicket.js +0 -2
  114. package/dist/types/api/APIGuildUser.d.ts +2 -1
  115. package/dist/types/api/APIGuildUser.js +0 -2
  116. package/dist/types/api/APILogEntry.d.ts +4 -2
  117. package/dist/types/api/APILogEntry.js +3 -3
  118. package/dist/types/api/APIMessage.d.ts +2 -0
  119. package/dist/types/api/APIMessage.js +0 -2
  120. package/dist/types/api/APIMinesGame.js +0 -2
  121. package/dist/types/api/APIPlayer.js +0 -2
  122. package/dist/types/api/APIProduct.d.ts +2 -1
  123. package/dist/types/api/APIProduct.js +1 -2
  124. package/dist/types/api/APITicketPanel.d.ts +22 -0
  125. package/dist/types/api/APITicketPanel.js +16 -0
  126. package/dist/types/api/APITournament.d.ts +6 -1
  127. package/dist/types/api/APITournament.js +0 -2
  128. package/dist/types/api/APIVipMember.js +0 -2
  129. package/dist/types/api/index.d.ts +2 -1
  130. package/dist/types/api/index.js +61 -110
  131. package/dist/types/index.d.ts +2 -1
  132. package/dist/types/index.js +5 -154
  133. package/dist/utils/Assertion.js +2 -4
  134. package/dist/utils/clamp0.d.ts +3 -0
  135. package/dist/utils/clamp0.js +31 -0
  136. package/dist/utils/getRandomNumber.js +0 -2
  137. package/dist/utils/isSameDayUTC.d.ts +3 -0
  138. package/dist/utils/isSameDayUTC.js +33 -0
  139. package/dist/utils/randomKeyGenerator.js +0 -2
  140. package/package.json +4 -5
  141. package/dist/index-DjHimKUy.d.mts +0 -1431
  142. package/dist/index.d.mts +0 -23
  143. package/dist/index.mjs +0 -4196
  144. package/dist/managers/automaticmessage/AutomaticMessageManager.d.mts +0 -21
  145. package/dist/managers/automaticmessage/AutomaticMessageManager.mjs +0 -796
  146. package/dist/managers/base.d.mts +0 -21
  147. package/dist/managers/base.mjs +0 -107
  148. package/dist/managers/bet/GuildBetManager.d.mts +0 -21
  149. package/dist/managers/bet/GuildBetManager.mjs +0 -958
  150. package/dist/managers/betuser/GuildBetUserManager.d.mts +0 -21
  151. package/dist/managers/betuser/GuildBetUserManager.mjs +0 -502
  152. package/dist/managers/buffer/BufferManager.d.mts +0 -21
  153. package/dist/managers/buffer/BufferManager.mjs +0 -223
  154. package/dist/managers/guild/GuildManager.d.mts +0 -21
  155. package/dist/managers/guild/GuildManager.mjs +0 -3786
  156. package/dist/managers/index.d.mts +0 -21
  157. package/dist/managers/index.mjs +0 -3934
  158. package/dist/managers/logs/LogManager.d.mts +0 -21
  159. package/dist/managers/logs/LogManager.mjs +0 -738
  160. package/dist/managers/match/GuildMatchManager.d.mts +0 -21
  161. package/dist/managers/match/GuildMatchManager.mjs +0 -1305
  162. package/dist/managers/mediator/GuildMediatorManager.d.mts +0 -21
  163. package/dist/managers/mediator/GuildMediatorManager.mjs +0 -430
  164. package/dist/managers/message/MessagesManager.d.mts +0 -21
  165. package/dist/managers/message/MessagesManager.mjs +0 -134
  166. package/dist/managers/minesgame/MinesGameManager.d.mts +0 -21
  167. package/dist/managers/minesgame/MinesGameManager.mjs +0 -721
  168. package/dist/managers/permission/GuildPermissionManager.d.mts +0 -21
  169. package/dist/managers/permission/GuildPermissionManager.mjs +0 -256
  170. package/dist/managers/player/PlayerManager.d.mts +0 -21
  171. package/dist/managers/player/PlayerManager.mjs +0 -155
  172. package/dist/managers/ticket/TicketManager.d.mts +0 -21
  173. package/dist/managers/ticket/TicketManager.mjs +0 -827
  174. package/dist/managers/tournament/TournamentManager.d.mts +0 -21
  175. package/dist/managers/tournament/TournamentManager.mjs +0 -745
  176. package/dist/managers/user/GuildUserManager.d.mts +0 -21
  177. package/dist/managers/user/GuildUserManager.mjs +0 -567
  178. package/dist/managers/vipmember/VipMemberManager.d.mts +0 -21
  179. package/dist/managers/vipmember/VipMemberManager.mjs +0 -513
  180. package/dist/rest/APIEndpoints.d.mts +0 -12
  181. package/dist/rest/APIEndpoints.mjs +0 -19
  182. package/dist/rest/REST.d.mts +0 -21
  183. package/dist/rest/REST.mjs +0 -4021
  184. package/dist/rest/Routes.d.mts +0 -104
  185. package/dist/rest/Routes.mjs +0 -104
  186. package/dist/rest/index.d.mts +0 -23
  187. package/dist/rest/index.mjs +0 -4036
  188. package/dist/structures/Collection.d.mts +0 -19
  189. package/dist/structures/Collection.mjs +0 -87
  190. package/dist/structures/automaticmessage/AutomaticMessage.d.mts +0 -21
  191. package/dist/structures/automaticmessage/AutomaticMessage.mjs +0 -609
  192. package/dist/structures/bet/GuildBet.d.mts +0 -21
  193. package/dist/structures/bet/GuildBet.mjs +0 -881
  194. package/dist/structures/betuser/GuildBetUser.d.mts +0 -21
  195. package/dist/structures/betuser/GuildBetUser.mjs +0 -326
  196. package/dist/structures/guild/Guild.d.mts +0 -21
  197. package/dist/structures/guild/Guild.mjs +0 -3690
  198. package/dist/structures/index.d.mts +0 -21
  199. package/dist/structures/index.mjs +0 -3773
  200. package/dist/structures/logentry/LogEntry.d.mts +0 -21
  201. package/dist/structures/logentry/LogEntry.mjs +0 -575
  202. package/dist/structures/match/GuildMatch.d.mts +0 -21
  203. package/dist/structures/match/GuildMatch.mjs +0 -1191
  204. package/dist/structures/mediator/GuildMediator.d.mts +0 -21
  205. package/dist/structures/mediator/GuildMediator.mjs +0 -246
  206. package/dist/structures/minesgame/MinesGame.d.mts +0 -21
  207. package/dist/structures/minesgame/MinesGame.mjs +0 -579
  208. package/dist/structures/ticket/Ticket.d.mts +0 -21
  209. package/dist/structures/ticket/Ticket.mjs +0 -626
  210. package/dist/structures/tournament/Tournament.d.mts +0 -21
  211. package/dist/structures/tournament/Tournament.mjs +0 -585
  212. package/dist/structures/user/GuildUser.d.mts +0 -21
  213. package/dist/structures/user/GuildUser.mjs +0 -382
  214. package/dist/structures/vipmember/VipMember.d.mts +0 -21
  215. package/dist/structures/vipmember/VipMember.mjs +0 -250
  216. package/dist/types/RestTypes.d.mts +0 -21
  217. package/dist/types/RestTypes.mjs +0 -0
  218. package/dist/types/api/APIAdvert.d.mts +0 -13
  219. package/dist/types/api/APIAdvert.mjs +0 -0
  220. package/dist/types/api/APIAutomaticMessage.d.mts +0 -21
  221. package/dist/types/api/APIAutomaticMessage.mjs +0 -0
  222. package/dist/types/api/APIBaseChannel.d.mts +0 -12
  223. package/dist/types/api/APIBaseChannel.mjs +0 -0
  224. package/dist/types/api/APIBetChannel.d.mts +0 -12
  225. package/dist/types/api/APIBetChannel.mjs +0 -0
  226. package/dist/types/api/APICode.d.mts +0 -12
  227. package/dist/types/api/APICode.mjs +0 -0
  228. package/dist/types/api/APIGiveaway.d.mts +0 -29
  229. package/dist/types/api/APIGiveaway.mjs +0 -0
  230. package/dist/types/api/APIGuild.d.mts +0 -21
  231. package/dist/types/api/APIGuild.mjs +0 -46
  232. package/dist/types/api/APIGuildAdvert.d.mts +0 -10
  233. package/dist/types/api/APIGuildAdvert.mjs +0 -0
  234. package/dist/types/api/APIGuildBet.d.mts +0 -21
  235. package/dist/types/api/APIGuildBet.mjs +0 -8
  236. package/dist/types/api/APIGuildBetUser.d.mts +0 -21
  237. package/dist/types/api/APIGuildBetUser.mjs +0 -0
  238. package/dist/types/api/APIGuildChannel.d.mts +0 -12
  239. package/dist/types/api/APIGuildChannel.mjs +0 -0
  240. package/dist/types/api/APIGuildGroupedChannel.d.mts +0 -21
  241. package/dist/types/api/APIGuildGroupedChannel.mjs +0 -0
  242. package/dist/types/api/APIGuildMatch.d.mts +0 -21
  243. package/dist/types/api/APIGuildMatch.mjs +0 -14
  244. package/dist/types/api/APIGuildMediator.d.mts +0 -16
  245. package/dist/types/api/APIGuildMediator.mjs +0 -0
  246. package/dist/types/api/APIGuildPermissions.d.mts +0 -15
  247. package/dist/types/api/APIGuildPermissions.mjs +0 -13
  248. package/dist/types/api/APIGuildShop.d.mts +0 -15
  249. package/dist/types/api/APIGuildShop.mjs +0 -0
  250. package/dist/types/api/APIGuildTicket.d.mts +0 -19
  251. package/dist/types/api/APIGuildTicket.mjs +0 -0
  252. package/dist/types/api/APIGuildUser.d.mts +0 -21
  253. package/dist/types/api/APIGuildUser.mjs +0 -0
  254. package/dist/types/api/APILogEntry.d.mts +0 -32
  255. package/dist/types/api/APILogEntry.mjs +0 -20
  256. package/dist/types/api/APIMessage.d.mts +0 -13
  257. package/dist/types/api/APIMessage.mjs +0 -0
  258. package/dist/types/api/APIMinesGame.d.mts +0 -15
  259. package/dist/types/api/APIMinesGame.mjs +0 -0
  260. package/dist/types/api/APIPlayer.d.mts +0 -10
  261. package/dist/types/api/APIPlayer.mjs +0 -0
  262. package/dist/types/api/APIProduct.d.mts +0 -22
  263. package/dist/types/api/APIProduct.mjs +0 -0
  264. package/dist/types/api/APITournament.d.mts +0 -16
  265. package/dist/types/api/APITournament.mjs +0 -0
  266. package/dist/types/api/APIVipMember.d.mts +0 -22
  267. package/dist/types/api/APIVipMember.mjs +0 -0
  268. package/dist/types/api/index.d.mts +0 -21
  269. package/dist/types/api/index.mjs +0 -135
  270. package/dist/types/index.d.mts +0 -21
  271. package/dist/types/index.mjs +0 -135
  272. package/dist/utils/Assertion.d.mts +0 -34
  273. package/dist/utils/Assertion.mjs +0 -52
  274. package/dist/utils/getRandomNumber.d.mts +0 -3
  275. package/dist/utils/getRandomNumber.mjs +0 -7
  276. package/dist/utils/randomKeyGenerator.d.mts +0 -3
  277. package/dist/utils/randomKeyGenerator.mjs +0 -8
@@ -13,10 +13,11 @@ import { LogEntryTypes, APILogEntry } from './types/api/APILogEntry.js';
13
13
  import { APIMessage } from './types/api/APIMessage.js';
14
14
  import { APIMinesGame } from './types/api/APIMinesGame.js';
15
15
  import { APIPlayer } from './types/api/APIPlayer.js';
16
- import './types/api/APIProduct.js';
16
+ import { APIProduct } from './types/api/APIProduct.js';
17
17
  import { APIVipMember } from './types/api/APIVipMember.js';
18
18
  import { Collection } from './structures/Collection.js';
19
19
  import EventEmitter from 'events';
20
+ import { APIEmbed } from 'discord-api-types/v10';
20
21
  import { APITournament } from './types/api/APITournament.js';
21
22
 
22
23
  interface APIGuildGroupedChannel {
@@ -120,7 +121,8 @@ declare enum GuildChannelsType {
120
121
  BetEmulatorCategory = "bet_emulator_category",
121
122
  BetMixCategory = "bet_mix_category",
122
123
  RouletteLogs = "roulette_logs",
123
- Rules = "rules"
124
+ Rules = "rules",
125
+ BettingChannel = "betting"
124
126
  }
125
127
  interface APIGuild {
126
128
  /** Guild's id */
@@ -151,29 +153,53 @@ interface APIGuild {
151
153
  createdAt: Date;
152
154
  /** Guild Updated Date */
153
155
  updatedAt: Date;
154
- /** Guild Shop */
155
- shop: APIGuildShop;
156
156
  adverts: APIGuildAdvert[];
157
157
  max_advert_per_user: number;
158
158
  codes: APICode[];
159
159
  coin_symbol: string;
160
160
  roulette_settings: RouletteSettings;
161
+ webhook_urls: GuildLogsWebhookUrls;
161
162
  autorole_config: {
162
163
  role: string;
163
164
  };
164
- automatic_messages: APIAutomaticMessage[];
165
+ match_count: number;
166
+ bet_count: number;
167
+ }
168
+ interface GuildLogsWebhookUrls {
169
+ queues: {
170
+ closed: string;
171
+ shutted: string;
172
+ managed: string;
173
+ started: string;
174
+ };
175
+ users: {
176
+ punished: string;
177
+ updated: string;
178
+ };
179
+ shop: {
180
+ redeemed: string;
181
+ };
182
+ tickets: {
183
+ closed: string;
184
+ opened: string;
185
+ };
165
186
  }
166
187
 
167
188
  interface APIAutomaticMessage {
168
189
  id: string;
169
- type: AutomaticMessagesTypes;
190
+ _id: string;
191
+ name: string;
170
192
  admin_id: string;
171
193
  channel_ids: string[];
172
- content: string;
173
- embeds: any[];
174
- components: any[];
175
- attachments: any[];
176
- flags: number;
194
+ type: AutomaticMessagesTypes;
195
+ guild_id: string;
196
+ message: {
197
+ content: string;
198
+ embeds: APIEmbed[];
199
+ components: any[];
200
+ attachments: any[];
201
+ flags: number;
202
+ };
177
203
  interval_ms: number;
178
204
  createdAt: Date;
179
205
  updatedAt: Date;
@@ -249,6 +275,7 @@ interface APIGuildBetUser {
249
275
  /** User's coins */
250
276
  coins: number;
251
277
  spins: number;
278
+ used_codes: string[];
252
279
  /** Creation Date */
253
280
  createdAt: Date;
254
281
  /** Updated Date */
@@ -272,8 +299,10 @@ interface APIGuildMatch {
272
299
  admin_id: string;
273
300
  /** Match's players */
274
301
  players: APIPlayer[];
302
+ code: string;
275
303
  /** Match's winners */
276
304
  winners: APIPlayer[];
305
+ betting: number;
277
306
  /** Match's losers */
278
307
  losers: APIPlayer[];
279
308
  /** Match;s messages */
@@ -299,7 +328,13 @@ interface APIGuildMatch {
299
328
  updatedAt: Date;
300
329
  /** Match's id */
301
330
  _id: string;
302
- mvps: [];
331
+ mvps: string[];
332
+ url: string;
333
+ logs: {
334
+ shutted: string;
335
+ closed: string;
336
+ managed: string;
337
+ };
303
338
  }
304
339
  declare enum GuildMatchChannelsType {
305
340
  CreationChannel = "creation_channel",
@@ -314,9 +349,15 @@ interface Profile {
314
349
  avatarUrl?: string;
315
350
  bio?: string;
316
351
  name?: string;
352
+ extra?: string;
317
353
  textColor?: string;
318
354
  primaryColor?: string;
319
355
  secondaryColor?: string;
356
+ tertiaryColor?: string;
357
+ booster?: {
358
+ status?: "on" | "off";
359
+ expires?: number;
360
+ };
320
361
  }
321
362
  interface APIGuildUser {
322
363
  /** User's id */
@@ -330,9 +371,11 @@ interface APIGuildUser {
330
371
  creations: number;
331
372
  /** User's wins */
332
373
  wins: number;
374
+ consecutive_wins: number;
333
375
  adverts: APIAdvert[];
334
376
  /** User's mvps */
335
377
  mvps: number;
378
+ coins: number;
336
379
  /** User's losses */
337
380
  losses: number;
338
381
  /** User's games */
@@ -344,6 +387,22 @@ interface APIGuildUser {
344
387
  /** User's original channels */
345
388
  original_channels: OriginalChannels;
346
389
  spins: number;
390
+ used_codes: string[];
391
+ /** Creation Date */
392
+ createdAt: Date;
393
+ /** Updated Date */
394
+ updatedAt: Date;
395
+ }
396
+
397
+ interface APITicketPanel {
398
+ message: {
399
+ embeds: APIEmbed[];
400
+ };
401
+ name: string;
402
+ guild_id: string;
403
+ _id: string;
404
+ components_type: "button" | "stringselect";
405
+ categories: APITicketCategory[];
347
406
  /** Creation Date */
348
407
  createdAt: Date;
349
408
  /** Updated Date */
@@ -359,6 +418,9 @@ interface APITicketCategory {
359
418
  description: string;
360
419
  /** Category's alias */
361
420
  alias: string;
421
+ name: string;
422
+ role_ids: string[];
423
+ _id: string;
362
424
  }
363
425
  interface LogMessage {
364
426
  /** The message's content */
@@ -392,19 +454,19 @@ type OriginalChannel = {
392
454
  type OriginalChannels = OriginalChannel[];
393
455
  /** Accessories */
394
456
  type Accessory = {
395
- /** Accessory type */
396
- type: "point_protect" | "immunity" | "double_points";
397
- /** Accessory longevity */
398
- longevity: string;
399
- /** Accessory adder */
400
- addedBy: string;
401
- /** When accessory added */
402
- when: Date;
403
- createdAt: Date;
404
- updatedAt: Date;
405
- /** If accessory has expired */
406
- expired: boolean;
457
+ type: UserAccessoryType;
458
+ units: number;
459
+ time: number;
460
+ active: {
461
+ units: number;
462
+ time: number;
463
+ };
407
464
  };
465
+ declare enum UserAccessoryType {
466
+ PointsProtection = "points_protection",
467
+ LossesProtection = "losses_protection",
468
+ DoublePoints = "double_points"
469
+ }
408
470
  /** Daily information */
409
471
  type Daily = {
410
472
  /** Wins */
@@ -489,14 +551,14 @@ interface StatusResponse {
489
551
  timestamp: string;
490
552
  }
491
553
 
492
- type FetchOptions$7 = {
554
+ type FetchOptions$9 = {
493
555
  userId?: string;
494
556
  cache?: boolean;
495
557
  };
496
- type ReturnFetchOptions$5<T extends FetchOptions$7> = T["cache"] extends true ? Collection<string, GuildBetUser> : T["userId"] extends string ? GuildBetUser : Collection<string, GuildBetUser>;
558
+ type ReturnFetchOptions$7<T extends FetchOptions$9> = T["cache"] extends true ? Collection<string, GuildBetUser> : T["userId"] extends string ? GuildBetUser : Collection<string, GuildBetUser>;
497
559
  declare class GuildBetUserManager extends BaseManager<GuildBetUser> {
498
560
  constructor(guild: Guild);
499
- fetch<T extends FetchOptions$7>(options?: T): Promise<ReturnFetchOptions$5<T>>;
561
+ fetch<T extends FetchOptions$9>(options?: T): Promise<ReturnFetchOptions$7<T>>;
500
562
  updateMany(...betusers: Optional<APIGuildBetUser>[]): Promise<Collection<string, GuildBetUser>>;
501
563
  deleteAll(): Promise<void>;
502
564
  resetAll(): Promise<GuildBetUser | Collection<string, GuildBetUser>>;
@@ -531,6 +593,7 @@ declare class GuildBetUser implements APIGuildBetUser {
531
593
  /** Updated Date */
532
594
  updatedAt: Date;
533
595
  consecutive_wins: number;
596
+ used_codes: string[];
534
597
  /** The given manager */
535
598
  readonly manager: GuildBetUserManager;
536
599
  /** The rest client */
@@ -571,6 +634,81 @@ declare class GuildBetUser implements APIGuildBetUser {
571
634
  toJSON(): Optional<APIGuildBetUser>;
572
635
  }
573
636
 
637
+ type PlayerOption = APIPlayer[] | APIPlayer;
638
+ type Structure = {
639
+ guild: Guild;
640
+ rest: REST;
641
+ };
642
+ declare class PlayerManager extends Collection<string, APIPlayer> {
643
+ base_url: string;
644
+ readonly rest: REST;
645
+ readonly guild: Guild;
646
+ constructor(structure: Structure, base_url: string);
647
+ _set(data: PlayerOption): this;
648
+ /**
649
+ * Adds a player or an array of players to the structure.
650
+ * @param player A player or an array of players to be added
651
+ * @returns returns a collection of players
652
+ */
653
+ add(player: PlayerOption): Promise<this>;
654
+ /**
655
+ * Remover a player or an array of players.
656
+ * @param player The player or an array of players to be removed
657
+ * @returns Player manager
658
+ */
659
+ remove(player: PlayerOption): Promise<this>;
660
+ }
661
+
662
+ declare class GuildBet {
663
+ #private;
664
+ /** The bet's type */
665
+ type: Omit<BaseMatchModes, "5x5" | "6x6" | "5v5" | "6v6">;
666
+ /** The bet's mode */
667
+ mode: "misto" | "emu" | "mob" | "MISTO" | "EMU" | "MOB";
668
+ /** The bet's status */
669
+ status: "off" | "created" | "on" | "shutted" | "waiting";
670
+ /** The bet's maximum size */
671
+ maximumSize: number;
672
+ /** The bet's price */
673
+ price: number;
674
+ /** The bet's players */
675
+ players: PlayerManager;
676
+ teams: APIPlayer[][];
677
+ /** The bet's channel */
678
+ channels: APIBetChannel[];
679
+ /** The bet's messages */
680
+ messages: MessagesManager<GuildBet>;
681
+ /** The id of the winner */
682
+ winners: APIPlayer[];
683
+ /** The id of the loser */
684
+ losers: APIPlayer[];
685
+ /** The bet's creator id */
686
+ creatorId: string;
687
+ /** The bet's mediator */
688
+ mediatorId: string;
689
+ /** The bet's confirmers */
690
+ confirmed: Confirm[];
691
+ /** Creation Date */
692
+ createdAt: Date;
693
+ /** Updated Date */
694
+ updatedAt: Date;
695
+ /** Bet's id */
696
+ _id: string;
697
+ queues: BetQueue[];
698
+ guild_id: string;
699
+ rest: REST;
700
+ guild: Guild;
701
+ manager: GuildBetManager;
702
+ constructor(data: Optional<APIGuildBet>, manager: GuildBetManager);
703
+ toString(): string;
704
+ fetch(): Promise<this>;
705
+ addPlayer(player: APIPlayer, queue_type?: string): Promise<this>;
706
+ removePlayer(player: APIPlayer): Promise<this>;
707
+ update(data: Optional<APIGuildBet>): Promise<this>;
708
+ delete(): Promise<boolean>;
709
+ toJSON(): Optional<APIGuildBet>;
710
+ }
711
+
574
712
  declare class GuildMatch {
575
713
  #private;
576
714
  _id: string;
@@ -607,11 +745,18 @@ declare class GuildMatch {
607
745
  /** Updated Date */
608
746
  updatedAt: Date;
609
747
  messages: MessagesManager<GuildMatch>;
610
- /** Match's id */
611
- mvps: [];
748
+ mvps: string[];
612
749
  manager: GuildMatchManager;
613
750
  bet: GuildBet;
614
751
  admin_id: string;
752
+ url: string;
753
+ code: string;
754
+ logs: {
755
+ shutted: string;
756
+ closed: string;
757
+ managed: string;
758
+ };
759
+ betting: number;
615
760
  /** The given guild */
616
761
  readonly guild: Guild;
617
762
  /** The rest client */
@@ -643,14 +788,14 @@ declare class GuildMatch {
643
788
  toJSON(): Optional<APIGuildMatch>;
644
789
  }
645
790
 
646
- type FetchOptions$6 = {
791
+ type FetchOptions$8 = {
647
792
  userId?: string;
648
793
  cache?: boolean;
649
794
  };
650
- type ReturnFetchOptions$4<T extends FetchOptions$6> = T["cache"] extends true ? Collection<string, GuildUser> : T["userId"] extends string ? GuildUser : Collection<string, GuildUser>;
795
+ type ReturnFetchOptions$6<T extends FetchOptions$8> = T["cache"] extends true ? Collection<string, GuildUser> : T["userId"] extends string ? GuildUser : Collection<string, GuildUser>;
651
796
  declare class GuildUserManager extends BaseManager<GuildUser> {
652
797
  constructor(guild: Guild);
653
- fetch<T extends FetchOptions$6>(options?: T): Promise<ReturnFetchOptions$4<T>>;
798
+ fetch<T extends FetchOptions$8>(options?: T): Promise<ReturnFetchOptions$6<T>>;
654
799
  updateMany(...users: Optional<APIGuildUser>[]): Promise<Collection<string, GuildUser>>;
655
800
  deleteAll(): Promise<void>;
656
801
  resetAll(): Promise<Collection<string, GuildUser>>;
@@ -685,6 +830,9 @@ declare class GuildUser implements APIGuildUser {
685
830
  /** User's items */
686
831
  adverts: APIAdvert[];
687
832
  spins: number;
833
+ coins: number;
834
+ consecutive_wins: number;
835
+ used_codes: string[];
688
836
  /** Creation Date */
689
837
  createdAt: Date;
690
838
  /** Updated Date */
@@ -714,7 +862,23 @@ declare class GuildUser implements APIGuildUser {
714
862
  */
715
863
  setBlacklist(value: boolean): Promise<this>;
716
864
  reset(): Promise<this>;
717
- updateProfile(data: Optional<Profile>): Promise<this>;
865
+ updateProfile(data: Optional<Profile> & {
866
+ default?: boolean;
867
+ }): Promise<this>;
868
+ getAccessory<T extends UserAccessoryType>(type: T): Promise<Accessory>;
869
+ addAccessory<T extends UserAccessoryType>(type: T, data: Optional<Accessory>): Promise<Accessory>;
870
+ setAccessory<T extends UserAccessoryType>(type: T, data: Optional<Accessory>): Promise<Accessory>;
871
+ reduceAccessory<T extends UserAccessoryType>(type: T, data: Optional<Accessory>): Promise<Accessory>;
872
+ reduceActiveAccessory<T extends UserAccessoryType>(type: T, data: Optional<Accessory>): Promise<Accessory>;
873
+ activateAccessory(type: UserAccessoryType, data: {
874
+ time: number;
875
+ units: number;
876
+ }): Promise<Accessory>;
877
+ isAccessoryActive(type: UserAccessoryType): Promise<{
878
+ value: boolean;
879
+ type: string;
880
+ }>;
881
+ hasAccessory(type: UserAccessoryType): Promise<boolean>;
718
882
  addAdvert(data: Optional<Omit<APIAdvert, "_id">>): Promise<GuildUser>;
719
883
  removeAdvert(advertId?: string): Promise<GuildUser>;
720
884
  /**
@@ -722,11 +886,13 @@ declare class GuildUser implements APIGuildUser {
722
886
  * @param data The new data to update with
723
887
  * @returns
724
888
  */
725
- update(data: Omit<Optional<APIGuildUser>, "daily"> & {
889
+ update(data: Optional<APIGuildUser> & {
726
890
  type?: "add" | "remove";
727
891
  }): Promise<this>;
892
+ setUpdate(data: Optional<APIGuildUser>): Promise<this>;
728
893
  delete(): Promise<boolean>;
729
894
  toJSON(): APIGuildUser;
895
+ userDailyWrapper(user: Optional<APIGuildUser>): Optional<APIGuildUser>;
730
896
  }
731
897
 
732
898
  interface RequestOptions<Payload> {
@@ -771,79 +937,42 @@ interface RestEvents {
771
937
  logEntryCreate: [LogEntry, Guild];
772
938
  }
773
939
 
774
- type PlayerOption = APIPlayer[] | APIPlayer;
775
- type Structure = {
776
- guild: Guild;
777
- rest: REST;
778
- };
779
- declare class PlayerManager extends Collection<string, APIPlayer> {
780
- base_url: string;
781
- readonly rest: REST;
782
- readonly guild: Guild;
783
- constructor(structure: Structure, base_url: string);
784
- _set(data: PlayerOption): this;
785
- /**
786
- * Adds a player or an array of players to the structure.
787
- * @param player A player or an array of players to be added
788
- * @returns returns a collection of players
789
- */
790
- add(player: PlayerOption): Promise<this>;
791
- /**
792
- * Remover a player or an array of players.
793
- * @param player The player or an array of players to be removed
794
- * @returns Player manager
795
- */
796
- remove(player: PlayerOption): Promise<this>;
797
- }
798
-
799
- declare class GuildBet {
940
+ declare class AutomaticMessage {
800
941
  #private;
801
- /** The bet's type */
802
- type: Omit<BaseMatchModes, "5x5" | "6x6" | "5v5" | "6v6">;
803
- /** The bet's mode */
804
- mode: "misto" | "emu" | "mob" | "MISTO" | "EMU" | "MOB";
805
- /** The bet's status */
806
- status: "off" | "created" | "on" | "shutted" | "waiting";
807
- /** The bet's maximum size */
808
- maximumSize: number;
809
- /** The bet's price */
810
- price: number;
811
- /** The bet's players */
812
- players: PlayerManager;
813
- teams: APIPlayer[][];
814
- /** The bet's channel */
815
- channels: APIBetChannel[];
816
- /** The bet's messages */
817
- messages: MessagesManager<GuildBet>;
818
- /** The id of the winner */
819
- winners: APIPlayer[];
820
- /** The id of the loser */
821
- losers: APIPlayer[];
822
- /** The bet's creator id */
823
- creatorId: string;
824
- /** The bet's mediator */
825
- mediatorId: string;
826
- /** The bet's confirmers */
827
- confirmed: Confirm[];
828
- /** Creation Date */
942
+ id: string;
943
+ type: AutomaticMessagesTypes;
944
+ name: string;
945
+ admin_id: string;
946
+ channel_ids: string[];
947
+ message: {
948
+ content: string;
949
+ embeds: APIEmbed[];
950
+ components: any[];
951
+ attachments: any[];
952
+ flags: number;
953
+ };
954
+ guild_id: string;
955
+ interval_ms: number;
829
956
  createdAt: Date;
830
- /** Updated Date */
831
957
  updatedAt: Date;
832
- /** Bet's id */
833
958
  _id: string;
834
- queues: BetQueue[];
835
- guild_id: string;
836
- rest: REST;
837
- guild: Guild;
838
- manager: GuildBetManager;
839
- constructor(data: Optional<APIGuildBet>, manager: GuildBetManager);
840
- toString(): string;
959
+ readonly guild: Guild;
960
+ readonly manager: AutomaticMessageManager;
961
+ readonly rest: REST;
962
+ constructor(data: APIAutomaticMessage, manager: AutomaticMessageManager);
841
963
  fetch(): Promise<this>;
842
- addPlayer(player: APIPlayer, queue_type?: string): Promise<this>;
843
- removePlayer(player: APIPlayer): Promise<this>;
844
- update(data: Optional<APIGuildBet>): Promise<this>;
964
+ update(data: Optional<APIAutomaticMessage>): Promise<this>;
845
965
  delete(): Promise<boolean>;
846
- toJSON(): Optional<APIGuildBet>;
966
+ setMessage(data: {
967
+ embeds: APIEmbed[];
968
+ components: any;
969
+ attachments: any[];
970
+ flags: number;
971
+ content: string;
972
+ }): Promise<this>;
973
+ addChannelId(...id: string[]): Promise<this>;
974
+ removeChannelId(...id: string[]): Promise<this>;
975
+ toJSON(): APIAutomaticMessage;
847
976
  }
848
977
 
849
978
  declare class LogEntry {
@@ -868,16 +997,30 @@ declare class LogEntry {
868
997
  readonly rest: REST;
869
998
  constructor(data: APILogEntry, manager: LogManager);
870
999
  fetch(): Promise<LogEntry>;
871
- toJSON(): Record<string, unknown>;
1000
+ toJSON(): {
1001
+ _id: string;
1002
+ guild_id: string;
1003
+ user_id: string;
1004
+ admin_id: string;
1005
+ object_id: string;
1006
+ type: LogEntryTypes;
1007
+ description: string;
1008
+ change: string;
1009
+ logs_channel_id: string;
1010
+ before: any;
1011
+ after: any;
1012
+ createdAt: Date;
1013
+ updatedAt: Date;
1014
+ };
872
1015
  }
873
1016
 
874
- type FetchOptions$5 = {
1017
+ type FetchOptions$7 = {
875
1018
  mediatorId?: string;
876
1019
  cache?: boolean;
877
1020
  };
878
1021
  declare class GuildMediatorManager extends BaseManager<GuildMediator> {
879
1022
  constructor(guild: Guild);
880
- fetch(options?: FetchOptions$5): Promise<Collection<string, GuildMediator> | GuildMediator>;
1023
+ fetch(options?: FetchOptions$7): Promise<Collection<string, GuildMediator> | GuildMediator>;
881
1024
  updateMany(...mediators: Optional<APIGuildMediator>[]): Promise<Collection<string, GuildMediator>>;
882
1025
  create(payload: Optional<APIGuildMediator>): Promise<GuildMediator>;
883
1026
  deleteAll(): Promise<void>;
@@ -931,6 +1074,94 @@ declare class GuildMediator implements APIGuildMediator {
931
1074
  toJSON(): Optional<APIGuildMediator>;
932
1075
  }
933
1076
 
1077
+ type FetchReturn<T> = T extends null ? Collection<string, TicketPanel> : TicketPanel;
1078
+ declare class TicketPanelManager extends BaseManager<TicketPanel> {
1079
+ constructor(guild: Guild);
1080
+ create(data: Optional<APITicketPanel>): Promise<TicketPanel>;
1081
+ fetch<T extends string>(id?: T): Promise<FetchReturn<T>>;
1082
+ delete(id?: string): Promise<boolean>;
1083
+ set(data: APITicketPanel | APITicketPanel[]): TicketPanel | Collection<string, TicketPanel>;
1084
+ toJSON(): APITicketPanel[];
1085
+ }
1086
+
1087
+ declare class TicketPanel implements APITicketPanel {
1088
+ #private;
1089
+ _id: string;
1090
+ guild_id: string;
1091
+ name: string;
1092
+ categories: APITicketCategory[];
1093
+ components_type: "button" | "stringselect";
1094
+ createdAt: Date;
1095
+ message: {
1096
+ embeds: APIEmbed[];
1097
+ };
1098
+ updatedAt: Date;
1099
+ readonly rest: REST;
1100
+ readonly guild: Guild;
1101
+ readonly data: APITicketPanel;
1102
+ readonly manager: TicketPanelManager;
1103
+ constructor(data: APITicketPanel, manager: TicketPanelManager);
1104
+ addCategory(data: Optional<APITicketCategory>): Promise<APITicketCategory>;
1105
+ deleteCategory(id: string): Promise<this>;
1106
+ updateCategory(id: string, data: Optional<APITicketCategory>): Promise<this>;
1107
+ addRoleIdToCategory(id: string, ...roles: string[]): Promise<this>;
1108
+ setRoleIdsToCategory(id: string, ...roles: string[]): Promise<this>;
1109
+ removeRoleIdToCategory(id: string, ...roles: string[]): Promise<this>;
1110
+ update(data: Optional<APITicketPanel>): Promise<this>;
1111
+ delete(): Promise<APITicketPanel>;
1112
+ toJSON(): APITicketPanel;
1113
+ }
1114
+
1115
+ interface FetchOptions$6 {
1116
+ cache?: boolean;
1117
+ tournamentId?: string;
1118
+ }
1119
+ type ReturnFetchOptions$5<T extends FetchOptions$6> = T["cache"] extends true ? Collection<string, Tournament> : T["tournamentId"] extends string ? Tournament : Collection<string, Tournament>;
1120
+ declare class TournamentManager extends BaseManager<Tournament> {
1121
+ constructor(guild: Guild);
1122
+ fetch<T extends FetchOptions$6>(options?: T): Promise<ReturnFetchOptions$5<T>>;
1123
+ set(data: APITournament | APITournament[]): Collection<string, Tournament>;
1124
+ _add(data: APITournament | APITournament[]): Tournament | Collection<string, Tournament>;
1125
+ create(data: Optional<APITournament>): Promise<Tournament>;
1126
+ }
1127
+
1128
+ declare class Tournament {
1129
+ #private;
1130
+ _id: string;
1131
+ guild_id: string;
1132
+ type: "1v1" | "2v2" | "3v3" | "4v4";
1133
+ max_teams: number;
1134
+ teams: APIPlayer[][];
1135
+ logs_url: {
1136
+ cancelled: string;
1137
+ started: string;
1138
+ finished: string;
1139
+ };
1140
+ message: any;
1141
+ message_id: string;
1142
+ status: "created" | "on" | "off";
1143
+ createdAt: Date;
1144
+ updatedAt: Date;
1145
+ readonly guild: Guild;
1146
+ readonly rest: REST;
1147
+ readonly manager: TournamentManager;
1148
+ readonly data: APITournament;
1149
+ constructor(data: APITournament, manager: TournamentManager);
1150
+ fetch(): Promise<this>;
1151
+ update(data: Optional<APITournament>): Promise<this>;
1152
+ toJSON(): {
1153
+ guild_id: string;
1154
+ type: "1v1" | "2v2" | "3v3" | "4v4";
1155
+ max_teams: number;
1156
+ teams: APIPlayer[][];
1157
+ message: any;
1158
+ message_id: string;
1159
+ status: "on" | "off" | "created";
1160
+ createdAt: Date;
1161
+ updatedAt: Date;
1162
+ };
1163
+ }
1164
+
934
1165
  type FecthOptions$1 = {
935
1166
  cache?: boolean;
936
1167
  memberId?: string;
@@ -1007,7 +1238,7 @@ declare class VipMember implements APIVipMember {
1007
1238
  toJSON(): Record<keyof APIVipMember, unknown>;
1008
1239
  }
1009
1240
 
1010
- declare class GuildTicket implements APIGuildTicket {
1241
+ declare class GuildTicket {
1011
1242
  #private;
1012
1243
  _id: string;
1013
1244
  guild_id: string;
@@ -1018,7 +1249,7 @@ declare class GuildTicket implements APIGuildTicket {
1018
1249
  closed_by_id: string;
1019
1250
  creator_id: string;
1020
1251
  customer_rating: number;
1021
- messages: APIMessage[];
1252
+ messages: MessagesManager<GuildTicket>;
1022
1253
  createdAt: Date;
1023
1254
  updatedAt: Date;
1024
1255
  readonly rest: REST;
@@ -1026,15 +1257,15 @@ declare class GuildTicket implements APIGuildTicket {
1026
1257
  readonly manager: GuildTicketManager;
1027
1258
  constructor(data: APIGuildTicket, manager: any);
1028
1259
  fetch(): Promise<GuildTicket>;
1260
+ delete(): Promise<APIGuildTicket>;
1029
1261
  setCustomerRating(rating: number): Promise<GuildTicket>;
1030
1262
  setAdminId(id: string): Promise<GuildTicket>;
1031
1263
  setChannelId(id: string): Promise<GuildTicket>;
1032
1264
  setClosedById(id: string): Promise<GuildTicket>;
1033
1265
  setStatus(status: "on" | "off"): Promise<GuildTicket>;
1034
- addMessage(message: Optional<APIMessage>): Promise<GuildTicket>;
1035
1266
  }
1036
1267
 
1037
- interface FetchOptions$4 {
1268
+ interface FetchOptions$5 {
1038
1269
  cache?: boolean;
1039
1270
  gameId?: string;
1040
1271
  }
@@ -1044,7 +1275,7 @@ declare class MinesGameManager {
1044
1275
  constructor(rest: REST);
1045
1276
  create(data: Optional<APIMinesGame>): Promise<MinesGame>;
1046
1277
  delete(gameId: string): Promise<unknown>;
1047
- fetch(options?: FetchOptions$4): Promise<MinesGame | Collection<string, MinesGame>>;
1278
+ fetch(options?: FetchOptions$5): Promise<MinesGame | Collection<string, MinesGame>>;
1048
1279
  set(data: APIMinesGame | APIMinesGame[]): MinesGame | Collection<string, MinesGame>;
1049
1280
  }
1050
1281
 
@@ -1069,48 +1300,72 @@ declare class MinesGame {
1069
1300
  update(data: Optional<APIMinesGame>): Promise<this>;
1070
1301
  }
1071
1302
 
1072
- declare class Tournament {
1303
+ type FetchOptions$4 = {
1304
+ cache?: boolean;
1305
+ productId?: string;
1306
+ };
1307
+ type ReturnFetchOptions$4<T extends FetchOptions$4> = T["cache"] extends true ? Collection<string, Product> : T["productId"] extends string ? Product : Collection<string, Product>;
1308
+ declare class ProductManager extends BaseManager<Product> {
1309
+ shop: Shop;
1310
+ constructor(shop: Shop);
1311
+ fetch<T extends FetchOptions$4>(options?: T): Promise<ReturnFetchOptions$4<T>>;
1312
+ create(data: Optional<APIProduct>): Promise<Product>;
1313
+ delete(id: string): Promise<Shop>;
1314
+ set(data: APIProduct | APIProduct[]): Product | Collection<string, Product>;
1315
+ toJSON(): APIProduct[];
1316
+ }
1317
+
1318
+ declare class Shop {
1073
1319
  #private;
1074
1320
  _id: string;
1321
+ name: string;
1075
1322
  guild_id: string;
1076
- type: string;
1077
- max_teams: number;
1078
- teams: APIPlayer[][];
1079
- message: any;
1080
- message_id: string;
1081
- status: "created" | "on" | "off";
1323
+ embeds: APIEmbed[];
1324
+ /** Shop's products */
1325
+ products: ProductManager;
1326
+ /** Bought count */
1327
+ bought_count: number;
1328
+ /** Creation Date */
1082
1329
  createdAt: Date;
1330
+ /** Updated Date */
1083
1331
  updatedAt: Date;
1084
- readonly guild: Guild;
1332
+ readonly manager: ShopManager;
1085
1333
  readonly rest: REST;
1086
- readonly manager: TournamentManager;
1087
- readonly data: APITournament;
1088
- constructor(data: APITournament, manager: TournamentManager);
1334
+ readonly guild: Guild;
1335
+ constructor(data: APIGuildShop, manager: ShopManager);
1089
1336
  fetch(): Promise<this>;
1090
- update(data: Optional<APITournament>): Promise<this>;
1091
- toJSON(): {
1092
- guild_id: string;
1093
- type: string;
1094
- max_teams: number;
1095
- teams: APIPlayer[][];
1096
- message: any;
1097
- message_id: string;
1098
- status: "on" | "off" | "created";
1099
- createdAt: Date;
1100
- updatedAt: Date;
1101
- };
1337
+ delete(): Promise<void>;
1338
+ update(data: Optional<APIGuildShop>): Promise<this>;
1339
+ toJSON(): Optional<APIGuildShop>;
1102
1340
  }
1103
1341
 
1104
- interface FetchOptions$3 {
1105
- cache?: boolean;
1106
- tournamentId?: string;
1107
- }
1108
- type ReturnFetchOptions$3<T extends FetchOptions$3> = T["cache"] extends true ? Collection<string, Tournament> : T["tournamentId"] extends string ? Tournament : Collection<string, Tournament>;
1109
- declare class TournamentManager extends BaseManager<Tournament> {
1110
- constructor(guild: Guild);
1111
- fetch<T extends FetchOptions$3>(options?: T): Promise<ReturnFetchOptions$3<T>>;
1112
- set(data: APITournament | APITournament[]): Collection<string, Tournament>;
1113
- _add(data: APITournament | APITournament[]): Collection<string, Tournament>;
1342
+ declare class Product implements APIProduct {
1343
+ #private;
1344
+ /** Product's name */
1345
+ name: string;
1346
+ /** Product's description */
1347
+ description: string;
1348
+ /** Product's id */
1349
+ _id: string;
1350
+ /** Product's price */
1351
+ price: number;
1352
+ /** Product's buyers */
1353
+ buyers: APIPlayer[];
1354
+ /** Product's emoji */
1355
+ emoji: string;
1356
+ units_in_stock: number;
1357
+ /** Creation Date */
1358
+ createdAt: Date;
1359
+ /** Updated Date */
1360
+ updatedAt: Date;
1361
+ readonly shop: Shop;
1362
+ readonly manager: ProductManager;
1363
+ readonly data: APIProduct;
1364
+ constructor(data: APIProduct, manager: ProductManager);
1365
+ fetch(): Promise<Product>;
1366
+ update(data: Optional<APIProduct>): Promise<this>;
1367
+ delete(): Promise<Shop>;
1368
+ toJSON(): APIProduct;
1114
1369
  }
1115
1370
 
1116
1371
  declare class Guild {
@@ -1132,6 +1387,8 @@ declare class Guild {
1132
1387
  tickets_configuration: GuildTicketConfiguration;
1133
1388
  /** Guild Daily Categories */
1134
1389
  daily_categories: DailyCategories[];
1390
+ match_count: number;
1391
+ bet_count: number;
1135
1392
  /** Guild Scores */
1136
1393
  scores: GuildScores;
1137
1394
  /** Guild Status */
@@ -1154,14 +1411,15 @@ declare class Guild {
1154
1411
  vipMembers: VipMemberManager;
1155
1412
  users: GuildUserManager;
1156
1413
  logEntries: LogManager;
1157
- shop: APIGuildShop;
1414
+ shops: ShopManager;
1158
1415
  betusers: GuildBetUserManager;
1159
1416
  bets: GuildBetManager;
1160
1417
  mediators: GuildMediatorManager;
1161
- automatic_messages: APIAutomaticMessage[];
1162
- automaticMessagesManager: AutomaticMessageManager;
1418
+ automaticMessages: AutomaticMessageManager;
1163
1419
  tournaments: TournamentManager;
1420
+ webhook_urls: GuildLogsWebhookUrls;
1164
1421
  adverts: APIGuildAdvert[];
1422
+ ticket_panels: TicketPanelManager;
1165
1423
  codes: APICode[];
1166
1424
  coin_symbol: string;
1167
1425
  /**
@@ -1170,9 +1428,11 @@ declare class Guild {
1170
1428
  * @param rest The rest client
1171
1429
  */
1172
1430
  constructor(data: APIGuild, rest: REST);
1431
+ _start(): Promise<this>;
1173
1432
  getChannel(type: GuildChannelsType): Promise<APIGuildGroupedChannel>;
1174
1433
  getPermission(type: GuildPermissionsTypes): Promise<Permission>;
1175
1434
  createAdvert(data: Optional<APIGuildAdvert>): Promise<this>;
1435
+ updateAdvert(data: Optional<APIGuildAdvert>): Promise<this>;
1176
1436
  removeAdvert(advertId: string): Promise<this>;
1177
1437
  createCode(data: Optional<APICode>): Promise<this>;
1178
1438
  removeCode(codeId: string): Promise<this>;
@@ -1182,10 +1442,10 @@ declare class Guild {
1182
1442
  updateRouletteSettings(data: Optional<RouletteSettings> & {
1183
1443
  default?: boolean;
1184
1444
  }): Promise<Guild>;
1445
+ updateLogWebhookUrls(data: Optional<GuildLogsWebhookUrls>): Promise<Guild>;
1185
1446
  getActive(key: "matches" | "tickets" | "bets"): Collection<string, GuildTicket> | Collection<string, GuildMatch> | Collection<string, GuildBet>;
1186
1447
  addRoulettePrize(prize: Optional<RoulettePrize>): Promise<RoulettePrize>;
1187
1448
  removeRoulettePrize(id: string): Promise<Guild>;
1188
- _start(): Promise<this>;
1189
1449
  fetch(): Promise<Guild>;
1190
1450
  reset(): Promise<Guild>;
1191
1451
  update(data: Optional<APIGuild> & {
@@ -1194,18 +1454,19 @@ declare class Guild {
1194
1454
  setStatus(key: keyof GuildStatus, status: "on" | "off"): Promise<this>;
1195
1455
  togglePrice(price: number): Promise<this>;
1196
1456
  addPrefix(prefixes: string | string[]): Promise<this>;
1197
- setPrefix(prefixes: string | string[]): Promise<this>;
1457
+ removePrefix(prefixes: string | string[]): Promise<this>;
1458
+ setPrefixes(prefixes: string | string[]): Promise<this>;
1198
1459
  toggleDailyCategory(category: keyof Omit<Daily, "date">): Promise<this>;
1199
1460
  setScores(name: AvailableScores, amount: number): Promise<this>;
1200
1461
  toggleMode(mode: "1v1" | "2v2" | "3v3" | "4v4" | "5v5" | "6v6"): Promise<this>;
1201
1462
  }
1202
1463
  type AvailableScores = "win" | "loss" | "mvp" | "creator" | "coin";
1203
1464
 
1204
- type FetchOptions$2 = {
1465
+ type FetchOptions$3 = {
1205
1466
  guildId?: string;
1206
1467
  cache?: boolean;
1207
1468
  };
1208
- type ReturnFetchOptions$2<T extends FetchOptions$2> = T["cache"] extends true ? Collection<string, Guild> : T["guildId"] extends string ? Guild : Collection<string, Guild>;
1469
+ type ReturnFetchOptions$3<T extends FetchOptions$3> = T["cache"] extends true ? Collection<string, Guild> : T["guildId"] extends string ? Guild : Collection<string, Guild>;
1209
1470
  type DeleteOptions$1 = {
1210
1471
  guildId?: string;
1211
1472
  };
@@ -1225,7 +1486,7 @@ declare class GuildManager {
1225
1486
  * @param id Id of the guild to fetch
1226
1487
  * @returns APIGuild
1227
1488
  */
1228
- fetch<T extends FetchOptions$2>(options?: T): Promise<ReturnFetchOptions$2<T>>;
1489
+ fetch<T extends FetchOptions$3>(options?: T): Promise<ReturnFetchOptions$3<T>>;
1229
1490
  reset(guildId?: string): Promise<Guild | Collection<string, Guild>>;
1230
1491
  delete(options: DeleteOptions$1): Promise<Collection<string, Guild> | boolean>;
1231
1492
  set(data: APIGuild | APIGuild[]): Guild | Collection<string, Guild>;
@@ -1269,7 +1530,7 @@ declare class REST extends EventEmitter {
1269
1530
  * @param options
1270
1531
  * @returns
1271
1532
  */
1272
- request<Expecting, Payload>(options: RequestOptions<Payload>): Promise<Expecting>;
1533
+ request<Expecting, Payload extends object>(options: RequestOptions<Payload>): Promise<Expecting>;
1273
1534
  getStatus(): Promise<StatusResponse>;
1274
1535
  emit<K extends keyof RestEvents>(event: K, ...args: RestEvents[K]): boolean;
1275
1536
  on<K extends keyof RestEvents>(event: K, listener: (...args: RestEvents[K]) => void): this;
@@ -1286,54 +1547,28 @@ declare class BaseManager<S extends object> {
1286
1547
  /** Cache */
1287
1548
  cache: Collection<string, S>;
1288
1549
  constructor(guild: Guild);
1289
- toJSON(): S[];
1290
- }
1291
-
1292
- declare class AutomaticMessage {
1293
- #private;
1294
- id: string;
1295
- type: AutomaticMessagesTypes;
1296
- admin_id: string;
1297
- channel_ids: string[];
1298
- content: string;
1299
- embeds: any[];
1300
- components: any[];
1301
- attachments: any[];
1302
- flags: number;
1303
- interval_ms: number;
1304
- createdAt: Date;
1305
- updatedAt: Date;
1306
- readonly guild: Guild;
1307
- readonly manager: AutomaticMessageManager;
1308
- readonly rest: REST;
1309
- constructor(data: APIAutomaticMessage, manager: AutomaticMessageManager);
1310
- fetch(): Promise<Collection<string, AutomaticMessage>>;
1311
- addChannelId(...id: string[]): Promise<this>;
1312
- removeChannelId(...id: string[]): Promise<this>;
1313
- update(data: Optional<APIAutomaticMessage>): Promise<this>;
1314
- delete(): Promise<Collection<string, APIAutomaticMessage>>;
1315
- toJSON(): APIAutomaticMessage;
1550
+ toJSON(): S[] | any;
1316
1551
  }
1317
1552
 
1318
1553
  declare class AutomaticMessageManager extends BaseManager<AutomaticMessage> {
1319
1554
  constructor(guild: Guild);
1320
- fetch<T extends string>(messageId?: T): Promise<Collection<string, AutomaticMessage>>;
1555
+ fetch<T extends string>(messageId?: T): Promise<T extends true ? AutomaticMessage : Collection<string, AutomaticMessage>>;
1321
1556
  create(data: Optional<APIAutomaticMessage>): Promise<AutomaticMessage>;
1322
- _add(data: APIAutomaticMessage | APIAutomaticMessage[]): Collection<string, AutomaticMessage>;
1557
+ _add(data: APIAutomaticMessage | APIAutomaticMessage[]): AutomaticMessage | Collection<string, AutomaticMessage>;
1323
1558
  set(data: APIAutomaticMessage | APIAutomaticMessage[]): Collection<string, APIAutomaticMessage>;
1324
- delete(messageId?: string): Promise<APIGuild | Collection<string, APIAutomaticMessage>>;
1325
- toJSON(): AutomaticMessage[];
1559
+ delete(messageId?: string): Promise<boolean | APIGuild>;
1560
+ toJSON(): APIAutomaticMessage[];
1326
1561
  }
1327
1562
 
1328
- interface FetchOptions$1 {
1563
+ interface FetchOptions$2 {
1329
1564
  cache?: boolean;
1330
1565
  betId?: string;
1331
1566
  }
1332
- type ReturnFetchOptions$1<T extends FetchOptions$1> = T["cache"] extends true ? Collection<string, GuildBet> : T["betId"] extends string ? GuildBet : Collection<string, GuildBet>;
1567
+ type ReturnFetchOptions$2<T extends FetchOptions$2> = T["cache"] extends true ? Collection<string, GuildBet> : T["betId"] extends string ? GuildBet : Collection<string, GuildBet>;
1333
1568
  declare class GuildBetManager extends BaseManager<GuildBet> {
1334
1569
  constructor(guild: Guild);
1335
1570
  toString(): number;
1336
- fetch<T extends FetchOptions$1>(options?: T): Promise<ReturnFetchOptions$1<T>>;
1571
+ fetch<T extends FetchOptions$2>(options?: T): Promise<ReturnFetchOptions$2<T>>;
1337
1572
  create(data: Optional<APIGuildBet>): Promise<GuildBet>;
1338
1573
  delete(betId?: string): Promise<GuildBet>;
1339
1574
  set(data: Optional<APIGuildBet> | Optional<APIGuildBet>[] | GuildBet): GuildBet;
@@ -1362,11 +1597,11 @@ declare class LogManager extends BaseManager<LogEntry> {
1362
1597
  set(data: APILogEntry | APILogEntry[]): LogEntry | Collection<string, LogEntry>;
1363
1598
  }
1364
1599
 
1365
- type FetchOptions = {
1366
- cache: boolean;
1367
- matchId: string;
1600
+ type FetchOptions$1 = {
1601
+ cache?: boolean;
1602
+ matchId?: string;
1368
1603
  };
1369
- type ReturnFetchOptions<T extends FetchOptions> = T["cache"] extends true ? Collection<string, GuildMatch> : T["matchId"] extends string ? GuildMatch : Collection<string, GuildMatch>;
1604
+ type ReturnFetchOptions$1<T extends FetchOptions$1> = T["cache"] extends true ? Collection<string, GuildMatch> : T["matchId"] extends string ? GuildMatch : Collection<string, GuildMatch>;
1370
1605
  declare class GuildMatchManager extends BaseManager<GuildMatch> {
1371
1606
  /**
1372
1607
  * Manage users with the given client
@@ -1379,8 +1614,7 @@ declare class GuildMatchManager extends BaseManager<GuildMatch> {
1379
1614
  * @param id Id of the match to fetch
1380
1615
  * @returns APIBetUser
1381
1616
  */
1382
- fetch<T extends FetchOptions>(options?: T): Promise<ReturnFetchOptions<T>>;
1383
- fetchAll(): Promise<Collection<string, GuildMatch>>;
1617
+ fetch<T extends FetchOptions$1>(options?: T): Promise<ReturnFetchOptions$1<T>>;
1384
1618
  set(data: APIGuildMatch | APIGuildMatch[] | GuildMatch): GuildMatch | Collection<string, GuildMatch>;
1385
1619
  create(payload: Optional<APIGuildMatch>): Promise<GuildMatch>;
1386
1620
  delete(id?: string): Promise<GuildMatch | Collection<string, GuildMatch>>;
@@ -1404,10 +1638,25 @@ declare class MessagesManager<Structure> {
1404
1638
 
1405
1639
  declare class GuildPermissionManager extends BaseManager<APIGuildPermissions> {
1406
1640
  constructor(guild: Guild);
1641
+ setRoleIds(type: GuildPermissionsTypes, ...ids: string[]): Promise<APIGuild>;
1407
1642
  addRole(type: GuildPermissionsTypes, ...ids: string[]): Promise<APIGuild>;
1408
1643
  removeRole(type: GuildPermissionsTypes, ...ids: string[]): Promise<APIGuild>;
1409
1644
  }
1410
1645
 
1646
+ type FetchOptions = {
1647
+ cache?: boolean;
1648
+ shopId?: string;
1649
+ };
1650
+ type ReturnFetchOptions<T extends FetchOptions> = T["cache"] extends true ? Collection<string, Shop> : T["shopId"] extends string ? Shop : Collection<string, Shop>;
1651
+ declare class ShopManager extends BaseManager<Shop> {
1652
+ constructor(guild: Guild);
1653
+ fetch<T extends FetchOptions>(options?: T): Promise<ReturnFetchOptions<T>>;
1654
+ create(data: Optional<APIGuildShop>): Promise<Shop>;
1655
+ delete(id: string): Promise<Collection<string, Shop>>;
1656
+ set(data: APIGuildShop | APIGuildShop[] | Shop): Shop | Collection<string, Shop>;
1657
+ toJSON(): Shop[];
1658
+ }
1659
+
1411
1660
  type FecthOptions = {
1412
1661
  ticketId?: string;
1413
1662
  cache?: boolean;
@@ -1425,7 +1674,7 @@ declare class GuildTicketManager {
1425
1674
  fetch(options?: FecthOptions): Promise<GuildTicket | Collection<string, GuildTicket>>;
1426
1675
  create(data: Optional<APIGuildTicket>): Promise<GuildTicket>;
1427
1676
  delete(options?: DeleteOptions): Promise<boolean>;
1428
- set(data: APIGuildTicket | APIGuildTicket[]): GuildTicket | Collection<string, GuildTicket>;
1677
+ set(data: APIGuildTicket | GuildTicket | APIGuildTicket[]): GuildTicket | Collection<string, GuildTicket>;
1429
1678
  }
1430
1679
 
1431
- export { type GuildPrices as $, AutomaticMessageManager as A, type BufferMatch as B, type OriginalChannels as C, type Accessory as D, type Daily as E, type FetchOptions$1 as F, GuildBetManager as G, type Banner as H, type Confirm as I, type Optional as J, MATCHTYPES as K, LogManager as L, MessagesManager as M, MATCHSTATUS as N, type OriginalChannel as O, type ProfileCard as P, BETSTATUS as Q, REST as R, STATES as S, type StatusResponse as T, type APIAutomaticMessage as U, VipMemberManager as V, type GuildTicketConfiguration as W, type GuildStatus as X, GuildStatusEnum as Y, type GuildModes as Z, type DailyCategories as _, GuildBetUserManager as a, type GuildScores as a0, type RoulettePrize as a1, type RouletteSettings as a2, AutomaticMessagesTypes as a3, GuildChannelsType as a4, type APIGuild as a5, type BetQueue as a6, BetChannelTypes as a7, type APIGuildBet as a8, type APIGuildBetUser as a9, type APIGuildGroupedChannel as aa, type MatchSelection as ab, type APIGuildMatch as ac, GuildMatchChannelsType as ad, GuildMatchMessagesType as ae, type Profile as af, type APIGuildUser as ag, type RequestOptions as ah, type RestEvents as ai, type PlayerOption as aj, type Structure as ak, PlayerManager as al, Tournament as am, TournamentManager as an, AutomaticMessage as ao, type BufferTicket as b, BufferManager as c, GuildManager as d, GuildMatchManager as e, GuildMediatorManager as f, MinesGameManager as g, GuildPermissionManager as h, GuildTicketManager as i, GuildUserManager as j, BaseManager as k, GuildBet as l, GuildBetUser as m, Guild as n, LogEntry as o, GuildMatch as p, GuildMediator as q, GuildUser as r, VipMember as s, GuildTicket as t, MinesGame as u, type APITicketCategory as v, type LogMessage as w, type BaseMatchModes as x, type BaseMatchStatus as y, type Logs as z };
1680
+ export { GuildUserManager as $, type APIAutomaticMessage as A, BETSTATUS as B, type Confirm as C, type Daily as D, GuildBetUserManager as E, type FetchOptions$2 as F, Guild as G, GuildChannelsType as H, type GuildLogsWebhookUrls as I, GuildManager as J, GuildMatch as K, GuildMatchChannelsType as L, GuildMatchManager as M, GuildMatchMessagesType as N, GuildMediator as O, GuildMediatorManager as P, type GuildModes as Q, REST as R, GuildPermissionManager as S, type GuildPrices as T, type GuildScores as U, type GuildStatus as V, GuildStatusEnum as W, GuildTicket as X, type GuildTicketConfiguration as Y, GuildTicketManager as Z, GuildUser as _, type APIGuild as a, LogEntry as a0, LogManager as a1, type LogMessage as a2, type Logs as a3, MATCHSTATUS as a4, MATCHTYPES as a5, type MatchSelection as a6, MessagesManager as a7, MinesGame as a8, MinesGameManager as a9, type Optional as aa, type OriginalChannel as ab, type OriginalChannels as ac, PlayerManager as ad, type PlayerOption as ae, Product as af, type Profile as ag, type ProfileCard as ah, type RequestOptions as ai, type RestEvents as aj, type RoulettePrize as ak, type RouletteSettings as al, STATES as am, Shop as an, ShopManager as ao, type StatusResponse as ap, type Structure as aq, TicketPanel as ar, TicketPanelManager as as, Tournament as at, TournamentManager as au, UserAccessoryType as av, VipMember as aw, VipMemberManager as ax, ProductManager as ay, type APIGuildBet as b, type APIGuildBetUser as c, type APIGuildGroupedChannel as d, type APIGuildMatch as e, type APIGuildUser as f, type APITicketCategory as g, type APITicketPanel as h, type Accessory as i, AutomaticMessage as j, AutomaticMessageManager as k, AutomaticMessagesTypes as l, type Banner as m, BaseManager as n, type BaseMatchModes as o, type BaseMatchStatus as p, BetChannelTypes as q, type BetQueue as r, BufferManager as s, type BufferMatch as t, type BufferTicket as u, type DailyCategories as v, type FetchReturn as w, GuildBet as x, GuildBetManager as y, GuildBetUser as z };