@deffa5556/bail 1.0.6 → 1.0.9

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 (316) hide show
  1. package/cjs/WAProto/index.cjs +106053 -0
  2. package/cjs/deffa/config.cjs +14 -0
  3. package/cjs/deffa/plugins/ai/deepseekr1.cjs +35 -0
  4. package/cjs/deffa/plugins/ai/gita.cjs +26 -0
  5. package/cjs/deffa/plugins/ai/glm47flash.cjs +35 -0
  6. package/cjs/deffa/plugins/ai/gptoss120b.cjs +35 -0
  7. package/cjs/deffa/plugins/ai/qwq32b.cjs +35 -0
  8. package/cjs/deffa/plugins/berita/antara.cjs +25 -0
  9. package/cjs/deffa/plugins/berita/cnbcindonesia.cjs +25 -0
  10. package/cjs/deffa/plugins/berita/cnn.cjs +25 -0
  11. package/cjs/deffa/plugins/berita/kompas.cjs +25 -0
  12. package/cjs/deffa/plugins/berita/liputan6.cjs +25 -0
  13. package/cjs/deffa/plugins/berita/merdeka.cjs +25 -0
  14. package/cjs/deffa/plugins/berita/sindonews.cjs +25 -0
  15. package/cjs/deffa/plugins/berita/tribunnews.cjs +25 -0
  16. package/cjs/deffa/plugins/downloader/douyin.cjs +30 -0
  17. package/cjs/deffa/plugins/downloader/facebook.cjs +30 -0
  18. package/cjs/deffa/plugins/downloader/github.cjs +35 -0
  19. package/cjs/deffa/plugins/downloader/lahelu.cjs +30 -0
  20. package/cjs/deffa/plugins/downloader/snackvideo.cjs +30 -0
  21. package/cjs/deffa/plugins/downloader/soundcloud.cjs +30 -0
  22. package/cjs/deffa/plugins/downloader/tiktok.cjs +30 -0
  23. package/cjs/deffa/plugins/downloader/tiktokhd.cjs +30 -0
  24. package/cjs/deffa/plugins/downloader/twitter.cjs +30 -0
  25. package/cjs/deffa/plugins/downloader/ummy.cjs +36 -0
  26. package/cjs/deffa/plugins/index.cjs +213 -0
  27. package/cjs/deffa/plugins/info/bmkg.cjs +34 -0
  28. package/cjs/deffa/plugins/info/cuaca.cjs +31 -0
  29. package/cjs/deffa/plugins/info/jadwaltv.cjs +29 -0
  30. package/cjs/deffa/plugins/maker/brat.cjs +45 -0
  31. package/cjs/deffa/plugins/maker/bratvid.cjs +52 -0
  32. package/cjs/deffa/plugins/search/8font.cjs +28 -0
  33. package/cjs/deffa/plugins/search/applemusic.cjs +28 -0
  34. package/cjs/deffa/plugins/search/bimg.cjs +30 -0
  35. package/cjs/deffa/plugins/search/brave.cjs +34 -0
  36. package/cjs/deffa/plugins/search/duckduckgo.cjs +28 -0
  37. package/cjs/deffa/plugins/search/lahelu.cjs +28 -0
  38. package/cjs/deffa/plugins/search/mangatoon.cjs +28 -0
  39. package/cjs/deffa/plugins/search/mcpedl.cjs +28 -0
  40. package/cjs/deffa/plugins/search/myinstants.cjs +28 -0
  41. package/cjs/deffa/plugins/search/otakotaku.cjs +28 -0
  42. package/cjs/deffa/plugins/search/pinterest.cjs +30 -0
  43. package/cjs/deffa/plugins/search/resep.cjs +28 -0
  44. package/cjs/deffa/plugins/search/seegore.cjs +30 -0
  45. package/cjs/deffa/plugins/search/soundcloud.cjs +28 -0
  46. package/cjs/deffa/plugins/search/youtube.cjs +28 -0
  47. package/cjs/deffa/plugins/stalk/github.cjs +38 -0
  48. package/cjs/deffa/plugins/stalk/pinterest.cjs +37 -0
  49. package/cjs/deffa/plugins/stalk/threads.cjs +34 -0
  50. package/cjs/deffa/plugins/stalk/tiktok.cjs +37 -0
  51. package/cjs/deffa/plugins/stalk/twitter.cjs +37 -0
  52. package/cjs/deffa/plugins/stalk/youtube.cjs +37 -0
  53. package/cjs/lib/Defaults/index.cjs +158 -0
  54. package/cjs/lib/Discord/Client.cjs +263 -0
  55. package/cjs/lib/Discord/Constants.cjs +1842 -0
  56. package/cjs/lib/Discord/connect-dc.cjs +11 -0
  57. package/cjs/lib/Discord/esm-bridge.cjs +136 -0
  58. package/cjs/lib/Discord/gateway/Dispatcher.cjs +93 -0
  59. package/cjs/lib/Discord/gateway/Shard.cjs +695 -0
  60. package/cjs/lib/Discord/gateway/ShardManager.cjs +344 -0
  61. package/cjs/lib/Discord/gateway/compression/base.cjs +13 -0
  62. package/cjs/lib/Discord/gateway/compression/config.cjs +47 -0
  63. package/cjs/lib/Discord/gateway/compression/pako.cjs +44 -0
  64. package/cjs/lib/Discord/gateway/compression/zlib-native.cjs +47 -0
  65. package/cjs/lib/Discord/gateway/compression/zlib-sync.cjs +31 -0
  66. package/cjs/lib/Discord/gateway/compression/zstd-napi.cjs +80 -0
  67. package/cjs/lib/Discord/gateway/compression/zstd-native.cjs +46 -0
  68. package/cjs/lib/Discord/gateway/events.cjs +956 -0
  69. package/cjs/lib/Discord/index.cjs +238 -0
  70. package/cjs/lib/Discord/rest/Bucket.cjs +69 -0
  71. package/cjs/lib/Discord/rest/DiscordHTTPError.cjs +63 -0
  72. package/cjs/lib/Discord/rest/DiscordRESTError.cjs +84 -0
  73. package/cjs/lib/Discord/rest/OAuthHelper.cjs +226 -0
  74. package/cjs/lib/Discord/rest/RESTManager.cjs +116 -0
  75. package/cjs/lib/Discord/rest/RequestHandler.cjs +320 -0
  76. package/cjs/lib/Discord/rest/SequentialBucket.cjs +69 -0
  77. package/cjs/lib/Discord/routes/Applications.cjs +625 -0
  78. package/cjs/lib/Discord/routes/Channels.cjs +1199 -0
  79. package/cjs/lib/Discord/routes/Guilds.cjs +1792 -0
  80. package/cjs/lib/Discord/routes/Interactions.cjs +212 -0
  81. package/cjs/lib/Discord/routes/Lobbies.cjs +197 -0
  82. package/cjs/lib/Discord/routes/Miscellaneous.cjs +120 -0
  83. package/cjs/lib/Discord/routes/OAuth.cjs +350 -0
  84. package/cjs/lib/Discord/routes/Users.cjs +107 -0
  85. package/cjs/lib/Discord/routes/Webhooks.cjs +308 -0
  86. package/cjs/lib/Discord/structures/AnnouncementChannel.cjs +46 -0
  87. package/cjs/lib/Discord/structures/AnnouncementThreadChannel.cjs +28 -0
  88. package/cjs/lib/Discord/structures/Application.cjs +345 -0
  89. package/cjs/lib/Discord/structures/ApplicationCommand.cjs +109 -0
  90. package/cjs/lib/Discord/structures/Attachment.cjs +46 -0
  91. package/cjs/lib/Discord/structures/AuditLogEntry.cjs +41 -0
  92. package/cjs/lib/Discord/structures/AutoModerationRule.cjs +117 -0
  93. package/cjs/lib/Discord/structures/AutocompleteInteraction.cjs +90 -0
  94. package/cjs/lib/Discord/structures/Base.cjs +56 -0
  95. package/cjs/lib/Discord/structures/BaseEntitlement.cjs +40 -0
  96. package/cjs/lib/Discord/structures/CategoryChannel.cjs +102 -0
  97. package/cjs/lib/Discord/structures/Channel.cjs +89 -0
  98. package/cjs/lib/Discord/structures/ClientApplication.cjs +269 -0
  99. package/cjs/lib/Discord/structures/CommandInteraction.cjs +294 -0
  100. package/cjs/lib/Discord/structures/ComponentInteraction.cjs +306 -0
  101. package/cjs/lib/Discord/structures/Entitlement.cjs +24 -0
  102. package/cjs/lib/Discord/structures/ExtendedUser.cjs +48 -0
  103. package/cjs/lib/Discord/structures/ForumChannel.cjs +20 -0
  104. package/cjs/lib/Discord/structures/GroupChannel.cjs +160 -0
  105. package/cjs/lib/Discord/structures/Guild.cjs +1289 -0
  106. package/cjs/lib/Discord/structures/GuildChannel.cjs +82 -0
  107. package/cjs/lib/Discord/structures/GuildPreview.cjs +141 -0
  108. package/cjs/lib/Discord/structures/GuildScheduledEvent.cjs +166 -0
  109. package/cjs/lib/Discord/structures/GuildTemplate.cjs +96 -0
  110. package/cjs/lib/Discord/structures/Integration.cjs +123 -0
  111. package/cjs/lib/Discord/structures/Interaction.cjs +78 -0
  112. package/cjs/lib/Discord/structures/InteractionResolvedChannel.cjs +36 -0
  113. package/cjs/lib/Discord/structures/Invite.cjs +196 -0
  114. package/cjs/lib/Discord/structures/InviteGuild.cjs +117 -0
  115. package/cjs/lib/Discord/structures/InviteRole.cjs +88 -0
  116. package/cjs/lib/Discord/structures/Lobby.cjs +84 -0
  117. package/cjs/lib/Discord/structures/LobbyMember.cjs +30 -0
  118. package/cjs/lib/Discord/structures/MediaChannel.cjs +20 -0
  119. package/cjs/lib/Discord/structures/Member.cjs +300 -0
  120. package/cjs/lib/Discord/structures/Message.cjs +553 -0
  121. package/cjs/lib/Discord/structures/ModalSubmitInteraction.cjs +263 -0
  122. package/cjs/lib/Discord/structures/OAuthApplication.cjs +203 -0
  123. package/cjs/lib/Discord/structures/OAuthGuild.cjs +98 -0
  124. package/cjs/lib/Discord/structures/PartialApplication.cjs +97 -0
  125. package/cjs/lib/Discord/structures/Permission.cjs +61 -0
  126. package/cjs/lib/Discord/structures/PermissionOverwrite.cjs +46 -0
  127. package/cjs/lib/Discord/structures/PingInteraction.cjs +27 -0
  128. package/cjs/lib/Discord/structures/Poll.cjs +69 -0
  129. package/cjs/lib/Discord/structures/PrimaryGuild.cjs +93 -0
  130. package/cjs/lib/Discord/structures/PrivateChannel.cjs +131 -0
  131. package/cjs/lib/Discord/structures/PrivateThreadChannel.cjs +28 -0
  132. package/cjs/lib/Discord/structures/PublicThreadChannel.cjs +36 -0
  133. package/cjs/lib/Discord/structures/Role.cjs +126 -0
  134. package/cjs/lib/Discord/structures/SKU.cjs +58 -0
  135. package/cjs/lib/Discord/structures/Soundboard.cjs +58 -0
  136. package/cjs/lib/Discord/structures/StageChannel.cjs +45 -0
  137. package/cjs/lib/Discord/structures/StageInstance.cjs +80 -0
  138. package/cjs/lib/Discord/structures/Subscription.cjs +21 -0
  139. package/cjs/lib/Discord/structures/Team.cjs +70 -0
  140. package/cjs/lib/Discord/structures/TestEntitlement.cjs +22 -0
  141. package/cjs/lib/Discord/structures/TextChannel.cjs +48 -0
  142. package/cjs/lib/Discord/structures/TextableChannel.cjs +265 -0
  143. package/cjs/lib/Discord/structures/TextableVoiceChannel.cjs +70 -0
  144. package/cjs/lib/Discord/structures/ThreadChannel.cjs +276 -0
  145. package/cjs/lib/Discord/structures/ThreadOnlyChannel.cjs +205 -0
  146. package/cjs/lib/Discord/structures/ThreadableChannel.cjs +57 -0
  147. package/cjs/lib/Discord/structures/UnavailableGuild.cjs +21 -0
  148. package/cjs/lib/Discord/structures/User.cjs +223 -0
  149. package/cjs/lib/Discord/structures/VoiceChannel.cjs +34 -0
  150. package/cjs/lib/Discord/structures/VoiceState.cjs +113 -0
  151. package/cjs/lib/Discord/structures/Webhook.cjs +224 -0
  152. package/cjs/lib/Discord/util/Collection.cjs +77 -0
  153. package/cjs/lib/Discord/util/Errors.cjs +81 -0
  154. package/cjs/lib/Discord/util/QueryBuilder.cjs +20 -0
  155. package/cjs/lib/Discord/util/Routes.cjs +293 -0
  156. package/cjs/lib/Discord/util/SimpleCollection.cjs +78 -0
  157. package/cjs/lib/Discord/util/Time.cjs +92 -0
  158. package/cjs/lib/Discord/util/TypedCollection.cjs +78 -0
  159. package/cjs/lib/Discord/util/TypedEmitter.cjs +20 -0
  160. package/cjs/lib/Discord/util/Util.cjs +906 -0
  161. package/cjs/lib/Discord/util/interactions/InteractionOptionsWrapper.cjs +207 -0
  162. package/cjs/lib/Discord/util/interactions/MessageInteractionResponse.cjs +26 -0
  163. package/cjs/lib/Discord/util/interactions/ModalSubmitInteractionComponentsWrapper.cjs +98 -0
  164. package/cjs/lib/Discord/util/interactions/SelectMenuValuesWrapper.cjs +77 -0
  165. package/cjs/lib/Discord/util/interactions/shared.cjs +20 -0
  166. package/cjs/lib/Discord/util/warning.cjs +34 -0
  167. package/cjs/lib/Signal/Group/ciphertext-message.cjs +16 -0
  168. package/cjs/lib/Signal/Group/group-session-builder.cjs +67 -0
  169. package/cjs/lib/Signal/Group/group_cipher.cjs +86 -0
  170. package/cjs/lib/Signal/Group/index.cjs +58 -0
  171. package/cjs/lib/Signal/Group/keyhelper.cjs +56 -0
  172. package/cjs/lib/Signal/Group/sender-chain-key.cjs +30 -0
  173. package/cjs/lib/Signal/Group/sender-key-distribution-message.cjs +67 -0
  174. package/cjs/lib/Signal/Group/sender-key-message.cjs +70 -0
  175. package/cjs/lib/Signal/Group/sender-key-name.cjs +52 -0
  176. package/cjs/lib/Signal/Group/sender-key-record.cjs +45 -0
  177. package/cjs/lib/Signal/Group/sender-key-state.cjs +88 -0
  178. package/cjs/lib/Signal/Group/sender-message-key.cjs +30 -0
  179. package/cjs/lib/Signal/libsignal.cjs +467 -0
  180. package/cjs/lib/Signal/lid-mapping.cjs +281 -0
  181. package/cjs/lib/Socket/Client/index.cjs +19 -0
  182. package/cjs/lib/Socket/Client/types.cjs +15 -0
  183. package/cjs/lib/Socket/Client/websocket.cjs +61 -0
  184. package/cjs/lib/Socket/business.cjs +384 -0
  185. package/cjs/lib/Socket/chats.cjs +1221 -0
  186. package/cjs/lib/Socket/communities.cjs +440 -0
  187. package/cjs/lib/Socket/groups.cjs +353 -0
  188. package/cjs/lib/Socket/index.cjs +14 -0
  189. package/cjs/lib/Socket/messages-recv.cjs +1772 -0
  190. package/cjs/lib/Socket/messages-send.cjs +1376 -0
  191. package/cjs/lib/Socket/mex.cjs +46 -0
  192. package/cjs/lib/Socket/newsletter.cjs +230 -0
  193. package/cjs/lib/Socket/socket.cjs +976 -0
  194. package/cjs/lib/Store/index.cjs +20 -0
  195. package/cjs/lib/Store/make-in-memory-store.cjs +470 -0
  196. package/cjs/lib/Store/make-ordered-dictionary.cjs +82 -0
  197. package/cjs/lib/Store/object-repository.cjs +28 -0
  198. package/cjs/lib/Telegram/button.cjs +147 -0
  199. package/cjs/lib/Telegram/composer.cjs +582 -0
  200. package/cjs/lib/Telegram/context.cjs +853 -0
  201. package/cjs/lib/Telegram/core/helpers/args.cjs +57 -0
  202. package/cjs/lib/Telegram/core/helpers/check.cjs +55 -0
  203. package/cjs/lib/Telegram/core/helpers/compact.cjs +16 -0
  204. package/cjs/lib/Telegram/core/helpers/deunionize.cjs +12 -0
  205. package/cjs/lib/Telegram/core/helpers/formatting.cjs +91 -0
  206. package/cjs/lib/Telegram/core/helpers/util.cjs +50 -0
  207. package/cjs/lib/Telegram/core/network/client.cjs +338 -0
  208. package/cjs/lib/Telegram/core/network/error.cjs +21 -0
  209. package/cjs/lib/Telegram/core/network/multipart-stream.cjs +79 -0
  210. package/cjs/lib/Telegram/core/network/polling.cjs +87 -0
  211. package/cjs/lib/Telegram/core/network/webhook.cjs +54 -0
  212. package/cjs/lib/Telegram/core/types/typegram.cjs +31 -0
  213. package/cjs/lib/Telegram/deffa-telegraf.cjs +264 -0
  214. package/cjs/lib/Telegram/esm-bridge.cjs +20 -0
  215. package/cjs/lib/Telegram/filters.cjs +69 -0
  216. package/cjs/lib/Telegram/format.cjs +58 -0
  217. package/cjs/lib/Telegram/future.cjs +140 -0
  218. package/cjs/lib/Telegram/index.cjs +67 -0
  219. package/cjs/lib/Telegram/input.cjs +61 -0
  220. package/cjs/lib/Telegram/markup.cjs +129 -0
  221. package/cjs/lib/Telegram/middleware.cjs +2 -0
  222. package/cjs/lib/Telegram/reactions.cjs +84 -0
  223. package/cjs/lib/Telegram/router.cjs +46 -0
  224. package/cjs/lib/Telegram/scenes/base.cjs +39 -0
  225. package/cjs/lib/Telegram/scenes/context.cjs +104 -0
  226. package/cjs/lib/Telegram/scenes/index.cjs +21 -0
  227. package/cjs/lib/Telegram/scenes/stage.cjs +49 -0
  228. package/cjs/lib/Telegram/scenes/wizard/context.cjs +31 -0
  229. package/cjs/lib/Telegram/scenes/wizard/index.cjs +45 -0
  230. package/cjs/lib/Telegram/scenes.cjs +21 -0
  231. package/cjs/lib/Telegram/session.cjs +166 -0
  232. package/cjs/lib/Telegram/telegram-types.cjs +6 -0
  233. package/cjs/lib/Telegram/telegram.cjs +945 -0
  234. package/cjs/lib/Telegram/types.cjs +2 -0
  235. package/cjs/lib/Telegram/utils.cjs +5 -0
  236. package/cjs/lib/Types/Auth.cjs +3 -0
  237. package/cjs/lib/Types/Bussines.cjs +3 -0
  238. package/cjs/lib/Types/Call.cjs +3 -0
  239. package/cjs/lib/Types/Chat.cjs +11 -0
  240. package/cjs/lib/Types/Contact.cjs +3 -0
  241. package/cjs/lib/Types/Events.cjs +4 -0
  242. package/cjs/lib/Types/GroupMetadata.cjs +3 -0
  243. package/cjs/lib/Types/Label.cjs +26 -0
  244. package/cjs/lib/Types/LabelAssociation.cjs +8 -0
  245. package/cjs/lib/Types/Message.cjs +19 -0
  246. package/cjs/lib/Types/Mex.cjs +40 -0
  247. package/cjs/lib/Types/Product.cjs +3 -0
  248. package/cjs/lib/Types/RichType.cjs +24 -0
  249. package/cjs/lib/Types/Signal.cjs +4 -0
  250. package/cjs/lib/Types/Socket.cjs +4 -0
  251. package/cjs/lib/Types/State.cjs +54 -0
  252. package/cjs/lib/Types/USync.cjs +4 -0
  253. package/cjs/lib/Types/index.cjs +42 -0
  254. package/cjs/lib/Utils/auth-utils.cjs +312 -0
  255. package/cjs/lib/Utils/browser-utils.cjs +39 -0
  256. package/cjs/lib/Utils/business.cjs +241 -0
  257. package/cjs/lib/Utils/chat-utils.cjs +890 -0
  258. package/cjs/lib/Utils/companion-reg-client-utils.cjs +51 -0
  259. package/cjs/lib/Utils/crypto.cjs +170 -0
  260. package/cjs/lib/Utils/decode-wa-message.cjs +330 -0
  261. package/cjs/lib/Utils/event-buffer.cjs +629 -0
  262. package/cjs/lib/Utils/generics.cjs +427 -0
  263. package/cjs/lib/Utils/history.cjs +141 -0
  264. package/cjs/lib/Utils/identity-change-handler.cjs +56 -0
  265. package/cjs/lib/Utils/index.cjs +43 -0
  266. package/cjs/lib/Utils/link-preview.cjs +122 -0
  267. package/cjs/lib/Utils/logger.cjs +8 -0
  268. package/cjs/lib/Utils/lt-hash.cjs +11 -0
  269. package/cjs/lib/Utils/make-mutex.cjs +38 -0
  270. package/cjs/lib/Utils/message-retry-manager.cjs +267 -0
  271. package/cjs/lib/Utils/messages-media.cjs +906 -0
  272. package/cjs/lib/Utils/messages.cjs +1909 -0
  273. package/cjs/lib/Utils/noise-handler.cjs +205 -0
  274. package/cjs/lib/Utils/offline-node-processor.cjs +43 -0
  275. package/cjs/lib/Utils/pre-key-manager.cjs +113 -0
  276. package/cjs/lib/Utils/process-message.cjs +755 -0
  277. package/cjs/lib/Utils/reporting-utils.cjs +263 -0
  278. package/cjs/lib/Utils/rich-message-utils.cjs +434 -0
  279. package/cjs/lib/Utils/session-guard.cjs +163 -0
  280. package/cjs/lib/Utils/signal.cjs +214 -0
  281. package/cjs/lib/Utils/stanza-ack.cjs +41 -0
  282. package/cjs/lib/Utils/sync-action-utils.cjs +54 -0
  283. package/cjs/lib/Utils/tc-token-utils.cjs +174 -0
  284. package/cjs/lib/Utils/text-sticker.cjs +174 -0
  285. package/cjs/lib/Utils/use-multi-file-auth-state.cjs +125 -0
  286. package/cjs/lib/Utils/use-single-file-auth-state.cjs +113 -0
  287. package/cjs/lib/Utils/use-sqlite-auth-state.cjs +145 -0
  288. package/cjs/lib/Utils/validate-connection.cjs +210 -0
  289. package/cjs/lib/WABinary/constants.cjs +1470 -0
  290. package/cjs/lib/WABinary/decode.cjs +301 -0
  291. package/cjs/lib/WABinary/encode.cjs +257 -0
  292. package/cjs/lib/WABinary/generic-utils.cjs +240 -0
  293. package/cjs/lib/WABinary/index.cjs +22 -0
  294. package/cjs/lib/WABinary/jid-utils.cjs +114 -0
  295. package/cjs/lib/WABinary/types.cjs +37 -0
  296. package/cjs/lib/WAM/BinaryInfo.cjs +14 -0
  297. package/cjs/lib/WAM/constants.cjs +22856 -0
  298. package/cjs/lib/WAM/encode.cjs +154 -0
  299. package/cjs/lib/WAM/index.cjs +20 -0
  300. package/cjs/lib/WAUSync/Protocols/USyncContactProtocol.cjs +56 -0
  301. package/cjs/lib/WAUSync/Protocols/USyncDeviceProtocol.cjs +58 -0
  302. package/cjs/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.cjs +31 -0
  303. package/cjs/lib/WAUSync/Protocols/USyncStatusProtocol.cjs +42 -0
  304. package/cjs/lib/WAUSync/Protocols/USyncUsernameProtocol.cjs +29 -0
  305. package/cjs/lib/WAUSync/Protocols/UsyncBotProfileProtocol.cjs +55 -0
  306. package/cjs/lib/WAUSync/Protocols/UsyncLIDProtocol.cjs +33 -0
  307. package/cjs/lib/WAUSync/Protocols/index.cjs +22 -0
  308. package/cjs/lib/WAUSync/USyncQuery.cjs +102 -0
  309. package/cjs/lib/WAUSync/USyncUser.cjs +35 -0
  310. package/cjs/lib/WAUSync/index.cjs +20 -0
  311. package/cjs/lib/index.cjs +372 -0
  312. package/cjs/lib/plugins/loader.cjs +117 -0
  313. package/lib/Defaults/index.js +1 -1
  314. package/lib/Socket/socket.js +3 -3
  315. package/lib/Telegram/esm-bridge.mjs +1 -1
  316. package/package.json +11 -6
