carbon-proxy 0.14.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 (520) hide show
  1. package/README.md +237 -0
  2. package/dist/package.json +43 -0
  3. package/dist/src/abstracts/AnySelectMenu.d.ts +40 -0
  4. package/dist/src/abstracts/AnySelectMenu.d.ts.map +1 -0
  5. package/dist/src/abstracts/AnySelectMenu.js +41 -0
  6. package/dist/src/abstracts/AnySelectMenu.js.map +1 -0
  7. package/dist/src/abstracts/AnySelectMenuInteraction.d.ts +12 -0
  8. package/dist/src/abstracts/AnySelectMenuInteraction.d.ts.map +1 -0
  9. package/dist/src/abstracts/AnySelectMenuInteraction.js +19 -0
  10. package/dist/src/abstracts/AnySelectMenuInteraction.js.map +1 -0
  11. package/dist/src/abstracts/Base.d.ts +10 -0
  12. package/dist/src/abstracts/Base.d.ts.map +1 -0
  13. package/dist/src/abstracts/Base.js +11 -0
  14. package/dist/src/abstracts/Base.js.map +1 -0
  15. package/dist/src/abstracts/BaseChannel.d.ts +60 -0
  16. package/dist/src/abstracts/BaseChannel.d.ts.map +1 -0
  17. package/dist/src/abstracts/BaseChannel.js +90 -0
  18. package/dist/src/abstracts/BaseChannel.js.map +1 -0
  19. package/dist/src/abstracts/BaseCommand.d.ts +77 -0
  20. package/dist/src/abstracts/BaseCommand.d.ts.map +1 -0
  21. package/dist/src/abstracts/BaseCommand.js +127 -0
  22. package/dist/src/abstracts/BaseCommand.js.map +1 -0
  23. package/dist/src/abstracts/BaseComponent.d.ts +20 -0
  24. package/dist/src/abstracts/BaseComponent.d.ts.map +1 -0
  25. package/dist/src/abstracts/BaseComponent.js +10 -0
  26. package/dist/src/abstracts/BaseComponent.js.map +1 -0
  27. package/dist/src/abstracts/BaseComponentInteraction.d.ts +18 -0
  28. package/dist/src/abstracts/BaseComponentInteraction.d.ts.map +1 -0
  29. package/dist/src/abstracts/BaseComponentInteraction.js +41 -0
  30. package/dist/src/abstracts/BaseComponentInteraction.js.map +1 -0
  31. package/dist/src/abstracts/BaseGuildChannel.d.ts +61 -0
  32. package/dist/src/abstracts/BaseGuildChannel.d.ts.map +1 -0
  33. package/dist/src/abstracts/BaseGuildChannel.js +125 -0
  34. package/dist/src/abstracts/BaseGuildChannel.js.map +1 -0
  35. package/dist/src/abstracts/BaseGuildTextChannel.d.ts +53 -0
  36. package/dist/src/abstracts/BaseGuildTextChannel.d.ts.map +1 -0
  37. package/dist/src/abstracts/BaseGuildTextChannel.js +89 -0
  38. package/dist/src/abstracts/BaseGuildTextChannel.js.map +1 -0
  39. package/dist/src/abstracts/BaseInteraction.d.ts +166 -0
  40. package/dist/src/abstracts/BaseInteraction.d.ts.map +1 -0
  41. package/dist/src/abstracts/BaseInteraction.js +274 -0
  42. package/dist/src/abstracts/BaseInteraction.js.map +1 -0
  43. package/dist/src/abstracts/BaseListener.d.ts +13 -0
  44. package/dist/src/abstracts/BaseListener.d.ts.map +1 -0
  45. package/dist/src/abstracts/BaseListener.js +8 -0
  46. package/dist/src/abstracts/BaseListener.js.map +1 -0
  47. package/dist/src/abstracts/BaseMessageInteractiveComponent.d.ts +41 -0
  48. package/dist/src/abstracts/BaseMessageInteractiveComponent.d.ts.map +1 -0
  49. package/dist/src/abstracts/BaseMessageInteractiveComponent.js +35 -0
  50. package/dist/src/abstracts/BaseMessageInteractiveComponent.js.map +1 -0
  51. package/dist/src/abstracts/BaseModalComponent.d.ts +9 -0
  52. package/dist/src/abstracts/BaseModalComponent.d.ts.map +1 -0
  53. package/dist/src/abstracts/BaseModalComponent.js +5 -0
  54. package/dist/src/abstracts/BaseModalComponent.js.map +1 -0
  55. package/dist/src/abstracts/GuildThreadOnlyChannel.d.ts +58 -0
  56. package/dist/src/abstracts/GuildThreadOnlyChannel.d.ts.map +1 -0
  57. package/dist/src/abstracts/GuildThreadOnlyChannel.js +102 -0
  58. package/dist/src/abstracts/GuildThreadOnlyChannel.js.map +1 -0
  59. package/dist/src/abstracts/Plugin.d.ts +49 -0
  60. package/dist/src/abstracts/Plugin.d.ts.map +1 -0
  61. package/dist/src/abstracts/Plugin.js +6 -0
  62. package/dist/src/abstracts/Plugin.js.map +1 -0
  63. package/dist/src/adapters/bun/index.d.ts +13 -0
  64. package/dist/src/adapters/bun/index.d.ts.map +1 -0
  65. package/dist/src/adapters/bun/index.js +16 -0
  66. package/dist/src/adapters/bun/index.js.map +1 -0
  67. package/dist/src/adapters/fetch/index.d.ts +11 -0
  68. package/dist/src/adapters/fetch/index.d.ts.map +1 -0
  69. package/dist/src/adapters/fetch/index.js +50 -0
  70. package/dist/src/adapters/fetch/index.js.map +1 -0
  71. package/dist/src/adapters/node/index.d.ts +13 -0
  72. package/dist/src/adapters/node/index.d.ts.map +1 -0
  73. package/dist/src/adapters/node/index.js +17 -0
  74. package/dist/src/adapters/node/index.js.map +1 -0
  75. package/dist/src/classes/Client.d.ts +253 -0
  76. package/dist/src/classes/Client.d.ts.map +1 -0
  77. package/dist/src/classes/Client.js +419 -0
  78. package/dist/src/classes/Client.js.map +1 -0
  79. package/dist/src/classes/Command.d.ts +44 -0
  80. package/dist/src/classes/Command.d.ts.map +1 -0
  81. package/dist/src/classes/Command.js +53 -0
  82. package/dist/src/classes/Command.js.map +1 -0
  83. package/dist/src/classes/CommandWithSubcommandGroups.d.ts +22 -0
  84. package/dist/src/classes/CommandWithSubcommandGroups.d.ts.map +1 -0
  85. package/dist/src/classes/CommandWithSubcommandGroups.js +27 -0
  86. package/dist/src/classes/CommandWithSubcommandGroups.js.map +1 -0
  87. package/dist/src/classes/CommandWithSubcommands.d.ts +19 -0
  88. package/dist/src/classes/CommandWithSubcommands.d.ts.map +1 -0
  89. package/dist/src/classes/CommandWithSubcommands.js +19 -0
  90. package/dist/src/classes/CommandWithSubcommands.js.map +1 -0
  91. package/dist/src/classes/Embed.d.ts +61 -0
  92. package/dist/src/classes/Embed.d.ts.map +1 -0
  93. package/dist/src/classes/Embed.js +75 -0
  94. package/dist/src/classes/Embed.js.map +1 -0
  95. package/dist/src/classes/Listener.d.ts +392 -0
  96. package/dist/src/classes/Listener.d.ts.map +1 -0
  97. package/dist/src/classes/Listener.js +1034 -0
  98. package/dist/src/classes/Listener.js.map +1 -0
  99. package/dist/src/classes/Modal.d.ts +37 -0
  100. package/dist/src/classes/Modal.d.ts.map +1 -0
  101. package/dist/src/classes/Modal.js +28 -0
  102. package/dist/src/classes/Modal.js.map +1 -0
  103. package/dist/src/classes/RequestClient.d.ts +106 -0
  104. package/dist/src/classes/RequestClient.d.ts.map +1 -0
  105. package/dist/src/classes/RequestClient.js +451 -0
  106. package/dist/src/classes/RequestClient.js.map +1 -0
  107. package/dist/src/classes/components/Button.d.ts +52 -0
  108. package/dist/src/classes/components/Button.d.ts.map +1 -0
  109. package/dist/src/classes/components/Button.js +71 -0
  110. package/dist/src/classes/components/Button.js.map +1 -0
  111. package/dist/src/classes/components/ChannelSelectMenu.d.ts +17 -0
  112. package/dist/src/classes/components/ChannelSelectMenu.d.ts.map +1 -0
  113. package/dist/src/classes/components/ChannelSelectMenu.js +22 -0
  114. package/dist/src/classes/components/ChannelSelectMenu.js.map +1 -0
  115. package/dist/src/classes/components/Checkbox.d.ts +12 -0
  116. package/dist/src/classes/components/Checkbox.d.ts.map +1 -0
  117. package/dist/src/classes/components/Checkbox.js +20 -0
  118. package/dist/src/classes/components/Checkbox.js.map +1 -0
  119. package/dist/src/classes/components/CheckboxGroup.d.ts +24 -0
  120. package/dist/src/classes/components/CheckboxGroup.d.ts.map +1 -0
  121. package/dist/src/classes/components/CheckboxGroup.js +37 -0
  122. package/dist/src/classes/components/CheckboxGroup.js.map +1 -0
  123. package/dist/src/classes/components/Container.d.ts +28 -0
  124. package/dist/src/classes/components/Container.d.ts.map +1 -0
  125. package/dist/src/classes/components/Container.js +38 -0
  126. package/dist/src/classes/components/Container.js.map +1 -0
  127. package/dist/src/classes/components/File.d.ts +21 -0
  128. package/dist/src/classes/components/File.d.ts.map +1 -0
  129. package/dist/src/classes/components/File.js +36 -0
  130. package/dist/src/classes/components/File.js.map +1 -0
  131. package/dist/src/classes/components/FileUpload.d.ts +23 -0
  132. package/dist/src/classes/components/FileUpload.d.ts.map +1 -0
  133. package/dist/src/classes/components/FileUpload.js +36 -0
  134. package/dist/src/classes/components/FileUpload.js.map +1 -0
  135. package/dist/src/classes/components/Label.d.ts +31 -0
  136. package/dist/src/classes/components/Label.d.ts.map +1 -0
  137. package/dist/src/classes/components/Label.js +35 -0
  138. package/dist/src/classes/components/Label.js.map +1 -0
  139. package/dist/src/classes/components/MediaGallery.d.ts +22 -0
  140. package/dist/src/classes/components/MediaGallery.d.ts.map +1 -0
  141. package/dist/src/classes/components/MediaGallery.js +32 -0
  142. package/dist/src/classes/components/MediaGallery.js.map +1 -0
  143. package/dist/src/classes/components/MentionableSelectMenu.d.ts +15 -0
  144. package/dist/src/classes/components/MentionableSelectMenu.d.ts.map +1 -0
  145. package/dist/src/classes/components/MentionableSelectMenu.js +20 -0
  146. package/dist/src/classes/components/MentionableSelectMenu.js.map +1 -0
  147. package/dist/src/classes/components/RadioGroup.d.ts +24 -0
  148. package/dist/src/classes/components/RadioGroup.d.ts.map +1 -0
  149. package/dist/src/classes/components/RadioGroup.js +33 -0
  150. package/dist/src/classes/components/RadioGroup.js.map +1 -0
  151. package/dist/src/classes/components/RoleSelectMenu.d.ts +15 -0
  152. package/dist/src/classes/components/RoleSelectMenu.d.ts.map +1 -0
  153. package/dist/src/classes/components/RoleSelectMenu.js +20 -0
  154. package/dist/src/classes/components/RoleSelectMenu.js.map +1 -0
  155. package/dist/src/classes/components/Row.d.ts +28 -0
  156. package/dist/src/classes/components/Row.d.ts.map +1 -0
  157. package/dist/src/classes/components/Row.js +44 -0
  158. package/dist/src/classes/components/Row.js.map +1 -0
  159. package/dist/src/classes/components/Section.d.ts +23 -0
  160. package/dist/src/classes/components/Section.d.ts.map +1 -0
  161. package/dist/src/classes/components/Section.js +37 -0
  162. package/dist/src/classes/components/Section.js.map +1 -0
  163. package/dist/src/classes/components/Separator.d.ts +22 -0
  164. package/dist/src/classes/components/Separator.d.ts.map +1 -0
  165. package/dist/src/classes/components/Separator.js +33 -0
  166. package/dist/src/classes/components/Separator.js.map +1 -0
  167. package/dist/src/classes/components/StringSelectMenu.d.ts +15 -0
  168. package/dist/src/classes/components/StringSelectMenu.d.ts.map +1 -0
  169. package/dist/src/classes/components/StringSelectMenu.js +19 -0
  170. package/dist/src/classes/components/StringSelectMenu.js.map +1 -0
  171. package/dist/src/classes/components/TextDisplay.d.ts +10 -0
  172. package/dist/src/classes/components/TextDisplay.d.ts.map +1 -0
  173. package/dist/src/classes/components/TextDisplay.js +22 -0
  174. package/dist/src/classes/components/TextDisplay.js.map +1 -0
  175. package/dist/src/classes/components/TextInput.d.ts +53 -0
  176. package/dist/src/classes/components/TextInput.d.ts.map +1 -0
  177. package/dist/src/classes/components/TextInput.js +57 -0
  178. package/dist/src/classes/components/TextInput.js.map +1 -0
  179. package/dist/src/classes/components/Thumbnail.d.ts +14 -0
  180. package/dist/src/classes/components/Thumbnail.d.ts.map +1 -0
  181. package/dist/src/classes/components/Thumbnail.js +27 -0
  182. package/dist/src/classes/components/Thumbnail.js.map +1 -0
  183. package/dist/src/classes/components/UserSelectMenu.d.ts +15 -0
  184. package/dist/src/classes/components/UserSelectMenu.d.ts.map +1 -0
  185. package/dist/src/classes/components/UserSelectMenu.js +20 -0
  186. package/dist/src/classes/components/UserSelectMenu.js.map +1 -0
  187. package/dist/src/errors/BaseError.d.ts +3 -0
  188. package/dist/src/errors/BaseError.d.ts.map +1 -0
  189. package/dist/src/errors/BaseError.js +3 -0
  190. package/dist/src/errors/BaseError.js.map +1 -0
  191. package/dist/src/errors/DiscordError.d.ts +25 -0
  192. package/dist/src/errors/DiscordError.d.ts.map +1 -0
  193. package/dist/src/errors/DiscordError.js +31 -0
  194. package/dist/src/errors/DiscordError.js.map +1 -0
  195. package/dist/src/errors/RatelimitError.d.ts +15 -0
  196. package/dist/src/errors/RatelimitError.d.ts.map +1 -0
  197. package/dist/src/errors/RatelimitError.js +18 -0
  198. package/dist/src/errors/RatelimitError.js.map +1 -0
  199. package/dist/src/functions/channelFactory.d.ts +14 -0
  200. package/dist/src/functions/channelFactory.d.ts.map +1 -0
  201. package/dist/src/functions/channelFactory.js +39 -0
  202. package/dist/src/functions/channelFactory.js.map +1 -0
  203. package/dist/src/functions/enforceChoicesLimit.d.ts +3 -0
  204. package/dist/src/functions/enforceChoicesLimit.d.ts.map +1 -0
  205. package/dist/src/functions/enforceChoicesLimit.js +17 -0
  206. package/dist/src/functions/enforceChoicesLimit.js.map +1 -0
  207. package/dist/src/functions/errorsMapper.d.ts +14 -0
  208. package/dist/src/functions/errorsMapper.d.ts.map +1 -0
  209. package/dist/src/functions/errorsMapper.js +46 -0
  210. package/dist/src/functions/errorsMapper.js.map +1 -0
  211. package/dist/src/index.d.ts +93 -0
  212. package/dist/src/index.d.ts.map +1 -0
  213. package/dist/src/index.js +100 -0
  214. package/dist/src/index.js.map +1 -0
  215. package/dist/src/internals/AutocompleteInteraction.d.ts +43 -0
  216. package/dist/src/internals/AutocompleteInteraction.d.ts.map +1 -0
  217. package/dist/src/internals/AutocompleteInteraction.js +73 -0
  218. package/dist/src/internals/AutocompleteInteraction.js.map +1 -0
  219. package/dist/src/internals/ButtonInteraction.d.ts +8 -0
  220. package/dist/src/internals/ButtonInteraction.d.ts.map +1 -0
  221. package/dist/src/internals/ButtonInteraction.js +16 -0
  222. package/dist/src/internals/ButtonInteraction.js.map +1 -0
  223. package/dist/src/internals/ChannelSelectMenuInteraction.d.ts +8 -0
  224. package/dist/src/internals/ChannelSelectMenuInteraction.d.ts.map +1 -0
  225. package/dist/src/internals/ChannelSelectMenuInteraction.js +11 -0
  226. package/dist/src/internals/ChannelSelectMenuInteraction.js.map +1 -0
  227. package/dist/src/internals/CommandHandler.d.ts +13 -0
  228. package/dist/src/internals/CommandHandler.d.ts.map +1 -0
  229. package/dist/src/internals/CommandHandler.js +143 -0
  230. package/dist/src/internals/CommandHandler.js.map +1 -0
  231. package/dist/src/internals/CommandInteraction.d.ts +26 -0
  232. package/dist/src/internals/CommandInteraction.d.ts.map +1 -0
  233. package/dist/src/internals/CommandInteraction.js +60 -0
  234. package/dist/src/internals/CommandInteraction.js.map +1 -0
  235. package/dist/src/internals/ComponentHandler.d.ts +14 -0
  236. package/dist/src/internals/ComponentHandler.d.ts.map +1 -0
  237. package/dist/src/internals/ComponentHandler.js +183 -0
  238. package/dist/src/internals/ComponentHandler.js.map +1 -0
  239. package/dist/src/internals/EmojiHandler.d.ts +19 -0
  240. package/dist/src/internals/EmojiHandler.d.ts.map +1 -0
  241. package/dist/src/internals/EmojiHandler.js +34 -0
  242. package/dist/src/internals/EmojiHandler.js.map +1 -0
  243. package/dist/src/internals/EventHandler.d.ts +22 -0
  244. package/dist/src/internals/EventHandler.d.ts.map +1 -0
  245. package/dist/src/internals/EventHandler.js +23 -0
  246. package/dist/src/internals/EventHandler.js.map +1 -0
  247. package/dist/src/internals/EventQueue.d.ts +59 -0
  248. package/dist/src/internals/EventQueue.d.ts.map +1 -0
  249. package/dist/src/internals/EventQueue.js +131 -0
  250. package/dist/src/internals/EventQueue.js.map +1 -0
  251. package/dist/src/internals/FieldsHandler.d.ts +68 -0
  252. package/dist/src/internals/FieldsHandler.d.ts.map +1 -0
  253. package/dist/src/internals/FieldsHandler.js +146 -0
  254. package/dist/src/internals/FieldsHandler.js.map +1 -0
  255. package/dist/src/internals/MentionableSelectMenuInteraction.d.ts +9 -0
  256. package/dist/src/internals/MentionableSelectMenuInteraction.d.ts.map +1 -0
  257. package/dist/src/internals/MentionableSelectMenuInteraction.js +15 -0
  258. package/dist/src/internals/MentionableSelectMenuInteraction.js.map +1 -0
  259. package/dist/src/internals/ModalHandler.d.ts +17 -0
  260. package/dist/src/internals/ModalHandler.d.ts.map +1 -0
  261. package/dist/src/internals/ModalHandler.js +35 -0
  262. package/dist/src/internals/ModalHandler.js.map +1 -0
  263. package/dist/src/internals/ModalInteraction.d.ts +21 -0
  264. package/dist/src/internals/ModalInteraction.d.ts.map +1 -0
  265. package/dist/src/internals/ModalInteraction.js +41 -0
  266. package/dist/src/internals/ModalInteraction.js.map +1 -0
  267. package/dist/src/internals/OptionsHandler.d.ts +108 -0
  268. package/dist/src/internals/OptionsHandler.d.ts.map +1 -0
  269. package/dist/src/internals/OptionsHandler.js +237 -0
  270. package/dist/src/internals/OptionsHandler.js.map +1 -0
  271. package/dist/src/internals/RoleSelectMenuInteraction.d.ts +9 -0
  272. package/dist/src/internals/RoleSelectMenuInteraction.d.ts.map +1 -0
  273. package/dist/src/internals/RoleSelectMenuInteraction.js +14 -0
  274. package/dist/src/internals/RoleSelectMenuInteraction.js.map +1 -0
  275. package/dist/src/internals/StringSelectMenuInteraction.d.ts +9 -0
  276. package/dist/src/internals/StringSelectMenuInteraction.d.ts.map +1 -0
  277. package/dist/src/internals/StringSelectMenuInteraction.js +14 -0
  278. package/dist/src/internals/StringSelectMenuInteraction.js.map +1 -0
  279. package/dist/src/internals/TemporaryListenerManager.d.ts +20 -0
  280. package/dist/src/internals/TemporaryListenerManager.d.ts.map +1 -0
  281. package/dist/src/internals/TemporaryListenerManager.js +59 -0
  282. package/dist/src/internals/TemporaryListenerManager.js.map +1 -0
  283. package/dist/src/internals/UserSelectMenuInteraction.d.ts +9 -0
  284. package/dist/src/internals/UserSelectMenuInteraction.d.ts.map +1 -0
  285. package/dist/src/internals/UserSelectMenuInteraction.js +14 -0
  286. package/dist/src/internals/UserSelectMenuInteraction.js.map +1 -0
  287. package/dist/src/permissions.d.ts +56 -0
  288. package/dist/src/permissions.d.ts.map +1 -0
  289. package/dist/src/permissions.js +4 -0
  290. package/dist/src/permissions.js.map +1 -0
  291. package/dist/src/plugins/client-manager/ClientManager.d.ts +151 -0
  292. package/dist/src/plugins/client-manager/ClientManager.d.ts.map +1 -0
  293. package/dist/src/plugins/client-manager/ClientManager.js +253 -0
  294. package/dist/src/plugins/client-manager/ClientManager.js.map +1 -0
  295. package/dist/src/plugins/client-manager/index.d.ts +2 -0
  296. package/dist/src/plugins/client-manager/index.d.ts.map +1 -0
  297. package/dist/src/plugins/client-manager/index.js +2 -0
  298. package/dist/src/plugins/client-manager/index.js.map +1 -0
  299. package/dist/src/plugins/command-data/CommandDataPlugin.d.ts +16 -0
  300. package/dist/src/plugins/command-data/CommandDataPlugin.d.ts.map +1 -0
  301. package/dist/src/plugins/command-data/CommandDataPlugin.js +43 -0
  302. package/dist/src/plugins/command-data/CommandDataPlugin.js.map +1 -0
  303. package/dist/src/plugins/command-data/index.d.ts +2 -0
  304. package/dist/src/plugins/command-data/index.d.ts.map +1 -0
  305. package/dist/src/plugins/command-data/index.js +2 -0
  306. package/dist/src/plugins/command-data/index.js.map +1 -0
  307. package/dist/src/plugins/gateway/BabyCache.d.ts +16 -0
  308. package/dist/src/plugins/gateway/BabyCache.d.ts.map +1 -0
  309. package/dist/src/plugins/gateway/BabyCache.js +53 -0
  310. package/dist/src/plugins/gateway/BabyCache.js.map +1 -0
  311. package/dist/src/plugins/gateway/GatewayPlugin.d.ts +90 -0
  312. package/dist/src/plugins/gateway/GatewayPlugin.d.ts.map +1 -0
  313. package/dist/src/plugins/gateway/GatewayPlugin.js +516 -0
  314. package/dist/src/plugins/gateway/GatewayPlugin.js.map +1 -0
  315. package/dist/src/plugins/gateway/InteractionEventListener.d.ts +8 -0
  316. package/dist/src/plugins/gateway/InteractionEventListener.d.ts.map +1 -0
  317. package/dist/src/plugins/gateway/InteractionEventListener.js +9 -0
  318. package/dist/src/plugins/gateway/InteractionEventListener.js.map +1 -0
  319. package/dist/src/plugins/gateway/index.d.ts +7 -0
  320. package/dist/src/plugins/gateway/index.d.ts.map +1 -0
  321. package/dist/src/plugins/gateway/index.js +7 -0
  322. package/dist/src/plugins/gateway/index.js.map +1 -0
  323. package/dist/src/plugins/gateway/types.d.ts +130 -0
  324. package/dist/src/plugins/gateway/types.d.ts.map +1 -0
  325. package/dist/src/plugins/gateway/types.js +5 -0
  326. package/dist/src/plugins/gateway/types.js.map +1 -0
  327. package/dist/src/plugins/gateway/utils/heartbeat.d.ts +18 -0
  328. package/dist/src/plugins/gateway/utils/heartbeat.d.ts.map +1 -0
  329. package/dist/src/plugins/gateway/utils/heartbeat.js +33 -0
  330. package/dist/src/plugins/gateway/utils/heartbeat.js.map +1 -0
  331. package/dist/src/plugins/gateway/utils/monitor.d.ts +37 -0
  332. package/dist/src/plugins/gateway/utils/monitor.d.ts.map +1 -0
  333. package/dist/src/plugins/gateway/utils/monitor.js +88 -0
  334. package/dist/src/plugins/gateway/utils/monitor.js.map +1 -0
  335. package/dist/src/plugins/gateway/utils/payload.d.ts +24 -0
  336. package/dist/src/plugins/gateway/utils/payload.d.ts.map +1 -0
  337. package/dist/src/plugins/gateway/utils/payload.js +65 -0
  338. package/dist/src/plugins/gateway/utils/payload.js.map +1 -0
  339. package/dist/src/plugins/gateway/utils/rateLimit.d.ts +41 -0
  340. package/dist/src/plugins/gateway/utils/rateLimit.d.ts.map +1 -0
  341. package/dist/src/plugins/gateway/utils/rateLimit.js +61 -0
  342. package/dist/src/plugins/gateway/utils/rateLimit.js.map +1 -0
  343. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.d.ts +30 -0
  344. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.d.ts.map +1 -0
  345. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.js +80 -0
  346. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.js.map +1 -0
  347. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.d.ts +9 -0
  348. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.d.ts.map +1 -0
  349. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.js +7 -0
  350. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.js.map +1 -0
  351. package/dist/src/plugins/gateway-forwarder/index.d.ts +4 -0
  352. package/dist/src/plugins/gateway-forwarder/index.d.ts.map +1 -0
  353. package/dist/src/plugins/gateway-forwarder/index.js +4 -0
  354. package/dist/src/plugins/gateway-forwarder/index.js.map +1 -0
  355. package/dist/src/plugins/linked-roles/LinkedRoles.d.ts +70 -0
  356. package/dist/src/plugins/linked-roles/LinkedRoles.d.ts.map +1 -0
  357. package/dist/src/plugins/linked-roles/LinkedRoles.js +211 -0
  358. package/dist/src/plugins/linked-roles/LinkedRoles.js.map +1 -0
  359. package/dist/src/plugins/linked-roles/index.d.ts +3 -0
  360. package/dist/src/plugins/linked-roles/index.d.ts.map +1 -0
  361. package/dist/src/plugins/linked-roles/index.js +3 -0
  362. package/dist/src/plugins/linked-roles/index.js.map +1 -0
  363. package/dist/src/plugins/linked-roles/types.d.ts +94 -0
  364. package/dist/src/plugins/linked-roles/types.d.ts.map +1 -0
  365. package/dist/src/plugins/linked-roles/types.js +39 -0
  366. package/dist/src/plugins/linked-roles/types.js.map +1 -0
  367. package/dist/src/plugins/paginator/GoToPageModal.d.ts +18 -0
  368. package/dist/src/plugins/paginator/GoToPageModal.d.ts.map +1 -0
  369. package/dist/src/plugins/paginator/GoToPageModal.js +56 -0
  370. package/dist/src/plugins/paginator/GoToPageModal.js.map +1 -0
  371. package/dist/src/plugins/paginator/Paginator.d.ts +53 -0
  372. package/dist/src/plugins/paginator/Paginator.d.ts.map +1 -0
  373. package/dist/src/plugins/paginator/Paginator.js +183 -0
  374. package/dist/src/plugins/paginator/Paginator.js.map +1 -0
  375. package/dist/src/plugins/paginator/index.d.ts +11 -0
  376. package/dist/src/plugins/paginator/index.d.ts.map +1 -0
  377. package/dist/src/plugins/paginator/index.js +11 -0
  378. package/dist/src/plugins/paginator/index.js.map +1 -0
  379. package/dist/src/plugins/sharding/ShardingPlugin.d.ts +44 -0
  380. package/dist/src/plugins/sharding/ShardingPlugin.d.ts.map +1 -0
  381. package/dist/src/plugins/sharding/ShardingPlugin.js +119 -0
  382. package/dist/src/plugins/sharding/ShardingPlugin.js.map +1 -0
  383. package/dist/src/plugins/sharding/index.d.ts +3 -0
  384. package/dist/src/plugins/sharding/index.d.ts.map +1 -0
  385. package/dist/src/plugins/sharding/index.js +3 -0
  386. package/dist/src/plugins/sharding/index.js.map +1 -0
  387. package/dist/src/plugins/voice/GuildDeleteListener.d.ts +7 -0
  388. package/dist/src/plugins/voice/GuildDeleteListener.d.ts.map +1 -0
  389. package/dist/src/plugins/voice/GuildDeleteListener.js +11 -0
  390. package/dist/src/plugins/voice/GuildDeleteListener.js.map +1 -0
  391. package/dist/src/plugins/voice/VoicePlugin.d.ts +15 -0
  392. package/dist/src/plugins/voice/VoicePlugin.d.ts.map +1 -0
  393. package/dist/src/plugins/voice/VoicePlugin.js +58 -0
  394. package/dist/src/plugins/voice/VoicePlugin.js.map +1 -0
  395. package/dist/src/plugins/voice/VoiceServerUpdateListener.d.ts +10 -0
  396. package/dist/src/plugins/voice/VoiceServerUpdateListener.d.ts.map +1 -0
  397. package/dist/src/plugins/voice/VoiceServerUpdateListener.js +16 -0
  398. package/dist/src/plugins/voice/VoiceServerUpdateListener.js.map +1 -0
  399. package/dist/src/plugins/voice/VoiceStateUpdateListener.d.ts +10 -0
  400. package/dist/src/plugins/voice/VoiceStateUpdateListener.d.ts.map +1 -0
  401. package/dist/src/plugins/voice/VoiceStateUpdateListener.js +21 -0
  402. package/dist/src/plugins/voice/VoiceStateUpdateListener.js.map +1 -0
  403. package/dist/src/plugins/voice/index.d.ts +2 -0
  404. package/dist/src/plugins/voice/index.d.ts.map +1 -0
  405. package/dist/src/plugins/voice/index.js +2 -0
  406. package/dist/src/plugins/voice/index.js.map +1 -0
  407. package/dist/src/structures/DmChannel.d.ts +22 -0
  408. package/dist/src/structures/DmChannel.d.ts.map +1 -0
  409. package/dist/src/structures/DmChannel.js +33 -0
  410. package/dist/src/structures/DmChannel.js.map +1 -0
  411. package/dist/src/structures/Emoji.d.ts +75 -0
  412. package/dist/src/structures/Emoji.d.ts.map +1 -0
  413. package/dist/src/structures/Emoji.js +156 -0
  414. package/dist/src/structures/Emoji.js.map +1 -0
  415. package/dist/src/structures/GroupDmChannel.d.ts +75 -0
  416. package/dist/src/structures/GroupDmChannel.d.ts.map +1 -0
  417. package/dist/src/structures/GroupDmChannel.js +131 -0
  418. package/dist/src/structures/GroupDmChannel.js.map +1 -0
  419. package/dist/src/structures/Guild.d.ts +338 -0
  420. package/dist/src/structures/Guild.d.ts.map +1 -0
  421. package/dist/src/structures/Guild.js +715 -0
  422. package/dist/src/structures/Guild.js.map +1 -0
  423. package/dist/src/structures/GuildAnnouncementChannel.d.ts +21 -0
  424. package/dist/src/structures/GuildAnnouncementChannel.d.ts.map +1 -0
  425. package/dist/src/structures/GuildAnnouncementChannel.js +35 -0
  426. package/dist/src/structures/GuildAnnouncementChannel.js.map +1 -0
  427. package/dist/src/structures/GuildCategoryChannel.d.ts +23 -0
  428. package/dist/src/structures/GuildCategoryChannel.d.ts.map +1 -0
  429. package/dist/src/structures/GuildCategoryChannel.js +34 -0
  430. package/dist/src/structures/GuildCategoryChannel.js.map +1 -0
  431. package/dist/src/structures/GuildForumChannel.d.ts +14 -0
  432. package/dist/src/structures/GuildForumChannel.d.ts.map +1 -0
  433. package/dist/src/structures/GuildForumChannel.js +15 -0
  434. package/dist/src/structures/GuildForumChannel.js.map +1 -0
  435. package/dist/src/structures/GuildMediaChannel.d.ts +9 -0
  436. package/dist/src/structures/GuildMediaChannel.d.ts.map +1 -0
  437. package/dist/src/structures/GuildMediaChannel.js +7 -0
  438. package/dist/src/structures/GuildMediaChannel.js.map +1 -0
  439. package/dist/src/structures/GuildMember.d.ts +145 -0
  440. package/dist/src/structures/GuildMember.d.ts.map +1 -0
  441. package/dist/src/structures/GuildMember.js +320 -0
  442. package/dist/src/structures/GuildMember.js.map +1 -0
  443. package/dist/src/structures/GuildScheduledEvent.d.ts +121 -0
  444. package/dist/src/structures/GuildScheduledEvent.d.ts.map +1 -0
  445. package/dist/src/structures/GuildScheduledEvent.js +228 -0
  446. package/dist/src/structures/GuildScheduledEvent.js.map +1 -0
  447. package/dist/src/structures/GuildStageOrVoiceChannel.d.ts +40 -0
  448. package/dist/src/structures/GuildStageOrVoiceChannel.d.ts.map +1 -0
  449. package/dist/src/structures/GuildStageOrVoiceChannel.js +63 -0
  450. package/dist/src/structures/GuildStageOrVoiceChannel.js.map +1 -0
  451. package/dist/src/structures/GuildTextChannel.d.ts +24 -0
  452. package/dist/src/structures/GuildTextChannel.d.ts.map +1 -0
  453. package/dist/src/structures/GuildTextChannel.js +41 -0
  454. package/dist/src/structures/GuildTextChannel.js.map +1 -0
  455. package/dist/src/structures/GuildThreadChannel.d.ts +90 -0
  456. package/dist/src/structures/GuildThreadChannel.d.ts.map +1 -0
  457. package/dist/src/structures/GuildThreadChannel.js +165 -0
  458. package/dist/src/structures/GuildThreadChannel.js.map +1 -0
  459. package/dist/src/structures/Message.d.ts +174 -0
  460. package/dist/src/structures/Message.d.ts.map +1 -0
  461. package/dist/src/structures/Message.js +417 -0
  462. package/dist/src/structures/Message.js.map +1 -0
  463. package/dist/src/structures/Poll.d.ts +29 -0
  464. package/dist/src/structures/Poll.d.ts.map +1 -0
  465. package/dist/src/structures/Poll.js +51 -0
  466. package/dist/src/structures/Poll.js.map +1 -0
  467. package/dist/src/structures/Role.d.ts +151 -0
  468. package/dist/src/structures/Role.d.ts.map +1 -0
  469. package/dist/src/structures/Role.js +291 -0
  470. package/dist/src/structures/Role.js.map +1 -0
  471. package/dist/src/structures/ThreadMember.d.ts +40 -0
  472. package/dist/src/structures/ThreadMember.d.ts.map +1 -0
  473. package/dist/src/structures/ThreadMember.js +79 -0
  474. package/dist/src/structures/ThreadMember.js.map +1 -0
  475. package/dist/src/structures/User.d.ts +104 -0
  476. package/dist/src/structures/User.d.ts.map +1 -0
  477. package/dist/src/structures/User.js +199 -0
  478. package/dist/src/structures/User.js.map +1 -0
  479. package/dist/src/structures/Webhook.d.ts +160 -0
  480. package/dist/src/structures/Webhook.d.ts.map +1 -0
  481. package/dist/src/structures/Webhook.js +287 -0
  482. package/dist/src/structures/Webhook.js.map +1 -0
  483. package/dist/src/types/index.d.ts +199 -0
  484. package/dist/src/types/index.d.ts.map +1 -0
  485. package/dist/src/types/index.js +2 -0
  486. package/dist/src/types/index.js.map +1 -0
  487. package/dist/src/types/listeners.d.ts +579 -0
  488. package/dist/src/types/listeners.d.ts.map +1 -0
  489. package/dist/src/types/listeners.js +14 -0
  490. package/dist/src/types/listeners.js.map +1 -0
  491. package/dist/src/utils/LRUCache.d.ts +46 -0
  492. package/dist/src/utils/LRUCache.d.ts.map +1 -0
  493. package/dist/src/utils/LRUCache.js +78 -0
  494. package/dist/src/utils/LRUCache.js.map +1 -0
  495. package/dist/src/utils/cdn.d.ts +31 -0
  496. package/dist/src/utils/cdn.d.ts.map +1 -0
  497. package/dist/src/utils/cdn.js +18 -0
  498. package/dist/src/utils/cdn.js.map +1 -0
  499. package/dist/src/utils/customIdParser.d.ts +3 -0
  500. package/dist/src/utils/customIdParser.d.ts.map +1 -0
  501. package/dist/src/utils/customIdParser.js +38 -0
  502. package/dist/src/utils/customIdParser.js.map +1 -0
  503. package/dist/src/utils/index.d.ts +6 -0
  504. package/dist/src/utils/index.d.ts.map +1 -0
  505. package/dist/src/utils/index.js +6 -0
  506. package/dist/src/utils/index.js.map +1 -0
  507. package/dist/src/utils/payload.d.ts +4 -0
  508. package/dist/src/utils/payload.d.ts.map +1 -0
  509. package/dist/src/utils/payload.js +61 -0
  510. package/dist/src/utils/payload.js.map +1 -0
  511. package/dist/src/utils/proxy.d.ts +27 -0
  512. package/dist/src/utils/proxy.d.ts.map +1 -0
  513. package/dist/src/utils/proxy.js +135 -0
  514. package/dist/src/utils/proxy.js.map +1 -0
  515. package/dist/src/utils/verification.d.ts +4 -0
  516. package/dist/src/utils/verification.d.ts.map +1 -0
  517. package/dist/src/utils/verification.js +52 -0
  518. package/dist/src/utils/verification.js.map +1 -0
  519. package/dist/tsconfig.tsbuildinfo +1 -0
  520. package/package.json +43 -0
