@buape/carbon 0.7.0 → 0.9.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 (390) hide show
  1. package/dist/package.json +8 -7
  2. package/dist/src/abstracts/AnySelectMenu.d.ts +4 -3
  3. package/dist/src/abstracts/AnySelectMenu.d.ts.map +1 -1
  4. package/dist/src/abstracts/AnySelectMenu.js +8 -2
  5. package/dist/src/abstracts/AnySelectMenu.js.map +1 -1
  6. package/dist/src/abstracts/AnySelectMenuInteraction.d.ts +0 -1
  7. package/dist/src/abstracts/AnySelectMenuInteraction.d.ts.map +1 -1
  8. package/dist/src/abstracts/AnySelectMenuInteraction.js +0 -2
  9. package/dist/src/abstracts/AnySelectMenuInteraction.js.map +1 -1
  10. package/dist/src/abstracts/BaseChannel.d.ts +12 -3
  11. package/dist/src/abstracts/BaseChannel.d.ts.map +1 -1
  12. package/dist/src/abstracts/BaseChannel.js +15 -1
  13. package/dist/src/abstracts/BaseChannel.js.map +1 -1
  14. package/dist/src/abstracts/BaseCommand.d.ts +18 -8
  15. package/dist/src/abstracts/BaseCommand.d.ts.map +1 -1
  16. package/dist/src/abstracts/BaseCommand.js +24 -7
  17. package/dist/src/abstracts/BaseCommand.js.map +1 -1
  18. package/dist/src/abstracts/BaseComponent.d.ts +10 -24
  19. package/dist/src/abstracts/BaseComponent.d.ts.map +1 -1
  20. package/dist/src/abstracts/BaseComponent.js +5 -25
  21. package/dist/src/abstracts/BaseComponent.js.map +1 -1
  22. package/dist/src/abstracts/BaseComponentInteraction.d.ts +3 -4
  23. package/dist/src/abstracts/BaseComponentInteraction.d.ts.map +1 -1
  24. package/dist/src/abstracts/BaseComponentInteraction.js +3 -6
  25. package/dist/src/abstracts/BaseComponentInteraction.js.map +1 -1
  26. package/dist/src/abstracts/BaseGuildChannel.d.ts +4 -3
  27. package/dist/src/abstracts/BaseGuildChannel.d.ts.map +1 -1
  28. package/dist/src/abstracts/BaseGuildChannel.js +5 -3
  29. package/dist/src/abstracts/BaseGuildChannel.js.map +1 -1
  30. package/dist/src/abstracts/BaseGuildTextChannel.d.ts +1 -1
  31. package/dist/src/abstracts/BaseGuildTextChannel.d.ts.map +1 -1
  32. package/dist/src/abstracts/BaseInteraction.d.ts +49 -36
  33. package/dist/src/abstracts/BaseInteraction.d.ts.map +1 -1
  34. package/dist/src/abstracts/BaseInteraction.js +105 -34
  35. package/dist/src/abstracts/BaseInteraction.js.map +1 -1
  36. package/dist/src/abstracts/BaseListener.d.ts +13 -0
  37. package/dist/src/abstracts/BaseListener.d.ts.map +1 -0
  38. package/dist/src/abstracts/BaseListener.js +8 -0
  39. package/dist/src/abstracts/BaseListener.js.map +1 -0
  40. package/dist/src/abstracts/BaseMessageInteractiveComponent.d.ts +39 -0
  41. package/dist/src/abstracts/BaseMessageInteractiveComponent.d.ts.map +1 -0
  42. package/dist/src/abstracts/BaseMessageInteractiveComponent.js +33 -0
  43. package/dist/src/abstracts/BaseMessageInteractiveComponent.js.map +1 -0
  44. package/dist/src/abstracts/BaseModalComponent.d.ts +29 -0
  45. package/dist/src/abstracts/BaseModalComponent.d.ts.map +1 -0
  46. package/dist/src/abstracts/BaseModalComponent.js +33 -0
  47. package/dist/src/abstracts/BaseModalComponent.js.map +1 -0
  48. package/dist/src/abstracts/GuildThreadOnlyChannel.d.ts +5 -4
  49. package/dist/src/abstracts/GuildThreadOnlyChannel.d.ts.map +1 -1
  50. package/dist/src/abstracts/GuildThreadOnlyChannel.js +1 -1
  51. package/dist/src/abstracts/GuildThreadOnlyChannel.js.map +1 -1
  52. package/dist/src/abstracts/Plugin.d.ts +6 -2
  53. package/dist/src/abstracts/Plugin.d.ts.map +1 -1
  54. package/dist/src/abstracts/Plugin.js.map +1 -1
  55. package/dist/src/classes/Client.d.ts +42 -12
  56. package/dist/src/classes/Client.d.ts.map +1 -1
  57. package/dist/src/classes/Client.js +98 -25
  58. package/dist/src/classes/Client.js.map +1 -1
  59. package/dist/src/classes/Command.d.ts +10 -2
  60. package/dist/src/classes/Command.d.ts.map +1 -1
  61. package/dist/src/classes/Command.js +12 -1
  62. package/dist/src/classes/Command.js.map +1 -1
  63. package/dist/src/classes/Listener.d.ts +376 -5
  64. package/dist/src/classes/Listener.d.ts.map +1 -1
  65. package/dist/src/classes/Listener.js +1011 -1
  66. package/dist/src/classes/Listener.js.map +1 -1
  67. package/dist/src/classes/Modal.d.ts +22 -5
  68. package/dist/src/classes/Modal.d.ts.map +1 -1
  69. package/dist/src/classes/Modal.js +14 -0
  70. package/dist/src/classes/Modal.js.map +1 -1
  71. package/dist/src/classes/RequestClient.d.ts +79 -0
  72. package/dist/src/classes/RequestClient.d.ts.map +1 -0
  73. package/dist/src/classes/RequestClient.js +225 -0
  74. package/dist/src/classes/RequestClient.js.map +1 -0
  75. package/dist/src/classes/{Button.d.ts → components/Button.d.ts} +8 -5
  76. package/dist/src/classes/components/Button.d.ts.map +1 -0
  77. package/dist/src/classes/{Button.js → components/Button.js} +13 -3
  78. package/dist/src/classes/components/Button.js.map +1 -0
  79. package/dist/src/classes/{ChannelSelectMenu.d.ts → components/ChannelSelectMenu.d.ts} +6 -4
  80. package/dist/src/classes/components/ChannelSelectMenu.d.ts.map +1 -0
  81. package/dist/src/classes/{ChannelSelectMenu.js → components/ChannelSelectMenu.js} +8 -1
  82. package/dist/src/classes/components/ChannelSelectMenu.js.map +1 -0
  83. package/dist/src/classes/components/Container.d.ts +23 -0
  84. package/dist/src/classes/components/Container.d.ts.map +1 -0
  85. package/dist/src/classes/components/Container.js +27 -0
  86. package/dist/src/classes/components/Container.js.map +1 -0
  87. package/dist/src/classes/components/File.d.ts +21 -0
  88. package/dist/src/classes/components/File.d.ts.map +1 -0
  89. package/dist/src/classes/components/File.js +33 -0
  90. package/dist/src/classes/components/File.js.map +1 -0
  91. package/dist/src/classes/components/MediaGallery.d.ts +27 -0
  92. package/dist/src/classes/components/MediaGallery.d.ts.map +1 -0
  93. package/dist/src/classes/components/MediaGallery.js +27 -0
  94. package/dist/src/classes/components/MediaGallery.js.map +1 -0
  95. package/dist/src/classes/{MentionableSelectMenu.d.ts → components/MentionableSelectMenu.d.ts} +6 -4
  96. package/dist/src/classes/components/MentionableSelectMenu.d.ts.map +1 -0
  97. package/dist/src/classes/{MentionableSelectMenu.js → components/MentionableSelectMenu.js} +8 -1
  98. package/dist/src/classes/components/MentionableSelectMenu.js.map +1 -0
  99. package/dist/src/classes/{RoleSelectMenu.d.ts → components/RoleSelectMenu.d.ts} +6 -4
  100. package/dist/src/classes/components/RoleSelectMenu.d.ts.map +1 -0
  101. package/dist/src/classes/components/RoleSelectMenu.js +20 -0
  102. package/dist/src/classes/components/RoleSelectMenu.js.map +1 -0
  103. package/dist/src/classes/components/Row.d.ts +29 -0
  104. package/dist/src/classes/components/Row.d.ts.map +1 -0
  105. package/dist/src/classes/{Row.js → components/Row.js} +8 -2
  106. package/dist/src/classes/components/Row.js.map +1 -0
  107. package/dist/src/classes/components/Section.d.ts +22 -0
  108. package/dist/src/classes/components/Section.d.ts.map +1 -0
  109. package/dist/src/classes/components/Section.js +15 -0
  110. package/dist/src/classes/components/Section.js.map +1 -0
  111. package/dist/src/classes/components/Separator.d.ts +22 -0
  112. package/dist/src/classes/components/Separator.d.ts.map +1 -0
  113. package/dist/src/classes/components/Separator.js +33 -0
  114. package/dist/src/classes/components/Separator.js.map +1 -0
  115. package/dist/src/classes/components/StringSelectMenu.d.ts +15 -0
  116. package/dist/src/classes/components/StringSelectMenu.d.ts.map +1 -0
  117. package/dist/src/classes/components/StringSelectMenu.js +19 -0
  118. package/dist/src/classes/components/StringSelectMenu.js.map +1 -0
  119. package/dist/src/classes/components/TextDisplay.d.ts +10 -0
  120. package/dist/src/classes/components/TextDisplay.d.ts.map +1 -0
  121. package/dist/src/classes/components/TextDisplay.js +19 -0
  122. package/dist/src/classes/components/TextDisplay.js.map +1 -0
  123. package/dist/src/classes/{TextInput.d.ts → components/TextInput.d.ts} +4 -3
  124. package/dist/src/classes/components/TextInput.d.ts.map +1 -0
  125. package/dist/src/classes/{TextInput.js → components/TextInput.js} +3 -2
  126. package/dist/src/classes/components/TextInput.js.map +1 -0
  127. package/dist/src/classes/components/Thumbnail.d.ts +13 -0
  128. package/dist/src/classes/components/Thumbnail.d.ts.map +1 -0
  129. package/dist/src/classes/components/Thumbnail.js +16 -0
  130. package/dist/src/classes/components/Thumbnail.js.map +1 -0
  131. package/dist/src/classes/{UserSelectMenu.d.ts → components/UserSelectMenu.d.ts} +6 -4
  132. package/dist/src/classes/components/UserSelectMenu.d.ts.map +1 -0
  133. package/dist/src/classes/components/UserSelectMenu.js +20 -0
  134. package/dist/src/classes/components/UserSelectMenu.js.map +1 -0
  135. package/dist/src/errors/BaseError.d.ts +3 -0
  136. package/dist/src/errors/BaseError.d.ts.map +1 -0
  137. package/dist/src/errors/BaseError.js +3 -0
  138. package/dist/src/errors/BaseError.js.map +1 -0
  139. package/dist/src/errors/DiscordError.d.ts +25 -0
  140. package/dist/src/errors/DiscordError.d.ts.map +1 -0
  141. package/dist/src/errors/DiscordError.js +31 -0
  142. package/dist/src/errors/DiscordError.js.map +1 -0
  143. package/dist/src/errors/RatelimitError.d.ts +15 -0
  144. package/dist/src/errors/RatelimitError.d.ts.map +1 -0
  145. package/dist/src/errors/RatelimitError.js +18 -0
  146. package/dist/src/errors/RatelimitError.js.map +1 -0
  147. package/dist/src/{factories → functions}/channelFactory.d.ts +3 -2
  148. package/dist/src/functions/channelFactory.d.ts.map +1 -0
  149. package/dist/src/functions/channelFactory.js.map +1 -0
  150. package/dist/src/functions/enforceChoicesLimit.d.ts +3 -0
  151. package/dist/src/functions/enforceChoicesLimit.d.ts.map +1 -0
  152. package/dist/src/functions/enforceChoicesLimit.js +17 -0
  153. package/dist/src/functions/enforceChoicesLimit.js.map +1 -0
  154. package/dist/src/functions/errorsMapper.d.ts +14 -0
  155. package/dist/src/functions/errorsMapper.d.ts.map +1 -0
  156. package/dist/src/functions/errorsMapper.js +46 -0
  157. package/dist/src/functions/errorsMapper.js.map +1 -0
  158. package/dist/src/index.d.ts +29 -63
  159. package/dist/src/index.d.ts.map +1 -1
  160. package/dist/src/index.js +31 -15
  161. package/dist/src/index.js.map +1 -1
  162. package/dist/src/internals/AutocompleteInteraction.d.ts +15 -5
  163. package/dist/src/internals/AutocompleteInteraction.d.ts.map +1 -1
  164. package/dist/src/internals/AutocompleteInteraction.js +27 -15
  165. package/dist/src/internals/AutocompleteInteraction.js.map +1 -1
  166. package/dist/src/internals/ButtonInteraction.d.ts +0 -1
  167. package/dist/src/internals/ButtonInteraction.d.ts.map +1 -1
  168. package/dist/src/internals/ButtonInteraction.js +0 -2
  169. package/dist/src/internals/ButtonInteraction.js.map +1 -1
  170. package/dist/src/internals/CommandHandler.d.ts +1 -1
  171. package/dist/src/internals/CommandHandler.d.ts.map +1 -1
  172. package/dist/src/internals/CommandHandler.js +25 -3
  173. package/dist/src/internals/CommandHandler.js.map +1 -1
  174. package/dist/src/internals/CommandInteraction.d.ts +7 -1
  175. package/dist/src/internals/CommandInteraction.d.ts.map +1 -1
  176. package/dist/src/internals/CommandInteraction.js +10 -4
  177. package/dist/src/internals/CommandInteraction.js.map +1 -1
  178. package/dist/src/internals/ComponentHandler.d.ts +8 -5
  179. package/dist/src/internals/ComponentHandler.d.ts.map +1 -1
  180. package/dist/src/internals/ComponentHandler.js +40 -16
  181. package/dist/src/internals/ComponentHandler.js.map +1 -1
  182. package/dist/src/internals/EventHandler.d.ts +7 -5
  183. package/dist/src/internals/EventHandler.d.ts.map +1 -1
  184. package/dist/src/internals/EventHandler.js +13 -11
  185. package/dist/src/internals/EventHandler.js.map +1 -1
  186. package/dist/src/internals/ModalHandler.d.ts +1 -1
  187. package/dist/src/internals/ModalHandler.d.ts.map +1 -1
  188. package/dist/src/internals/ModalHandler.js +6 -2
  189. package/dist/src/internals/ModalHandler.js.map +1 -1
  190. package/dist/src/internals/ModalInteraction.d.ts +2 -3
  191. package/dist/src/internals/ModalInteraction.d.ts.map +1 -1
  192. package/dist/src/internals/ModalInteraction.js +3 -4
  193. package/dist/src/internals/ModalInteraction.js.map +1 -1
  194. package/dist/src/internals/OptionsHandler.d.ts +13 -3
  195. package/dist/src/internals/OptionsHandler.d.ts.map +1 -1
  196. package/dist/src/internals/OptionsHandler.js +51 -1
  197. package/dist/src/internals/OptionsHandler.js.map +1 -1
  198. package/dist/src/permissions.d.ts +54 -0
  199. package/dist/src/permissions.d.ts.map +1 -0
  200. package/dist/src/permissions.js +4 -0
  201. package/dist/src/permissions.js.map +1 -0
  202. package/dist/src/plugins/command-data/CommandDataPlugin.d.ts +16 -0
  203. package/dist/src/plugins/command-data/CommandDataPlugin.d.ts.map +1 -0
  204. package/dist/src/plugins/command-data/CommandDataPlugin.js +46 -0
  205. package/dist/src/plugins/command-data/CommandDataPlugin.js.map +1 -0
  206. package/dist/src/plugins/command-data/index.d.ts +2 -0
  207. package/dist/src/plugins/command-data/index.d.ts.map +1 -0
  208. package/dist/src/plugins/command-data/index.js +2 -0
  209. package/dist/src/plugins/command-data/index.js.map +1 -0
  210. package/dist/src/plugins/gateway/GatewayPlugin.d.ts +41 -0
  211. package/dist/src/plugins/gateway/GatewayPlugin.d.ts.map +1 -0
  212. package/dist/src/plugins/gateway/GatewayPlugin.js +282 -0
  213. package/dist/src/plugins/gateway/GatewayPlugin.js.map +1 -0
  214. package/dist/src/plugins/gateway/index.d.ts +6 -0
  215. package/dist/src/plugins/gateway/index.d.ts.map +1 -0
  216. package/dist/src/plugins/gateway/index.js +6 -0
  217. package/dist/src/plugins/gateway/index.js.map +1 -0
  218. package/dist/src/plugins/gateway/types.d.ts +62 -0
  219. package/dist/src/plugins/gateway/types.d.ts.map +1 -0
  220. package/dist/src/plugins/gateway/types.js +5 -0
  221. package/dist/src/plugins/gateway/types.js.map +1 -0
  222. package/dist/src/plugins/gateway/utils/heartbeat.d.ts +17 -0
  223. package/dist/src/plugins/gateway/utils/heartbeat.d.ts.map +1 -0
  224. package/dist/src/plugins/gateway/utils/heartbeat.js +28 -0
  225. package/dist/src/plugins/gateway/utils/heartbeat.js.map +1 -0
  226. package/dist/src/plugins/gateway/utils/monitor.d.ts +37 -0
  227. package/dist/src/plugins/gateway/utils/monitor.d.ts.map +1 -0
  228. package/dist/src/plugins/gateway/utils/monitor.js +88 -0
  229. package/dist/src/plugins/gateway/utils/monitor.js.map +1 -0
  230. package/dist/src/plugins/gateway/utils/payload.d.ts +22 -0
  231. package/dist/src/plugins/gateway/utils/payload.d.ts.map +1 -0
  232. package/dist/src/plugins/gateway/utils/payload.js +47 -0
  233. package/dist/src/plugins/gateway/utils/payload.js.map +1 -0
  234. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.d.ts +26 -0
  235. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.d.ts.map +1 -0
  236. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.js +74 -0
  237. package/dist/src/plugins/gateway-forwarder/GatewayForwarderPlugin.js.map +1 -0
  238. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.d.ts +9 -0
  239. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.d.ts.map +1 -0
  240. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.js +10 -0
  241. package/dist/src/plugins/gateway-forwarder/ShardedGatewayForwarderPlugin.js.map +1 -0
  242. package/dist/src/plugins/gateway-forwarder/index.d.ts +4 -0
  243. package/dist/src/plugins/gateway-forwarder/index.d.ts.map +1 -0
  244. package/dist/src/plugins/gateway-forwarder/index.js +4 -0
  245. package/dist/src/plugins/gateway-forwarder/index.js.map +1 -0
  246. package/dist/src/plugins/linked-roles/LinkedRoles.d.ts +1 -0
  247. package/dist/src/plugins/linked-roles/LinkedRoles.d.ts.map +1 -1
  248. package/dist/src/plugins/linked-roles/LinkedRoles.js +1 -0
  249. package/dist/src/plugins/linked-roles/LinkedRoles.js.map +1 -1
  250. package/dist/src/plugins/paginator/Paginator.d.ts +51 -0
  251. package/dist/src/plugins/paginator/Paginator.d.ts.map +1 -0
  252. package/dist/src/plugins/paginator/Paginator.js +155 -0
  253. package/dist/src/plugins/paginator/Paginator.js.map +1 -0
  254. package/dist/src/plugins/paginator/index.d.ts +8 -0
  255. package/dist/src/plugins/paginator/index.d.ts.map +1 -0
  256. package/dist/src/plugins/paginator/index.js +8 -0
  257. package/dist/src/plugins/paginator/index.js.map +1 -0
  258. package/dist/src/plugins/sharding/ShardingPlugin.d.ts +43 -0
  259. package/dist/src/plugins/sharding/ShardingPlugin.d.ts.map +1 -0
  260. package/dist/src/plugins/sharding/ShardingPlugin.js +111 -0
  261. package/dist/src/plugins/sharding/ShardingPlugin.js.map +1 -0
  262. package/dist/src/plugins/sharding/index.d.ts +3 -0
  263. package/dist/src/plugins/sharding/index.d.ts.map +1 -0
  264. package/dist/src/plugins/sharding/index.js +3 -0
  265. package/dist/src/plugins/sharding/index.js.map +1 -0
  266. package/dist/src/structures/DmChannel.d.ts +3 -3
  267. package/dist/src/structures/DmChannel.d.ts.map +1 -1
  268. package/dist/src/structures/DmChannel.js +5 -3
  269. package/dist/src/structures/DmChannel.js.map +1 -1
  270. package/dist/src/structures/GroupDmChannel.d.ts +1 -1
  271. package/dist/src/structures/GroupDmChannel.d.ts.map +1 -1
  272. package/dist/src/structures/Guild.d.ts +186 -6
  273. package/dist/src/structures/Guild.d.ts.map +1 -1
  274. package/dist/src/structures/Guild.js +409 -13
  275. package/dist/src/structures/Guild.js.map +1 -1
  276. package/dist/src/structures/GuildCategoryChannel.d.ts +1 -1
  277. package/dist/src/structures/GuildCategoryChannel.d.ts.map +1 -1
  278. package/dist/src/structures/GuildForumChannel.d.ts +1 -1
  279. package/dist/src/structures/GuildForumChannel.d.ts.map +1 -1
  280. package/dist/src/structures/GuildMember.d.ts +15 -12
  281. package/dist/src/structures/GuildMember.d.ts.map +1 -1
  282. package/dist/src/structures/GuildMember.js +78 -19
  283. package/dist/src/structures/GuildMember.js.map +1 -1
  284. package/dist/src/structures/GuildStageOrVoiceChannel.d.ts +1 -1
  285. package/dist/src/structures/GuildStageOrVoiceChannel.d.ts.map +1 -1
  286. package/dist/src/structures/GuildTextChannel.d.ts +1 -1
  287. package/dist/src/structures/GuildTextChannel.d.ts.map +1 -1
  288. package/dist/src/structures/GuildThreadChannel.d.ts +1 -1
  289. package/dist/src/structures/GuildThreadChannel.d.ts.map +1 -1
  290. package/dist/src/structures/Message.d.ts +31 -14
  291. package/dist/src/structures/Message.d.ts.map +1 -1
  292. package/dist/src/structures/Message.js +126 -17
  293. package/dist/src/structures/Message.js.map +1 -1
  294. package/dist/src/structures/Poll.d.ts +25 -0
  295. package/dist/src/structures/Poll.d.ts.map +1 -0
  296. package/dist/src/structures/Poll.js +45 -0
  297. package/dist/src/structures/Poll.js.map +1 -0
  298. package/dist/src/structures/Role.d.ts +31 -13
  299. package/dist/src/structures/Role.d.ts.map +1 -1
  300. package/dist/src/structures/Role.js +50 -21
  301. package/dist/src/structures/Role.js.map +1 -1
  302. package/dist/src/structures/ThreadMember.d.ts +36 -0
  303. package/dist/src/structures/ThreadMember.d.ts.map +1 -0
  304. package/dist/src/structures/ThreadMember.js +72 -0
  305. package/dist/src/structures/ThreadMember.js.map +1 -0
  306. package/dist/src/structures/User.d.ts +10 -4
  307. package/dist/src/structures/User.d.ts.map +1 -1
  308. package/dist/src/structures/User.js +10 -1
  309. package/dist/src/structures/User.js.map +1 -1
  310. package/dist/src/structures/Webhook.d.ts +135 -0
  311. package/dist/src/structures/Webhook.d.ts.map +1 -0
  312. package/dist/src/structures/Webhook.js +239 -0
  313. package/dist/src/structures/Webhook.js.map +1 -0
  314. package/dist/src/types/index.d.ts +132 -0
  315. package/dist/src/types/index.d.ts.map +1 -0
  316. package/dist/src/types/index.js +2 -0
  317. package/dist/src/types/index.js.map +1 -0
  318. package/dist/src/types/listeners.d.ts +566 -0
  319. package/dist/src/types/listeners.d.ts.map +1 -0
  320. package/dist/src/types/listeners.js +12 -0
  321. package/dist/src/types/listeners.js.map +1 -0
  322. package/dist/src/utils/customIdParser.d.ts +3 -0
  323. package/dist/src/utils/customIdParser.d.ts.map +1 -0
  324. package/dist/src/utils/customIdParser.js +17 -0
  325. package/dist/src/utils/customIdParser.js.map +1 -0
  326. package/dist/src/utils/index.d.ts +4 -0
  327. package/dist/src/utils/index.d.ts.map +1 -0
  328. package/dist/src/utils/index.js +4 -0
  329. package/dist/src/utils/index.js.map +1 -0
  330. package/dist/src/utils/payload.d.ts +4 -0
  331. package/dist/src/utils/payload.d.ts.map +1 -0
  332. package/dist/src/utils/payload.js +45 -0
  333. package/dist/src/utils/payload.js.map +1 -0
  334. package/dist/src/utils/verification.d.ts +4 -0
  335. package/dist/src/utils/verification.d.ts.map +1 -0
  336. package/dist/src/{utils.js → utils/verification.js} +1 -26
  337. package/dist/src/utils/verification.js.map +1 -0
  338. package/dist/tsconfig.tsbuildinfo +1 -1
  339. package/package.json +8 -7
  340. package/dist/src/adapters/cloudflare/index.d.ts +0 -16
  341. package/dist/src/adapters/cloudflare/index.d.ts.map +0 -1
  342. package/dist/src/adapters/cloudflare/index.js +0 -17
  343. package/dist/src/adapters/cloudflare/index.js.map +0 -1
  344. package/dist/src/adapters/next/index.d.ts +0 -14
  345. package/dist/src/adapters/next/index.d.ts.map +0 -1
  346. package/dist/src/adapters/next/index.js +0 -17
  347. package/dist/src/adapters/next/index.js.map +0 -1
  348. package/dist/src/adapters/shared.d.ts +0 -10
  349. package/dist/src/adapters/shared.d.ts.map +0 -1
  350. package/dist/src/adapters/shared.js +0 -2
  351. package/dist/src/adapters/shared.js.map +0 -1
  352. package/dist/src/classes/Button.d.ts.map +0 -1
  353. package/dist/src/classes/Button.js.map +0 -1
  354. package/dist/src/classes/ChannelSelectMenu.d.ts.map +0 -1
  355. package/dist/src/classes/ChannelSelectMenu.js.map +0 -1
  356. package/dist/src/classes/MentionableSelectMenu.d.ts.map +0 -1
  357. package/dist/src/classes/MentionableSelectMenu.js.map +0 -1
  358. package/dist/src/classes/RoleSelectMenu.d.ts.map +0 -1
  359. package/dist/src/classes/RoleSelectMenu.js +0 -13
  360. package/dist/src/classes/RoleSelectMenu.js.map +0 -1
  361. package/dist/src/classes/Row.d.ts +0 -25
  362. package/dist/src/classes/Row.d.ts.map +0 -1
  363. package/dist/src/classes/Row.js.map +0 -1
  364. package/dist/src/classes/StringSelectMenu.d.ts +0 -13
  365. package/dist/src/classes/StringSelectMenu.d.ts.map +0 -1
  366. package/dist/src/classes/StringSelectMenu.js +0 -12
  367. package/dist/src/classes/StringSelectMenu.js.map +0 -1
  368. package/dist/src/classes/TextInput.d.ts.map +0 -1
  369. package/dist/src/classes/TextInput.js.map +0 -1
  370. package/dist/src/classes/UserSelectMenu.d.ts.map +0 -1
  371. package/dist/src/classes/UserSelectMenu.js +0 -13
  372. package/dist/src/classes/UserSelectMenu.js.map +0 -1
  373. package/dist/src/createHandle.d.ts +0 -20
  374. package/dist/src/createHandle.d.ts.map +0 -1
  375. package/dist/src/createHandle.js +0 -57
  376. package/dist/src/createHandle.js.map +0 -1
  377. package/dist/src/factories/channelFactory.d.ts.map +0 -1
  378. package/dist/src/factories/channelFactory.js.map +0 -1
  379. package/dist/src/types/messagePayload.d.ts +0 -37
  380. package/dist/src/types/messagePayload.d.ts.map +0 -1
  381. package/dist/src/types/messagePayload.js +0 -2
  382. package/dist/src/types/messagePayload.js.map +0 -1
  383. package/dist/src/types.d.ts +0 -38
  384. package/dist/src/types.d.ts.map +0 -1
  385. package/dist/src/types.js +0 -2
  386. package/dist/src/types.js.map +0 -1
  387. package/dist/src/utils.d.ts +0 -27
  388. package/dist/src/utils.d.ts.map +0 -1
  389. package/dist/src/utils.js.map +0 -1
  390. /package/dist/src/{factories → functions}/channelFactory.js +0 -0
