@duque.edits/sdk 1.0.87 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/dist/index-BHHXH2xN.d.mts +1379 -0
  2. package/dist/index-C87LbIta.d.ts +1379 -0
  3. package/dist/index.d.mts +22 -0
  4. package/dist/index.d.ts +22 -0
  5. package/dist/index.js +4054 -19
  6. package/dist/index.mjs +4007 -0
  7. package/dist/managers/automaticmessage/AutomaticMessageManager.d.mts +20 -0
  8. package/dist/managers/automaticmessage/AutomaticMessageManager.d.ts +20 -0
  9. package/dist/managers/automaticmessage/AutomaticMessageManager.js +798 -0
  10. package/dist/managers/automaticmessage/AutomaticMessageManager.mjs +790 -0
  11. package/dist/managers/base.d.mts +20 -0
  12. package/dist/managers/base.d.ts +20 -0
  13. package/dist/managers/base.js +124 -15
  14. package/dist/managers/base.mjs +104 -0
  15. package/dist/managers/bet/GuildBetManager.d.mts +20 -0
  16. package/dist/managers/bet/GuildBetManager.d.ts +20 -0
  17. package/dist/managers/bet/GuildBetManager.js +947 -58
  18. package/dist/managers/bet/GuildBetManager.mjs +946 -0
  19. package/dist/managers/betuser/GuildBetUserManager.d.mts +20 -0
  20. package/dist/managers/betuser/GuildBetUserManager.d.ts +20 -0
  21. package/dist/managers/betuser/GuildBetUserManager.js +506 -78
  22. package/dist/managers/betuser/GuildBetUserManager.mjs +489 -0
  23. package/dist/managers/buffer/BufferManager.d.mts +20 -0
  24. package/dist/managers/buffer/BufferManager.d.ts +20 -0
  25. package/dist/managers/buffer/BufferManager.js +247 -37
  26. package/dist/managers/buffer/BufferManager.mjs +223 -0
  27. package/dist/managers/guild/GuildManager.d.mts +20 -0
  28. package/dist/managers/guild/GuildManager.d.ts +20 -0
  29. package/dist/managers/guild/GuildManager.js +3598 -87
  30. package/dist/managers/guild/GuildManager.mjs +3600 -0
  31. package/dist/managers/index.d.mts +20 -0
  32. package/dist/managers/index.d.ts +20 -0
  33. package/dist/managers/index.js +3766 -29
  34. package/dist/managers/index.mjs +3745 -0
  35. package/dist/managers/logs/LogManager.d.mts +20 -0
  36. package/dist/managers/logs/LogManager.d.ts +20 -0
  37. package/dist/managers/logs/LogManager.js +721 -55
  38. package/dist/managers/logs/LogManager.mjs +726 -0
  39. package/dist/managers/match/GuildMatchManager.d.mts +20 -0
  40. package/dist/managers/match/GuildMatchManager.d.ts +20 -0
  41. package/dist/managers/match/GuildMatchManager.js +1285 -95
  42. package/dist/managers/match/GuildMatchManager.mjs +1289 -0
  43. package/dist/managers/mediator/GuildMediatorManager.d.mts +20 -0
  44. package/dist/managers/mediator/GuildMediatorManager.d.ts +20 -0
  45. package/dist/managers/mediator/GuildMediatorManager.js +434 -86
  46. package/dist/managers/mediator/GuildMediatorManager.mjs +417 -0
  47. package/dist/managers/message/MessagesManager.d.mts +20 -0
  48. package/dist/managers/message/MessagesManager.d.ts +20 -0
  49. package/dist/managers/message/MessagesManager.js +158 -55
  50. package/dist/managers/message/MessagesManager.mjs +134 -0
  51. package/dist/managers/minesgame/MinesGameManager.d.mts +20 -0
  52. package/dist/managers/minesgame/MinesGameManager.d.ts +20 -0
  53. package/dist/managers/minesgame/MinesGameManager.js +714 -61
  54. package/dist/managers/minesgame/MinesGameManager.mjs +712 -0
  55. package/dist/managers/permission/GuildPermissionManager.d.mts +20 -0
  56. package/dist/managers/permission/GuildPermissionManager.d.ts +20 -0
  57. package/dist/managers/permission/GuildPermissionManager.js +277 -55
  58. package/dist/managers/permission/GuildPermissionManager.mjs +253 -0
  59. package/dist/managers/player/PlayerManager.d.mts +20 -0
  60. package/dist/managers/player/PlayerManager.d.ts +20 -0
  61. package/dist/managers/player/PlayerManager.js +174 -71
  62. package/dist/managers/player/PlayerManager.mjs +155 -0
  63. package/dist/managers/ticket/TicketManager.d.mts +20 -0
  64. package/dist/managers/ticket/TicketManager.d.ts +20 -0
  65. package/dist/managers/ticket/TicketManager.js +812 -116
  66. package/dist/managers/ticket/TicketManager.mjs +813 -0
  67. package/dist/managers/user/GuildUserManager.d.mts +20 -0
  68. package/dist/managers/user/GuildUserManager.d.ts +20 -0
  69. package/dist/managers/user/GuildUserManager.js +574 -90
  70. package/dist/managers/user/GuildUserManager.mjs +554 -0
  71. package/dist/managers/vipmember/VipMemberManager.d.mts +20 -0
  72. package/dist/managers/vipmember/VipMemberManager.d.ts +20 -0
  73. package/dist/managers/vipmember/VipMemberManager.js +525 -114
  74. package/dist/managers/vipmember/VipMemberManager.mjs +510 -0
  75. package/dist/rest/APIEndpoints.d.mts +12 -0
  76. package/{types → dist}/rest/APIEndpoints.d.ts +4 -3
  77. package/dist/rest/APIEndpoints.js +40 -10
  78. package/dist/rest/APIEndpoints.mjs +19 -0
  79. package/dist/rest/REST.d.mts +20 -0
  80. package/dist/rest/REST.d.ts +20 -0
  81. package/dist/rest/REST.js +3828 -112
  82. package/dist/rest/REST.mjs +3832 -0
  83. package/dist/rest/Routes.d.mts +104 -0
  84. package/{types → dist}/rest/Routes.d.ts +7 -3
  85. package/dist/rest/Routes.js +124 -98
  86. package/dist/rest/Routes.mjs +104 -0
  87. package/dist/rest/index.d.mts +22 -0
  88. package/dist/rest/index.d.ts +22 -0
  89. package/dist/rest/index.js +3856 -18
  90. package/dist/rest/index.mjs +3847 -0
  91. package/dist/structures/Collection.d.mts +19 -0
  92. package/{types → dist}/structures/Collection.d.ts +3 -1
  93. package/dist/structures/Collection.js +102 -81
  94. package/dist/structures/Collection.mjs +87 -0
  95. package/dist/structures/automaticmessage/AutomaticMessage.d.mts +20 -0
  96. package/dist/structures/automaticmessage/AutomaticMessage.d.ts +20 -0
  97. package/dist/structures/automaticmessage/AutomaticMessage.js +613 -0
  98. package/dist/structures/automaticmessage/AutomaticMessage.mjs +605 -0
  99. package/dist/structures/bet/GuildBet.d.mts +20 -0
  100. package/dist/structures/bet/GuildBet.d.ts +20 -0
  101. package/dist/structures/bet/GuildBet.js +861 -169
  102. package/dist/structures/bet/GuildBet.mjs +872 -0
  103. package/dist/structures/betuser/GuildBetUser.d.mts +20 -0
  104. package/dist/structures/betuser/GuildBetUser.d.ts +20 -0
  105. package/dist/structures/betuser/GuildBetUser.js +323 -201
  106. package/dist/structures/betuser/GuildBetUser.mjs +316 -0
  107. package/dist/structures/guild/Guild.d.mts +20 -0
  108. package/dist/structures/guild/Guild.d.ts +20 -0
  109. package/dist/structures/guild/Guild.js +3499 -452
  110. package/dist/structures/guild/Guild.mjs +3513 -0
  111. package/dist/structures/index.d.mts +20 -0
  112. package/dist/structures/index.d.ts +20 -0
  113. package/dist/structures/index.js +3610 -26
  114. package/dist/structures/index.mjs +3593 -0
  115. package/dist/structures/logentry/LogEntry.d.mts +20 -0
  116. package/dist/structures/logentry/LogEntry.d.ts +20 -0
  117. package/dist/structures/logentry/LogEntry.js +568 -62
  118. package/dist/structures/logentry/LogEntry.mjs +566 -0
  119. package/dist/structures/match/GuildMatch.d.mts +20 -0
  120. package/dist/structures/match/GuildMatch.d.ts +20 -0
  121. package/dist/structures/match/GuildMatch.js +1165 -250
  122. package/dist/structures/match/GuildMatch.mjs +1178 -0
  123. package/dist/structures/mediator/GuildMediator.d.mts +20 -0
  124. package/dist/structures/mediator/GuildMediator.d.ts +20 -0
  125. package/dist/structures/mediator/GuildMediator.js +252 -124
  126. package/dist/structures/mediator/GuildMediator.mjs +236 -0
  127. package/dist/structures/minesgame/MinesGame.d.mts +20 -0
  128. package/dist/structures/minesgame/MinesGame.d.ts +20 -0
  129. package/dist/structures/minesgame/MinesGame.js +574 -68
  130. package/dist/structures/minesgame/MinesGame.mjs +570 -0
  131. package/dist/structures/ticket/Ticket.d.mts +20 -0
  132. package/dist/structures/ticket/Ticket.d.ts +20 -0
  133. package/dist/structures/ticket/Ticket.js +621 -115
  134. package/dist/structures/ticket/Ticket.mjs +617 -0
  135. package/dist/structures/user/GuildUser.d.mts +20 -0
  136. package/dist/structures/user/GuildUser.d.ts +20 -0
  137. package/dist/structures/user/GuildUser.js +374 -257
  138. package/dist/structures/user/GuildUser.mjs +372 -0
  139. package/dist/structures/vipmember/VipMember.d.mts +20 -0
  140. package/dist/structures/vipmember/VipMember.d.ts +20 -0
  141. package/dist/structures/vipmember/VipMember.js +261 -123
  142. package/dist/structures/vipmember/VipMember.mjs +250 -0
  143. package/dist/types/RestTypes.d.mts +20 -0
  144. package/dist/types/RestTypes.d.ts +20 -0
  145. package/dist/types/RestTypes.js +17 -1
  146. package/dist/types/RestTypes.mjs +0 -0
  147. package/dist/types/api/APIAdvert.d.mts +13 -0
  148. package/{types → dist}/types/api/APIAdvert.d.ts +3 -1
  149. package/dist/types/api/APIAdvert.js +17 -1
  150. package/dist/types/api/APIAdvert.mjs +0 -0
  151. package/dist/types/api/APIAutomaticMessage.d.mts +20 -0
  152. package/dist/types/api/APIAutomaticMessage.d.ts +20 -0
  153. package/dist/types/api/APIAutomaticMessage.js +18 -0
  154. package/dist/types/api/APIAutomaticMessage.mjs +0 -0
  155. package/dist/types/api/APIBaseChannel.d.mts +12 -0
  156. package/{types → dist}/types/api/APIBaseChannel.d.ts +3 -1
  157. package/dist/types/api/APIBaseChannel.js +17 -1
  158. package/dist/types/api/APIBaseChannel.mjs +0 -0
  159. package/{types/types/api/APIGuildEmoji.d.ts → dist/types/api/APIBetChannel.d.mts} +6 -6
  160. package/{types → dist}/types/api/APIBetChannel.d.ts +3 -1
  161. package/dist/types/api/APIBetChannel.js +17 -1
  162. package/dist/types/api/APIBetChannel.mjs +0 -0
  163. package/dist/types/api/APICode.d.mts +12 -0
  164. package/{types → dist}/types/api/APICode.d.ts +3 -1
  165. package/dist/types/api/APICode.js +17 -1
  166. package/dist/types/api/APICode.mjs +0 -0
  167. package/dist/types/api/APIGiveaway.d.mts +29 -0
  168. package/{types → dist}/types/api/APIGiveaway.d.ts +5 -3
  169. package/dist/types/api/APIGiveaway.js +17 -1
  170. package/dist/types/api/APIGiveaway.mjs +0 -0
  171. package/dist/types/api/APIGuild.d.mts +20 -0
  172. package/dist/types/api/APIGuild.d.ts +20 -0
  173. package/dist/types/api/APIGuild.js +72 -41
  174. package/dist/types/api/APIGuild.mjs +46 -0
  175. package/dist/types/api/APIGuildAdvert.d.mts +10 -0
  176. package/{types → dist}/types/api/APIGuildAdvert.d.ts +3 -1
  177. package/dist/types/api/APIGuildAdvert.js +17 -1
  178. package/dist/types/api/APIGuildAdvert.mjs +0 -0
  179. package/dist/types/api/APIGuildBet.d.mts +20 -0
  180. package/dist/types/api/APIGuildBet.d.ts +20 -0
  181. package/dist/types/api/APIGuildBet.js +32 -6
  182. package/dist/types/api/APIGuildBet.mjs +8 -0
  183. package/dist/types/api/APIGuildBetUser.d.mts +20 -0
  184. package/dist/types/api/APIGuildBetUser.d.ts +20 -0
  185. package/dist/types/api/APIGuildBetUser.js +17 -1
  186. package/dist/types/api/APIGuildBetUser.mjs +0 -0
  187. package/{types/types/api/APIGuildMessage.d.ts → dist/types/api/APIGuildChannel.d.mts} +5 -3
  188. package/{types → dist}/types/api/APIGuildChannel.d.ts +3 -1
  189. package/dist/types/api/APIGuildChannel.js +17 -1
  190. package/dist/types/api/APIGuildChannel.mjs +0 -0
  191. package/dist/types/api/APIGuildGroupedChannel.d.mts +20 -0
  192. package/dist/types/api/APIGuildGroupedChannel.d.ts +20 -0
  193. package/dist/types/api/APIGuildGroupedChannel.js +17 -1
  194. package/dist/types/api/APIGuildGroupedChannel.mjs +0 -0
  195. package/dist/types/api/APIGuildMatch.d.mts +20 -0
  196. package/dist/types/api/APIGuildMatch.d.ts +20 -0
  197. package/dist/types/api/APIGuildMatch.js +39 -11
  198. package/dist/types/api/APIGuildMatch.mjs +14 -0
  199. package/dist/types/api/APIGuildMediator.d.mts +16 -0
  200. package/{types → dist}/types/api/APIGuildMediator.d.ts +3 -1
  201. package/dist/types/api/APIGuildMediator.js +17 -1
  202. package/dist/types/api/APIGuildMediator.mjs +0 -0
  203. package/dist/types/api/APIGuildPermissions.d.mts +15 -0
  204. package/{types → dist}/types/api/APIGuildPermissions.d.ts +5 -3
  205. package/dist/types/api/APIGuildPermissions.js +37 -11
  206. package/dist/types/api/APIGuildPermissions.mjs +13 -0
  207. package/dist/types/api/APIGuildShop.d.mts +15 -0
  208. package/{types → dist}/types/api/APIGuildShop.d.ts +6 -2
  209. package/dist/types/api/APIGuildShop.js +17 -1
  210. package/dist/types/api/APIGuildShop.mjs +0 -0
  211. package/dist/types/api/APIGuildTicket.d.mts +19 -0
  212. package/{types → dist}/types/api/APIGuildTicket.d.ts +5 -2
  213. package/dist/types/api/APIGuildTicket.js +17 -1
  214. package/dist/types/api/APIGuildTicket.mjs +0 -0
  215. package/dist/types/api/APIGuildUser.d.mts +20 -0
  216. package/dist/types/api/APIGuildUser.d.ts +20 -0
  217. package/dist/types/api/APIGuildUser.js +17 -1
  218. package/dist/types/api/APIGuildUser.mjs +0 -0
  219. package/dist/types/api/APILogEntry.d.mts +32 -0
  220. package/{types → dist}/types/api/APILogEntry.d.ts +4 -2
  221. package/dist/types/api/APILogEntry.js +44 -18
  222. package/dist/types/api/APILogEntry.mjs +20 -0
  223. package/dist/types/api/APIMessage.d.mts +13 -0
  224. package/{types → dist}/types/api/APIMessage.d.ts +3 -1
  225. package/dist/types/api/APIMessage.js +17 -1
  226. package/dist/types/api/APIMessage.mjs +0 -0
  227. package/dist/types/api/APIMinesGame.d.mts +15 -0
  228. package/{types → dist}/types/api/APIMinesGame.d.ts +3 -1
  229. package/dist/types/api/APIMinesGame.js +17 -1
  230. package/dist/types/api/APIMinesGame.mjs +0 -0
  231. package/dist/types/api/APIPlayer.d.mts +10 -0
  232. package/{types → dist}/types/api/APIPlayer.d.ts +3 -1
  233. package/dist/types/api/APIPlayer.js +17 -1
  234. package/dist/types/api/APIPlayer.mjs +0 -0
  235. package/dist/types/api/APIProduct.d.mts +22 -0
  236. package/{types → dist}/types/api/APIProduct.d.ts +5 -2
  237. package/dist/types/api/APIProduct.js +17 -2
  238. package/dist/types/api/APIProduct.mjs +0 -0
  239. package/dist/types/api/APIVipMember.d.mts +22 -0
  240. package/{types → dist}/types/api/APIVipMember.d.ts +3 -1
  241. package/dist/types/api/APIVipMember.js +17 -1
  242. package/dist/types/api/APIVipMember.mjs +0 -0
  243. package/dist/types/api/index.d.mts +20 -0
  244. package/dist/types/api/index.d.ts +20 -0
  245. package/dist/types/api/index.js +171 -70
  246. package/dist/types/api/index.mjs +135 -0
  247. package/dist/types/index.d.mts +20 -0
  248. package/dist/types/index.d.ts +20 -0
  249. package/dist/types/index.js +171 -16
  250. package/dist/types/index.mjs +135 -0
  251. package/dist/utils/Assertion.d.mts +34 -0
  252. package/{types → dist}/utils/Assertion.d.ts +3 -1
  253. package/dist/utils/Assertion.js +76 -59
  254. package/dist/utils/Assertion.mjs +52 -0
  255. package/dist/utils/getRandomNumber.d.mts +3 -0
  256. package/dist/utils/getRandomNumber.d.ts +3 -0
  257. package/dist/utils/getRandomNumber.js +29 -3
  258. package/dist/utils/getRandomNumber.mjs +7 -0
  259. package/dist/utils/randomKeyGenerator.d.mts +3 -0
  260. package/dist/utils/randomKeyGenerator.d.ts +3 -0
  261. package/dist/utils/randomKeyGenerator.js +33 -0
  262. package/dist/utils/randomKeyGenerator.mjs +8 -0
  263. package/package.json +12 -6
  264. package/dist/types/api/APIBetMessage.js +0 -2
  265. package/dist/types/api/APIGuildEmoji.js +0 -2
  266. package/dist/types/api/APIGuildRole.js +0 -2
  267. package/dist/types/api/APILogMessage.js +0 -2
  268. package/types/index.d.ts +0 -4
  269. package/types/managers/base.d.ts +0 -14
  270. package/types/managers/bet/GuildBetManager.d.ts +0 -15
  271. package/types/managers/betuser/GuildBetUserManager.d.ts +0 -18
  272. package/types/managers/buffer/BufferManager.d.ts +0 -19
  273. package/types/managers/guild/GuildManager.d.ts +0 -32
  274. package/types/managers/index.d.ts +0 -14
  275. package/types/managers/logs/LogManager.d.ts +0 -10
  276. package/types/managers/match/GuildMatchManager.d.ts +0 -29
  277. package/types/managers/mediator/GuildMediatorManager.d.ts +0 -19
  278. package/types/managers/message/MessagesManager.d.ts +0 -20
  279. package/types/managers/minesgame/MinesGameManager.d.ts +0 -17
  280. package/types/managers/permission/GuildPermissionManager.d.ts +0 -8
  281. package/types/managers/player/PlayerManager.d.ts +0 -28
  282. package/types/managers/ticket/TicketManager.d.ts +0 -24
  283. package/types/managers/user/GuildUserManager.d.ts +0 -18
  284. package/types/managers/vipmember/VipMemberManager.d.ts +0 -32
  285. package/types/rest/REST.d.ts +0 -56
  286. package/types/rest/index.d.ts +0 -3
  287. package/types/structures/bet/GuildBet.d.ts +0 -54
  288. package/types/structures/betuser/GuildBetUser.d.ts +0 -71
  289. package/types/structures/guild/Guild.d.ts +0 -85
  290. package/types/structures/index.d.ts +0 -11
  291. package/types/structures/logentry/LogEntry.d.ts +0 -28
  292. package/types/structures/match/GuildMatch.d.ts +0 -76
  293. package/types/structures/mediator/GuildMediator.d.ts +0 -50
  294. package/types/structures/minesgame/MinesGame.d.ts +0 -23
  295. package/types/structures/ticket/Ticket.d.ts +0 -30
  296. package/types/structures/user/GuildUser.d.ts +0 -75
  297. package/types/structures/vipmember/VipMember.d.ts +0 -54
  298. package/types/types/RestTypes.d.ts +0 -47
  299. package/types/types/api/APIBetMessage.d.ts +0 -10
  300. package/types/types/api/APIGuild.d.ts +0 -132
  301. package/types/types/api/APIGuildBet.d.ts +0 -51
  302. package/types/types/api/APIGuildBetUser.d.ts +0 -27
  303. package/types/types/api/APIGuildGroupedChannel.d.ts +0 -7
  304. package/types/types/api/APIGuildMatch.d.ts +0 -58
  305. package/types/types/api/APIGuildRole.d.ts +0 -10
  306. package/types/types/api/APIGuildUser.d.ts +0 -41
  307. package/types/types/api/APILogMessage.d.ts +0 -7
  308. package/types/types/api/index.d.ts +0 -161
  309. package/types/types/index.d.ts +0 -2
  310. package/types/utils/getRandomNumber.d.ts +0 -1