@@ -0,0 +1,291 @@
1
+ import { Routes } from "discord-api-types/v10";
2
+ import { Base } from "../abstracts/Base.js";
3
+ import { buildCDNUrl } from "../utils/index.js";
4
+ import { Guild } from "./Guild.js";
5
+ export class Role extends Base {
6
+ constructor(client, rawDataOrId, guildId) {
7
+ super(client);
8
+ this._guildId = guildId;
9
+ if (typeof rawDataOrId === "string") {
10
+ this.id = rawDataOrId;
11
+ }
12
+ else {
13
+ this._rawData = rawDataOrId;
14
+ this.id = rawDataOrId.id;
15
+ this.setData(rawDataOrId);
16
+ }
17
+ }
18
+ _rawData = null;
19
+ _guildId;
20
+ setData(data) {
21
+ if (!data)
22
+ throw new Error("Cannot set data without having data... smh");
23
+ this._rawData = data;
24
+ }
25
+ setField(key, value) {
26
+ if (!this._rawData)
27
+ throw new Error("Cannot set field without having data... smh");
28
+ Reflect.set(this._rawData, key, value);
29
+ }
30
+ /**
31
+ * The raw Discord API data for this role
32
+ */
33
+ get rawData() {
34
+ if (!this._rawData)
35
+ throw new Error("Cannot access rawData on partial Role. Use fetch() to populate data.");
36
+ return this._rawData;
37
+ }
38
+ /**
39
+ * The ID of the role.
40
+ */
41
+ id;
42
+ /**
43
+ * The ID of the guild this role belongs to
44
+ */
45
+ get guildId() {
46
+ if (!this._guildId)
47
+ throw new Error("Guild ID is not available for this role. Use guild.fetchRole() to get a role with guild context.");
48
+ return this._guildId;
49
+ }
50
+ /**
51
+ * Whether the role is a partial role (meaning it does not have all the data).
52
+ * If this is true, you should use {@link Role.fetch} to get the full data of the role.
53
+ */
54
+ get partial() {
55
+ return (this._rawData === null);
56
+ }
57
+ /**
58
+ * The name of the role.
59
+ */
60
+ get name() {
61
+ if (!this._rawData)
62
+ return undefined;
63
+ return this._rawData.name;
64
+ }
65
+ /**
66
+ * The color of the role.
67
+ */
68
+ get color() {
69
+ if (!this._rawData)
70
+ return undefined;
71
+ return this._rawData.color;
72
+ }
73
+ /**
74
+ * The icon hash of the role.
75
+ * You can use {@link Role.iconUrl} to get the URL of the icon.
76
+ */
77
+ get icon() {
78
+ if (!this._rawData)
79
+ return undefined;
80
+ return this._rawData.icon ?? null;
81
+ }
82
+ /**
83
+ * Get the URL of the role's icon with default settings (png format)
84
+ */
85
+ get iconUrl() {
86
+ if (!this._rawData)
87
+ return undefined;
88
+ return buildCDNUrl(`https://cdn.discordapp.com/role-icons/${this.id}`, this.icon);
89
+ }
90
+ /**
91
+ * Get the URL of the role's icon with custom format and size options
92
+ * @param options Optional format and size parameters
93
+ * @returns The icon URL or null if no icon is set
94
+ */
95
+ getIconUrl(options) {
96
+ if (!this._rawData)
97
+ return undefined;
98
+ return buildCDNUrl(`https://cdn.discordapp.com/role-icons/${this.id}`, this.icon, options);
99
+ }
100
+ /**
101
+ * If this role is mentionable.
102
+ */
103
+ get mentionable() {
104
+ if (!this._rawData)
105
+ return undefined;
106
+ return this._rawData.mentionable;
107
+ }
108
+ /**
109
+ * If this role is hoisted.
110
+ */
111
+ get hoisted() {
112
+ if (!this._rawData)
113
+ return undefined;
114
+ return this._rawData.hoist;
115
+ }
116
+ /**
117
+ * The position of the role.
118
+ */
119
+ get position() {
120
+ if (!this._rawData)
121
+ return undefined;
122
+ return this._rawData.position;
123
+ }
124
+ /**
125
+ * The permissions of the role.
126
+ */
127
+ get permissions() {
128
+ if (!this._rawData)
129
+ return undefined;
130
+ return BigInt(this._rawData.permissions);
131
+ }
132
+ /**
133
+ * If this role is managed by an integration.
134
+ */
135
+ get managed() {
136
+ if (!this._rawData)
137
+ return undefined;
138
+ return this._rawData.managed;
139
+ }
140
+ /**
141
+ * The unicode emoji for the role.
142
+ */
143
+ get unicodeEmoji() {
144
+ if (!this._rawData)
145
+ return undefined;
146
+ return this._rawData.unicode_emoji ?? null;
147
+ }
148
+ /**
149
+ * The flags of this role.
150
+ * @see https://discord.com/developers/docs/topics/permissions#role-object-role-flags
151
+ */
152
+ get flags() {
153
+ if (!this._rawData)
154
+ return undefined;
155
+ return this._rawData.flags;
156
+ }
157
+ /**
158
+ * The tags of this role.
159
+ * @see https://discord.com/developers/docs/topics/permissions#role-object-role-tags-structure
160
+ */
161
+ get tags() {
162
+ if (!this._rawData)
163
+ return undefined;
164
+ return this._rawData.tags;
165
+ }
166
+ /**
167
+ * Returns the Discord mention format for this role
168
+ * @returns The mention string in the format <@&roleId>
169
+ */
170
+ toString() {
171
+ return `<@&${this.id}>`;
172
+ }
173
+ /**
174
+ * Fetch updated data for this role.
175
+ * If the role is partial, this will fetch all the data for the role and populate the fields.
176
+ * If the role is not partial, all fields will be updated with new values from Discord.
177
+ * @returns A Promise that resolves to a non-partial Role
178
+ */
179
+ async fetch() {
180
+ const newData = (await this.client.rest.get(Routes.guildRole(this.guildId, this.id)));
181
+ if (!newData)
182
+ throw new Error(`Role ${this.id} not found`);
183
+ this.setData(newData);
184
+ return this;
185
+ }
186
+ /**
187
+ * Set the name of the role
188
+ * @param name The new name for the role
189
+ * @param reason The reason for changing the name (will be shown in audit log)
190
+ */
191
+ async setName(name, reason) {
192
+ await this.client.rest.patch(Routes.guildRole(this.guildId, this.id), {
193
+ body: { name },
194
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
195
+ });
196
+ this.setField("name", name);
197
+ }
198
+ /**
199
+ * Set the color of the role
200
+ * @param color The new color for the role
201
+ * @param reason The reason for changing the color (will be shown in audit log)
202
+ */
203
+ async setColor(color, reason) {
204
+ await this.client.rest.patch(Routes.guildRole(this.guildId, this.id), {
205
+ body: { color },
206
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
207
+ });
208
+ this.setField("color", color);
209
+ }
210
+ /**
211
+ * Set the icon of the role
212
+ * @param icon The unicode emoji or icon URL to set
213
+ * @param reason The reason for changing the icon (will be shown in audit log)
214
+ */
215
+ async setIcon(icon, reason) {
216
+ await this.client.rest.patch(Routes.guildRole(this.guildId, this.id), {
217
+ body: { icon },
218
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
219
+ });
220
+ this.setField("icon", icon);
221
+ }
222
+ /**
223
+ * Set the mentionable status of the role
224
+ * @param mentionable Whether the role should be mentionable
225
+ * @param reason The reason for changing the mentionable status (will be shown in audit log)
226
+ */
227
+ async setMentionable(mentionable, reason) {
228
+ await this.client.rest.patch(Routes.guildRole(this.guildId, this.id), {
229
+ body: { mentionable },
230
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
231
+ });
232
+ this.setField("mentionable", mentionable);
233
+ }
234
+ /**
235
+ * Set the hoisted status of the role
236
+ * @param hoisted Whether the role should be hoisted
237
+ * @param reason The reason for changing the hoisted status (will be shown in audit log)
238
+ */
239
+ async setHoisted(hoisted, reason) {
240
+ await this.client.rest.patch(Routes.guildRole(this.guildId, this.id), {
241
+ body: { hoist: hoisted },
242
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
243
+ });
244
+ this.setField("hoist", hoisted);
245
+ }
246
+ /**
247
+ * Set the position of the role
248
+ * @param position The new position for the role
249
+ * @param reason The reason for changing the position (will be shown in audit log)
250
+ */
251
+ async setPosition(position, reason) {
252
+ await this.client.rest.patch(Routes.guildRole(this.guildId, this.id), {
253
+ body: { position },
254
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
255
+ });
256
+ this.setField("position", position);
257
+ }
258
+ /**
259
+ * Set the permissions of the role
260
+ * @param permissions The permissions to set
261
+ * @param reason The reason for changing the permissions (will be shown in audit log)
262
+ */
263
+ async setPermissions(permissions, reason) {
264
+ const permValue = permissions.reduce((acc, perm) => acc | perm, BigInt(0));
265
+ await this.client.rest.patch(Routes.guildRole(this.guildId, this.id), {
266
+ body: { permissions: permValue.toString() },
267
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
268
+ });
269
+ this.setField("permissions", permValue.toString());
270
+ }
271
+ /**
272
+ * Delete the role
273
+ * @param reason The reason for deleting the role (will be shown in audit log)
274
+ */
275
+ async delete(reason) {
276
+ await this.client.rest.delete(Routes.guildRole(this.guildId, this.id), {
277
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
278
+ });
279
+ }
280
+ /**
281
+ * Get the member count for this role
282
+ * @returns A Promise that resolves to the number of members with this role
283
+ */
284
+ async fetchMemberCount() {
285
+ const guild = new Guild(this.client, this.guildId);
286
+ const roleMemberCounts = await guild.fetchRoleMemberCounts();
287
+ const roleCount = roleMemberCounts.find((r) => r.id === this.id);
288
+ return roleCount?.count ?? 0;
289
+ }
290
+ }
291
+ //# sourceMappingURL=Role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Role.js","sourceRoot":"","sources":["../../../src/structures/Role.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { APIThreadMember, ThreadMemberFlags } from "discord-api-types/v10";
2
+ import { Base } from "../abstracts/Base.js";
3
+ import type { Client } from "../classes/Client.js";
4
+ import { GuildMember } from "./GuildMember.js";
5
+ import { User } from "./User.js";
6
+ export declare class ThreadMember extends Base {
7
+ constructor(client: Client, rawData: APIThreadMember, guildId?: string);
8
+ protected _rawData: APIThreadMember | null;
9
+ private setData;
10
+ /**
11
+ * The raw Discord API data for this thread member
12
+ */
13
+ get rawData(): Readonly<APIThreadMember>;
14
+ /**
15
+ * The ID of the guild. This is not present in the API response, so it must be provided.
16
+ */
17
+ guildId: string | undefined;
18
+ /**
19
+ * The ID of the thread
20
+ */
21
+ get id(): string | undefined;
22
+ /**
23
+ * The ID of the user
24
+ */
25
+ get userId(): string | undefined;
26
+ get user(): User<true> | undefined;
27
+ /**
28
+ * The timestamp of when the user last joined the thread
29
+ */
30
+ get joinTimestamp(): string;
31
+ /**
32
+ * Any user-thread settings, currently only used for notifications
33
+ */
34
+ get flags(): ThreadMemberFlags;
35
+ /**
36
+ * The member object of the user
37
+ */
38
+ member(guildId?: string): GuildMember<false, true> | undefined;
39
+ }
40
+ //# sourceMappingURL=ThreadMember.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThreadMember.d.ts","sourceRoot":"","sources":["../../../src/structures/ThreadMember.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,qBAAa,YAAa,SAAQ,IAAI;gBACzB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,MAAM;IAOtE,SAAS,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAO;IACjD,OAAO,CAAC,OAAO;IAKf;;OAEG;IACH,IAAI,OAAO,IAAI,QAAQ,CAAC,eAAe,CAAC,CAMvC;IAED;;OAEG;IACI,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAElC;;OAEG;IACH,IAAI,EAAE,IAAI,MAAM,GAAG,SAAS,CAG3B;IACD;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAG/B;IACD,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,CAGjC;IACD;;OAEG;IACH,IAAI,aAAa,IAAI,MAAM,CAG1B;IACD;;OAEG;IACH,IAAI,KAAK,IAAI,iBAAiB,CAG7B;IACD;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,SAAS;CAW9D"}
@@ -0,0 +1,79 @@
1
+ import { Base } from "../abstracts/Base.js";
2
+ import { Guild } from "./Guild.js";
3
+ import { GuildMember } from "./GuildMember.js";
4
+ import { User } from "./User.js";
5
+ export class ThreadMember extends Base {
6
+ constructor(client, rawData, guildId) {
7
+ super(client);
8
+ this._rawData = rawData;
9
+ this.setData(rawData);
10
+ this.guildId = guildId;
11
+ }
12
+ _rawData = null;
13
+ setData(data) {
14
+ if (!data)
15
+ throw new Error("Cannot set data without having data... smh");
16
+ this._rawData = data;
17
+ }
18
+ /**
19
+ * The raw Discord API data for this thread member
20
+ */
21
+ get rawData() {
22
+ if (!this._rawData)
23
+ throw new Error("Cannot access rawData on partial ThreadMember. Use fetch() to populate data.");
24
+ return this._rawData;
25
+ }
26
+ /**
27
+ * The ID of the guild. This is not present in the API response, so it must be provided.
28
+ */
29
+ guildId;
30
+ /**
31
+ * The ID of the thread
32
+ */
33
+ get id() {
34
+ if (!this._rawData)
35
+ return undefined;
36
+ return this._rawData.id;
37
+ }
38
+ /**
39
+ * The ID of the user
40
+ */
41
+ get userId() {
42
+ if (!this._rawData)
43
+ return undefined;
44
+ return this._rawData.user_id;
45
+ }
46
+ get user() {
47
+ if (!this.userId)
48
+ return undefined;
49
+ return new User(this.client, this.userId);
50
+ }
51
+ /**
52
+ * The timestamp of when the user last joined the thread
53
+ */
54
+ get joinTimestamp() {
55
+ if (!this._rawData)
56
+ return undefined;
57
+ return this._rawData.join_timestamp;
58
+ }
59
+ /**
60
+ * Any user-thread settings, currently only used for notifications
61
+ */
62
+ get flags() {
63
+ if (!this._rawData)
64
+ return undefined;
65
+ return this._rawData.flags;
66
+ }
67
+ /**
68
+ * The member object of the user
69
+ */
70
+ member(guildId) {
71
+ if (!this._rawData?.member || !this.user)
72
+ return undefined;
73
+ guildId = guildId ?? this.guildId;
74
+ if (!guildId)
75
+ throw new Error("Cannot create GuildMember without a guild ID");
76
+ return new GuildMember(this.client, this._rawData.member, new Guild(this.client, guildId));
77
+ }
78
+ }
79
+ //# sourceMappingURL=ThreadMember.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThreadMember.js","sourceRoot":"","sources":["../../../src/structures/ThreadMember.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,OAAO,YAAa,SAAQ,IAAI;IACrC,YAAY,MAAc,EAAE,OAAwB,EAAE,OAAgB;QACrE,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;QACvB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACvB,CAAC;IAES,QAAQ,GAA2B,IAAI,CAAA;IACzC,OAAO,CAAC,IAA0B;QACzC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QACxE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACrB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACV,IAAI,CAAC,IAAI,CAAC,QAAQ;YACjB,MAAM,IAAI,KAAK,CACd,8EAA8E,CAC9E,CAAA;QACF,OAAO,IAAI,CAAC,QAAQ,CAAA;IACrB,CAAC;IAED;;OAEG;IACI,OAAO,CAAoB;IAElC;;OAEG;IACH,IAAI,EAAE;QACL,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAkB,CAAA;QAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;IACxB,CAAC;IACD;;OAEG;IACH,IAAI,MAAM;QACT,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAkB,CAAA;QAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAA;IAC7B,CAAC;IACD,IAAI,IAAI;QACP,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAA;QAClC,OAAO,IAAI,IAAI,CAAO,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAChD,CAAC;IACD;;OAEG;IACH,IAAI,aAAa;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAkB,CAAA;QAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAA;IACpC,CAAC;IACD;;OAEG;IACH,IAAI,KAAK;QACR,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAkB,CAAA;QAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA;IAC3B,CAAC;IACD;;OAEG;IACH,MAAM,CAAC,OAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAA;QAC1D,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC,OAAO,CAAA;QACjC,IAAI,CAAC,OAAO;YACX,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;QAChE,OAAO,IAAI,WAAW,CACrB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,CAAC,MAAM,EACpB,IAAI,KAAK,CAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CACrC,CAAA;IACF,CAAC;CACD"}
@@ -0,0 +1,104 @@
1
+ import { type APIDMChannel, type APIUser, type UserFlags } from "discord-api-types/v10";
2
+ import { Base } from "../abstracts/Base.js";
3
+ import type { Client } from "../classes/Client.js";
4
+ import type { IfPartial, MessagePayload } from "../types/index.js";
5
+ import { type CDNUrlOptions } from "../utils/index.js";
6
+ import { Message } from "./Message.js";
7
+ export declare class User<IsPartial extends boolean = false> extends Base {
8
+ constructor(client: Client, rawDataOrId: IsPartial extends true ? string : APIUser);
9
+ protected _rawData: APIUser | null;
10
+ private setData;
11
+ /**
12
+ * The raw Discord API data for this user
13
+ */
14
+ get rawData(): Readonly<APIUser>;
15
+ /**
16
+ * The ID of the user
17
+ */
18
+ readonly id: string;
19
+ /**
20
+ * Whether the user is a partial user (meaning it does not have all the data).
21
+ * If this is true, you should use {@link User.fetch} to get the full data of the user.
22
+ */
23
+ get partial(): IsPartial;
24
+ /**
25
+ * The username of the user.
26
+ */
27
+ get username(): IfPartial<IsPartial, string>;
28
+ /**
29
+ * The global name of the user.
30
+ */
31
+ get globalName(): IfPartial<IsPartial, string | null>;
32
+ /**
33
+ * The discriminator of the user.
34
+ */
35
+ get discriminator(): IfPartial<IsPartial, string>;
36
+ /**
37
+ * Is this user a bot?
38
+ */
39
+ get bot(): IfPartial<IsPartial, boolean>;
40
+ /**
41
+ * Is this user a system user?
42
+ */
43
+ get system(): IfPartial<IsPartial, boolean>;
44
+ /**
45
+ * The public flags of the user. (Bitfield)
46
+ * @see https://discord.com/developers/docs/resources/user#user-object-user-flags
47
+ */
48
+ get flags(): IfPartial<IsPartial, UserFlags | undefined>;
49
+ /**
50
+ * The avatar hash of the user.
51
+ * You can use {@link User.avatarUrl} to get the URL of the avatar.
52
+ */
53
+ get avatar(): IfPartial<IsPartial, string | null>;
54
+ /**
55
+ * Get the URL of the user's avatar with default settings (png format)
56
+ */
57
+ get avatarUrl(): IfPartial<IsPartial, string | null>;
58
+ /**
59
+ * Get the URL of the user's avatar with custom format and size options
60
+ * @param options Optional format and size parameters
61
+ * @returns The avatar URL or null if no avatar is set
62
+ */
63
+ getAvatarUrl(options?: CDNUrlOptions): IfPartial<IsPartial, string | null>;
64
+ /**
65
+ * The banner hash of the user.
66
+ * You can use {@link User.bannerUrl} to get the URL of the banner.
67
+ */
68
+ get banner(): IfPartial<IsPartial, string | null>;
69
+ /**
70
+ * Get the URL of the user's banner with default settings (png format)
71
+ */
72
+ get bannerUrl(): IfPartial<IsPartial, string | null>;
73
+ /**
74
+ * Get the URL of the user's banner with custom format and size options
75
+ * @param options Optional format and size parameters
76
+ * @returns The banner URL or null if no banner is set
77
+ */
78
+ getBannerUrl(options?: CDNUrlOptions): IfPartial<IsPartial, string | null>;
79
+ /**
80
+ * The accent color of the user.
81
+ */
82
+ get accentColor(): IfPartial<IsPartial, number | null>;
83
+ /**
84
+ * Returns the Discord mention format for this user
85
+ * @returns The mention string in the format <@userId>
86
+ */
87
+ toString(): string;
88
+ /**
89
+ * Fetch updated data for this user.
90
+ * If the user is partial, this will fetch all the data for the user and populate the fields.
91
+ * If the user is not partial, all fields will be updated with new values from Discord.
92
+ * @returns A Promise that resolves to a non-partial User
93
+ */
94
+ fetch(): Promise<User<false>>;
95
+ /**
96
+ * Instantiate a new DM channel with this user.
97
+ */
98
+ createDm(): Promise<APIDMChannel>;
99
+ /**
100
+ * Send a message to this user.
101
+ */
102
+ send(data: MessagePayload): Promise<Message<false>>;
103
+ }
104
+ //# sourceMappingURL=User.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../src/structures/User.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,YAAY,EAEjB,KAAK,OAAO,EAEZ,KAAK,SAAS,EACd,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,EAEN,KAAK,aAAa,EAElB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,qBAAa,IAAI,CAAC,SAAS,SAAS,OAAO,GAAG,KAAK,CAAE,SAAQ,IAAI;gBAE/D,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,SAAS,SAAS,IAAI,GAAG,MAAM,GAAG,OAAO;IAYvD,SAAS,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAO;IACzC,OAAO,CAAC,OAAO;IASf;;OAEG;IACH,IAAI,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,CAM/B;IAED;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,IAAI,OAAO,IAAI,SAAS,CAEvB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAG3C;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAGpD;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAGhD;IAED;;OAEG;IACH,IAAI,GAAG,IAAI,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAGvC;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAG1C;IAED;;;OAGG;IACH,IAAI,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC,CAGvD;IAED;;;OAGG;IAEH,IAAI,MAAM,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAGhD;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAMnD;IAED;;;;OAIG;IACH,YAAY,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAS1E;;;OAGG;IACH,IAAI,MAAM,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAGhD;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAMnD;IAED;;;;OAIG;IACH,YAAY,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAS1E;;OAEG;IACH,IAAI,WAAW,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAGrD;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;;OAKG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAWnC;;OAEG;IACG,QAAQ;IASd;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,cAAc;CAU/B"}