@@ -0,0 +1,25 @@
1
+ import { type APIPoll, type APIPollAnswer } from "discord-api-types/v10";
2
+ import { Base } from "../abstracts/Base.js";
3
+ import type { Client } from "../classes/Client.js";
4
+ import { Message } from "../index.js";
5
+ import { User } from "./User.js";
6
+ export declare class Poll extends Base {
7
+ private channelId;
8
+ private messageId;
9
+ protected rawData: APIPoll;
10
+ constructor(client: Client, { channelId, messageId, data }: {
11
+ channelId: string;
12
+ messageId: string;
13
+ data: APIPoll;
14
+ });
15
+ get question(): import("discord-api-types/v10").APIPollMedia;
16
+ get answers(): ReadonlyArray<APIPollAnswer>;
17
+ get allowMultiselect(): boolean;
18
+ get layoutType(): APIPoll["layout_type"];
19
+ get results(): APIPoll["results"] | undefined;
20
+ get expiry(): string;
21
+ get isFinalized(): boolean;
22
+ getAnswerVoters(answerId: number): Promise<User[]>;
23
+ end(): Promise<Message<false>>;
24
+ }
25
+ //# sourceMappingURL=Poll.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Poll.d.ts","sourceRoot":"","sources":["../../../src/structures/Poll.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,OAAO,EACZ,KAAK,aAAa,EAGlB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,qBAAa,IAAK,SAAQ,IAAI;IAC7B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAAQ;IACzB,SAAS,CAAC,OAAO,EAAE,OAAO,CAAA;gBAGzB,MAAM,EAAE,MAAM,EACd,EACC,SAAS,EACT,SAAS,EACT,IAAI,EACJ,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE;IAQ3D,IAAI,QAAQ,iDAEX;IAED,IAAI,OAAO,IAAI,aAAa,CAAC,aAAa,CAAC,CAE1C;IAED,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,IAAI,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,CAEvC;IAED,IAAI,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAE5C;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAEK,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAOlD,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;CAOpC"}
@@ -0,0 +1,45 @@
1
+ import { Routes } from "discord-api-types/v10";
2
+ import { Base } from "../abstracts/Base.js";
3
+ import { Message } from "../index.js";
4
+ import { User } from "./User.js";
5
+ export class Poll extends Base {
6
+ channelId;
7
+ messageId;
8
+ rawData;
9
+ constructor(client, { channelId, messageId, data }) {
10
+ super(client);
11
+ this.channelId = channelId;
12
+ this.messageId = messageId;
13
+ this.rawData = data;
14
+ }
15
+ get question() {
16
+ return this.rawData.question;
17
+ }
18
+ get answers() {
19
+ return this.rawData.answers;
20
+ }
21
+ get allowMultiselect() {
22
+ return this.rawData.allow_multiselect;
23
+ }
24
+ get layoutType() {
25
+ return this.rawData.layout_type;
26
+ }
27
+ get results() {
28
+ return this.rawData.results;
29
+ }
30
+ get expiry() {
31
+ return this.rawData.expiry;
32
+ }
33
+ get isFinalized() {
34
+ return this.rawData.results !== undefined;
35
+ }
36
+ async getAnswerVoters(answerId) {
37
+ const usersData = (await this.client.rest.get(Routes.pollAnswerVoters(this.channelId, this.messageId, answerId)));
38
+ return usersData.users.map((userData) => new User(this.client, userData));
39
+ }
40
+ async end() {
41
+ const updatedMessage = (await this.client.rest.post(Routes.expirePoll(this.channelId, this.messageId), {}));
42
+ return new Message(this.client, updatedMessage);
43
+ }
44
+ }
45
+ //# sourceMappingURL=Poll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Poll.js","sourceRoot":"","sources":["../../../src/structures/Poll.ts"],"names":[],"mappings":"AAAA,OAAO,EAKN,MAAM,EACN,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,OAAO,IAAK,SAAQ,IAAI;IACrB,SAAS,CAAQ;IACjB,SAAS,CAAQ;IACf,OAAO,CAAS;IAE1B,YACC,MAAc,EACd,EACC,SAAS,EACT,SAAS,EACT,IAAI,EACqD;QAE1D,KAAK,CAAC,MAAM,CAAC,CAAA;QACb,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACpB,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAA;IAC7B,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;IAC5B,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAA;IACtC,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAA;IAChC,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;IAC5B,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;IAC3B,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAA;IAC1C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB;QACrC,MAAM,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAC5C,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CACjE,CAAyB,CAAA;QAC1B,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC1E,CAAC;IAED,KAAK,CAAC,GAAG;QACR,MAAM,cAAc,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAClD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EACjD,EAAE,CACF,CAAe,CAAA;QAChB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IAChD,CAAC;CACD"}
@@ -1,10 +1,10 @@
1
1
  import { type APIRole, type APIRoleTags, type RoleFlags } from "discord-api-types/v10";