@@ -0,0 +1,1379 @@
1
+ import { APIAdvert } from './types/api/APIAdvert.mjs';
2
+ import { APIBaseChannel } from './types/api/APIBaseChannel.mjs';
3
+ import { APIBetChannel } from './types/api/APIBetChannel.mjs';
4
+ import { APICode } from './types/api/APICode.mjs';
5
+ import './types/api/APIGiveaway.mjs';
6
+ import { APIGuildAdvert } from './types/api/APIGuildAdvert.mjs';
7
+ import './types/api/APIGuildChannel.mjs';
8
+ import { APIGuildMediator } from './types/api/APIGuildMediator.mjs';
9
+ import { APIGuildPermissions, GuildPermissionsTypes, Permission } from './types/api/APIGuildPermissions.mjs';
10
+ import { APIGuildShop } from './types/api/APIGuildShop.mjs';
11
+ import { APIGuildTicket } from './types/api/APIGuildTicket.mjs';
12
+ import { LogEntryTypes, APILogEntry } from './types/api/APILogEntry.mjs';
13
+ import { APIMessage } from './types/api/APIMessage.mjs';
14
+ import { APIMinesGame } from './types/api/APIMinesGame.mjs';
15
+ import { APIPlayer } from './types/api/APIPlayer.mjs';
16
+ import './types/api/APIProduct.mjs';
17
+ import { APIVipMember } from './types/api/APIVipMember.mjs';
18
+ import { Collection } from './structures/Collection.mjs';
19
+ import EventEmitter from 'events';
20
+
21
+ interface APIGuildGroupedChannel {
22
+ /** Channel's type */
23
+ type: string & GuildChannelsType;
24
+ /** Channel's ids */
25
+ ids: string[];
26
+ }
27
+
28
+ /** Ticket's configuration */
29
+ interface GuildTicketConfiguration {
30
+ /** Guild's categories */
31
+ categories: APITicketCategory[];
32
+ creationCategory: string;
33
+ deletionCategory: string;
34
+ rating_channel_id: string;
35
+ }
36
+ interface GuildStatus {
37
+ /** Matches status */
38
+ matches: "on" | "off";
39
+ /** Bets status */
40
+ bets: "on" | "off";
41
+ /** Daily Ranking status */
42
+ daily_rank: "on" | "off";
43
+ /** Voice Channels for a bet */
44
+ create_voice_channels: "on" | "off";
45
+ two_mvps: "on" | "off";
46
+ ranking_name: "on" | "off";
47
+ logs_queues: "on" | "off";
48
+ logs_users: "on" | "off";
49
+ logs_managing: "on" | "off";
50
+ name_hidden: "on" | "off";
51
+ }
52
+ declare enum GuildStatusEnum {
53
+ /** Matches status */
54
+ Matches = "matches",
55
+ /** Bets status */
56
+ Bets = "bets",
57
+ /** Daily Ranking status */
58
+ DailyRank = "daily_rank",
59
+ /** Voice Channels for a bet */
60
+ CreateVoiceChannels = "create_voice_channels",
61
+ TwoMvps = "two_mvps",
62
+ RankingName = "ranking_name",
63
+ LogsQueues = "logs_queues",
64
+ LogsUsers = "logs_users",
65
+ LogsManaging = "logs_managing",
66
+ NameHidden = "name_hidden"
67
+ }
68
+ interface GuildModes {
69
+ on: string[];
70
+ off: string[];
71
+ }
72
+ type DailyCategories = "coins" | "credit" | "wins" | "points" | "losses" | "mvps";
73
+ type GuildPrices = number[];
74
+ interface GuildScores {
75
+ /** Win */
76
+ win: number;
77
+ /** Loss */
78
+ loss: number;
79
+ /** Mvp */
80
+ mvp: number;
81
+ /** Coin */
82
+ coin: number;
83
+ /** Creator */
84
+ creator: number;
85
+ }
86
+ interface RoulettePrize {
87
+ label: string;
88
+ custom_color: string;
89
+ custom_probability: number;
90
+ _id: string;
91
+ }
92
+ interface RouletteSettings {
93
+ primary_color: string;
94
+ secondary_color: string;
95
+ tertiary_color: string;
96
+ text_color: string;
97
+ prizes: RoulettePrize[];
98
+ }
99
+ declare enum AutomaticMessagesTypes {
100
+ MatchStarted = "match_started",
101
+ Miscellaneous = "miscellaneous"
102
+ }
103
+ declare enum GuildChannelsType {
104
+ DailyRank = "daily_rank",
105
+ Commands = "command",
106
+ Blacklist = "blacklist",
107
+ Queues = "queue",
108
+ VipMemebers = "vipmembers_category",
109
+ QueueLogs = "queue_logs",
110
+ UserLogs = "user_logs",
111
+ TicketLogs = "ticket_logs",
112
+ ManagingLogs = "managing_logs",
113
+ NormalQueue = "normal_queue",
114
+ ChallengeQueue = "challenge_queue",
115
+ MatchTextChannelParent = "match_text_channel_parent",
116
+ VoiceChannelMatchCreation = "voice_channel_match_creation",
117
+ WaitingVC = "waiting_vc",
118
+ BetMobileCategory = "bet_mobile_category",
119
+ BetEmulatorCategory = "bet_emulator_category",
120
+ BetMixCategory = "bet_mix_category",
121
+ RouletteLogs = "roulette_logs",
122
+ Rules = "rules"
123
+ }
124
+ interface APIGuild {
125
+ /** Guild's id */
126
+ id: string;
127
+ /** Guild's client key */
128
+ client_key: string;
129
+ modes: GuildModes;
130
+ /** Guild Permissions */
131
+ permissions: APIGuildPermissions;
132
+ /** Guild Ticket Configuration */
133
+ tickets_configuration: GuildTicketConfiguration;
134
+ /** Guild Daily Categories */
135
+ daily_categories: DailyCategories[];
136
+ /** Guild Scores */
137
+ scores: GuildScores;
138
+ /** Guild Status */
139
+ status: GuildStatus;
140
+ /** Guild Channel */
141
+ channels: APIGuildGroupedChannel[];
142
+ /** Guild Categories */
143
+ categories: APIGuildGroupedChannel[];
144
+ /** Guild Prefix */
145
+ prefix: string;
146
+ /** Guild Prices Used */
147
+ prices: GuildPrices;
148
+ /** Guild Creation Date */
149
+ createdAt: Date;
150
+ /** Guild Updated Date */
151
+ updatedAt: Date;
152
+ /** Guild Shop */
153
+ shop: APIGuildShop;
154
+ adverts: APIGuildAdvert[];
155
+ max_advert_per_user: number;
156
+ codes: APICode[];
157
+ coin_symbol: string;
158
+ roulette_settings: RouletteSettings;
159
+ autorole_config: {
160
+ role: string;
161
+ };
162
+ automatic_messages: APIAutomaticMessage[];
163
+ }
164
+
165
+ interface APIAutomaticMessage {
166
+ _id: string;
167
+ id: string;
168
+ type: AutomaticMessagesTypes;
169
+ admin_id: string;
170
+ channel_ids: string[];
171
+ content: string;
172
+ embeds: any[];
173
+ components: any[];
174
+ attachments: any[];
175
+ flags: number;
176
+ interval_ms: number;
177
+ createdAt: Date;
178
+ updatedAt: Date;
179
+ }
180
+
181
+ interface BetQueue {
182
+ _id: string;
183
+ type: string;
184
+ players: APIPlayer[];
185
+ createdAt: Date;
186
+ updatedAt: Date;
187
+ }
188
+ declare enum BetChannelTypes {
189
+ CreationChannel = "creation_channel"
190
+ }
191
+ interface APIGuildBet {
192
+ /** The bet's type */
193
+ type: Omit<BaseMatchModes, "5x5" | "6x6" | "5v5" | "6v6">;
194
+ /** The bet's mode */
195
+ mode: "misto" | "emu" | "mob" | "MISTO" | "EMU" | "MOB";
196
+ /** The bet's status */
197
+ status: "off" | "created" | "on" | "shutted" | "waiting";
198
+ /** The bet's maximum size */
199
+ maximumSize: number;
200
+ /** The bet's price */
201
+ price: number;
202
+ guild_id: string;
203
+ /** The bet's players */
204
+ players: APIPlayer[];
205
+ teams: APIPlayer[][];
206
+ /** The bet's channel */
207
+ channels: APIBetChannel[];
208
+ /** The bet's messages */
209
+ messages: APIMessage[];
210
+ /** The id of the winner */
211
+ winners: APIPlayer[];
212
+ /** The id of the loser */
213
+ losers: APIPlayer[];
214
+ /** The bet's creator id */
215
+ creatorId: string;
216
+ /** The bet's mediator */
217
+ mediatorId: string;
218
+ /** The bet's confirmers */
219
+ confirmed: Confirm[];
220
+ /** Creation Date */
221
+ createdAt: Date;
222
+ /** Updated Date */
223
+ updatedAt: Date;
224
+ /** Bet's id */
225
+ _id: string;
226
+ queues: BetQueue[];
227
+ }
228
+
229
+ /** Bet user */
230
+ interface APIGuildBetUser {
231
+ /** User daily */
232
+ daily: Omit<Daily, "points">;
233
+ profile: Profile;
234
+ consecutive_wins: number;
235
+ /** User's name */
236
+ id: string;
237
+ guild_id: string;
238
+ /** User's credit */
239
+ credit: number;
240
+ /** User's wins */
241
+ wins: number;
242
+ /** User's losses */
243
+ losses: number;
244
+ /** User's games */
245
+ games: number;
246
+ /** User's blacklist */
247
+ blacklist: boolean;
248
+ /** User's coins */
249
+ coins: number;
250
+ spins: number;
251
+ /** Creation Date */
252
+ createdAt: Date;
253
+ /** Updated Date */
254
+ updatedAt: Date;
255
+ }
256
+
257
+ type MatchSelection = {
258
+ type: "creator" | "mvps" | "winners";
259
+ selected: string[];
260
+ confirmed: string[];
261
+ };
262
+ interface APIGuildMatch {
263
+ selections: MatchSelection[];
264
+ /** Match's type */
265
+ type: BaseMatchModes;
266
+ guild_id: string;
267
+ /** Match's status */
268
+ status: BaseMatchStatus;
269
+ /** Match's challenge */
270
+ challenge: boolean;
271
+ admin_id: string;
272
+ /** Match's players */
273
+ players: APIPlayer[];
274
+ /** Match's winners */
275
+ winners: APIPlayer[];
276
+ /** Match's losers */
277
+ losers: APIPlayer[];
278
+ /** Match;s messages */
279
+ messages: APIMessage[];
280
+ /** Matches channels */
281
+ channels: APIBaseChannel[];
282
+ /** Match's maximum size */
283
+ maximumSize: number;
284
+ /** Match's kicked out */
285
+ kickedOut: APIPlayer[];
286
+ /** Match's confirmed */
287
+ confirmed: Confirm[];
288
+ /** Match's leaders */
289
+ leaders: APIPlayer[];
290
+ teams: APIPlayer[][];
291
+ creatorId: string;
292
+ /** Match's room creator id */
293
+ roomCreatorId: string;
294
+ bet: APIGuildBet | GuildBet;
295
+ /** Creation Date */
296
+ createdAt: Date;
297
+ /** Updated Date */
298
+ updatedAt: Date;
299
+ /** Match's id */
300
+ _id: string;
301
+ mvps: [];
302
+ }
303
+ declare enum GuildMatchChannelsType {
304
+ CreationChannel = "creation_channel",
305
+ TextChannel = "text_channel"
306
+ }
307
+ declare enum GuildMatchMessagesType {
308
+ CreationMessage = "creation_message"
309
+ }
310
+
311
+ interface Profile {
312
+ bannerUrl?: string;
313
+ avatarUrl?: string;
314
+ bio?: string;
315
+ name?: string;
316
+ textColor?: string;
317
+ primaryColor?: string;
318
+ secondaryColor?: string;
319
+ }
320
+ interface APIGuildUser {
321
+ /** User's id */
322
+ id: string;
323
+ guild_id: string;
324
+ /** User's daily */
325
+ daily: Omit<Daily, "credit">;
326
+ profile: Profile;
327
+ /** User's points */
328
+ points: number;
329
+ creations: number;
330
+ /** User's wins */
331
+ wins: number;
332
+ adverts: APIAdvert[];
333
+ /** User's mvps */
334
+ mvps: number;
335
+ /** User's losses */
336
+ losses: number;
337
+ /** User's games */
338
+ games: number;
339
+ /** If user is blacklisted */
340
+ blacklist: boolean;
341
+ /** User's accessories such as double point */
342
+ accessories: Accessory[];
343
+ /** User's original channels */
344
+ original_channels: OriginalChannels;
345
+ spins: number;
346
+ /** Creation Date */
347
+ createdAt: Date;
348
+ /** Updated Date */
349
+ updatedAt: Date;
350
+ }
351
+
352
+ interface APITicketCategory {
353
+ /** Category's type */
354
+ type: string;
355
+ /** Category's emoji */
356
+ emoji: string;
357
+ /** Category's description */
358
+ description: string;
359
+ /** Category's alias */
360
+ alias: string;
361
+ }
362
+ interface LogMessage {
363
+ /** The message's content */
364
+ content: string | Buffer<any>;
365
+ /** The message's sender */
366
+ userId: string;
367
+ /** The message's type */
368
+ type: string;
369
+ /** Creation Date */
370
+ createdAt: Date;
371
+ /** Updated Date */
372
+ updatedAt: Date;
373
+ }
374
+ /** Base match modes */
375
+ type BaseMatchModes = "1v1" | "2v2" | "3v3" | "4v4" | "5v5" | "6v6";
376
+ /** Base match status */
377
+ type BaseMatchStatus = "on" | "created" | "off" | "shutted";
378
+ /** The logs of the structure */
379
+ interface Logs {
380
+ /** The messages of the structure */
381
+ messages: LogMessage[];
382
+ }
383
+ /** Original Channel */
384
+ type OriginalChannel = {
385
+ /** Channel id */
386
+ channelId: string;
387
+ /** Match id */
388
+ matchId: string;
389
+ };
390
+ /** Original Channels */
391
+ type OriginalChannels = OriginalChannel[];
392
+ /** Accessories */
393
+ type Accessory = {
394
+ /** Accessory type */
395
+ type: "point_protect" | "immunity" | "double_points";
396
+ /** Accessory longevity */
397
+ longevity: string;
398
+ /** Accessory adder */
399
+ addedBy: string;
400
+ /** When accessory added */
401
+ when: Date;
402
+ createdAt: Date;
403
+ updatedAt: Date;
404
+ /** If accessory has expired */
405
+ expired: boolean;
406
+ };
407
+ /** Daily information */
408
+ type Daily = {
409
+ /** Wins */
410
+ wins: number;
411
+ /** Coins */
412
+ coins: number;
413
+ /** Points */
414
+ points: number;
415
+ /** Credit */
416
+ credit: number;
417
+ /** Losses */
418
+ losses: number;
419
+ /** Mvps */
420
+ mvps: number;
421
+ /** Date of the daily */
422
+ date: Date;
423
+ };
424
+ interface Banner {
425
+ /** Equipped banner */
426
+ equipped: number;
427
+ /** Bought banners */
428
+ allowed: number[];
429
+ }
430
+ interface ProfileCard {
431
+ /** Profile's description */
432
+ description: string;
433
+ /** Profile's banner */
434
+ banner: Banner;
435
+ }
436
+ interface Confirm {
437
+ /** Confirm's type */
438
+ type: string;
439
+ /** Confirm's id */
440
+ ids: string[];
441
+ /** Confirm's counts */
442
+ count: number;
443
+ }
444
+ type Optional<T> = {
445
+ [K in keyof T]?: T[K];
446
+ };
447
+ declare enum MATCHTYPES {
448
+ OneVOne = "1v1",
449
+ TwoVTwo = "2v2",
450
+ ThreeVThree = "3v3",
451
+ FourVFour = "4v4",
452
+ FiveVFive = "5v5",
453
+ SixVSix = "6v6"
454
+ }
455
+ declare enum MATCHSTATUS {
456
+ ON = "on",
457
+ OFF = "off",
458
+ CREATED = "created",
459
+ SHUTTED = "shutted"
460
+ }
461
+ declare enum BETSTATUS {
462
+ ON = "on",
463
+ OFF = "off",
464
+ CREATED = "created",
465
+ SHUTTED = "shutted",
466
+ WAITING = "waiting"
467
+ }
468
+ declare enum STATES {
469
+ ON = "on",
470
+ OFF = "off",
471
+ CREATED = "created",
472
+ SHUTTED = "shutted",
473
+ WAITING = "waiting"
474
+ }
475
+ interface StatusResponse {
476
+ status: "ok" | "error";
477
+ services: {
478
+ fastify: boolean;
479
+ mongo: {
480
+ ok: boolean;
481
+ latency: number;
482
+ };
483
+ redis: {
484
+ ok: boolean;
485
+ latency: number;
486
+ };
487
+ };
488
+ timestamp: string;
489
+ }
490
+
491
+ type FetchOptions$6 = {
492
+ userId?: string;
493
+ cache?: boolean;
494
+ };
495
+ type ReturnFetchOptions$4<T extends FetchOptions$6> = T["cache"] extends true ? Collection<string, GuildBetUser> : T["userId"] extends string ? GuildBetUser : Collection<string, GuildBetUser>;
496
+ declare class GuildBetUserManager extends BaseManager<GuildBetUser> {
497
+ constructor(guild: Guild);
498
+ fetch<T extends FetchOptions$6>(options?: T): Promise<ReturnFetchOptions$4<T>>;
499
+ updateMany(...betusers: Optional<APIGuildBetUser>[]): Promise<Collection<string, GuildBetUser>>;
500
+ deleteAll(): Promise<void>;
501
+ resetAll(): Promise<GuildBetUser | Collection<string, GuildBetUser>>;
502
+ set(data: APIGuildBetUser | APIGuildBetUser[]): GuildBetUser | Collection<string, GuildBetUser>;
503
+ }
504
+
505
+ declare class GuildBetUser implements APIGuildBetUser {
506
+ /** User daily */
507
+ daily: Omit<Daily, "points">;
508
+ profile: Profile;
509
+ /** User's name */
510
+ id: string;
511
+ guild_id: string;
512
+ /** User's credit */
513
+ credit: number;
514
+ /** User's wins */
515
+ wins: number;
516
+ /** User's mvps */
517
+ mvps: number;
518
+ /** User's losses */
519
+ losses: number;
520
+ /** User's games */
521
+ games: number;
522
+ /** User's blacklist */
523
+ blacklist: boolean;
524
+ /** User's coins */
525
+ coins: number;
526
+ spins: number;
527
+ /** Creation Date */
528
+ createdAt: Date;
529
+ /** Updated Date */
530
+ updatedAt: Date;
531
+ consecutive_wins: number;
532
+ /** The given manager */
533
+ readonly manager: GuildBetUserManager;
534
+ /** The rest client */
535
+ readonly rest: REST;
536
+ readonly guild: Guild;
537
+ /**
538
+ * Bet user
539
+ * @param data The user's data
540
+ * @param manager The manager
541
+ * @param rest The rest client
542
+ */
543
+ constructor(data: APIGuildBetUser, manager: GuildBetUserManager);
544
+ /** String representation of this user */
545
+ toString(): string;
546
+ /**
547
+ * Fetches the user
548
+ * @returns New Instance of the user
549
+ */
550
+ fetch(): Promise<GuildBetUser>;
551
+ /**
552
+ * Set the user blacklist
553
+ * @param value Value to set to
554
+ * @returns GuildBetUser
555
+ */
556
+ setBlacklist(value: boolean): Promise<this>;
557
+ reset(): Promise<this>;
558
+ updateProfile(data: Optional<Profile>): Promise<this>;
559
+ _updateInternals(data: Optional<APIGuildBetUser>): this;
560
+ /**
561
+ * Update certain property
562
+ * @param data The new data to update with
563
+ * @returns
564
+ */
565
+ update(data: Omit<Optional<APIGuildBetUser>, "daily"> & {
566
+ type?: "add" | "remove";
567
+ }): Promise<this>;
568
+ _update(data: Omit<Optional<APIGuildBetUser>, "daily">): Promise<this>;
569
+ delete(): Promise<boolean>;
570
+ toJSON(): Optional<APIGuildBetUser>;
571
+ }
572
+
573
+ declare class GuildMatch {
574
+ _id: string;
575
+ selections: MatchSelection[];
576
+ /** Match's type */
577
+ type: BaseMatchModes;
578
+ channels: APIBaseChannel[];
579
+ guild_id: string;
580
+ /** Match's status */
581
+ status: BaseMatchStatus;
582
+ /** Match's challenge */
583
+ challenge: boolean;
584
+ /** Match's players */
585
+ players: APIPlayer[];
586
+ teams: APIPlayer[][];
587
+ /** Match's winners */
588
+ winners: APIPlayer[];
589
+ /** Match's losers */
590
+ losers: APIPlayer[];
591
+ /** Match's maximum size */
592
+ maximumSize: number;
593
+ /** Match's kicked out */
594
+ kickedOut: APIPlayer[];
595
+ /** Match's confirmed */
596
+ confirmed: Confirm[];
597
+ /** Match's leaders */
598
+ leaders: APIPlayer[];
599
+ /** Match's creator id */
600
+ creatorId: string;
601
+ /** Match's room creator id */
602
+ roomCreatorId: string;
603
+ /** Creation Date */
604
+ createdAt: Date;
605
+ /** Updated Date */
606
+ updatedAt: Date;
607
+ messages: MessagesManager<GuildMatch>;
608
+ /** Match's id */
609
+ mvps: [];
610
+ manager: GuildMatchManager;
611
+ bet: GuildBet;
612
+ admin_id: string;
613
+ /** The given guild */
614
+ readonly guild: Guild;
615
+ /** The rest client */
616
+ readonly rest: REST;
617
+ readonly key: string;
618
+ /**
619
+ * GuildMatch match
620
+ * @param data The match's data
621
+ * @param guild The guild
622
+ * @param rest The rest client
623
+ */
624
+ constructor(data: APIGuildMatch, manager: GuildMatchManager);
625
+ /**
626
+ * Fetches the match
627
+ * @returns New Instance of the match
628
+ */
629
+ fetch(): Promise<GuildMatch>;
630
+ addConfirmed(type: string, id: string | string[]): Promise<GuildMatch>;
631
+ setConfirmed(set: Confirm[]): Promise<GuildMatch>;
632
+ setStatus(status: BaseMatchStatus): Promise<GuildMatch>;
633
+ setWinners(players: Optional<APIPlayer>[] | Optional<APIPlayer>): Promise<GuildMatch>;
634
+ setLoser(players: Optional<APIPlayer>[] | Optional<APIPlayer>): Promise<GuildMatch>;
635
+ setMvps(...usersId: string[]): Promise<GuildMatch>;
636
+ setRoomCreatorId(userId: string): Promise<GuildMatch>;
637
+ setRoomAdminId(userId: string): Promise<GuildMatch>;
638
+ kick(player: Optional<APIPlayer>): Promise<GuildMatch>;
639
+ update(data: Optional<APIGuildMatch>): Promise<GuildMatch>;
640
+ delete(): Promise<boolean>;
641
+ toJSON(): Optional<APIGuildMatch>;
642
+ _updateInternals(data: Optional<APIGuildMatch>): Promise<this>;
643
+ }
644
+
645
+ type FetchOptions$5 = {
646
+ userId?: string;
647
+ cache?: boolean;
648
+ };
649
+ type ReturnFetchOptions$3<T extends FetchOptions$5> = T["cache"] extends true ? Collection<string, GuildUser> : T["userId"] extends string ? GuildUser : Collection<string, GuildUser>;
650
+ declare class GuildUserManager extends BaseManager<GuildUser> {
651
+ constructor(guild: Guild);
652
+ fetch<T extends FetchOptions$5>(options?: T): Promise<ReturnFetchOptions$3<T>>;
653
+ updateMany(...users: Optional<APIGuildUser>[]): Promise<Collection<string, GuildUser>>;
654
+ deleteAll(): Promise<void>;
655
+ resetAll(): Promise<Collection<string, GuildUser>>;
656
+ set(data: APIGuildUser | APIGuildUser[]): GuildUser | Collection<string, GuildUser>;
657
+ }
658
+
659
+ declare class GuildUser implements APIGuildUser {
660
+ /** User's id */
661
+ id: string;
662
+ guild_id: string;
663
+ /** User's daily */
664
+ daily: Omit<Daily, "credit">;
665
+ /** User's points */
666
+ points: number;
667
+ /** User's wins */
668
+ wins: number;
669
+ /** User's mvps */
670
+ mvps: number;
671
+ /** User's losses */
672
+ losses: number;
673
+ /** User's games */
674
+ games: number;
675
+ /** If user is blacklisted */
676
+ blacklist: boolean;
677
+ /** User's accessories such as double point */
678
+ accessories: Accessory[];
679
+ /** User's original channels */
680
+ original_channels: OriginalChannels;
681
+ profile: Profile;
682
+ creations: number;
683
+ /** User's items */
684
+ adverts: APIAdvert[];
685
+ spins: number;
686
+ /** Creation Date */
687
+ createdAt: Date;
688
+ /** Updated Date */
689
+ updatedAt: Date;
690
+ /** The given manager */
691
+ readonly manager: GuildUserManager;
692
+ /** The rest client */
693
+ readonly rest: REST;
694
+ /**
695
+ * Bet user
696
+ * @param data The user's data
697
+ * @param manager The manager
698
+ * @param rest The rest client
699
+ */
700
+ constructor(data: APIGuildUser, manager: GuildUserManager);
701
+ /** String representation of this user */
702
+ toString(): string;
703
+ /**
704
+ * Fetches the user
705
+ * @returns New Instance of the user
706
+ */
707
+ fetch(): Promise<GuildUser>;
708
+ /**
709
+ * Set the user blacklist
710
+ * @param value Value to set to
711
+ * @returns GuildUser
712
+ */
713
+ setBlacklist(value: boolean): Promise<this>;
714
+ reset(): Promise<this>;
715
+ updateProfile(data: Optional<Profile>): Promise<this>;
716
+ _updateInternals(data: Optional<APIGuildUser>): this;
717
+ addAdvert(data: Optional<Omit<APIAdvert, "_id">>): Promise<GuildUser>;
718
+ removeAdvert(advertId?: string): Promise<GuildUser>;
719
+ /**
720
+ * Update certain property
721
+ * @param data The new data to update with
722
+ * @returns
723
+ */
724
+ update(data: Omit<Optional<APIGuildUser>, "daily"> & {
725
+ type?: "add" | "remove";
726
+ }): Promise<this>;
727
+ delete(): Promise<boolean>;
728
+ toJSON(): APIGuildUser;
729
+ }
730
+
731
+ interface RequestOptions<Payload> {
732
+ /** The request's method */
733
+ method: "patch" | "get" | "put" | "post" | "delete" | "options" | "head" | "PATCH" | "GET" | "PUT" | "POST" | "DELETE" | "OPTIONS" | "HEAD";
734
+ /** The request's url */
735
+ url: string;
736
+ /** The request payload */
737
+ payload?: Payload;
738
+ }
739
+ interface RestEvents {
740
+ request: [{
741
+ url: string;
742
+ method: string;
743
+ }];
744
+ response: [{
745
+ status: number;
746
+ body: unknown;
747
+ }];
748
+ error: [Error];
749
+ debug: [string];
750
+ ticketCreate: [GuildTicket];
751
+ ticketDelete: [GuildTicket];
752
+ ticketsDelete: [Collection<string, GuildTicket>];
753
+ matchCreate: [GuildMatch];
754
+ matchUpdate: [GuildMatch, GuildMatch];
755
+ matchDelete: [GuildMatch];
756
+ matchesDelete: [Collection<string, GuildMatch>];
757
+ betCreate: [GuildBet];
758
+ betUpdate: [GuildBet, GuildBet];
759
+ betDelete: [GuildBet];
760
+ betsDelete: [Collection<string, GuildBet>];
761
+ guildUpdate: [Guild];
762
+ guildDelete: [Guild];
763
+ guildsDelete: [Collection<string, Guild>];
764
+ userDelete: [GuildUser];
765
+ userUpdate: [GuildUser];
766
+ usersDelete: [Collection<string, GuildUser>];
767
+ betuserDelete: [GuildBetUser];
768
+ betuserUpdate: [GuildBetUser];
769
+ betusersDelete: [Collection<string, GuildBetUser>];
770
+ logEntryCreate: [LogEntry, Guild];
771
+ }
772
+
773
+ type PlayerOption = APIPlayer[] | APIPlayer;
774
+ type Structure = {
775
+ guild: Guild;
776
+ rest: REST;
777
+ };
778
+ declare class PlayerManager extends Collection<string, APIPlayer> {
779
+ base_url: string;
780
+ readonly rest: REST;
781
+ readonly guild: Guild;
782
+ constructor(structure: Structure, base_url: string);
783
+ _set(data: PlayerOption): this;
784
+ /**
785
+ * Adds a player or an array of players to the structure.
786
+ * @param player A player or an array of players to be added
787
+ * @returns returns a collection of players
788
+ */
789
+ add(player: PlayerOption): Promise<this>;
790
+ /**
791
+ * Remover a player or an array of players.
792
+ * @param player The player or an array of players to be removed
793
+ * @returns Player manager
794
+ */
795
+ remove(player: PlayerOption): Promise<this>;
796
+ }
797
+
798
+ declare class GuildBet {
799
+ /** The bet's type */
800
+ type: Omit<BaseMatchModes, "5x5" | "6x6" | "5v5" | "6v6">;
801
+ /** The bet's mode */
802
+ mode: "misto" | "emu" | "mob" | "MISTO" | "EMU" | "MOB";
803
+ /** The bet's status */
804
+ status: "off" | "created" | "on" | "shutted" | "waiting";
805
+ /** The bet's maximum size */
806
+ maximumSize: number;
807
+ /** The bet's price */
808
+ price: number;
809
+ /** The bet's players */
810
+ players: PlayerManager;
811
+ teams: APIPlayer[][];
812
+ /** The bet's channel */
813
+ channels: APIBetChannel[];
814
+ /** The bet's messages */
815
+ messages: MessagesManager<GuildBet>;
816
+ /** The id of the winner */
817
+ winners: APIPlayer[];
818
+ /** The id of the loser */
819
+ losers: APIPlayer[];
820
+ /** The bet's creator id */
821
+ creatorId: string;
822
+ /** The bet's mediator */
823
+ mediatorId: string;
824
+ /** The bet's confirmers */
825
+ confirmed: Confirm[];
826
+ /** Creation Date */
827
+ createdAt: Date;
828
+ /** Updated Date */
829
+ updatedAt: Date;
830
+ /** Bet's id */
831
+ _id: string;
832
+ queues: BetQueue[];
833
+ guild_id: string;
834
+ rest: REST;
835
+ guild: Guild;
836
+ manager: GuildBetManager;
837
+ constructor(data: Optional<APIGuildBet>, manager: GuildBetManager);
838
+ toString(): string;
839
+ fetch(): Promise<this>;
840
+ addPlayer(player: APIPlayer, queue_type?: string): Promise<this>;
841
+ removePlayer(player: APIPlayer): Promise<this>;
842
+ update(data: Optional<APIGuildBet>): Promise<this>;
843
+ delete(): Promise<boolean>;
844
+ _updateInternals(data: Optional<APIGuildBet>): this;
845
+ toJSON(): Optional<APIGuildBet>;
846
+ }
847
+
848
+ declare class LogEntry {
849
+ _id: string;
850
+ guild_id: string;
851
+ user_id: string;
852
+ admin_id: string;
853
+ object_id: string;
854
+ type: LogEntryTypes;
855
+ description: string;
856
+ change: string;
857
+ before: any;
858
+ after: any;
859
+ logs_channel_id: string;
860
+ createdAt: Date;
861
+ updatedAt: Date;
862
+ manager: LogManager;
863
+ /** The given guild */
864
+ readonly guild: Guild;
865
+ /** The rest client */
866
+ readonly rest: REST;
867
+ constructor(data: APILogEntry, manager: LogManager);
868
+ fetch(): Promise<LogEntry>;
869
+ toJSON(): Record<string, unknown>;
870
+ _updateInternals(data: Optional<APILogEntry>): this;
871
+ }
872
+
873
+ type FetchOptions$4 = {
874
+ mediatorId?: string;
875
+ cache?: boolean;
876
+ };
877
+ declare class GuildMediatorManager extends BaseManager<GuildMediator> {
878
+ constructor(guild: Guild);
879
+ fetch(options?: FetchOptions$4): Promise<Collection<string, GuildMediator> | GuildMediator>;
880
+ updateMany(...mediators: Optional<APIGuildMediator>[]): Promise<Collection<string, GuildMediator>>;
881
+ create(payload: Optional<APIGuildMediator>): Promise<GuildMediator>;
882
+ deleteAll(): Promise<void>;
883
+ resetAll(): Promise<Collection<string, GuildMediator>>;
884
+ set(data: APIGuildMediator | APIGuildMediator[]): GuildMediator | Collection<string, GuildMediator>;
885
+ }
886
+
887
+ declare class GuildMediator implements APIGuildMediator {
888
+ /** User's name */
889
+ id: string;
890
+ guild_id: string;
891
+ /** User's games */
892
+ games: number;
893
+ paypal: string;
894
+ revolut: string;
895
+ mbway: string;
896
+ external_links: string[];
897
+ /** Creation Date */
898
+ createdAt: Date;
899
+ /** Updated Date */
900
+ updatedAt: Date;
901
+ /** The given manager */
902
+ readonly manager: GuildMediatorManager;
903
+ /** The rest client */
904
+ readonly rest: REST;
905
+ readonly guild: Guild;
906
+ /**
907
+ * Bet user
908
+ * @param data The user's data
909
+ * @param manager The manager
910
+ * @param rest The rest client
911
+ */
912
+ constructor(data: APIGuildMediator, manager: GuildMediatorManager);
913
+ /** String representation of this user */
914
+ toString(): string;
915
+ /**
916
+ * Fetches the user
917
+ * @returns New Instance of the user
918
+ */
919
+ fetch(): Promise<GuildMediator>;
920
+ reset(): Promise<this>;
921
+ _updateInternals(data: Optional<APIGuildMediator>): this;
922
+ /**
923
+ * Update certain property
924
+ * @param data The new data to update with
925
+ * @returns
926
+ */
927
+ update(data: Optional<APIGuildMediator>): Promise<this>;
928
+ setPaymentlink(type: string, link: string): Promise<this>;
929
+ delete(): Promise<boolean>;
930
+ toJSON(): Optional<APIGuildMediator>;
931
+ }
932
+
933
+ type FecthOptions$1 = {
934
+ cache?: boolean;
935
+ memberId?: string;
936
+ };
937
+ declare class VipMemberManager extends BaseManager<VipMember> {
938
+ /**
939
+ * Manage vipmembers with the given client
940
+ * @param vipmembers An array of vipmembers
941
+ * @param rest The rest client
942
+ */
943
+ constructor(guild: Guild);
944
+ create(data: Optional<APIVipMember>): Promise<VipMember>;
945
+ /**
946
+ * Fetch a member
947
+ * @param id Id of the member to fetch
948
+ * @returns VipMember
949
+ */
950
+ fetch(options?: FecthOptions$1): Promise<Collection<string, VipMember> | VipMember>;
951
+ updateMember(id: string, data: Optional<APIVipMember>): Promise<VipMember>;
952
+ set(data: APIVipMember): VipMember;
953
+ setAll(data: APIVipMember[]): Collection<string, VipMember>;
954
+ resetAll(): Promise<Collection<string, VipMember>>;
955
+ delete(id: string): Promise<Collection<string, VipMember>>;
956
+ deleteAll(): Promise<boolean>;
957
+ }
958
+
959
+ declare class VipMember implements APIVipMember {
960
+ #private;
961
+ /** member's id */
962
+ id: string;
963
+ /** member name */
964
+ name: string;
965
+ /** Members's roleId */
966
+ roleId: string;
967
+ /** Members's voiceChannelId */
968
+ voiceChannelId: string;
969
+ /** Vip's type */
970
+ type: "both" | "role" | "channel";
971
+ /** Member's Guild Id */
972
+ guild_id: string;
973
+ duration: Date;
974
+ status: "on" | "off";
975
+ /** member's daily */
976
+ createdAt: Date;
977
+ /** Updated Date */
978
+ updatedAt: Date;
979
+ /** The given manager */
980
+ readonly manager: VipMemberManager;
981
+ /** The rest client */
982
+ readonly rest: REST;
983
+ readonly guild: Guild;
984
+ /**
985
+ * Bet member
986
+ * @param data The member's data
987
+ * @param manager The manager
988
+ * @param rest The rest client
989
+ */
990
+ constructor(data: APIVipMember, manager: VipMemberManager);
991
+ /** String representation of this member */
992
+ toString(): string;
993
+ /**
994
+ * Fetches the member
995
+ * @returns New Instance of the member
996
+ */
997
+ fetch(): Promise<VipMember>;
998
+ reset(): Promise<this>;
999
+ /**
1000
+ * Update certain property
1001
+ * @param data The new data to update with
1002
+ * @returns
1003
+ */
1004
+ update(data: Optional<APIVipMember>): Promise<this>;
1005
+ delete(): Promise<boolean>;
1006
+ toJSON(): Record<keyof APIVipMember, unknown>;
1007
+ }
1008
+
1009
+ declare class GuildTicket implements APIGuildTicket {
1010
+ _id: string;
1011
+ guild_id: string;
1012
+ type: string;
1013
+ status: "on" | "off";
1014
+ admin_id: string;
1015
+ channel_id: string;
1016
+ closed_by_id: string;
1017
+ creator_id: string;
1018
+ customer_rating: number;
1019
+ messages: APIMessage[];
1020
+ createdAt: Date;
1021
+ updatedAt: Date;
1022
+ readonly rest: REST;
1023
+ readonly guild: Guild;
1024
+ readonly manager: GuildTicketManager;
1025
+ constructor(data: APIGuildTicket, manager: any);
1026
+ fetch(): Promise<GuildTicket>;
1027
+ setCustomerRating(rating: number): Promise<GuildTicket>;
1028
+ setAdminId(id: string): Promise<GuildTicket>;
1029
+ setChannelId(id: string): Promise<GuildTicket>;
1030
+ setClosedById(id: string): Promise<GuildTicket>;
1031
+ setStatus(status: "on" | "off"): Promise<GuildTicket>;
1032
+ addMessage(message: Optional<APIMessage>): Promise<GuildTicket>;
1033
+ _updateInternals(data: Optional<APIGuildTicket>): this;
1034
+ }
1035
+
1036
+ interface FetchOptions$3 {
1037
+ cache?: boolean;
1038
+ gameId?: string;
1039
+ }
1040
+ declare class MinesGameManager {
1041
+ cache: Collection<string, MinesGame>;
1042
+ readonly rest: REST;
1043
+ constructor(rest: REST);
1044
+ create(data: Optional<APIMinesGame>): Promise<MinesGame>;
1045
+ delete(gameId: string): Promise<unknown>;
1046
+ fetch(options?: FetchOptions$3): Promise<MinesGame | Collection<string, MinesGame>>;
1047
+ set(data: APIMinesGame | APIMinesGame[]): MinesGame | Collection<string, MinesGame>;
1048
+ }
1049
+
1050
+ declare class MinesGame {
1051
+ guild_id: string;
1052
+ _id: string;
1053
+ creatorId: string;
1054
+ maxMines: number;
1055
+ bombs: number;
1056
+ bombsPosition: number[];
1057
+ bet: number;
1058
+ multiplier: number;
1059
+ status: "created" | "won" | "lost" | "expired";
1060
+ createdAt: Date;
1061
+ updatedAt: Date;
1062
+ readonly rest: REST;
1063
+ readonly manager: MinesGameManager;
1064
+ constructor(data: APIMinesGame, manager: MinesGameManager);
1065
+ fetch(): Promise<this>;
1066
+ delete(): Promise<this>;
1067
+ update(data: Optional<APIMinesGame>): Promise<this>;
1068
+ _updateInternals(data: Optional<APIMinesGame>): this;
1069
+ }
1070
+
1071
+ declare class Guild {
1072
+ /** The data of this guild */
1073
+ data: APIGuild;
1074
+ /** The rest client */
1075
+ rest: REST;
1076
+ /** The guild's id */
1077
+ id: string;
1078
+ modes: GuildModes;
1079
+ /** Guild's client key */
1080
+ client_key: string;
1081
+ /** Guild Permissions */
1082
+ permissions: APIGuildPermissions;
1083
+ /** Guild Ticket */
1084
+ tickets: GuildTicketManager;
1085
+ /** Guild Ticket Configuration */
1086
+ tickets_configuration: GuildTicketConfiguration;
1087
+ /** Guild Daily Categories */
1088
+ daily_categories: DailyCategories[];
1089
+ /** Guild Scores */
1090
+ scores: GuildScores;
1091
+ /** Guild Status */
1092
+ status: GuildStatus;
1093
+ channels: APIGuildGroupedChannel[];
1094
+ roulette_settings: RouletteSettings;
1095
+ /** Guild Prefix */
1096
+ prefix: string;
1097
+ /** Guild Creation Date */
1098
+ createdAt: Date;
1099
+ /** Guild Updated Date */
1100
+ updatedAt: Date;
1101
+ /** Guild Matches */
1102
+ matches: GuildMatchManager;
1103
+ /** Guild Prices Used */
1104
+ prices: GuildPrices;
1105
+ permissionsManager: GuildPermissionManager;
1106
+ buffer: BufferManager;
1107
+ vipMembers: VipMemberManager;
1108
+ users: GuildUserManager;
1109
+ logEntries: LogManager;
1110
+ shop: APIGuildShop;
1111
+ betusers: GuildBetUserManager;
1112
+ bets: GuildBetManager;
1113
+ mediators: GuildMediatorManager;
1114
+ automatic_messages: APIAutomaticMessage[];
1115
+ automaticMessagesManager: AutomaticMessageManager;
1116
+ adverts: APIGuildAdvert[];
1117
+ codes: APICode[];
1118
+ coin_symbol: string;
1119
+ /**
1120
+ * The guild structure
1121
+ * @param data The guild's data
1122
+ * @param rest The rest client
1123
+ */
1124
+ constructor(data: APIGuild, rest: REST);
1125
+ getChannel(type: GuildChannelsType): Promise<APIGuildGroupedChannel>;
1126
+ getPermission(type: GuildPermissionsTypes): Promise<Permission>;
1127
+ createAdvert(data: Optional<APIGuildAdvert>): Promise<this>;
1128
+ removeAdvert(advertId: string): Promise<this>;
1129
+ createCode(data: Optional<APICode>): Promise<this>;
1130
+ removeCode(codeId: string): Promise<this>;
1131
+ addIdToChannel(type: GuildChannelsType, id: string | string[]): Promise<this>;
1132
+ setChannelIds(type: GuildChannelsType, ...ids: string[]): Promise<this>;
1133
+ removeIdInChannel(type: GuildChannelsType, id: string | string[]): Promise<this>;
1134
+ updateRouletteSettings(data: Optional<RouletteSettings> & {
1135
+ default?: boolean;
1136
+ }): Promise<Guild>;
1137
+ getActive(key: "matches" | "tickets" | "bets"): Collection<string, GuildTicket> | Collection<string, GuildMatch> | Collection<string, GuildBet>;
1138
+ addRoulettePrize(prize: Optional<RoulettePrize>): Promise<RoulettePrize>;
1139
+ removeRoulettePrize(id: string): Promise<Guild>;
1140
+ _start(): Promise<this>;
1141
+ _updateInternals(data: Optional<APIGuild>): this;
1142
+ fetch(): Promise<Guild>;
1143
+ update(data: Optional<APIGuild>): Promise<Guild>;
1144
+ setStatus(key: keyof GuildStatus, status: "on" | "off"): Promise<this>;
1145
+ togglePrice(price: number): Promise<this>;
1146
+ setPrefix(prefix: string): Promise<this>;
1147
+ toggleDailyCategory(category: keyof Omit<Daily, "date">): Promise<this>;
1148
+ setScores(name: AvailableScores, amount: number): Promise<this>;
1149
+ toggleMode(mode: "1v1" | "2v2" | "3v3" | "4v4" | "5v5" | "6v6"): Promise<this>;
1150
+ }
1151
+ type AvailableScores = "win" | "loss" | "mvp" | "creator" | "coin";
1152
+
1153
+ type FetchOptions$2 = {
1154
+ guildId?: string;
1155
+ cache?: boolean;
1156
+ };
1157
+ type ReturnFetchOptions$2<T extends FetchOptions$2> = T["cache"] extends true ? Collection<string, Guild> : T["guildId"] extends string ? Guild : Collection<string, Guild>;
1158
+ type DeleteOptions$1 = {
1159
+ guildId?: string;
1160
+ };
1161
+ declare class GuildManager {
1162
+ /** A cache of guilds */
1163
+ cache: Collection<string, Guild>;
1164
+ /** The rest client */
1165
+ rest: REST;
1166
+ /**
1167
+ * Manage guilds with the given client
1168
+ * @param guilds An array of guilds
1169
+ * @param rest The rest client
1170
+ */
1171
+ constructor(rest: REST);
1172
+ /**
1173
+ * Fetch a guild
1174
+ * @param id Id of the guild to fetch
1175
+ * @returns APIGuild
1176
+ */
1177
+ fetch<T extends FetchOptions$2>(options?: T): Promise<ReturnFetchOptions$2<T>>;
1178
+ delete(options: DeleteOptions$1): Promise<Collection<string, Guild> | boolean>;
1179
+ set(data: APIGuild | APIGuild[]): Guild | Collection<string, Guild>;
1180
+ }
1181
+
1182
+ interface ClientOptions {
1183
+ clientKey: string;
1184
+ guildId: string;
1185
+ authKey: string;
1186
+ }
1187
+ /**
1188
+ * The main class of this package
1189
+ */
1190
+ declare class REST extends EventEmitter {
1191
+ /**
1192
+ * The unique key for client
1193
+ */
1194
+ clientKey: string;
1195
+ authKey: string;
1196
+ guildId: string;
1197
+ /** The guild manager */
1198
+ guilds: GuildManager;
1199
+ minesGames: MinesGameManager;
1200
+ users: Collection<string, GuildUser>;
1201
+ betusers: Collection<string, GuildBetUser>;
1202
+ matches: Collection<string, GuildMatch>;
1203
+ bets: Collection<string, GuildBet>;
1204
+ tickets: Collection<string, GuildTicket>;
1205
+ vipmembers: Collection<string, VipMember>;
1206
+ mediators: Collection<string, GuildMediator>;
1207
+ /**
1208
+ *
1209
+ * @param key The unique key for he client
1210
+ */
1211
+ constructor(options: ClientOptions);
1212
+ /** Initialize the caching sistem */
1213
+ init(): Promise<this>;
1214
+ formatUrl(url: string): string;
1215
+ /**
1216
+ * Request Data from a certain url
1217
+ * @param options
1218
+ * @returns
1219
+ */
1220
+ request<Expecting, Payload>(options: RequestOptions<Payload>): Promise<Expecting>;
1221
+ getStatus(): Promise<StatusResponse>;
1222
+ emit<K extends keyof RestEvents>(event: K, ...args: RestEvents[K]): boolean;
1223
+ on<K extends keyof RestEvents>(event: K, listener: (...args: RestEvents[K]) => void): this;
1224
+ once<K extends keyof RestEvents>(event: K, listener: (...args: RestEvents[K]) => void): this;
1225
+ }
1226
+
1227
+ declare class BaseManager<S> {
1228
+ /** This url of the manager */
1229
+ base_url: string;
1230
+ /** The rest client */
1231
+ rest: REST;
1232
+ /** The guild of the manager */
1233
+ guild: Guild;
1234
+ /** Cache */
1235
+ cache: Collection<string, S>;
1236
+ constructor(guild: Guild);
1237
+ }
1238
+
1239
+ declare class AutomaticMessage {
1240
+ _id: string;
1241
+ id: string;
1242
+ type: AutomaticMessagesTypes;
1243
+ admin_id: string;
1244
+ channel_ids: string[];
1245
+ content: string;
1246
+ embeds: any[];
1247
+ components: any[];
1248
+ attachments: any[];
1249
+ flags: number;
1250
+ interval_ms: number;
1251
+ createdAt: Date;
1252
+ updatedAt: Date;
1253
+ readonly guild: Guild;
1254
+ readonly manager: AutomaticMessageManager;
1255
+ readonly rest: REST;
1256
+ constructor(data: APIAutomaticMessage, manager: AutomaticMessageManager);
1257
+ fetch(): Promise<this>;
1258
+ addChannelId(...id: string[]): Promise<this>;
1259
+ removeChannelId(...id: string[]): Promise<this>;
1260
+ update(data: Optional<APIAutomaticMessage>): Promise<this>;
1261
+ delete(): Promise<Collection<string, APIAutomaticMessage>>;
1262
+ _updateInternals(data: Optional<APIAutomaticMessage>): this;
1263
+ toJSON(): APIAutomaticMessage;
1264
+ }
1265
+
1266
+ type FetchReturnTypes<S> = S extends string ? AutomaticMessage : Collection<string, AutomaticMessage>;
1267
+ declare class AutomaticMessageManager extends BaseManager<AutomaticMessage> {
1268
+ constructor(guild: Guild);
1269
+ fetch<T extends string>(messageId?: T): Promise<FetchReturnTypes<T>>;
1270
+ create(data: Optional<APIAutomaticMessage>): Promise<AutomaticMessage>;
1271
+ _add(data: APIAutomaticMessage | APIAutomaticMessage[]): Collection<string, AutomaticMessage>;
1272
+ set(data: APIAutomaticMessage | APIAutomaticMessage[]): Collection<string, APIAutomaticMessage>;
1273
+ delete(messageId?: string): Promise<APIGuild | Collection<string, APIAutomaticMessage>>;
1274
+ }
1275
+
1276
+ interface FetchOptions$1 {
1277
+ cache?: boolean;
1278
+ betId?: string;
1279
+ }
1280
+ type ReturnFetchOptions$1<T extends FetchOptions$1> = T["cache"] extends true ? Collection<string, GuildBet> : T["betId"] extends string ? GuildBet : Collection<string, GuildBet>;
1281
+ declare class GuildBetManager extends BaseManager<GuildBet> {
1282
+ constructor(guild: Guild);
1283
+ toString(): number;
1284
+ fetch<T extends FetchOptions$1>(options?: T): Promise<ReturnFetchOptions$1<T>>;
1285
+ create(data: Optional<APIGuildBet>): Promise<GuildBet>;
1286
+ delete(betId?: string): Promise<GuildBet>;
1287
+ set(data: Optional<APIGuildBet> | Optional<APIGuildBet>[] | GuildBet): GuildBet;
1288
+ }
1289
+
1290
+ type BufferMatch = Optional<APIGuildMatch & {
1291
+ id: string;
1292
+ }>;
1293
+ type BufferTicket = Optional<APIGuildTicket & {
1294
+ id: string;
1295
+ }>;
1296
+ declare class BufferManager {
1297
+ matches: Collection<string, BufferMatch | GuildMatch>;
1298
+ tickets: Collection<string, BufferTicket>;
1299
+ guild: Guild;
1300
+ constructor(guild: Guild);
1301
+ flush(key: "matches" | "tickets"): Promise<APIGuildMatch[] & APIGuildTicket[]>;
1302
+ createMatch(id: string, data: BufferMatch): void;
1303
+ createTicket(id: string, data: BufferTicket): void;
1304
+ }
1305
+
1306
+ declare class LogManager extends BaseManager<LogEntry> {
1307
+ constructor(guild: Guild);
1308
+ fetch(): Promise<Collection<string, LogEntry>>;
1309
+ create(data: Optional<APILogEntry>): Promise<LogEntry>;
1310
+ set(data: APILogEntry | APILogEntry[]): LogEntry | Collection<string, LogEntry>;
1311
+ }
1312
+
1313
+ type FetchOptions = {
1314
+ cache: boolean;
1315
+ matchId: string;
1316
+ };
1317
+ type ReturnFetchOptions<T extends FetchOptions> = T["cache"] extends true ? Collection<string, GuildMatch> : T["matchId"] extends string ? GuildMatch : Collection<string, GuildMatch>;
1318
+ declare class GuildMatchManager extends BaseManager<GuildMatch> {
1319
+ /**
1320
+ * Manage users with the given client
1321
+ * @param users An array of users
1322
+ * @param rest The rest client
1323
+ */
1324
+ constructor(guild: Guild);
1325
+ /**
1326
+ * Fetch a match
1327
+ * @param id Id of the match to fetch
1328
+ * @returns APIBetUser
1329
+ */
1330
+ fetch<T extends FetchOptions>(options?: T): Promise<ReturnFetchOptions<T>>;
1331
+ fetchAll(): Promise<Collection<string, GuildMatch>>;
1332
+ set(data: APIGuildMatch | APIGuildMatch[] | GuildMatch): GuildMatch | Collection<string, GuildMatch>;
1333
+ create(payload: Optional<APIGuildMatch>): Promise<GuildMatch>;
1334
+ delete(id?: string): Promise<GuildMatch | Collection<string, GuildMatch>>;
1335
+ }
1336
+
1337
+ type T<e> = e & {
1338
+ rest: REST;
1339
+ guild: Guild;
1340
+ messages: MessagesManager<e>;
1341
+ };
1342
+ declare class MessagesManager<Structure> {
1343
+ cache: Collection<string, APIMessage>;
1344
+ readonly base_url: string;
1345
+ readonly rest: REST;
1346
+ readonly guild: Guild;
1347
+ constructor(structure: T<Structure>, base_url: string);
1348
+ fetch(): Promise<APIMessage>;
1349
+ create(data: Optional<APIMessage> | Optional<APIMessage>[]): Promise<Collection<string, APIMessage>>;
1350
+ set(data: APIMessage | APIMessage[]): Collection<string, APIMessage>;
1351
+ }
1352
+
1353
+ declare class GuildPermissionManager extends BaseManager<APIGuildPermissions> {
1354
+ constructor(guild: Guild);
1355
+ addRole(type: GuildPermissionsTypes, ...ids: string[]): Promise<APIGuild>;
1356
+ removeRole(type: GuildPermissionsTypes, ...ids: string[]): Promise<APIGuild>;
1357
+ }
1358
+
1359
+ type FecthOptions = {
1360
+ ticketId?: string;
1361
+ cache?: boolean;
1362
+ };
1363
+ type DeleteOptions = {
1364
+ ticketId?: string;
1365
+ };
1366
+ declare class GuildTicketManager {
1367
+ cache: Collection<string, GuildTicket>;
1368
+ readonly guild: Guild;
1369
+ readonly rest: REST;
1370
+ constructor(guild: Guild);
1371
+ createTicketCategory(data: Optional<APITicketCategory>): Promise<APIGuild>;
1372
+ deleteTicketCategory(data: Optional<APITicketCategory>): Promise<APIGuild | Guild>;
1373
+ fetch(options?: FecthOptions): Promise<GuildTicket | Collection<string, GuildTicket>>;
1374
+ create(data: Optional<APIGuildTicket>): Promise<GuildTicket>;
1375
+ delete(options?: DeleteOptions): Promise<boolean>;
1376
+ set(data: APIGuildTicket | APIGuildTicket[]): GuildTicket | Collection<string, GuildTicket>;
1377
+ }
1378
+
1379
+ 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, AutomaticMessage as am, 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 };