@@ -0,0 +1,294 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /** @module CommandInteraction */
7
+ const Interaction_1 = __importDefault(require("./Interaction.cjs"));
8
+ const Attachment_1 = __importDefault(require("./Attachment.cjs"));
9
+ const Member_1 = __importDefault(require("./Member.cjs"));
10
+ const Message_1 = __importDefault(require("./Message.cjs"));
11
+ const Role_1 = __importDefault(require("./Role.cjs"));
12
+ const User_1 = __importDefault(require("./User.cjs"));
13
+ const Permission_1 = __importDefault(require("./Permission.cjs"));
14
+ const GuildChannel_1 = __importDefault(require("./GuildChannel.cjs"));
15
+ const InteractionResolvedChannel_1 = __importDefault(require("./InteractionResolvedChannel.cjs"));
16
+ const TypedCollection_1 = __importDefault(require("../util/TypedCollection.cjs"));
17
+ const Constants_1 = require("../Constants.cjs");
18
+ const InteractionOptionsWrapper_1 = __importDefault(require("../util/interactions/InteractionOptionsWrapper.cjs"));
19
+ const Errors_1 = require("../util/Errors.cjs");
20
+ const MessageInteractionResponse_1 = __importDefault(require("../util/interactions/MessageInteractionResponse.cjs"));
21
+ /** Represents a command interaction. */
22
+ class CommandInteraction extends Interaction_1.default {
23
+ constructor(data, client) {
24
+ super(data, client);
25
+ this.appPermissions = new Permission_1.default(data.app_permissions ?? "0");
26
+ this.attachmentSizeLimit = data.attachment_size_limit;
27
+ this.authorizingIntegrationOwners = data.authorizing_integration_owners;
28
+ this.channelID = data.channel_id;
29
+ this.context = data.context;
30
+ const resolved = {
31
+ attachments: new TypedCollection_1.default(Attachment_1.default, client),
32
+ channels: new TypedCollection_1.default(InteractionResolvedChannel_1.default, client),
33
+ members: new TypedCollection_1.default(Member_1.default, client),
34
+ messages: new TypedCollection_1.default(Message_1.default, client),
35
+ roles: new TypedCollection_1.default(Role_1.default, client),
36
+ users: new TypedCollection_1.default(User_1.default, client)
37
+ };
38
+ this.entitlements = data.entitlements?.map(entitlement => client.util.updateEntitlement(entitlement)) ?? [];
39
+ this.guildID = (data.guild_id ?? null);
40
+ this.guildLocale = data.guild_locale;
41
+ this.guildPartial = data.guild;
42
+ this.locale = data.locale;
43
+ this.member = (data.member === undefined ? null : this.client.util.updateMember(data.guild_id, data.member.user.id, data.member));
44
+ this.memberPermissions = (data.member === undefined ? null : new Permission_1.default(data.member.permissions));
45
+ this.user = client.users.update((data.user ?? data.member.user));
46
+ if (data.data.resolved) {
47
+ if (data.data.resolved.attachments) {
48
+ for (const attachment of Object.values(data.data.resolved.attachments))
49
+ resolved.attachments.update(attachment);
50
+ }
51
+ if (data.data.resolved.channels) {
52
+ for (const channel of Object.values(data.data.resolved.channels))
53
+ resolved.channels.update(channel);
54
+ }
55
+ if (data.data.resolved.members) {
56
+ for (const [id, member] of Object.entries(data.data.resolved.members)) {
57
+ const m = member;
58
+ m.user = data.data.resolved.users[id];
59
+ resolved.members.add(client.util.updateMember(data.guild_id, id, m));
60
+ }
61
+ }
62
+ if (data.data.resolved.messages) {
63
+ for (const message of Object.values(data.data.resolved.messages)) {
64
+ const channel = client.getChannel(message.channel_id);
65
+ if (channel && "messages" in channel) {
66
+ resolved.messages.add(channel.messages.update(message));
67
+ }
68
+ else {
69
+ resolved.messages.update(message);
70
+ }
71
+ }
72
+ }
73
+ if (data.data.resolved.roles) {
74
+ for (const role of Object.values(data.data.resolved.roles)) {
75
+ try {
76
+ resolved.roles.add(this.guild?.roles.update(role, this.guildID) ?? new Role_1.default(role, client, this.guildID));
77
+ }
78
+ catch {
79
+ resolved.roles.add(new Role_1.default(role, client, this.guildID));
80
+ }
81
+ }
82
+ }
83
+ if (data.data.resolved.users) {
84
+ for (const user of Object.values(data.data.resolved.users))
85
+ resolved.users.add(client.users.update(user));
86
+ }
87
+ }
88
+ this.data = {
89
+ guildID: data.data.guild_id,
90
+ id: data.data.id,
91
+ name: data.data.name,
92
+ options: new InteractionOptionsWrapper_1.default(data.data.options ?? [], resolved ?? null),
93
+ resolved,
94
+ target: null,
95
+ targetID: data.data.target_id,
96
+ type: data.data.type
97
+ };
98
+ if (this.data.targetID) {
99
+ if (this.data.type === Constants_1.ApplicationCommandTypes.USER) {
100
+ this.data.target = resolved.users.get(this.data.targetID);
101
+ }
102
+ else if (this.data.type === Constants_1.ApplicationCommandTypes.MESSAGE) {
103
+ this.data.target = resolved.messages.get(this.data.targetID);
104
+ }
105
+ }
106
+ }
107
+ /** The channel this interaction was sent from. */
108
+ get channel() {
109
+ return this._cachedChannel ?? (this._cachedChannel = this.client.getChannel(this.channelID));
110
+ }
111
+ /** The guild this interaction was sent from, if applicable. This will throw an error if the guild is not cached. */
112
+ get guild() {
113
+ if (this.guildID !== null && this._cachedGuild !== null) {
114
+ this._cachedGuild ?? (this._cachedGuild = this.client.guilds.get(this.guildID));
115
+ if (!this._cachedGuild) {
116
+ throw new Errors_1.UncachedError(this, "guild", "GUILDS", this.client);
117
+ }
118
+ return this._cachedGuild;
119
+ }
120
+ return this._cachedGuild === null ? this._cachedGuild : (this._cachedGuild = null);
121
+ }
122
+ async createFollowup(content, options) {
123
+ if (typeof content === "string") {
124
+ options = {
125
+ ...options,
126
+ content
127
+ };
128
+ }
129
+ else
130
+ options = content;
131
+ const message = await this.client.rest.interactions.createFollowupMessage(this.applicationID, this.token, options);
132
+ return new MessageInteractionResponse_1.default(this, message, "followup", null);
133
+ }
134
+ async createMessage(content, options) {
135
+ if (typeof content === "string") {
136
+ options = {
137
+ ...options,
138
+ content
139
+ };
140
+ }
141
+ else
142
+ options = content;
143
+ if (this.acknowledged) {
144
+ throw new TypeError("Interactions cannot have more than one initial response.");
145
+ }
146
+ this.acknowledged = true;
147
+ const cb = await this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.CHANNEL_MESSAGE_WITH_SOURCE, data: options }, true);
148
+ return new MessageInteractionResponse_1.default(this, null, "initial", cb);
149
+ }
150
+ /**
151
+ * Respond to this interaction with a modal. This is an initial response, and more than one initial response cannot be used.
152
+ * @param options The options for the modal.
153
+ */
154
+ async createModal(options) {
155
+ if (this.acknowledged) {
156
+ throw new TypeError("Interactions cannot have more than one initial response.");
157
+ }
158
+ this.acknowledged = true;
159
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.MODAL, data: options }, true);
160
+ }
161
+ /**
162
+ * Defer this interaction. This is an initial response, and more than one initial response cannot be used.
163
+ * @param flags The [flags](https://discord.com/developers/docs/resources/channel#message-object-message-flags) to respond with.
164
+ */
165
+ async defer(flags) {
166
+ if (this.acknowledged) {
167
+ throw new TypeError("Interactions cannot have more than one initial response.");
168
+ }
169
+ this.acknowledged = true;
170
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, data: { flags } }, true);
171
+ }
172
+ /**
173
+ * Delete a follow-up message.
174
+ * @param messageID The ID of the message.
175
+ */
176
+ async deleteFollowup(messageID) {
177
+ return this.client.rest.interactions.deleteFollowupMessage(this.applicationID, this.token, messageID);
178
+ }
179
+ /**
180
+ * Delete the original interaction response.
181
+ */
182
+ async deleteOriginal() {
183
+ return this.client.rest.interactions.deleteOriginalMessage(this.applicationID, this.token);
184
+ }
185
+ async editFollowup(messageID, content, options) {
186
+ if (typeof content === "string") {
187
+ options = {
188
+ ...options,
189
+ content
190
+ };
191
+ }
192
+ else
193
+ options = content;
194
+ return this.client.rest.interactions.editFollowupMessage(this.applicationID, this.token, messageID, options);
195
+ }
196
+ async editOriginal(content, options) {
197
+ if (typeof content === "string") {
198
+ options = {
199
+ ...options,
200
+ content
201
+ };
202
+ }
203
+ else
204
+ options = content;
205
+ return this.client.rest.interactions.editOriginalMessage(this.applicationID, this.token, options);
206
+ }
207
+ /**
208
+ * Get a followup message.
209
+ * @param messageID The ID of the message.
210
+ */
211
+ async getFollowup(messageID) {
212
+ return this.client.rest.interactions.getFollowupMessage(this.applicationID, this.token, messageID);
213
+ }
214
+ /**
215
+ * Get the original interaction response.
216
+ */
217
+ async getOriginal() {
218
+ return this.client.rest.interactions.getOriginalMessage(this.applicationID, this.token);
219
+ }
220
+ /** Whether this interaction belongs to a cached guild channel. The only difference on using this method over a simple if statement is to easily update all the interaction properties typing definitions based on the channel it belongs to. */
221
+ inCachedGuildChannel() {
222
+ return this.channel instanceof GuildChannel_1.default;
223
+ }
224
+ /** Whether this interaction belongs to a private channel (PrivateChannel or uncached). The only difference on using this method over a simple if statement is to easily update all the interaction properties typing definitions based on the channel it belongs to. */
225
+ inPrivateChannel() {
226
+ return this.guildID === null;
227
+ }
228
+ /** A type guard, checking if this command interaction is a {@link Constants~ApplicationCommandTypes.CHAT_INPUT | Chat Input} command. */
229
+ isChatInputCommand() {
230
+ return this.data.type === Constants_1.ApplicationCommandTypes.CHAT_INPUT;
231
+ }
232
+ /** A type guard, checking if this command interaction is a {@link Constants~ApplicationCommandTypes.MESSAGE | Message} command. */
233
+ isMessageCommand() {
234
+ return this.data.type === Constants_1.ApplicationCommandTypes.MESSAGE;
235
+ }
236
+ /** A type guard, checking if this command interaction is a {@link Constants~ApplicationCommandTypes.PRIMARY_ENTRY_POINT | Primary Entry Point} command. */
237
+ isPrimaryEntryPointCommand() {
238
+ return this.data.type === Constants_1.ApplicationCommandTypes.PRIMARY_ENTRY_POINT;
239
+ }
240
+ /** A type guard, checking if this command interaction is a {@link Constants~ApplicationCommandTypes.USER | User} command. */
241
+ isUserCommand() {
242
+ return this.data.type === Constants_1.ApplicationCommandTypes.USER;
243
+ }
244
+ /**
245
+ * Launch the bot's activity. This is an initial response, and more than one initial response cannot be used.
246
+ */
247
+ async launchActivity() {
248
+ if (this.acknowledged) {
249
+ throw new TypeError("Interactions cannot have more than one initial response.");
250
+ }
251
+ this.acknowledged = true;
252
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.LAUNCH_ACTIVITY }, true);
253
+ }
254
+ /**
255
+ * Show a "premium required" response to the user. This is an initial response, and more than one initial response cannot be used.
256
+ * @deprecated The {@link Constants~InteractionResponseTypes.PREMIUM_REQUIRED | PREMIUM_REQUIRED} interaction response type is now deprecated in favor of using {@link Types/Channels~PremiumButton | custom premium buttons}.
257
+ */
258
+ async premiumRequired() {
259
+ if (this.acknowledged) {
260
+ throw new TypeError("Interactions cannot have more than one initial response.");
261
+ }
262
+ this.acknowledged = true;
263
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.PREMIUM_REQUIRED }, true);
264
+ }
265
+ async reply(content, options) {
266
+ if (typeof content === "string") {
267
+ options = {
268
+ ...options,
269
+ content
270
+ };
271
+ }
272
+ else
273
+ options = content;
274
+ return this.acknowledged ? this.createFollowup(options) : this.createMessage(options);
275
+ }
276
+ toJSON() {
277
+ return {
278
+ ...super.toJSON(),
279
+ appPermissions: this.appPermissions.toJSON(),
280
+ attachmentSizeLimit: this.attachmentSizeLimit,
281
+ authorizingIntegrationOwners: this.authorizingIntegrationOwners,
282
+ channelID: this.channelID,
283
+ context: this.context,
284
+ data: this.data,
285
+ guildID: this.guildID ?? undefined,
286
+ guildLocale: this.guildLocale,
287
+ locale: this.locale,
288
+ member: this.member?.toJSON(),
289
+ type: this.type,
290
+ user: this.user.toJSON()
291
+ };
292
+ }
293
+ }
294
+ exports.default = CommandInteraction;
@@ -0,0 +1,306 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /** @module ComponentInteraction */
7
+ const Interaction_1 = __importDefault(require("./Interaction.cjs"));
8
+ const Message_1 = __importDefault(require("./Message.cjs"));
9
+ const Member_1 = __importDefault(require("./Member.cjs"));
10
+ const Permission_1 = __importDefault(require("./Permission.cjs"));
11
+ const GuildChannel_1 = __importDefault(require("./GuildChannel.cjs"));
12
+ const Role_1 = __importDefault(require("./Role.cjs"));
13
+ const User_1 = __importDefault(require("./User.cjs"));
14
+ const InteractionResolvedChannel_1 = __importDefault(require("./InteractionResolvedChannel.cjs"));
15
+ const Constants_1 = require("../Constants.cjs");
16
+ const SelectMenuValuesWrapper_1 = __importDefault(require("../util/interactions/SelectMenuValuesWrapper.cjs"));
17
+ const TypedCollection_1 = __importDefault(require("../util/TypedCollection.cjs"));
18
+ const Errors_1 = require("../util/Errors.cjs");
19
+ const MessageInteractionResponse_1 = __importDefault(require("../util/interactions/MessageInteractionResponse.cjs"));
20
+ /** Represents a component interaction. */
21
+ class ComponentInteraction extends Interaction_1.default {
22
+ constructor(data, client) {
23
+ super(data, client);
24
+ if (data.message !== undefined && data.guild_id !== undefined) {
25
+ data.message.guild_id = data.guild_id;
26
+ }
27
+ this.appPermissions = new Permission_1.default(data.app_permissions ?? "0");
28
+ this.attachmentSizeLimit = data.attachment_size_limit;
29
+ this.authorizingIntegrationOwners = data.authorizing_integration_owners;
30
+ this.channelID = data.channel_id;
31
+ this.context = data.context;
32
+ this.entitlements = data.entitlements?.map(entitlement => client.util.updateEntitlement(entitlement)) ?? [];
33
+ this.guildID = (data.guild_id ?? null);
34
+ this.guildLocale = data.guild_locale;
35
+ this.guildPartial = data.guild;
36
+ this.locale = data.locale;
37
+ this.member = (data.member === undefined ? null : this.client.util.updateMember(data.guild_id, data.member.user.id, data.member));
38
+ this.memberPermissions = (data.member === undefined ? null : new Permission_1.default(data.member.permissions));
39
+ this.message = (this.channel && "messages" in this.channel && this.channel.messages.update(data.message)) || new Message_1.default(data.message, client);
40
+ this.user = client.users.update((data.user ?? data.member.user));
41
+ switch (data.data.component_type) {
42
+ case Constants_1.ComponentTypes.BUTTON: {
43
+ this.data = {
44
+ componentType: data.data.component_type,
45
+ customID: data.data.custom_id
46
+ };
47
+ break;
48
+ }
49
+ case Constants_1.ComponentTypes.STRING_SELECT:
50
+ case Constants_1.ComponentTypes.USER_SELECT:
51
+ case Constants_1.ComponentTypes.ROLE_SELECT:
52
+ case Constants_1.ComponentTypes.MENTIONABLE_SELECT:
53
+ case Constants_1.ComponentTypes.CHANNEL_SELECT: {
54
+ const resolved = {
55
+ channels: new TypedCollection_1.default(InteractionResolvedChannel_1.default, client),
56
+ members: new TypedCollection_1.default(Member_1.default, client),
57
+ roles: new TypedCollection_1.default(Role_1.default, client),
58
+ users: new TypedCollection_1.default(User_1.default, client)
59
+ };
60
+ if (data.data.resolved) {
61
+ if (data.data.resolved.channels) {
62
+ for (const channel of Object.values(data.data.resolved.channels))
63
+ resolved.channels.update(channel);
64
+ }
65
+ if (data.data.resolved.members) {
66
+ for (const [id, member] of Object.entries(data.data.resolved.members)) {
67
+ const m = member;
68
+ m.user = data.data.resolved.users[id];
69
+ resolved.members.add(client.util.updateMember(data.guild_id, id, m));
70
+ }
71
+ }
72
+ if (data.data.resolved.roles) {
73
+ for (const role of Object.values(data.data.resolved.roles)) {
74
+ try {
75
+ resolved.roles.add(this.guild?.roles.update(role, this.guildID) ?? new Role_1.default(role, client, this.guildID));
76
+ }
77
+ catch {
78
+ resolved.roles.add(new Role_1.default(role, client, this.guildID));
79
+ }
80
+ }
81
+ }
82
+ if (data.data.resolved.users) {
83
+ for (const user of Object.values(data.data.resolved.users))
84
+ resolved.users.add(client.users.update(user));
85
+ }
86
+ }
87
+ this.data = {
88
+ componentType: data.data.component_type,
89
+ customID: data.data.custom_id,
90
+ values: new SelectMenuValuesWrapper_1.default(resolved, data.data.values),
91
+ resolved
92
+ };
93
+ break;
94
+ }
95
+ }
96
+ }
97
+ /** The channel this interaction was sent from. */
98
+ get channel() {
99
+ return this._cachedChannel ?? (this._cachedChannel = this.client.getChannel(this.channelID));
100
+ }
101
+ /** The guild this interaction was sent from, if applicable. This will throw an error if the guild is not cached. */
102
+ get guild() {
103
+ if (this.guildID !== null && this._cachedGuild !== null) {
104
+ this._cachedGuild = this.client.guilds.get(this.guildID);
105
+ if (!this._cachedGuild) {
106
+ throw new Errors_1.UncachedError(this, "guild", "GUILDS", this.client);
107
+ }
108
+ return this._cachedGuild;
109
+ }
110
+ return this._cachedGuild === null ? this._cachedGuild : (this._cachedGuild = null);
111
+ }
112
+ async createFollowup(content, options) {
113
+ if (typeof content === "string") {
114
+ options = {
115
+ ...options,
116
+ content
117
+ };
118
+ }
119
+ else
120
+ options = content;
121
+ const message = await this.client.rest.interactions.createFollowupMessage(this.applicationID, this.token, options);
122
+ return new MessageInteractionResponse_1.default(this, message, "followup", null);
123
+ }
124
+ async createMessage(content, options) {
125
+ if (typeof content === "string") {
126
+ options = {
127
+ ...options,
128
+ content
129
+ };
130
+ }
131
+ else
132
+ options = content;
133
+ if (this.acknowledged) {
134
+ throw new TypeError("Interactions cannot have more than one initial response.");
135
+ }
136
+ this.acknowledged = true;
137
+ const cb = await this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.CHANNEL_MESSAGE_WITH_SOURCE, data: options }, true);
138
+ return new MessageInteractionResponse_1.default(this, null, "initial", cb);
139
+ }
140
+ /**
141
+ * Respond to this interaction with a modal. This is an initial response, and more than one initial response cannot be used.
142
+ * @param options The options for the modal.
143
+ */
144
+ async createModal(options) {
145
+ if (this.acknowledged) {
146
+ throw new TypeError("Interactions cannot have more than one initial response.");
147
+ }
148
+ this.acknowledged = true;
149
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.MODAL, data: options }, true);
150
+ }
151
+ /**
152
+ * Defer this interaction with a `DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE` response. This is an initial response, and more than one initial response cannot be used.
153
+ * @param flags The [flags](https://discord.com/developers/docs/resources/channel#message-object-message-flags) to respond with.
154
+ */
155
+ async defer(flags) {
156
+ if (this.acknowledged) {
157
+ throw new TypeError("Interactions cannot have more than one initial response.");
158
+ }
159
+ this.acknowledged = true;
160
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE, data: { flags } }, true);
161
+ }
162
+ /**
163
+ * Defer this interaction with a `DEFERRED_UPDATE_MESSAGE` response. This is an initial response, and more than one initial response cannot be used.
164
+ * @param flags The [flags](https://discord.com/developers/docs/resources/channel#message-object-message-flags) to respond with.
165
+ */
166
+ async deferUpdate(flags) {
167
+ if (this.acknowledged) {
168
+ throw new TypeError("Interactions cannot have more than one initial response.");
169
+ }
170
+ this.acknowledged = true;
171
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.DEFERRED_UPDATE_MESSAGE, data: { flags } }, true);
172
+ }
173
+ /**
174
+ * Delete a follow-up message.
175
+ * @param messageID The ID of the message.
176
+ */
177
+ async deleteFollowup(messageID) {
178
+ return this.client.rest.interactions.deleteFollowupMessage(this.applicationID, this.token, messageID);
179
+ }
180
+ /**
181
+ * Delete the original interaction response.
182
+ */
183
+ async deleteOriginal() {
184
+ return this.client.rest.interactions.deleteOriginalMessage(this.applicationID, this.token);
185
+ }
186
+ async editFollowup(messageID, content, options) {
187
+ if (typeof content === "string") {
188
+ options = {
189
+ ...options,
190
+ content
191
+ };
192
+ }
193
+ else
194
+ options = content;
195
+ return this.client.rest.interactions.editFollowupMessage(this.applicationID, this.token, messageID, options);
196
+ }
197
+ async editOriginal(content, options) {
198
+ if (typeof content === "string") {
199
+ options = {
200
+ ...options,
201
+ content
202
+ };
203
+ }
204
+ else
205
+ options = content;
206
+ return this.client.rest.interactions.editOriginalMessage(this.applicationID, this.token, options);
207
+ }
208
+ async editParent(content, options) {
209
+ if (typeof content === "string") {
210
+ options = {
211
+ ...options,
212
+ content
213
+ };
214
+ }
215
+ else
216
+ options = content;
217
+ if (this.acknowledged) {
218
+ throw new TypeError("Interactions cannot have more than one initial response.");
219
+ }
220
+ this.acknowledged = true;
221
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.UPDATE_MESSAGE, data: options }, true);
222
+ }
223
+ /**
224
+ * Get a followup message.
225
+ * @param messageID The ID of the message.
226
+ */
227
+ async getFollowup(messageID) {
228
+ return this.client.rest.interactions.getFollowupMessage(this.applicationID, this.token, messageID);
229
+ }
230
+ /**
231
+ * Get the original interaction response.
232
+ */
233
+ async getOriginal() {
234
+ return this.client.rest.interactions.getOriginalMessage(this.applicationID, this.token);
235
+ }
236
+ /** Whether this interaction belongs to a cached guild channel. The only difference on using this method over a simple if statement is to easily update all the interaction properties typing definitions based on the channel it belongs to. */
237
+ inCachedGuildChannel() {
238
+ return this.channel instanceof GuildChannel_1.default;
239
+ }
240
+ /** Whether this interaction belongs to a private channel (PrivateChannel or uncached). The only difference on using this method over a simple if statement is to easily update all the interaction properties typing definitions based on the channel it belongs to. */
241
+ inPrivateChannel() {
242
+ return this.guildID === null;
243
+ }
244
+ /** Whether this interaction is a button interaction. The only difference on using this method over a simple if statement is to easily update all the interaction properties typing definitions based on the component type. */
245
+ isButtonComponentInteraction() {
246
+ return this.data.componentType === Constants_1.ComponentTypes.BUTTON;
247
+ }
248
+ /** Whether this interaction is a select menu interaction. The only difference on using this method over a simple if statement is to easily update all the interaction properties typing definitions based on the component type. */
249
+ isSelectMenuComponentInteraction() {
250
+ return this.data.componentType === Constants_1.ComponentTypes.STRING_SELECT
251
+ || this.data.componentType === Constants_1.ComponentTypes.CHANNEL_SELECT
252
+ || this.data.componentType === Constants_1.ComponentTypes.ROLE_SELECT
253
+ || this.data.componentType === Constants_1.ComponentTypes.MENTIONABLE_SELECT
254
+ || this.data.componentType === Constants_1.ComponentTypes.USER_SELECT;
255
+ }
256
+ /**
257
+ * Launch the bot's activity. This is an initial response, and more than one initial response cannot be used.
258
+ */
259
+ async launchActivity() {
260
+ if (this.acknowledged) {
261
+ throw new TypeError("Interactions cannot have more than one initial response.");
262
+ }
263
+ this.acknowledged = true;
264
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.LAUNCH_ACTIVITY }, true);
265
+ }
266
+ /**
267
+ * Show a "premium required" response to the user. This is an initial response, and more than one initial response cannot be used.
268
+ * @deprecated The {@link Constants~InteractionResponseTypes.PREMIUM_REQUIRED | PREMIUM_REQUIRED} interaction response type is now deprecated in favor of using {@link Types/Channels~PremiumButton | custom premium buttons}.
269
+ */
270
+ async premiumRequired() {
271
+ if (this.acknowledged) {
272
+ throw new TypeError("Interactions cannot have more than one initial response.");
273
+ }
274
+ this.acknowledged = true;
275
+ return this.client.rest.interactions.createInteractionResponse(this.id, this.token, { type: Constants_1.InteractionResponseTypes.PREMIUM_REQUIRED }, true);
276
+ }
277
+ async reply(content, options) {
278
+ if (typeof content === "string") {
279
+ options = {
280
+ ...options,
281
+ content
282
+ };
283
+ }
284
+ else
285
+ options = content;
286
+ return this.acknowledged ? this.createFollowup(options) : this.createMessage(options);
287
+ }
288
+ toJSON() {
289
+ return {
290
+ ...super.toJSON(),
291
+ appPermissions: this.appPermissions.toJSON(),
292
+ attachmentSizeLimit: this.attachmentSizeLimit,
293
+ authorizingIntegrationOwners: this.authorizingIntegrationOwners,
294
+ channelID: this.channelID,
295
+ context: this.context,
296
+ data: this.data,
297
+ guildID: this.guildID ?? undefined,
298
+ guildLocale: this.guildLocale,
299
+ locale: this.locale,
300
+ member: this.member?.toJSON(),
301
+ type: this.type,
302
+ user: this.user.toJSON()
303
+ };
304
+ }
305
+ }
306
+ exports.default = ComponentInteraction;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const BaseEntitlement_1 = __importDefault(require("./BaseEntitlement.cjs"));
7
+ /** Represents an entitlement. */
8
+ class Entitlement extends BaseEntitlement_1.default {
9
+ constructor(data, client) {
10
+ super(data, client);
11
+ this.endsAt = data.ends_at ? new Date(data.ends_at) : null;
12
+ this.startsAt = data.starts_at ? new Date(data.starts_at) : null;
13
+ this.subscriptionID = data.subscription_id;
14
+ }
15
+ toJSON() {
16
+ return {
17
+ ...super.toJSON(),
18
+ endsAt: this.endsAt?.getTime() || null,
19
+ startsAt: this.startsAt?.getTime() || null,
20
+ subscriptionID: this.subscriptionID
21
+ };
22
+ }
23
+ }
24
+ exports.default = Entitlement;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /** @module ExtendedUser */
7
+ const User_1 = __importDefault(require("./User.cjs"));
8
+ /** Represents the currently authenticated user. */
9
+ class ExtendedUser extends User_1.default {
10
+ constructor(data, client) {
11
+ super(data, client);
12
+ this.email = data.email;
13
+ this.flags = data.flags;
14
+ this.verified = !!data.verified;
15
+ this.mfaEnabled = !!data.mfa_enabled;
16
+ this.update(data);
17
+ }
18
+ update(data) {
19
+ super.update(data);
20
+ if (data.email !== undefined) {
21
+ this.email = data.email;
22
+ }
23
+ if (data.flags !== undefined) {
24
+ this.flags = data.flags;
25
+ }
26
+ if (data.locale !== undefined) {
27
+ this.locale = data.locale;
28
+ }
29
+ }
30
+ /**
31
+ * Modify this user.
32
+ * @param options The options for editing the user.
33
+ */
34
+ async edit(options) {
35
+ return this.client.rest.users.editSelf(options);
36
+ }
37
+ toJSON() {
38
+ return {
39
+ ...super.toJSON(),
40
+ email: this.email,
41
+ flags: this.flags,
42
+ locale: this.locale,
43
+ mfaEnabled: this.mfaEnabled,
44
+ verified: this.verified
45
+ };
46
+ }
47
+ }
48
+ exports.default = ExtendedUser;