2
2
  import { Base } from "../abstracts/Base.js";
3
3
  import type { Client } from "../classes/Client.js";
4
- import type { IfPartial } from "../utils.js";
4
+ import type { IfPartial } from "../types/index.js";
5
5
  export declare class Role<IsPartial extends boolean = false> extends Base {
6
6
  constructor(client: Client, rawDataOrId: IsPartial extends true ? string : APIRole);
7
- private rawData;
7
+ protected rawData: APIRole | null;
8
8
  private setData;
9
9
  private setField;
10
10
  /**
@@ -48,7 +48,7 @@ export declare class Role<IsPartial extends boolean = false> extends Base {
48
48
  /**
49
49
  * The permissions of the role.
50
50
  */
51
- get permissions(): IfPartial<IsPartial, string>;
51
+ get permissions(): IfPartial<IsPartial, bigint>;
52
52
  /**
53
53
  * If this role is managed by an integration.
54
54
  */
@@ -67,42 +67,60 @@ export declare class Role<IsPartial extends boolean = false> extends Base {
67
67
  * @see https://discord.com/developers/docs/topics/permissions#role-object-role-tags-structure
68
68
  */
69
69
  get tags(): IfPartial<IsPartial, APIRoleTags | undefined>;
70
+ /**
71
+ * Returns the Discord mention format for this role
72
+ * @returns The mention string in the format <@&roleId>
73
+ */
74
+ toString(): string;
70
75
  /**
71
76
  * Fetch updated data for this role.
72
77
  * If the role is partial, this will fetch all the data for the role and populate the fields.
73
78
  * If the role is not partial, all fields will be updated with new values from Discord.
79
+ * @param guildId The ID of the guild the role is in
80
+ * @returns A Promise that resolves to a non-partial Role
74
81
  */
75
- fetch(guildId: string): Promise<void>;
82
+ fetch(guildId: string): Promise<Role<false>>;
76
83
  /**
77
84
  * Set the name of the role
85
+ * @param reason The reason for changing the name (will be shown in audit log)
78
86
  */
79
- setName(guildId: string, name: string): Promise<void>;
87
+ setName(guildId: string, name: string, reason?: string): Promise<void>;
80
88
  /**
81
89
  * Set the color of the role
90
+ * @param reason The reason for changing the color (will be shown in audit log)
82
91
  */
83
- setColor(guildId: string, color: number): Promise<void>;
92
+ setColor(guildId: string, color: number, reason?: string): Promise<void>;
84
93
  /**
85
94
  * Set the icon of the role
86
95
  * @param icon The unicode emoji or icon URL to set
96
+ * @param reason The reason for changing the icon (will be shown in audit log)
87
97
  */
88
- setIcon(guildId: string, icon: string): Promise<void>;
98
+ setIcon(guildId: string, icon: string, reason?: string): Promise<void>;
89
99
  /**
90
100
  * Set the mentionable status of the role
101
+ * @param reason The reason for changing the mentionable status (will be shown in audit log)
91
102
  */
92
- setMentionable(guildId: string, mentionable: boolean): Promise<void>;
103
+ setMentionable(guildId: string, mentionable: boolean, reason?: string): Promise<void>;
93
104
  /**
94
105
  * Set the hoisted status of the role
106
+ * @param reason The reason for changing the hoisted status (will be shown in audit log)
95
107
  */
96
- setHoisted(guildId: string, hoisted: boolean): Promise<void>;
108
+ setHoisted(guildId: string, hoisted: boolean, reason?: string): Promise<void>;
97
109
  /**
98
110
  * Set the position of the role
111
+ * @param reason The reason for changing the position (will be shown in audit log)
99
112
  */
100
- setPosition(guildId: string, position: number): Promise<void>;
113
+ setPosition(guildId: string, position: number, reason?: string): Promise<void>;
101
114
  /**
102
115
  * Set the permissions of the role
103
- * @param permissions The permissions to set as a BitField string, until a better permission structure is implemented
116
+ * @param permissions The permissions to set
117
+ * @param reason The reason for changing the permissions (will be shown in audit log)
118
+ */
119
+ setPermissions(guildId: string, permissions: bigint[], reason?: string): Promise<void>;
120
+ /**
121
+ * Delete the role
122
+ * @param reason The reason for deleting the role (will be shown in audit log)
104
123
  */
105
- setPermissions(guildId: string, permissions: string): Promise<void>;
106
- delete(guildId: string): Promise<void>;
124
+ delete(guildId: string, reason?: string): Promise<void>;
107
125
  }
108
126
  //# sourceMappingURL=Role.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Role.d.ts","sourceRoot":"","sources":["../../../src/structures/Role.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,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,MAAM,aAAa,CAAA;AAE5C,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,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,QAAQ;IAMhB;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IAEnB;;;OAGG;IACH,IAAI,OAAO,IAAI,SAAS,CAEvB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAGvC;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAGxC;IAED;;;OAGG;IACH,IAAI,IAAI,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAG9C;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAIjD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAG/C;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAG3C;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAG3C;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAG9C;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAG3C;IAED;;OAEG;IACH,IAAI,YAAY,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAGtD;IAED;;;OAGG;IACH,IAAI,KAAK,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAG3C;IAED;;;OAGG;IACH,IAAI,IAAI,IAAI,SAAS,CAAC,SAAS,EAAE,WAAW,GAAG,SAAS,CAAC,CAGxD;IAED;;;;OAIG;IACG,KAAK,CAAC,OAAO,EAAE,MAAM;IAS3B;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAS3C;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAO7C;;;OAGG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAO3C;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO;IAO1D;;OAEG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAOlD;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAOnD;;;OAGG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAOnD,MAAM,CAAC,OAAO,EAAE,MAAM;CAG5B"}
1
+ {"version":3,"file":"Role.d.ts","sourceRoot":"","sources":["../../../src/structures/Role.ts"],"names":[],"mappings":"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"}
@@ -99,7 +99,7 @@ export class Role extends Base {
99
99
  get permissions() {
100
100
  if (!this.rawData)
101
101
  return undefined;
102
- return this.rawData.permissions;
102
+ return BigInt(this.rawData.permissions);
103
103
  }
104
104
  /**
105
105
  * If this role is managed by an integration.
@@ -135,86 +135,115 @@ export class Role extends Base {
135
135
  return undefined;
136
136
  return this.rawData.tags;
137
137
  }
138
+ /**
139
+ * Returns the Discord mention format for this role
140
+ * @returns The mention string in the format <@&roleId>
141
+ */
142
+ toString() {
143
+ return `<@&${this.id}>`;
144
+ }
138
145
  /**
139
146
  * Fetch updated data for this role.
140
147
  * If the role is partial, this will fetch all the data for the role and populate the fields.
141
148
  * If the role is not partial, all fields will be updated with new values from Discord.
149
+ * @param guildId The ID of the guild the role is in
150
+ * @returns A Promise that resolves to a non-partial Role
142
151
  */
143
152
  async fetch(guildId) {
144
153
  const newData = (await this.client.rest.get(Routes.guildRole(guildId, this.id)));
145
154
  if (!newData)
146
155
  throw new Error(`Role ${this.id} not found`);
147
156
  this.setData(newData);
157
+ return this;
148
158
  }
149
159
  /**
150
160
  * Set the name of the role
161
+ * @param reason The reason for changing the name (will be shown in audit log)
151
162
  */
152
- async setName(guildId, name) {
163
+ async setName(guildId, name, reason) {
153
164
  await this.client.rest.patch(Routes.guildRole(guildId, this.id), {
154
- body: {
155
- name
156
- }
165
+ body: { name },
166
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
157
167
  });
158
168
  this.setField("name", name);
159
169
  }
160
170
  /**
161
171
  * Set the color of the role
172
+ * @param reason The reason for changing the color (will be shown in audit log)
162
173
  */
163
- async setColor(guildId, color) {
174
+ async setColor(guildId, color, reason) {
164
175
  await this.client.rest.patch(Routes.guildRole(guildId, this.id), {
165
- body: { color }
176
+ body: { color },
177
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
166
178
  });
167
179
  this.setField("color", color);
168
180
  }
169
181
  /**
170
182
  * Set the icon of the role
171
183
  * @param icon The unicode emoji or icon URL to set
184
+ * @param reason The reason for changing the icon (will be shown in audit log)
172
185
  */
173
- async setIcon(guildId, icon) {
186
+ async setIcon(guildId, icon, reason) {
174
187
  await this.client.rest.patch(Routes.guildRole(guildId, this.id), {
175
- body: { icon }
188
+ body: { icon },
189
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
176
190
  });
177
191
  this.setField("icon", icon);
178
192
  }
179
193
  /**
180
194
  * Set the mentionable status of the role
195
+ * @param reason The reason for changing the mentionable status (will be shown in audit log)
181
196
  */
182
- async setMentionable(guildId, mentionable) {
197
+ async setMentionable(guildId, mentionable, reason) {
183
198
  await this.client.rest.patch(Routes.guildRole(guildId, this.id), {
184
- body: { mentionable }
199
+ body: { mentionable },
200
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
185
201
  });
186
202
  this.setField("mentionable", mentionable);
187
203
  }
188
204
  /**
189
205
  * Set the hoisted status of the role
206
+ * @param reason The reason for changing the hoisted status (will be shown in audit log)
190
207
  */
191
- async setHoisted(guildId, hoisted) {
208
+ async setHoisted(guildId, hoisted, reason) {
192
209
  await this.client.rest.patch(Routes.guildRole(guildId, this.id), {
193
- body: { hoist: hoisted }
210
+ body: { hoist: hoisted },
211
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
194
212
  });
195
213
  this.setField("hoist", hoisted);
196
214
  }
197
215
  /**
198
216
  * Set the position of the role
217
+ * @param reason The reason for changing the position (will be shown in audit log)
199
218
  */
200
- async setPosition(guildId, position) {
219
+ async setPosition(guildId, position, reason) {
201
220
  await this.client.rest.patch(Routes.guildRole(guildId, this.id), {
202
- body: { position }
221
+ body: { position },
222
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
203
223
  });
204
224
  this.setField("position", position);
205
225
  }
206
226
  /**
207
227
  * Set the permissions of the role
208
- * @param permissions The permissions to set as a BitField string, until a better permission structure is implemented
228
+ * @param permissions The permissions to set
229
+ * @param reason The reason for changing the permissions (will be shown in audit log)
209
230
  */
210
- async setPermissions(guildId, permissions) {
231
+ async setPermissions(guildId, permissions, reason) {
232
+ const permValue = permissions.reduce((acc, perm) => acc | perm, BigInt(0));
211
233
  await this.client.rest.patch(Routes.guildRole(guildId, this.id), {
212
- body: { permissions }
234
+ body: { permissions: permValue.toString() },
235
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
213
236
  });
214
- this.setField("permissions", permissions);
237
+ this.setField("permissions", permValue.toString());
215
238
  }
216
- async delete(guildId) {
217
- await this.client.rest.delete(Routes.guildRole(guildId, this.id));
239
+ /**
240
+ * Delete the role
241
+ * @param reason The reason for deleting the role (will be shown in audit log)
242
+ */
243
+ async delete(guildId, reason) {
244
+ await this.client.rest.delete(Routes.guildRole(guildId, this.id), {
245
+ headers: reason ? { "X-Audit-Log-Reason": reason } : undefined
246
+ });
218
247
  }
219
248
  }
220
249
  //# sourceMappingURL=Role.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Role.js","sourceRoot":"","sources":["../../../src/structures/Role.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Role.js","sourceRoot":"","sources":["../../../src/structures/Role.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
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 ID of the guild. This is not present in the API response, so it must be provided.
12
+ */
13
+ guildId: string | undefined;
14
+ /**
15
+ * The ID of the thread
16
+ */
17
+ get id(): string | undefined;
18
+ /**
19
+ * The ID of the user
20
+ */
21
+ get userId(): string | undefined;
22
+ get user(): User<true> | undefined;
23
+ /**
24
+ * The timestamp of when the user last joined the thread
25
+ */
26
+ get joinTimestamp(): string;
27
+ /**
28
+ * Any user-thread settings, currently only used for notifications
29
+ */
30
+ get flags(): ThreadMemberFlags;
31
+ /**
32
+ * The member object of the user
33
+ */
34
+ member(guildId?: string): GuildMember<false, true> | undefined;
35
+ }
36
+ //# 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,OAAO,EAAE,eAAe,GAAG,IAAI,CAAO;IAChD,OAAO,CAAC,OAAO;IAKf;;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;CAY9D"}
@@ -0,0 +1,72 @@
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 ID of the guild. This is not present in the API response, so it must be provided.
20
+ */
21
+ guildId;
22
+ /**
23
+ * The ID of the thread
24
+ */
25
+ get id() {
26
+ if (!this.rawData)
27
+ return undefined;
28
+ return this.rawData.id;
29
+ }
30
+ /**
31
+ * The ID of the user
32
+ */
33
+ get userId() {
34
+ if (!this.rawData)
35
+ return undefined;
36
+ return this.rawData.user_id;
37
+ }
38
+ get user() {
39
+ if (!this.userId)
40
+ return undefined;
41
+ return new User(this.client, this.userId);
42
+ }
43
+ /**
44
+ * The timestamp of when the user last joined the thread
45
+ */
46
+ get joinTimestamp() {
47
+ if (!this.rawData)
48
+ return undefined;
49
+ return this.rawData.join_timestamp;
50
+ }
51
+ /**
52
+ * Any user-thread settings, currently only used for notifications
53
+ */
54
+ get flags() {
55
+ if (!this.rawData)
56
+ return undefined;
57
+ return this.rawData.flags;
58
+ }
59
+ /**
60
+ * The member object of the user
61
+ */
62
+ member(guildId) {
63
+ if (!this.rawData?.member || !this.user)
64
+ return undefined;
65
+ // biome-ignore lint/style/noParameterAssign:
66
+ guildId = guildId ?? this.guildId;
67
+ if (!guildId)
68
+ throw new Error("Cannot create GuildMember without a guild ID");
69
+ return new GuildMember(this.client, this.rawData.member, new Guild(this.client, guildId));
70
+ }
71
+ }
72
+ //# 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,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACvB,CAAC;IAES,OAAO,GAA2B,IAAI,CAAA;IACxC,OAAO,CAAC,IAAyB;QACxC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QACxE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACpB,CAAC;IAED;;OAEG;IACI,OAAO,CAAoB;IAElC;;OAEG;IACH,IAAI,EAAE;QACL,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAkB,CAAA;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;IACvB,CAAC;IACD;;OAEG;IACH,IAAI,MAAM;QACT,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAkB,CAAA;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;IAC5B,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,OAAO;YAAE,OAAO,SAAkB,CAAA;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAA;IACnC,CAAC;IACD;;OAEG;IACH,IAAI,KAAK;QACR,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAkB,CAAA;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAA;IAC1B,CAAC;IACD;;OAEG;IACH,MAAM,CAAC,OAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAA;QACzD,6CAA6C;QAC7C,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,OAAO,CAAC,MAAM,EACnB,IAAI,KAAK,CAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CACrC,CAAA;IACF,CAAC;CACD"}
@@ -1,12 +1,12 @@
1
1
  import { type APIDMChannel, type APIUser, type UserFlags } from "discord-api-types/v10";
2
2
  import { Base } from "../abstracts/Base.js";
3
3
  import type { Client } from "../classes/Client.js";
4
- import type { MessagePayload } from "../types.js";
5
- import type { IfPartial } from "../utils.js";
4
+ import type { MessagePayload } from "../types/index.js";
5
+ import type { IfPartial } from "../types/index.js";
6
6
  import { Message } from "./Message.js";
7
7
  export declare class User<IsPartial extends boolean = false> extends Base {
8
8
  constructor(client: Client, rawDataOrId: IsPartial extends true ? string : APIUser);
9
- private rawData;
9
+ protected rawData: APIUser | null;
10
10
  private setData;
11
11
  /**
12
12
  * The ID of the user
@@ -64,12 +64,18 @@ export declare class User<IsPartial extends boolean = false> extends Base {
64
64
  * The accent color of the user.
65
65
  */
66
66
  get accentColor(): IfPartial<IsPartial, number | null>;
67
+ /**
68
+ * Returns the Discord mention format for this user
69
+ * @returns The mention string in the format <@userId>
70
+ */
71
+ toString(): string;
67
72
  /**
68
73
  * Fetch updated data for this user.
69
74
  * If the user is partial, this will fetch all the data for the user and populate the fields.
70
75
  * If the user is not partial, all fields will be updated with new values from Discord.
76
+ * @returns A Promise that resolves to a non-partial User
71
77
  */
72
- fetch(): Promise<void>;
78
+ fetch(): Promise<User<false>>;
73
79
  /**
74
80
  * Instantiate a new DM channel with this user.
75
81
  */
@@ -1 +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,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAE5C,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,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,OAAO;IASf;;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,CAInD;IAED;;;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,CAInD;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAGrD;IAED;;;;OAIG;IACG,KAAK;IASX;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM;IAS7B;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,cAAc;CAU/B"}
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,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,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,OAAO,EAAE,OAAO,GAAG,IAAI,CAAO;IACxC,OAAO,CAAC,OAAO;IASf;;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,CAInD;IAED;;;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,CAInD;IAED;;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,CAAC,MAAM,EAAE,MAAM;IAS7B;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,cAAc;CAU/B"}
@@ -1,6 +1,6 @@
1
1
  import { Routes } from "discord-api-types/v10";
2
2
  import { Base } from "../abstracts/Base.js";
3
- import { serializePayload } from "../utils.js";
3
+ import { serializePayload } from "../utils/index.js";
4
4
  import { Message } from "./Message.js";
5
5
  export class User extends Base {
6
6
  constructor(client, rawDataOrId) {
@@ -130,16 +130,25 @@ export class User extends Base {
130
130
  return undefined;
131
131
  return this.rawData.accent_color ?? null;
132
132
  }
133
+ /**
134
+ * Returns the Discord mention format for this user
135
+ * @returns The mention string in the format <@userId>
136
+ */
137
+ toString() {
138
+ return `<@${this.id}>`;
139
+ }
133
140
  /**
134
141
  * Fetch updated data for this user.
135
142
  * If the user is partial, this will fetch all the data for the user and populate the fields.
136
143
  * If the user is not partial, all fields will be updated with new values from Discord.
144
+ * @returns A Promise that resolves to a non-partial User
137
145
  */
138
146
  async fetch() {
139
147
  const newData = (await this.client.rest.get(Routes.user(this.id)));
140
148
  if (!newData)
141
149
  throw new Error(`User ${this.id} not found`);
142
150
  this.setData(newData);
151
+ return this;
143
152
  }
144
153
  /**
145
154
  * Instantiate a new DM channel with this user.
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../src/structures/User.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../src/structures/User.ts"],"names":[],"mappings":"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"}