@neontechspace/fluxerly 1000.0.0-nightly.12

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 (1319) hide show
  1. package/CHANGELOG.md +833 -0
  2. package/LICENSE +201 -0
  3. package/README.md +129 -0
  4. package/agents/AGENTS.md +195 -0
  5. package/dist/api/default/application.d.ts +34 -0
  6. package/dist/api/default/application.d.ts.map +1 -0
  7. package/dist/api/default/application.js +2 -0
  8. package/dist/api/default/application.js.map +1 -0
  9. package/dist/api/default/attachments.d.ts +89 -0
  10. package/dist/api/default/attachments.d.ts.map +1 -0
  11. package/dist/api/default/attachments.js +2 -0
  12. package/dist/api/default/attachments.js.map +1 -0
  13. package/dist/api/default/audit-logs.d.ts +48 -0
  14. package/dist/api/default/audit-logs.d.ts.map +1 -0
  15. package/dist/api/default/audit-logs.js +2 -0
  16. package/dist/api/default/audit-logs.js.map +1 -0
  17. package/dist/api/default/bot.d.ts +200 -0
  18. package/dist/api/default/bot.d.ts.map +1 -0
  19. package/dist/api/default/bot.js +309 -0
  20. package/dist/api/default/bot.js.map +1 -0
  21. package/dist/api/default/cache.d.ts +105 -0
  22. package/dist/api/default/cache.d.ts.map +1 -0
  23. package/dist/api/default/cache.js +2 -0
  24. package/dist/api/default/cache.js.map +1 -0
  25. package/dist/api/default/channels.d.ts +249 -0
  26. package/dist/api/default/channels.d.ts.map +1 -0
  27. package/dist/api/default/channels.js +2 -0
  28. package/dist/api/default/channels.js.map +1 -0
  29. package/dist/api/default/client.d.ts +528 -0
  30. package/dist/api/default/client.d.ts.map +1 -0
  31. package/dist/api/default/client.js +301 -0
  32. package/dist/api/default/client.js.map +1 -0
  33. package/dist/api/default/collectors.d.ts +76 -0
  34. package/dist/api/default/collectors.d.ts.map +1 -0
  35. package/dist/api/default/collectors.js +2 -0
  36. package/dist/api/default/collectors.js.map +1 -0
  37. package/dist/api/default/commands.d.ts +91 -0
  38. package/dist/api/default/commands.d.ts.map +1 -0
  39. package/dist/api/default/commands.js +92 -0
  40. package/dist/api/default/commands.js.map +1 -0
  41. package/dist/api/default/direct-messages.d.ts +111 -0
  42. package/dist/api/default/direct-messages.d.ts.map +1 -0
  43. package/dist/api/default/direct-messages.js +2 -0
  44. package/dist/api/default/direct-messages.js.map +1 -0
  45. package/dist/api/default/discovery.d.ts +76 -0
  46. package/dist/api/default/discovery.d.ts.map +1 -0
  47. package/dist/api/default/discovery.js +2 -0
  48. package/dist/api/default/discovery.js.map +1 -0
  49. package/dist/api/default/emojis.d.ts +88 -0
  50. package/dist/api/default/emojis.d.ts.map +1 -0
  51. package/dist/api/default/emojis.js +2 -0
  52. package/dist/api/default/emojis.js.map +1 -0
  53. package/dist/api/default/events.d.ts +127 -0
  54. package/dist/api/default/events.d.ts.map +1 -0
  55. package/dist/api/default/events.js +2 -0
  56. package/dist/api/default/events.js.map +1 -0
  57. package/dist/api/default/gateway.d.ts +62 -0
  58. package/dist/api/default/gateway.d.ts.map +1 -0
  59. package/dist/api/default/gateway.js +2 -0
  60. package/dist/api/default/gateway.js.map +1 -0
  61. package/dist/api/default/guards.d.ts +87 -0
  62. package/dist/api/default/guards.d.ts.map +1 -0
  63. package/dist/api/default/guards.js +78 -0
  64. package/dist/api/default/guards.js.map +1 -0
  65. package/dist/api/default/guilds.d.ts +230 -0
  66. package/dist/api/default/guilds.d.ts.map +1 -0
  67. package/dist/api/default/guilds.js +2 -0
  68. package/dist/api/default/guilds.js.map +1 -0
  69. package/dist/api/default/helpers.d.ts +79 -0
  70. package/dist/api/default/helpers.d.ts.map +1 -0
  71. package/dist/api/default/helpers.js +79 -0
  72. package/dist/api/default/helpers.js.map +1 -0
  73. package/dist/api/default/instance.d.ts +47 -0
  74. package/dist/api/default/instance.d.ts.map +1 -0
  75. package/dist/api/default/instance.js +2 -0
  76. package/dist/api/default/instance.js.map +1 -0
  77. package/dist/api/default/invites.d.ts +57 -0
  78. package/dist/api/default/invites.d.ts.map +1 -0
  79. package/dist/api/default/invites.js +2 -0
  80. package/dist/api/default/invites.js.map +1 -0
  81. package/dist/api/default/logging.d.ts +37 -0
  82. package/dist/api/default/logging.d.ts.map +1 -0
  83. package/dist/api/default/logging.js +2 -0
  84. package/dist/api/default/logging.js.map +1 -0
  85. package/dist/api/default/members.d.ts +442 -0
  86. package/dist/api/default/members.d.ts.map +1 -0
  87. package/dist/api/default/members.js +2 -0
  88. package/dist/api/default/members.js.map +1 -0
  89. package/dist/api/default/messages.d.ts +898 -0
  90. package/dist/api/default/messages.d.ts.map +1 -0
  91. package/dist/api/default/messages.js +2 -0
  92. package/dist/api/default/messages.js.map +1 -0
  93. package/dist/api/default/oauth.d.ts +168 -0
  94. package/dist/api/default/oauth.d.ts.map +1 -0
  95. package/dist/api/default/oauth.js +84 -0
  96. package/dist/api/default/oauth.js.map +1 -0
  97. package/dist/api/default/permissions.d.ts +44 -0
  98. package/dist/api/default/permissions.d.ts.map +1 -0
  99. package/dist/api/default/permissions.js +2 -0
  100. package/dist/api/default/permissions.js.map +1 -0
  101. package/dist/api/default/presence.d.ts +88 -0
  102. package/dist/api/default/presence.d.ts.map +1 -0
  103. package/dist/api/default/presence.js +2 -0
  104. package/dist/api/default/presence.js.map +1 -0
  105. package/dist/api/default/rest.d.ts +28 -0
  106. package/dist/api/default/rest.d.ts.map +1 -0
  107. package/dist/api/default/rest.js +2 -0
  108. package/dist/api/default/rest.js.map +1 -0
  109. package/dist/api/default/results.d.ts +31 -0
  110. package/dist/api/default/results.d.ts.map +1 -0
  111. package/dist/api/default/results.js +14 -0
  112. package/dist/api/default/results.js.map +1 -0
  113. package/dist/api/default/roles.d.ts +119 -0
  114. package/dist/api/default/roles.d.ts.map +1 -0
  115. package/dist/api/default/roles.js +2 -0
  116. package/dist/api/default/roles.js.map +1 -0
  117. package/dist/api/default/stickers.d.ts +92 -0
  118. package/dist/api/default/stickers.d.ts.map +1 -0
  119. package/dist/api/default/stickers.js +2 -0
  120. package/dist/api/default/stickers.js.map +1 -0
  121. package/dist/api/default/supervisor.d.ts +51 -0
  122. package/dist/api/default/supervisor.d.ts.map +1 -0
  123. package/dist/api/default/supervisor.js +53 -0
  124. package/dist/api/default/supervisor.js.map +1 -0
  125. package/dist/api/default/threads.d.ts +158 -0
  126. package/dist/api/default/threads.d.ts.map +1 -0
  127. package/dist/api/default/threads.js +2 -0
  128. package/dist/api/default/threads.js.map +1 -0
  129. package/dist/api/default/users.d.ts +73 -0
  130. package/dist/api/default/users.d.ts.map +1 -0
  131. package/dist/api/default/users.js +2 -0
  132. package/dist/api/default/users.js.map +1 -0
  133. package/dist/api/default/webhook-client.d.ts +149 -0
  134. package/dist/api/default/webhook-client.d.ts.map +1 -0
  135. package/dist/api/default/webhook-client.js +69 -0
  136. package/dist/api/default/webhook-client.js.map +1 -0
  137. package/dist/api/default/webhooks.d.ts +62 -0
  138. package/dist/api/default/webhooks.d.ts.map +1 -0
  139. package/dist/api/default/webhooks.js +2 -0
  140. package/dist/api/default/webhooks.js.map +1 -0
  141. package/dist/api/effect/application.d.ts +29 -0
  142. package/dist/api/effect/application.d.ts.map +1 -0
  143. package/dist/api/effect/application.js +2 -0
  144. package/dist/api/effect/application.js.map +1 -0
  145. package/dist/api/effect/attachments.d.ts +84 -0
  146. package/dist/api/effect/attachments.d.ts.map +1 -0
  147. package/dist/api/effect/attachments.js +2 -0
  148. package/dist/api/effect/attachments.js.map +1 -0
  149. package/dist/api/effect/audit-logs.d.ts +42 -0
  150. package/dist/api/effect/audit-logs.d.ts.map +1 -0
  151. package/dist/api/effect/audit-logs.js +2 -0
  152. package/dist/api/effect/audit-logs.js.map +1 -0
  153. package/dist/api/effect/bot.d.ts +233 -0
  154. package/dist/api/effect/bot.d.ts.map +1 -0
  155. package/dist/api/effect/bot.js +230 -0
  156. package/dist/api/effect/bot.js.map +1 -0
  157. package/dist/api/effect/cache.d.ts +103 -0
  158. package/dist/api/effect/cache.d.ts.map +1 -0
  159. package/dist/api/effect/cache.js +2 -0
  160. package/dist/api/effect/cache.js.map +1 -0
  161. package/dist/api/effect/channels.d.ts +231 -0
  162. package/dist/api/effect/channels.d.ts.map +1 -0
  163. package/dist/api/effect/channels.js +2 -0
  164. package/dist/api/effect/channels.js.map +1 -0
  165. package/dist/api/effect/client.d.ts +622 -0
  166. package/dist/api/effect/client.d.ts.map +1 -0
  167. package/dist/api/effect/client.js +191 -0
  168. package/dist/api/effect/client.js.map +1 -0
  169. package/dist/api/effect/collectors.d.ts +90 -0
  170. package/dist/api/effect/collectors.d.ts.map +1 -0
  171. package/dist/api/effect/collectors.js +2 -0
  172. package/dist/api/effect/collectors.js.map +1 -0
  173. package/dist/api/effect/commands.d.ts +86 -0
  174. package/dist/api/effect/commands.d.ts.map +1 -0
  175. package/dist/api/effect/commands.js +87 -0
  176. package/dist/api/effect/commands.js.map +1 -0
  177. package/dist/api/effect/direct-messages.d.ts +102 -0
  178. package/dist/api/effect/direct-messages.d.ts.map +1 -0
  179. package/dist/api/effect/direct-messages.js +2 -0
  180. package/dist/api/effect/direct-messages.js.map +1 -0
  181. package/dist/api/effect/discovery.d.ts +68 -0
  182. package/dist/api/effect/discovery.d.ts.map +1 -0
  183. package/dist/api/effect/discovery.js +2 -0
  184. package/dist/api/effect/discovery.js.map +1 -0
  185. package/dist/api/effect/emojis.d.ts +77 -0
  186. package/dist/api/effect/emojis.d.ts.map +1 -0
  187. package/dist/api/effect/emojis.js +2 -0
  188. package/dist/api/effect/emojis.js.map +1 -0
  189. package/dist/api/effect/events.d.ts +78 -0
  190. package/dist/api/effect/events.d.ts.map +1 -0
  191. package/dist/api/effect/events.js +12 -0
  192. package/dist/api/effect/events.js.map +1 -0
  193. package/dist/api/effect/failures.d.ts +14 -0
  194. package/dist/api/effect/failures.d.ts.map +1 -0
  195. package/dist/api/effect/failures.js +2 -0
  196. package/dist/api/effect/failures.js.map +1 -0
  197. package/dist/api/effect/gateway.d.ts +63 -0
  198. package/dist/api/effect/gateway.d.ts.map +1 -0
  199. package/dist/api/effect/gateway.js +2 -0
  200. package/dist/api/effect/gateway.js.map +1 -0
  201. package/dist/api/effect/guards.d.ts +91 -0
  202. package/dist/api/effect/guards.d.ts.map +1 -0
  203. package/dist/api/effect/guards.js +94 -0
  204. package/dist/api/effect/guards.js.map +1 -0
  205. package/dist/api/effect/guilds.d.ts +221 -0
  206. package/dist/api/effect/guilds.d.ts.map +1 -0
  207. package/dist/api/effect/guilds.js +2 -0
  208. package/dist/api/effect/guilds.js.map +1 -0
  209. package/dist/api/effect/helpers.d.ts +300 -0
  210. package/dist/api/effect/helpers.d.ts.map +1 -0
  211. package/dist/api/effect/helpers.js +156 -0
  212. package/dist/api/effect/helpers.js.map +1 -0
  213. package/dist/api/effect/hierarchy.d.ts +26 -0
  214. package/dist/api/effect/hierarchy.d.ts.map +1 -0
  215. package/dist/api/effect/hierarchy.js +26 -0
  216. package/dist/api/effect/hierarchy.js.map +1 -0
  217. package/dist/api/effect/instance.d.ts +46 -0
  218. package/dist/api/effect/instance.d.ts.map +1 -0
  219. package/dist/api/effect/instance.js +8 -0
  220. package/dist/api/effect/instance.js.map +1 -0
  221. package/dist/api/effect/invites.d.ts +49 -0
  222. package/dist/api/effect/invites.d.ts.map +1 -0
  223. package/dist/api/effect/invites.js +2 -0
  224. package/dist/api/effect/invites.js.map +1 -0
  225. package/dist/api/effect/logging.d.ts +37 -0
  226. package/dist/api/effect/logging.d.ts.map +1 -0
  227. package/dist/api/effect/logging.js +2 -0
  228. package/dist/api/effect/logging.js.map +1 -0
  229. package/dist/api/effect/members.d.ts +433 -0
  230. package/dist/api/effect/members.d.ts.map +1 -0
  231. package/dist/api/effect/members.js +2 -0
  232. package/dist/api/effect/members.js.map +1 -0
  233. package/dist/api/effect/messages.d.ts +877 -0
  234. package/dist/api/effect/messages.d.ts.map +1 -0
  235. package/dist/api/effect/messages.js +2 -0
  236. package/dist/api/effect/messages.js.map +1 -0
  237. package/dist/api/effect/oauth.d.ts +148 -0
  238. package/dist/api/effect/oauth.d.ts.map +1 -0
  239. package/dist/api/effect/oauth.js +51 -0
  240. package/dist/api/effect/oauth.js.map +1 -0
  241. package/dist/api/effect/permissions.d.ts +41 -0
  242. package/dist/api/effect/permissions.d.ts.map +1 -0
  243. package/dist/api/effect/permissions.js +2 -0
  244. package/dist/api/effect/permissions.js.map +1 -0
  245. package/dist/api/effect/presence.d.ts +83 -0
  246. package/dist/api/effect/presence.d.ts.map +1 -0
  247. package/dist/api/effect/presence.js +2 -0
  248. package/dist/api/effect/presence.js.map +1 -0
  249. package/dist/api/effect/rest.d.ts +27 -0
  250. package/dist/api/effect/rest.d.ts.map +1 -0
  251. package/dist/api/effect/rest.js +2 -0
  252. package/dist/api/effect/rest.js.map +1 -0
  253. package/dist/api/effect/roles.d.ts +104 -0
  254. package/dist/api/effect/roles.d.ts.map +1 -0
  255. package/dist/api/effect/roles.js +2 -0
  256. package/dist/api/effect/roles.js.map +1 -0
  257. package/dist/api/effect/service.d.ts +76 -0
  258. package/dist/api/effect/service.d.ts.map +1 -0
  259. package/dist/api/effect/service.js +79 -0
  260. package/dist/api/effect/service.js.map +1 -0
  261. package/dist/api/effect/stickers.d.ts +81 -0
  262. package/dist/api/effect/stickers.d.ts.map +1 -0
  263. package/dist/api/effect/stickers.js +2 -0
  264. package/dist/api/effect/stickers.js.map +1 -0
  265. package/dist/api/effect/supervisor.d.ts +56 -0
  266. package/dist/api/effect/supervisor.d.ts.map +1 -0
  267. package/dist/api/effect/supervisor.js +58 -0
  268. package/dist/api/effect/supervisor.js.map +1 -0
  269. package/dist/api/effect/threads.d.ts +154 -0
  270. package/dist/api/effect/threads.d.ts.map +1 -0
  271. package/dist/api/effect/threads.js +2 -0
  272. package/dist/api/effect/threads.js.map +1 -0
  273. package/dist/api/effect/users.d.ts +62 -0
  274. package/dist/api/effect/users.d.ts.map +1 -0
  275. package/dist/api/effect/users.js +2 -0
  276. package/dist/api/effect/users.js.map +1 -0
  277. package/dist/api/effect/webhook-client.d.ts +140 -0
  278. package/dist/api/effect/webhook-client.d.ts.map +1 -0
  279. package/dist/api/effect/webhook-client.js +50 -0
  280. package/dist/api/effect/webhook-client.js.map +1 -0
  281. package/dist/api/effect/webhooks.d.ts +54 -0
  282. package/dist/api/effect/webhooks.d.ts.map +1 -0
  283. package/dist/api/effect/webhooks.js +2 -0
  284. package/dist/api/effect/webhooks.js.map +1 -0
  285. package/dist/api-errors.d.ts +609 -0
  286. package/dist/api-errors.d.ts.map +1 -0
  287. package/dist/api-errors.js +589 -0
  288. package/dist/api-errors.js.map +1 -0
  289. package/dist/application.d.ts +85 -0
  290. package/dist/application.d.ts.map +1 -0
  291. package/dist/application.js +44 -0
  292. package/dist/application.js.map +1 -0
  293. package/dist/assets.d.ts +197 -0
  294. package/dist/assets.d.ts.map +1 -0
  295. package/dist/assets.js +419 -0
  296. package/dist/assets.js.map +1 -0
  297. package/dist/attachments.d.ts +400 -0
  298. package/dist/attachments.d.ts.map +1 -0
  299. package/dist/attachments.js +88 -0
  300. package/dist/attachments.js.map +1 -0
  301. package/dist/audit-logs.d.ts +292 -0
  302. package/dist/audit-logs.d.ts.map +1 -0
  303. package/dist/audit-logs.js +46 -0
  304. package/dist/audit-logs.js.map +1 -0
  305. package/dist/bot-runner.d.ts +69 -0
  306. package/dist/bot-runner.d.ts.map +1 -0
  307. package/dist/bot-runner.js +41 -0
  308. package/dist/bot-runner.js.map +1 -0
  309. package/dist/builders.d.ts +153 -0
  310. package/dist/builders.d.ts.map +1 -0
  311. package/dist/builders.js +326 -0
  312. package/dist/builders.js.map +1 -0
  313. package/dist/cache.d.ts +187 -0
  314. package/dist/cache.d.ts.map +1 -0
  315. package/dist/cache.js +2 -0
  316. package/dist/cache.js.map +1 -0
  317. package/dist/channels.d.ts +903 -0
  318. package/dist/channels.d.ts.map +1 -0
  319. package/dist/channels.js +125 -0
  320. package/dist/channels.js.map +1 -0
  321. package/dist/cli.d.ts +9 -0
  322. package/dist/cli.d.ts.map +1 -0
  323. package/dist/cli.js +65 -0
  324. package/dist/cli.js.map +1 -0
  325. package/dist/client.d.ts +645 -0
  326. package/dist/client.d.ts.map +1 -0
  327. package/dist/client.js +2 -0
  328. package/dist/client.js.map +1 -0
  329. package/dist/collectors.d.ts +205 -0
  330. package/dist/collectors.d.ts.map +1 -0
  331. package/dist/collectors.js +71 -0
  332. package/dist/collectors.js.map +1 -0
  333. package/dist/colors.d.ts +55 -0
  334. package/dist/colors.d.ts.map +1 -0
  335. package/dist/colors.js +40 -0
  336. package/dist/colors.js.map +1 -0
  337. package/dist/command-arguments.d.ts +353 -0
  338. package/dist/command-arguments.d.ts.map +1 -0
  339. package/dist/command-arguments.js +2 -0
  340. package/dist/command-arguments.js.map +1 -0
  341. package/dist/command-help.d.ts +54 -0
  342. package/dist/command-help.d.ts.map +1 -0
  343. package/dist/command-help.js +2 -0
  344. package/dist/command-help.js.map +1 -0
  345. package/dist/commands.d.ts +328 -0
  346. package/dist/commands.d.ts.map +1 -0
  347. package/dist/commands.js +62 -0
  348. package/dist/commands.js.map +1 -0
  349. package/dist/counts.d.ts +124 -0
  350. package/dist/counts.d.ts.map +1 -0
  351. package/dist/counts.js +52 -0
  352. package/dist/counts.js.map +1 -0
  353. package/dist/default-commands.d.ts +400 -0
  354. package/dist/default-commands.d.ts.map +1 -0
  355. package/dist/default-commands.js +488 -0
  356. package/dist/default-commands.js.map +1 -0
  357. package/dist/default-supervisor.d.ts +111 -0
  358. package/dist/default-supervisor.d.ts.map +1 -0
  359. package/dist/default-supervisor.js +277 -0
  360. package/dist/default-supervisor.js.map +1 -0
  361. package/dist/discovery.d.ts +223 -0
  362. package/dist/discovery.d.ts.map +1 -0
  363. package/dist/discovery.js +18 -0
  364. package/dist/discovery.js.map +1 -0
  365. package/dist/effect-testing.d.ts +388 -0
  366. package/dist/effect-testing.d.ts.map +1 -0
  367. package/dist/effect-testing.js +261 -0
  368. package/dist/effect-testing.js.map +1 -0
  369. package/dist/effect.d.ts +220 -0
  370. package/dist/effect.d.ts.map +1 -0
  371. package/dist/effect.js +101 -0
  372. package/dist/effect.js.map +1 -0
  373. package/dist/embeds.d.ts +243 -0
  374. package/dist/embeds.d.ts.map +1 -0
  375. package/dist/embeds.js +2 -0
  376. package/dist/embeds.js.map +1 -0
  377. package/dist/error-tools.d.ts +101 -0
  378. package/dist/error-tools.d.ts.map +1 -0
  379. package/dist/error-tools.js +125 -0
  380. package/dist/error-tools.js.map +1 -0
  381. package/dist/errors.d.ts +386 -0
  382. package/dist/errors.d.ts.map +1 -0
  383. package/dist/errors.js +440 -0
  384. package/dist/errors.js.map +1 -0
  385. package/dist/events.d.ts +798 -0
  386. package/dist/events.d.ts.map +1 -0
  387. package/dist/events.js +2 -0
  388. package/dist/events.js.map +1 -0
  389. package/dist/expressions.d.ts +188 -0
  390. package/dist/expressions.d.ts.map +1 -0
  391. package/dist/expressions.js +2 -0
  392. package/dist/expressions.js.map +1 -0
  393. package/dist/failures.d.ts +53 -0
  394. package/dist/failures.d.ts.map +1 -0
  395. package/dist/failures.js +2 -0
  396. package/dist/failures.js.map +1 -0
  397. package/dist/gateway.d.ts +48 -0
  398. package/dist/gateway.d.ts.map +1 -0
  399. package/dist/gateway.js +60 -0
  400. package/dist/gateway.js.map +1 -0
  401. package/dist/guilds.d.ts +923 -0
  402. package/dist/guilds.d.ts.map +1 -0
  403. package/dist/guilds.js +204 -0
  404. package/dist/guilds.js.map +1 -0
  405. package/dist/helpers.d.ts +423 -0
  406. package/dist/helpers.d.ts.map +1 -0
  407. package/dist/helpers.js +434 -0
  408. package/dist/helpers.js.map +1 -0
  409. package/dist/index.d.ts +228 -0
  410. package/dist/index.d.ts.map +1 -0
  411. package/dist/index.js +109 -0
  412. package/dist/index.js.map +1 -0
  413. package/dist/input-validation.d.ts +51 -0
  414. package/dist/input-validation.d.ts.map +1 -0
  415. package/dist/input-validation.js +34 -0
  416. package/dist/input-validation.js.map +1 -0
  417. package/dist/instance.d.ts +101 -0
  418. package/dist/instance.d.ts.map +1 -0
  419. package/dist/instance.js +2 -0
  420. package/dist/instance.js.map +1 -0
  421. package/dist/internal/agents-section.d.ts +22 -0
  422. package/dist/internal/agents-section.d.ts.map +1 -0
  423. package/dist/internal/agents-section.js +101 -0
  424. package/dist/internal/agents-section.js.map +1 -0
  425. package/dist/internal/application.d.ts +16 -0
  426. package/dist/internal/application.d.ts.map +1 -0
  427. package/dist/internal/application.js +33 -0
  428. package/dist/internal/application.js.map +1 -0
  429. package/dist/internal/attachment-refresh.d.ts +18 -0
  430. package/dist/internal/attachment-refresh.d.ts.map +1 -0
  431. package/dist/internal/attachment-refresh.js +39 -0
  432. package/dist/internal/attachment-refresh.js.map +1 -0
  433. package/dist/internal/attachments.d.ts +45 -0
  434. package/dist/internal/attachments.d.ts.map +1 -0
  435. package/dist/internal/attachments.js +230 -0
  436. package/dist/internal/attachments.js.map +1 -0
  437. package/dist/internal/audit-logs.d.ts +13 -0
  438. package/dist/internal/audit-logs.d.ts.map +1 -0
  439. package/dist/internal/audit-logs.js +295 -0
  440. package/dist/internal/audit-logs.js.map +1 -0
  441. package/dist/internal/audit.d.ts +12 -0
  442. package/dist/internal/audit.d.ts.map +1 -0
  443. package/dist/internal/audit.js +22 -0
  444. package/dist/internal/audit.js.map +1 -0
  445. package/dist/internal/binding/default-adapters.d.ts +22 -0
  446. package/dist/internal/binding/default-adapters.d.ts.map +1 -0
  447. package/dist/internal/binding/default-adapters.js +304 -0
  448. package/dist/internal/binding/default-adapters.js.map +1 -0
  449. package/dist/internal/binding/default.d.ts +45 -0
  450. package/dist/internal/binding/default.d.ts.map +1 -0
  451. package/dist/internal/binding/default.js +86 -0
  452. package/dist/internal/binding/default.js.map +1 -0
  453. package/dist/internal/binding/execute.d.ts +51 -0
  454. package/dist/internal/binding/execute.d.ts.map +1 -0
  455. package/dist/internal/binding/execute.js +123 -0
  456. package/dist/internal/binding/execute.js.map +1 -0
  457. package/dist/internal/binding/native-adapters.d.ts +23 -0
  458. package/dist/internal/binding/native-adapters.d.ts.map +1 -0
  459. package/dist/internal/binding/native-adapters.js +90 -0
  460. package/dist/internal/binding/native-adapters.js.map +1 -0
  461. package/dist/internal/binding/native.d.ts +41 -0
  462. package/dist/internal/binding/native.d.ts.map +1 -0
  463. package/dist/internal/binding/native.js +34 -0
  464. package/dist/internal/binding/native.js.map +1 -0
  465. package/dist/internal/binding/operations.d.ts +361 -0
  466. package/dist/internal/binding/operations.d.ts.map +1 -0
  467. package/dist/internal/binding/operations.js +272 -0
  468. package/dist/internal/binding/operations.js.map +1 -0
  469. package/dist/internal/bot-runner.d.ts +65 -0
  470. package/dist/internal/bot-runner.d.ts.map +1 -0
  471. package/dist/internal/bot-runner.js +363 -0
  472. package/dist/internal/bot-runner.js.map +1 -0
  473. package/dist/internal/cache-changes.d.ts +43 -0
  474. package/dist/internal/cache-changes.d.ts.map +1 -0
  475. package/dist/internal/cache-changes.js +320 -0
  476. package/dist/internal/cache-changes.js.map +1 -0
  477. package/dist/internal/cache.d.ts +57 -0
  478. package/dist/internal/cache.d.ts.map +1 -0
  479. package/dist/internal/cache.js +318 -0
  480. package/dist/internal/cache.js.map +1 -0
  481. package/dist/internal/calls.d.ts +16 -0
  482. package/dist/internal/calls.d.ts.map +1 -0
  483. package/dist/internal/calls.js +108 -0
  484. package/dist/internal/calls.js.map +1 -0
  485. package/dist/internal/channel-cache.d.ts +69 -0
  486. package/dist/internal/channel-cache.d.ts.map +1 -0
  487. package/dist/internal/channel-cache.js +413 -0
  488. package/dist/internal/channel-cache.js.map +1 -0
  489. package/dist/internal/channel-decode.d.ts +44 -0
  490. package/dist/internal/channel-decode.d.ts.map +1 -0
  491. package/dist/internal/channel-decode.js +377 -0
  492. package/dist/internal/channel-decode.js.map +1 -0
  493. package/dist/internal/channels.d.ts +60 -0
  494. package/dist/internal/channels.d.ts.map +1 -0
  495. package/dist/internal/channels.js +605 -0
  496. package/dist/internal/channels.js.map +1 -0
  497. package/dist/internal/client/backoff.d.ts +42 -0
  498. package/dist/internal/client/backoff.d.ts.map +1 -0
  499. package/dist/internal/client/backoff.js +36 -0
  500. package/dist/internal/client/backoff.js.map +1 -0
  501. package/dist/internal/client/configuration-fields.d.ts +14 -0
  502. package/dist/internal/client/configuration-fields.d.ts.map +1 -0
  503. package/dist/internal/client/configuration-fields.js +11 -0
  504. package/dist/internal/client/configuration-fields.js.map +1 -0
  505. package/dist/internal/client/drain.d.ts +33 -0
  506. package/dist/internal/client/drain.d.ts.map +1 -0
  507. package/dist/internal/client/drain.js +109 -0
  508. package/dist/internal/client/drain.js.map +1 -0
  509. package/dist/internal/client/intake.d.ts +27 -0
  510. package/dist/internal/client/intake.d.ts.map +1 -0
  511. package/dist/internal/client/intake.js +198 -0
  512. package/dist/internal/client/intake.js.map +1 -0
  513. package/dist/internal/client/lifetime.d.ts +35 -0
  514. package/dist/internal/client/lifetime.d.ts.map +1 -0
  515. package/dist/internal/client/lifetime.js +109 -0
  516. package/dist/internal/client/lifetime.js.map +1 -0
  517. package/dist/internal/client/shard-loop.d.ts +93 -0
  518. package/dist/internal/client/shard-loop.d.ts.map +1 -0
  519. package/dist/internal/client/shard-loop.js +452 -0
  520. package/dist/internal/client/shard-loop.js.map +1 -0
  521. package/dist/internal/client-registry.d.ts +26 -0
  522. package/dist/internal/client-registry.d.ts.map +1 -0
  523. package/dist/internal/client-registry.js +11 -0
  524. package/dist/internal/client-registry.js.map +1 -0
  525. package/dist/internal/client.d.ts +189 -0
  526. package/dist/internal/client.d.ts.map +1 -0
  527. package/dist/internal/client.js +1935 -0
  528. package/dist/internal/client.js.map +1 -0
  529. package/dist/internal/clock.d.ts +9 -0
  530. package/dist/internal/clock.d.ts.map +1 -0
  531. package/dist/internal/clock.js +5 -0
  532. package/dist/internal/clock.js.map +1 -0
  533. package/dist/internal/code-catalogue.d.ts +712 -0
  534. package/dist/internal/code-catalogue.d.ts.map +1 -0
  535. package/dist/internal/code-catalogue.js +655 -0
  536. package/dist/internal/code-catalogue.js.map +1 -0
  537. package/dist/internal/collector.d.ts +34 -0
  538. package/dist/internal/collector.d.ts.map +1 -0
  539. package/dist/internal/collector.js +400 -0
  540. package/dist/internal/collector.js.map +1 -0
  541. package/dist/internal/command-arguments.d.ts +29 -0
  542. package/dist/internal/command-arguments.d.ts.map +1 -0
  543. package/dist/internal/command-arguments.js +484 -0
  544. package/dist/internal/command-arguments.js.map +1 -0
  545. package/dist/internal/command-guards.d.ts +57 -0
  546. package/dist/internal/command-guards.d.ts.map +1 -0
  547. package/dist/internal/command-guards.js +81 -0
  548. package/dist/internal/command-guards.js.map +1 -0
  549. package/dist/internal/command-help.d.ts +15 -0
  550. package/dist/internal/command-help.d.ts.map +1 -0
  551. package/dist/internal/command-help.js +121 -0
  552. package/dist/internal/command-help.js.map +1 -0
  553. package/dist/internal/commands.d.ts +212 -0
  554. package/dist/internal/commands.d.ts.map +1 -0
  555. package/dist/internal/commands.js +1004 -0
  556. package/dist/internal/commands.js.map +1 -0
  557. package/dist/internal/configuration.d.ts +86 -0
  558. package/dist/internal/configuration.d.ts.map +1 -0
  559. package/dist/internal/configuration.js +401 -0
  560. package/dist/internal/configuration.js.map +1 -0
  561. package/dist/internal/counts.d.ts +33 -0
  562. package/dist/internal/counts.d.ts.map +1 -0
  563. package/dist/internal/counts.js +348 -0
  564. package/dist/internal/counts.js.map +1 -0
  565. package/dist/internal/decode/primitives.d.ts +30 -0
  566. package/dist/internal/decode/primitives.d.ts.map +1 -0
  567. package/dist/internal/decode/primitives.js +56 -0
  568. package/dist/internal/decode/primitives.js.map +1 -0
  569. package/dist/internal/decode/timestamp.d.ts +13 -0
  570. package/dist/internal/decode/timestamp.d.ts.map +1 -0
  571. package/dist/internal/decode/timestamp.js +27 -0
  572. package/dist/internal/decode/timestamp.js.map +1 -0
  573. package/dist/internal/decode/trace.d.ts +11 -0
  574. package/dist/internal/decode/trace.d.ts.map +1 -0
  575. package/dist/internal/decode/trace.js +69 -0
  576. package/dist/internal/decode/trace.js.map +1 -0
  577. package/dist/internal/defects.d.ts +48 -0
  578. package/dist/internal/defects.d.ts.map +1 -0
  579. package/dist/internal/defects.js +100 -0
  580. package/dist/internal/defects.js.map +1 -0
  581. package/dist/internal/effect-failures.d.ts +12 -0
  582. package/dist/internal/effect-failures.d.ts.map +1 -0
  583. package/dist/internal/effect-failures.js +45 -0
  584. package/dist/internal/effect-failures.js.map +1 -0
  585. package/dist/internal/embeds.d.ts +12 -0
  586. package/dist/internal/embeds.d.ts.map +1 -0
  587. package/dist/internal/embeds.js +308 -0
  588. package/dist/internal/embeds.js.map +1 -0
  589. package/dist/internal/events.d.ts +156 -0
  590. package/dist/internal/events.d.ts.map +1 -0
  591. package/dist/internal/events.js +1071 -0
  592. package/dist/internal/events.js.map +1 -0
  593. package/dist/internal/expiry-queue.d.ts +42 -0
  594. package/dist/internal/expiry-queue.d.ts.map +1 -0
  595. package/dist/internal/expiry-queue.js +138 -0
  596. package/dist/internal/expiry-queue.js.map +1 -0
  597. package/dist/internal/expressions.d.ts +35 -0
  598. package/dist/internal/expressions.d.ts.map +1 -0
  599. package/dist/internal/expressions.js +311 -0
  600. package/dist/internal/expressions.js.map +1 -0
  601. package/dist/internal/failures.d.ts +107 -0
  602. package/dist/internal/failures.d.ts.map +1 -0
  603. package/dist/internal/failures.js +416 -0
  604. package/dist/internal/failures.js.map +1 -0
  605. package/dist/internal/field-text.d.ts +10 -0
  606. package/dist/internal/field-text.d.ts.map +1 -0
  607. package/dist/internal/field-text.js +37 -0
  608. package/dist/internal/field-text.js.map +1 -0
  609. package/dist/internal/gateway/commands.d.ts +92 -0
  610. package/dist/internal/gateway/commands.d.ts.map +1 -0
  611. package/dist/internal/gateway/commands.js +223 -0
  612. package/dist/internal/gateway/commands.js.map +1 -0
  613. package/dist/internal/gateway/dispatch-table.d.ts +42 -0
  614. package/dist/internal/gateway/dispatch-table.d.ts.map +1 -0
  615. package/dist/internal/gateway/dispatch-table.js +288 -0
  616. package/dist/internal/gateway/dispatch-table.js.map +1 -0
  617. package/dist/internal/gateway/event-dispatches.d.ts +97 -0
  618. package/dist/internal/gateway/event-dispatches.d.ts.map +1 -0
  619. package/dist/internal/gateway/event-dispatches.js +172 -0
  620. package/dist/internal/gateway/event-dispatches.js.map +1 -0
  621. package/dist/internal/gateway/frames.d.ts +45 -0
  622. package/dist/internal/gateway/frames.d.ts.map +1 -0
  623. package/dist/internal/gateway/frames.js +121 -0
  624. package/dist/internal/gateway/frames.js.map +1 -0
  625. package/dist/internal/gateway/options.d.ts +24 -0
  626. package/dist/internal/gateway/options.d.ts.map +1 -0
  627. package/dist/internal/gateway/options.js +103 -0
  628. package/dist/internal/gateway/options.js.map +1 -0
  629. package/dist/internal/gateway/session.d.ts +104 -0
  630. package/dist/internal/gateway/session.d.ts.map +1 -0
  631. package/dist/internal/gateway/session.js +420 -0
  632. package/dist/internal/gateway/session.js.map +1 -0
  633. package/dist/internal/gateway-requests.d.ts +10 -0
  634. package/dist/internal/gateway-requests.d.ts.map +1 -0
  635. package/dist/internal/gateway-requests.js +26 -0
  636. package/dist/internal/gateway-requests.js.map +1 -0
  637. package/dist/internal/gateway.d.ts +19 -0
  638. package/dist/internal/gateway.d.ts.map +1 -0
  639. package/dist/internal/gateway.js +11 -0
  640. package/dist/internal/gateway.js.map +1 -0
  641. package/dist/internal/guild-cache.d.ts +69 -0
  642. package/dist/internal/guild-cache.d.ts.map +1 -0
  643. package/dist/internal/guild-cache.js +402 -0
  644. package/dist/internal/guild-cache.js.map +1 -0
  645. package/dist/internal/guild-discovery.d.ts +15 -0
  646. package/dist/internal/guild-discovery.d.ts.map +1 -0
  647. package/dist/internal/guild-discovery.js +258 -0
  648. package/dist/internal/guild-discovery.js.map +1 -0
  649. package/dist/internal/guild-lifecycle.d.ts +18 -0
  650. package/dist/internal/guild-lifecycle.d.ts.map +1 -0
  651. package/dist/internal/guild-lifecycle.js +119 -0
  652. package/dist/internal/guild-lifecycle.js.map +1 -0
  653. package/dist/internal/guild-settings.d.ts +11 -0
  654. package/dist/internal/guild-settings.d.ts.map +1 -0
  655. package/dist/internal/guild-settings.js +150 -0
  656. package/dist/internal/guild-settings.js.map +1 -0
  657. package/dist/internal/guilds.d.ts +94 -0
  658. package/dist/internal/guilds.d.ts.map +1 -0
  659. package/dist/internal/guilds.js +785 -0
  660. package/dist/internal/guilds.js.map +1 -0
  661. package/dist/internal/init-command.d.ts +54 -0
  662. package/dist/internal/init-command.d.ts.map +1 -0
  663. package/dist/internal/init-command.js +248 -0
  664. package/dist/internal/init-command.js.map +1 -0
  665. package/dist/internal/instance.d.ts +69 -0
  666. package/dist/internal/instance.d.ts.map +1 -0
  667. package/dist/internal/instance.js +455 -0
  668. package/dist/internal/instance.js.map +1 -0
  669. package/dist/internal/invalid-callback-return.d.ts +3 -0
  670. package/dist/internal/invalid-callback-return.d.ts.map +1 -0
  671. package/dist/internal/invalid-callback-return.js +26 -0
  672. package/dist/internal/invalid-callback-return.js.map +1 -0
  673. package/dist/internal/invites.d.ts +19 -0
  674. package/dist/internal/invites.d.ts.map +1 -0
  675. package/dist/internal/invites.js +182 -0
  676. package/dist/internal/invites.js.map +1 -0
  677. package/dist/internal/logging.d.ts +129 -0
  678. package/dist/internal/logging.d.ts.map +1 -0
  679. package/dist/internal/logging.js +868 -0
  680. package/dist/internal/logging.js.map +1 -0
  681. package/dist/internal/logical-scheduler.d.ts +27 -0
  682. package/dist/internal/logical-scheduler.d.ts.map +1 -0
  683. package/dist/internal/logical-scheduler.js +102 -0
  684. package/dist/internal/logical-scheduler.js.map +1 -0
  685. package/dist/internal/masking.d.ts +13 -0
  686. package/dist/internal/masking.d.ts.map +1 -0
  687. package/dist/internal/masking.js +235 -0
  688. package/dist/internal/masking.js.map +1 -0
  689. package/dist/internal/member-chunks.d.ts +96 -0
  690. package/dist/internal/member-chunks.d.ts.map +1 -0
  691. package/dist/internal/member-chunks.js +557 -0
  692. package/dist/internal/member-chunks.js.map +1 -0
  693. package/dist/internal/member-search-workflow.d.ts +19 -0
  694. package/dist/internal/member-search-workflow.d.ts.map +1 -0
  695. package/dist/internal/member-search-workflow.js +143 -0
  696. package/dist/internal/member-search-workflow.js.map +1 -0
  697. package/dist/internal/member-search.d.ts +20 -0
  698. package/dist/internal/member-search.d.ts.map +1 -0
  699. package/dist/internal/member-search.js +201 -0
  700. package/dist/internal/member-search.js.map +1 -0
  701. package/dist/internal/message-cleanup.d.ts +9 -0
  702. package/dist/internal/message-cleanup.d.ts.map +1 -0
  703. package/dist/internal/message-cleanup.js +368 -0
  704. package/dist/internal/message-cleanup.js.map +1 -0
  705. package/dist/internal/message-fields.d.ts +9 -0
  706. package/dist/internal/message-fields.d.ts.map +1 -0
  707. package/dist/internal/message-fields.js +55 -0
  708. package/dist/internal/message-fields.js.map +1 -0
  709. package/dist/internal/message-search-workflow.d.ts +14 -0
  710. package/dist/internal/message-search-workflow.d.ts.map +1 -0
  711. package/dist/internal/message-search-workflow.js +101 -0
  712. package/dist/internal/message-search-workflow.js.map +1 -0
  713. package/dist/internal/message-search.d.ts +19 -0
  714. package/dist/internal/message-search.d.ts.map +1 -0
  715. package/dist/internal/message-search.js +317 -0
  716. package/dist/internal/message-search.js.map +1 -0
  717. package/dist/internal/message.d.ts +34 -0
  718. package/dist/internal/message.d.ts.map +1 -0
  719. package/dist/internal/message.js +723 -0
  720. package/dist/internal/message.js.map +1 -0
  721. package/dist/internal/metrics.d.ts +16 -0
  722. package/dist/internal/metrics.d.ts.map +1 -0
  723. package/dist/internal/metrics.js +49 -0
  724. package/dist/internal/metrics.js.map +1 -0
  725. package/dist/internal/moderation.d.ts +20 -0
  726. package/dist/internal/moderation.d.ts.map +1 -0
  727. package/dist/internal/moderation.js +219 -0
  728. package/dist/internal/moderation.js.map +1 -0
  729. package/dist/internal/multipart.d.ts +10 -0
  730. package/dist/internal/multipart.d.ts.map +1 -0
  731. package/dist/internal/multipart.js +156 -0
  732. package/dist/internal/multipart.js.map +1 -0
  733. package/dist/internal/node-version.d.ts +10 -0
  734. package/dist/internal/node-version.d.ts.map +1 -0
  735. package/dist/internal/node-version.js +21 -0
  736. package/dist/internal/node-version.js.map +1 -0
  737. package/dist/internal/oauth.d.ts +29 -0
  738. package/dist/internal/oauth.d.ts.map +1 -0
  739. package/dist/internal/oauth.js +721 -0
  740. package/dist/internal/oauth.js.map +1 -0
  741. package/dist/internal/observer.d.ts +21 -0
  742. package/dist/internal/observer.d.ts.map +1 -0
  743. package/dist/internal/observer.js +48 -0
  744. package/dist/internal/observer.js.map +1 -0
  745. package/dist/internal/operation-signal.d.ts +9 -0
  746. package/dist/internal/operation-signal.d.ts.map +1 -0
  747. package/dist/internal/operation-signal.js +19 -0
  748. package/dist/internal/operation-signal.js.map +1 -0
  749. package/dist/internal/pagination.d.ts +67 -0
  750. package/dist/internal/pagination.d.ts.map +1 -0
  751. package/dist/internal/pagination.js +306 -0
  752. package/dist/internal/pagination.js.map +1 -0
  753. package/dist/internal/permission-requirements.d.ts +34 -0
  754. package/dist/internal/permission-requirements.d.ts.map +1 -0
  755. package/dist/internal/permission-requirements.js +204 -0
  756. package/dist/internal/permission-requirements.js.map +1 -0
  757. package/dist/internal/permissions.d.ts +28 -0
  758. package/dist/internal/permissions.d.ts.map +1 -0
  759. package/dist/internal/permissions.js +314 -0
  760. package/dist/internal/permissions.js.map +1 -0
  761. package/dist/internal/pins.d.ts +24 -0
  762. package/dist/internal/pins.d.ts.map +1 -0
  763. package/dist/internal/pins.js +83 -0
  764. package/dist/internal/pins.js.map +1 -0
  765. package/dist/internal/presence.d.ts +101 -0
  766. package/dist/internal/presence.d.ts.map +1 -0
  767. package/dist/internal/presence.js +581 -0
  768. package/dist/internal/presence.js.map +1 -0
  769. package/dist/internal/protocol/gateway.d.ts +116 -0
  770. package/dist/internal/protocol/gateway.d.ts.map +1 -0
  771. package/dist/internal/protocol/gateway.js +258 -0
  772. package/dist/internal/protocol/gateway.js.map +1 -0
  773. package/dist/internal/rate-limit-templates.d.ts +2 -0
  774. package/dist/internal/rate-limit-templates.d.ts.map +1 -0
  775. package/dist/internal/rate-limit-templates.js +132 -0
  776. package/dist/internal/rate-limit-templates.js.map +1 -0
  777. package/dist/internal/rate-limits.d.ts +32 -0
  778. package/dist/internal/rate-limits.d.ts.map +1 -0
  779. package/dist/internal/rate-limits.js +306 -0
  780. package/dist/internal/rate-limits.js.map +1 -0
  781. package/dist/internal/reaction-collector.d.ts +39 -0
  782. package/dist/internal/reaction-collector.d.ts.map +1 -0
  783. package/dist/internal/reaction-collector.js +441 -0
  784. package/dist/internal/reaction-collector.js.map +1 -0
  785. package/dist/internal/reaction-pages.d.ts +18 -0
  786. package/dist/internal/reaction-pages.d.ts.map +1 -0
  787. package/dist/internal/reaction-pages.js +213 -0
  788. package/dist/internal/reaction-pages.js.map +1 -0
  789. package/dist/internal/reactions.d.ts +30 -0
  790. package/dist/internal/reactions.d.ts.map +1 -0
  791. package/dist/internal/reactions.js +160 -0
  792. package/dist/internal/reactions.js.map +1 -0
  793. package/dist/internal/rejection-scope.d.ts +25 -0
  794. package/dist/internal/rejection-scope.d.ts.map +1 -0
  795. package/dist/internal/rejection-scope.js +103 -0
  796. package/dist/internal/rejection-scope.js.map +1 -0
  797. package/dist/internal/response-json.d.ts +12 -0
  798. package/dist/internal/response-json.d.ts.map +1 -0
  799. package/dist/internal/response-json.js +74 -0
  800. package/dist/internal/response-json.js.map +1 -0
  801. package/dist/internal/rest/admission.d.ts +77 -0
  802. package/dist/internal/rest/admission.d.ts.map +1 -0
  803. package/dist/internal/rest/admission.js +178 -0
  804. package/dist/internal/rest/admission.js.map +1 -0
  805. package/dist/internal/rest/attempt.d.ts +124 -0
  806. package/dist/internal/rest/attempt.d.ts.map +1 -0
  807. package/dist/internal/rest/attempt.js +410 -0
  808. package/dist/internal/rest/attempt.js.map +1 -0
  809. package/dist/internal/rest/classify.d.ts +93 -0
  810. package/dist/internal/rest/classify.d.ts.map +1 -0
  811. package/dist/internal/rest/classify.js +304 -0
  812. package/dist/internal/rest/classify.js.map +1 -0
  813. package/dist/internal/rest/download.d.ts +66 -0
  814. package/dist/internal/rest/download.d.ts.map +1 -0
  815. package/dist/internal/rest/download.js +552 -0
  816. package/dist/internal/rest/download.js.map +1 -0
  817. package/dist/internal/rest/options.d.ts +42 -0
  818. package/dist/internal/rest/options.d.ts.map +1 -0
  819. package/dist/internal/rest/options.js +99 -0
  820. package/dist/internal/rest/options.js.map +1 -0
  821. package/dist/internal/rest/owner.d.ts +154 -0
  822. package/dist/internal/rest/owner.d.ts.map +1 -0
  823. package/dist/internal/rest/owner.js +1292 -0
  824. package/dist/internal/rest/owner.js.map +1 -0
  825. package/dist/internal/rest/request.d.ts +31 -0
  826. package/dist/internal/rest/request.d.ts.map +1 -0
  827. package/dist/internal/rest/request.js +227 -0
  828. package/dist/internal/rest/request.js.map +1 -0
  829. package/dist/internal/rest.d.ts +10 -0
  830. package/dist/internal/rest.d.ts.map +1 -0
  831. package/dist/internal/rest.js +9 -0
  832. package/dist/internal/rest.js.map +1 -0
  833. package/dist/internal/retention-age.d.ts +11 -0
  834. package/dist/internal/retention-age.d.ts.map +1 -0
  835. package/dist/internal/retention-age.js +29 -0
  836. package/dist/internal/retention-age.js.map +1 -0
  837. package/dist/internal/role-hierarchy-workflow.d.ts +15 -0
  838. package/dist/internal/role-hierarchy-workflow.d.ts.map +1 -0
  839. package/dist/internal/role-hierarchy-workflow.js +122 -0
  840. package/dist/internal/role-hierarchy-workflow.js.map +1 -0
  841. package/dist/internal/role-hierarchy.d.ts +11 -0
  842. package/dist/internal/role-hierarchy.d.ts.map +1 -0
  843. package/dist/internal/role-hierarchy.js +87 -0
  844. package/dist/internal/role-hierarchy.js.map +1 -0
  845. package/dist/internal/scheduled-tasks.d.ts +46 -0
  846. package/dist/internal/scheduled-tasks.d.ts.map +1 -0
  847. package/dist/internal/scheduled-tasks.js +190 -0
  848. package/dist/internal/scheduled-tasks.js.map +1 -0
  849. package/dist/internal/sharding.d.ts +62 -0
  850. package/dist/internal/sharding.d.ts.map +1 -0
  851. package/dist/internal/sharding.js +205 -0
  852. package/dist/internal/sharding.js.map +1 -0
  853. package/dist/internal/starter-project.d.ts +27 -0
  854. package/dist/internal/starter-project.d.ts.map +1 -0
  855. package/dist/internal/starter-project.js +224 -0
  856. package/dist/internal/starter-project.js.map +1 -0
  857. package/dist/internal/suggest.d.ts +12 -0
  858. package/dist/internal/suggest.d.ts.map +1 -0
  859. package/dist/internal/suggest.js +51 -0
  860. package/dist/internal/suggest.js.map +1 -0
  861. package/dist/internal/supervisor.d.ts +95 -0
  862. package/dist/internal/supervisor.d.ts.map +1 -0
  863. package/dist/internal/supervisor.js +1829 -0
  864. package/dist/internal/supervisor.js.map +1 -0
  865. package/dist/internal/testing/discovery.d.ts +24 -0
  866. package/dist/internal/testing/discovery.d.ts.map +1 -0
  867. package/dist/internal/testing/discovery.js +22 -0
  868. package/dist/internal/testing/discovery.js.map +1 -0
  869. package/dist/internal/testing/errors.d.ts +43 -0
  870. package/dist/internal/testing/errors.d.ts.map +1 -0
  871. package/dist/internal/testing/errors.js +63 -0
  872. package/dist/internal/testing/errors.js.map +1 -0
  873. package/dist/internal/testing/fixtures.d.ts +477 -0
  874. package/dist/internal/testing/fixtures.d.ts.map +1 -0
  875. package/dist/internal/testing/fixtures.js +233 -0
  876. package/dist/internal/testing/fixtures.js.map +1 -0
  877. package/dist/internal/testing/gateway.d.ts +51 -0
  878. package/dist/internal/testing/gateway.d.ts.map +1 -0
  879. package/dist/internal/testing/gateway.js +265 -0
  880. package/dist/internal/testing/gateway.js.map +1 -0
  881. package/dist/internal/testing/harness.d.ts +60 -0
  882. package/dist/internal/testing/harness.d.ts.map +1 -0
  883. package/dist/internal/testing/harness.js +280 -0
  884. package/dist/internal/testing/harness.js.map +1 -0
  885. package/dist/internal/testing/http.d.ts +31 -0
  886. package/dist/internal/testing/http.d.ts.map +1 -0
  887. package/dist/internal/testing/http.js +347 -0
  888. package/dist/internal/testing/http.js.map +1 -0
  889. package/dist/internal/testing/types.d.ts +222 -0
  890. package/dist/internal/testing/types.d.ts.map +1 -0
  891. package/dist/internal/testing/types.js +2 -0
  892. package/dist/internal/testing/types.js.map +1 -0
  893. package/dist/internal/testing/wait.d.ts +16 -0
  894. package/dist/internal/testing/wait.d.ts.map +1 -0
  895. package/dist/internal/testing/wait.js +55 -0
  896. package/dist/internal/testing/wait.js.map +1 -0
  897. package/dist/internal/thread-events.d.ts +40 -0
  898. package/dist/internal/thread-events.d.ts.map +1 -0
  899. package/dist/internal/thread-events.js +121 -0
  900. package/dist/internal/thread-events.js.map +1 -0
  901. package/dist/internal/threads.d.ts +47 -0
  902. package/dist/internal/threads.d.ts.map +1 -0
  903. package/dist/internal/threads.js +587 -0
  904. package/dist/internal/threads.js.map +1 -0
  905. package/dist/internal/transfer-source.d.ts +29 -0
  906. package/dist/internal/transfer-source.d.ts.map +1 -0
  907. package/dist/internal/transfer-source.js +347 -0
  908. package/dist/internal/transfer-source.js.map +1 -0
  909. package/dist/internal/transport/http.d.ts +12 -0
  910. package/dist/internal/transport/http.d.ts.map +1 -0
  911. package/dist/internal/transport/http.js +44 -0
  912. package/dist/internal/transport/http.js.map +1 -0
  913. package/dist/internal/transport/index.d.ts +21 -0
  914. package/dist/internal/transport/index.d.ts.map +1 -0
  915. package/dist/internal/transport/index.js +15 -0
  916. package/dist/internal/transport/index.js.map +1 -0
  917. package/dist/internal/transport/socket.d.ts +51 -0
  918. package/dist/internal/transport/socket.d.ts.map +1 -0
  919. package/dist/internal/transport/socket.js +27 -0
  920. package/dist/internal/transport/socket.js.map +1 -0
  921. package/dist/internal/transport/user-agent.d.ts +7 -0
  922. package/dist/internal/transport/user-agent.d.ts.map +1 -0
  923. package/dist/internal/transport/user-agent.js +42 -0
  924. package/dist/internal/transport/user-agent.js.map +1 -0
  925. package/dist/internal/uploads.d.ts +23 -0
  926. package/dist/internal/uploads.d.ts.map +1 -0
  927. package/dist/internal/uploads.js +89 -0
  928. package/dist/internal/uploads.js.map +1 -0
  929. package/dist/internal/user-cache.d.ts +50 -0
  930. package/dist/internal/user-cache.d.ts.map +1 -0
  931. package/dist/internal/user-cache.js +273 -0
  932. package/dist/internal/user-cache.js.map +1 -0
  933. package/dist/internal/users.d.ts +41 -0
  934. package/dist/internal/users.d.ts.map +1 -0
  935. package/dist/internal/users.js +333 -0
  936. package/dist/internal/users.js.map +1 -0
  937. package/dist/internal/vanity-url.d.ts +11 -0
  938. package/dist/internal/vanity-url.d.ts.map +1 -0
  939. package/dist/internal/vanity-url.js +58 -0
  940. package/dist/internal/vanity-url.js.map +1 -0
  941. package/dist/internal/webhooks.d.ts +58 -0
  942. package/dist/internal/webhooks.d.ts.map +1 -0
  943. package/dist/internal/webhooks.js +490 -0
  944. package/dist/internal/webhooks.js.map +1 -0
  945. package/dist/invites.d.ts +86 -0
  946. package/dist/invites.d.ts.map +1 -0
  947. package/dist/invites.js +2 -0
  948. package/dist/invites.js.map +1 -0
  949. package/dist/logging.d.ts +228 -0
  950. package/dist/logging.d.ts.map +1 -0
  951. package/dist/logging.js +2 -0
  952. package/dist/logging.js.map +1 -0
  953. package/dist/member-chunks.d.ts +145 -0
  954. package/dist/member-chunks.d.ts.map +1 -0
  955. package/dist/member-chunks.js +68 -0
  956. package/dist/member-chunks.js.map +1 -0
  957. package/dist/member-search.d.ts +140 -0
  958. package/dist/member-search.d.ts.map +1 -0
  959. package/dist/member-search.js +14 -0
  960. package/dist/member-search.js.map +1 -0
  961. package/dist/message-cleanup.d.ts +227 -0
  962. package/dist/message-cleanup.d.ts.map +1 -0
  963. package/dist/message-cleanup.js +101 -0
  964. package/dist/message-cleanup.js.map +1 -0
  965. package/dist/message-errors.d.ts +172 -0
  966. package/dist/message-errors.d.ts.map +1 -0
  967. package/dist/message-errors.js +173 -0
  968. package/dist/message-errors.js.map +1 -0
  969. package/dist/message-search.d.ts +201 -0
  970. package/dist/message-search.d.ts.map +1 -0
  971. package/dist/message-search.js +2 -0
  972. package/dist/message-search.js.map +1 -0
  973. package/dist/messages.d.ts +694 -0
  974. package/dist/messages.d.ts.map +1 -0
  975. package/dist/messages.js +37 -0
  976. package/dist/messages.js.map +1 -0
  977. package/dist/native-commands.d.ts +451 -0
  978. package/dist/native-commands.d.ts.map +1 -0
  979. package/dist/native-commands.js +432 -0
  980. package/dist/native-commands.js.map +1 -0
  981. package/dist/native-supervisor.d.ts +125 -0
  982. package/dist/native-supervisor.d.ts.map +1 -0
  983. package/dist/native-supervisor.js +126 -0
  984. package/dist/native-supervisor.js.map +1 -0
  985. package/dist/oauth.d.ts +298 -0
  986. package/dist/oauth.d.ts.map +1 -0
  987. package/dist/oauth.js +128 -0
  988. package/dist/oauth.js.map +1 -0
  989. package/dist/observer.d.ts +111 -0
  990. package/dist/observer.d.ts.map +1 -0
  991. package/dist/observer.js +2 -0
  992. package/dist/observer.js.map +1 -0
  993. package/dist/pagination.d.ts +117 -0
  994. package/dist/pagination.d.ts.map +1 -0
  995. package/dist/pagination.js +61 -0
  996. package/dist/pagination.js.map +1 -0
  997. package/dist/permissions.d.ts +73 -0
  998. package/dist/permissions.d.ts.map +1 -0
  999. package/dist/permissions.js +2 -0
  1000. package/dist/permissions.js.map +1 -0
  1001. package/dist/pins.d.ts +62 -0
  1002. package/dist/pins.d.ts.map +1 -0
  1003. package/dist/pins.js +2 -0
  1004. package/dist/pins.js.map +1 -0
  1005. package/dist/presence.d.ts +84 -0
  1006. package/dist/presence.d.ts.map +1 -0
  1007. package/dist/presence.js +46 -0
  1008. package/dist/presence.js.map +1 -0
  1009. package/dist/reaction-pages.d.ts +99 -0
  1010. package/dist/reaction-pages.d.ts.map +1 -0
  1011. package/dist/reaction-pages.js +2 -0
  1012. package/dist/reaction-pages.js.map +1 -0
  1013. package/dist/reactions.d.ts +118 -0
  1014. package/dist/reactions.d.ts.map +1 -0
  1015. package/dist/reactions.js +2 -0
  1016. package/dist/reactions.js.map +1 -0
  1017. package/dist/rest.d.ts +260 -0
  1018. package/dist/rest.d.ts.map +1 -0
  1019. package/dist/rest.js +46 -0
  1020. package/dist/rest.js.map +1 -0
  1021. package/dist/role-hierarchy.d.ts +81 -0
  1022. package/dist/role-hierarchy.d.ts.map +1 -0
  1023. package/dist/role-hierarchy.js +53 -0
  1024. package/dist/role-hierarchy.js.map +1 -0
  1025. package/dist/sharding.d.ts +219 -0
  1026. package/dist/sharding.d.ts.map +1 -0
  1027. package/dist/sharding.js +86 -0
  1028. package/dist/sharding.js.map +1 -0
  1029. package/dist/supervisor.d.ts +392 -0
  1030. package/dist/supervisor.d.ts.map +1 -0
  1031. package/dist/supervisor.js +101 -0
  1032. package/dist/supervisor.js.map +1 -0
  1033. package/dist/testing.d.ts +258 -0
  1034. package/dist/testing.d.ts.map +1 -0
  1035. package/dist/testing.js +202 -0
  1036. package/dist/testing.js.map +1 -0
  1037. package/dist/text.d.ts +38 -0
  1038. package/dist/text.d.ts.map +1 -0
  1039. package/dist/text.js +46 -0
  1040. package/dist/text.js.map +1 -0
  1041. package/dist/threads.d.ts +258 -0
  1042. package/dist/threads.d.ts.map +1 -0
  1043. package/dist/threads.js +2 -0
  1044. package/dist/threads.js.map +1 -0
  1045. package/dist/users.d.ts +204 -0
  1046. package/dist/users.d.ts.map +1 -0
  1047. package/dist/users.js +44 -0
  1048. package/dist/users.js.map +1 -0
  1049. package/dist/webhooks.d.ts +423 -0
  1050. package/dist/webhooks.d.ts.map +1 -0
  1051. package/dist/webhooks.js +68 -0
  1052. package/dist/webhooks.js.map +1 -0
  1053. package/esm-only.cjs +3 -0
  1054. package/examples/starter/bot-effect.ts +17 -0
  1055. package/examples/starter/bot.js +13 -0
  1056. package/examples/starter/bot.ts +13 -0
  1057. package/package.json +82 -0
  1058. package/src/api/default/application.ts +40 -0
  1059. package/src/api/default/attachments.ts +106 -0
  1060. package/src/api/default/audit-logs.ts +58 -0
  1061. package/src/api/default/bot.ts +586 -0
  1062. package/src/api/default/cache.ts +106 -0
  1063. package/src/api/default/channels.ts +317 -0
  1064. package/src/api/default/client.ts +829 -0
  1065. package/src/api/default/collectors.ts +81 -0
  1066. package/src/api/default/commands.ts +92 -0
  1067. package/src/api/default/direct-messages.ts +143 -0
  1068. package/src/api/default/discovery.ts +103 -0
  1069. package/src/api/default/emojis.ts +125 -0
  1070. package/src/api/default/events.ts +144 -0
  1071. package/src/api/default/gateway.ts +67 -0
  1072. package/src/api/default/guards.ts +173 -0
  1073. package/src/api/default/guilds.ts +271 -0
  1074. package/src/api/default/helpers.ts +97 -0
  1075. package/src/api/default/instance.ts +49 -0
  1076. package/src/api/default/invites.ts +73 -0
  1077. package/src/api/default/logging.ts +37 -0
  1078. package/src/api/default/members.ts +550 -0
  1079. package/src/api/default/messages.ts +1053 -0
  1080. package/src/api/default/oauth.ts +293 -0
  1081. package/src/api/default/permissions.ts +47 -0
  1082. package/src/api/default/presence.ts +88 -0
  1083. package/src/api/default/rest.ts +30 -0
  1084. package/src/api/default/results.ts +44 -0
  1085. package/src/api/default/roles.ts +154 -0
  1086. package/src/api/default/stickers.ts +129 -0
  1087. package/src/api/default/supervisor.ts +53 -0
  1088. package/src/api/default/threads.ts +233 -0
  1089. package/src/api/default/users.ts +82 -0
  1090. package/src/api/default/webhook-client.ts +266 -0
  1091. package/src/api/default/webhooks.ts +89 -0
  1092. package/src/api/effect/application.ts +29 -0
  1093. package/src/api/effect/attachments.ts +100 -0
  1094. package/src/api/effect/audit-logs.ts +50 -0
  1095. package/src/api/effect/bot.ts +546 -0
  1096. package/src/api/effect/cache.ts +110 -0
  1097. package/src/api/effect/channels.ts +293 -0
  1098. package/src/api/effect/client.ts +792 -0
  1099. package/src/api/effect/collectors.ts +103 -0
  1100. package/src/api/effect/commands.ts +87 -0
  1101. package/src/api/effect/direct-messages.ts +119 -0
  1102. package/src/api/effect/discovery.ts +87 -0
  1103. package/src/api/effect/emojis.ts +108 -0
  1104. package/src/api/effect/events.ts +92 -0
  1105. package/src/api/effect/failures.ts +14 -0
  1106. package/src/api/effect/gateway.ts +63 -0
  1107. package/src/api/effect/guards.ts +194 -0
  1108. package/src/api/effect/guilds.ts +247 -0
  1109. package/src/api/effect/helpers.ts +359 -0
  1110. package/src/api/effect/hierarchy.ts +26 -0
  1111. package/src/api/effect/instance.ts +50 -0
  1112. package/src/api/effect/invites.ts +59 -0
  1113. package/src/api/effect/logging.ts +37 -0
  1114. package/src/api/effect/members.ts +521 -0
  1115. package/src/api/effect/messages.ts +1003 -0
  1116. package/src/api/effect/oauth.ts +208 -0
  1117. package/src/api/effect/permissions.ts +44 -0
  1118. package/src/api/effect/presence.ts +83 -0
  1119. package/src/api/effect/rest.ts +27 -0
  1120. package/src/api/effect/roles.ts +136 -0
  1121. package/src/api/effect/service.ts +104 -0
  1122. package/src/api/effect/stickers.ts +112 -0
  1123. package/src/api/effect/supervisor.ts +58 -0
  1124. package/src/api/effect/threads.ts +221 -0
  1125. package/src/api/effect/users.ts +66 -0
  1126. package/src/api/effect/webhook-client.ts +206 -0
  1127. package/src/api/effect/webhooks.ts +75 -0
  1128. package/src/api-errors.ts +985 -0
  1129. package/src/application.ts +103 -0
  1130. package/src/assets.ts +731 -0
  1131. package/src/attachments.ts +469 -0
  1132. package/src/audit-logs.ts +355 -0
  1133. package/src/bot-runner.ts +91 -0
  1134. package/src/builders.ts +390 -0
  1135. package/src/cache.ts +190 -0
  1136. package/src/channels.ts +1051 -0
  1137. package/src/cli.ts +60 -0
  1138. package/src/client.ts +663 -0
  1139. package/src/collectors.ts +248 -0
  1140. package/src/colors.ts +91 -0
  1141. package/src/command-arguments.ts +432 -0
  1142. package/src/command-help.ts +55 -0
  1143. package/src/commands.ts +403 -0
  1144. package/src/counts.ts +160 -0
  1145. package/src/default-commands.ts +1147 -0
  1146. package/src/default-supervisor.ts +484 -0
  1147. package/src/discovery.ts +241 -0
  1148. package/src/effect-testing.ts +603 -0
  1149. package/src/effect.ts +751 -0
  1150. package/src/embeds.ts +253 -0
  1151. package/src/error-tools.ts +191 -0
  1152. package/src/errors.ts +849 -0
  1153. package/src/events.ts +830 -0
  1154. package/src/expressions.ts +198 -0
  1155. package/src/failures.ts +55 -0
  1156. package/src/gateway.ts +86 -0
  1157. package/src/guilds.ts +1108 -0
  1158. package/src/helpers.ts +836 -0
  1159. package/src/index.ts +796 -0
  1160. package/src/input-validation.ts +94 -0
  1161. package/src/instance.ts +111 -0
  1162. package/src/internal/agents-section.ts +114 -0
  1163. package/src/internal/application.ts +51 -0
  1164. package/src/internal/attachment-refresh.ts +57 -0
  1165. package/src/internal/attachments.ts +313 -0
  1166. package/src/internal/audit-logs.ts +336 -0
  1167. package/src/internal/audit.ts +33 -0
  1168. package/src/internal/binding/default-adapters.ts +482 -0
  1169. package/src/internal/binding/default.ts +155 -0
  1170. package/src/internal/binding/execute.ts +221 -0
  1171. package/src/internal/binding/native-adapters.ts +199 -0
  1172. package/src/internal/binding/native.ts +72 -0
  1173. package/src/internal/binding/operations.ts +1171 -0
  1174. package/src/internal/bot-runner.ts +480 -0
  1175. package/src/internal/cache-changes.ts +363 -0
  1176. package/src/internal/cache.ts +323 -0
  1177. package/src/internal/calls.ts +119 -0
  1178. package/src/internal/channel-cache.ts +435 -0
  1179. package/src/internal/channel-decode.ts +399 -0
  1180. package/src/internal/channels.ts +874 -0
  1181. package/src/internal/client/backoff.ts +69 -0
  1182. package/src/internal/client/configuration-fields.ts +18 -0
  1183. package/src/internal/client/drain.ts +150 -0
  1184. package/src/internal/client/intake.ts +228 -0
  1185. package/src/internal/client/lifetime.ts +165 -0
  1186. package/src/internal/client/shard-loop.ts +586 -0
  1187. package/src/internal/client-registry.ts +35 -0
  1188. package/src/internal/client.ts +2448 -0
  1189. package/src/internal/clock.ts +11 -0
  1190. package/src/internal/code-catalogue.ts +739 -0
  1191. package/src/internal/collector.ts +452 -0
  1192. package/src/internal/command-arguments.ts +585 -0
  1193. package/src/internal/command-guards.ts +96 -0
  1194. package/src/internal/command-help.ts +156 -0
  1195. package/src/internal/commands.ts +1319 -0
  1196. package/src/internal/configuration.ts +529 -0
  1197. package/src/internal/counts.ts +471 -0
  1198. package/src/internal/decode/primitives.ts +67 -0
  1199. package/src/internal/decode/timestamp.ts +29 -0
  1200. package/src/internal/decode/trace.ts +65 -0
  1201. package/src/internal/defects.ts +115 -0
  1202. package/src/internal/effect-failures.ts +65 -0
  1203. package/src/internal/embeds.ts +355 -0
  1204. package/src/internal/events.ts +1345 -0
  1205. package/src/internal/expiry-queue.ts +148 -0
  1206. package/src/internal/expressions.ts +415 -0
  1207. package/src/internal/failures.ts +492 -0
  1208. package/src/internal/field-text.ts +40 -0
  1209. package/src/internal/gateway/commands.ts +328 -0
  1210. package/src/internal/gateway/dispatch-table.ts +383 -0
  1211. package/src/internal/gateway/event-dispatches.ts +201 -0
  1212. package/src/internal/gateway/frames.ts +176 -0
  1213. package/src/internal/gateway/options.ts +144 -0
  1214. package/src/internal/gateway/session.ts +625 -0
  1215. package/src/internal/gateway-requests.ts +26 -0
  1216. package/src/internal/gateway.ts +22 -0
  1217. package/src/internal/guild-cache.ts +424 -0
  1218. package/src/internal/guild-discovery.ts +332 -0
  1219. package/src/internal/guild-lifecycle.ts +128 -0
  1220. package/src/internal/guild-settings.ts +209 -0
  1221. package/src/internal/guilds.ts +949 -0
  1222. package/src/internal/init-command.ts +305 -0
  1223. package/src/internal/instance.ts +645 -0
  1224. package/src/internal/invalid-callback-return.ts +28 -0
  1225. package/src/internal/invites.ts +234 -0
  1226. package/src/internal/logging.ts +1007 -0
  1227. package/src/internal/logical-scheduler.ts +139 -0
  1228. package/src/internal/masking.ts +224 -0
  1229. package/src/internal/member-chunks.ts +649 -0
  1230. package/src/internal/member-search-workflow.ts +237 -0
  1231. package/src/internal/member-search.ts +272 -0
  1232. package/src/internal/message-cleanup.ts +515 -0
  1233. package/src/internal/message-fields.ts +71 -0
  1234. package/src/internal/message-search-workflow.ts +166 -0
  1235. package/src/internal/message-search.ts +476 -0
  1236. package/src/internal/message.ts +879 -0
  1237. package/src/internal/metrics.ts +55 -0
  1238. package/src/internal/moderation.ts +288 -0
  1239. package/src/internal/multipart.ts +171 -0
  1240. package/src/internal/node-version.ts +22 -0
  1241. package/src/internal/oauth.ts +1146 -0
  1242. package/src/internal/observer.ts +62 -0
  1243. package/src/internal/operation-signal.ts +26 -0
  1244. package/src/internal/pagination.ts +494 -0
  1245. package/src/internal/permission-requirements.ts +359 -0
  1246. package/src/internal/permissions.ts +417 -0
  1247. package/src/internal/pins.ts +115 -0
  1248. package/src/internal/presence.ts +745 -0
  1249. package/src/internal/protocol/gateway.ts +299 -0
  1250. package/src/internal/rate-limit-templates.ts +138 -0
  1251. package/src/internal/rate-limits.ts +346 -0
  1252. package/src/internal/reaction-collector.ts +499 -0
  1253. package/src/internal/reaction-pages.ts +260 -0
  1254. package/src/internal/reactions.ts +174 -0
  1255. package/src/internal/rejection-scope.ts +119 -0
  1256. package/src/internal/response-json.ts +76 -0
  1257. package/src/internal/rest/admission.ts +210 -0
  1258. package/src/internal/rest/attempt.ts +617 -0
  1259. package/src/internal/rest/classify.ts +391 -0
  1260. package/src/internal/rest/download.ts +658 -0
  1261. package/src/internal/rest/options.ts +145 -0
  1262. package/src/internal/rest/owner.ts +1828 -0
  1263. package/src/internal/rest/request.ts +289 -0
  1264. package/src/internal/rest.ts +9 -0
  1265. package/src/internal/retention-age.ts +33 -0
  1266. package/src/internal/role-hierarchy-workflow.ts +150 -0
  1267. package/src/internal/role-hierarchy.ts +93 -0
  1268. package/src/internal/scheduled-tasks.ts +217 -0
  1269. package/src/internal/sharding.ts +270 -0
  1270. package/src/internal/starter-project.ts +251 -0
  1271. package/src/internal/suggest.ts +50 -0
  1272. package/src/internal/supervisor.ts +2253 -0
  1273. package/src/internal/testing/discovery.ts +23 -0
  1274. package/src/internal/testing/errors.ts +67 -0
  1275. package/src/internal/testing/fixtures.ts +714 -0
  1276. package/src/internal/testing/gateway.ts +305 -0
  1277. package/src/internal/testing/harness.ts +328 -0
  1278. package/src/internal/testing/http.ts +395 -0
  1279. package/src/internal/testing/types.ts +240 -0
  1280. package/src/internal/testing/wait.ts +63 -0
  1281. package/src/internal/thread-events.ts +128 -0
  1282. package/src/internal/threads.ts +718 -0
  1283. package/src/internal/transfer-source.ts +359 -0
  1284. package/src/internal/transport/http.ts +46 -0
  1285. package/src/internal/transport/index.ts +23 -0
  1286. package/src/internal/transport/socket.ts +71 -0
  1287. package/src/internal/transport/user-agent.ts +46 -0
  1288. package/src/internal/uploads.ts +111 -0
  1289. package/src/internal/user-cache.ts +294 -0
  1290. package/src/internal/users.ts +402 -0
  1291. package/src/internal/vanity-url.ts +80 -0
  1292. package/src/internal/webhooks.ts +690 -0
  1293. package/src/invites.ts +87 -0
  1294. package/src/logging.ts +247 -0
  1295. package/src/member-chunks.ts +195 -0
  1296. package/src/member-search.ts +152 -0
  1297. package/src/message-cleanup.ts +308 -0
  1298. package/src/message-errors.ts +245 -0
  1299. package/src/message-search.ts +213 -0
  1300. package/src/messages.ts +768 -0
  1301. package/src/native-commands.ts +1249 -0
  1302. package/src/native-supervisor.ts +345 -0
  1303. package/src/oauth.ts +413 -0
  1304. package/src/observer.ts +118 -0
  1305. package/src/pagination.ts +172 -0
  1306. package/src/permissions.ts +74 -0
  1307. package/src/pins.ts +65 -0
  1308. package/src/presence.ts +124 -0
  1309. package/src/reaction-pages.ts +106 -0
  1310. package/src/reactions.ts +126 -0
  1311. package/src/rest.ts +282 -0
  1312. package/src/role-hierarchy.ts +127 -0
  1313. package/src/sharding.ts +272 -0
  1314. package/src/supervisor.ts +460 -0
  1315. package/src/testing.ts +424 -0
  1316. package/src/text.ts +76 -0
  1317. package/src/threads.ts +274 -0
  1318. package/src/users.ts +237 -0
  1319. package/src/webhooks.ts +512 -0
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Permissions that Fluxer checks for SDK operations, behind details.requiredPermissions and the missing-permission hint.
3
+ * Invariant: Every entry comes from Fluxer's own permission check in fluxerapp/fluxer. Entries that name no other commit
4
+ * come from a95172bf88da26dd877255ceee139bf84e6799fa, and the forum tag and threads.* entries come from the commit
5
+ * 4749eb7f866ceba0c9622014a9824900d5be8172 that their comments name. Source references are relative to
6
+ * fluxer_api/src/api.
7
+ * An operation whose rejection the source does not tie to one set of permissions has no entry and keeps the generic hint.
8
+ * Channel-authenticated routes first check View Channel in channel/services/BaseChannelAuthService.ts:213 and reject
9
+ * it with MISSING_PERMISSIONS, so their entries include it.
10
+ * Implements [SDK contracts: Validation requirements](/docs/SDK-CONTRACTS.md#validation-requirements)
11
+ */
12
+ import type { Operation } from "#sdk/errors";
13
+ import type { PermissionName } from "#sdk/helpers";
14
+ /**
15
+ * Where Fluxer reads a permission: In the channel, where permission overrides apply, community-wide from the bot's
16
+ * roles, or community-wide and again in the channel
17
+ */
18
+ type PermissionScope = "channel" | "guild" | "guildAndChannel";
19
+ /** What one operation needs, as Fluxer's permission checks state it */
20
+ export interface PermissionRequirement {
21
+ /** Permissions that Fluxer checks on the operation's usual path */
22
+ readonly permissions: readonly PermissionName[];
23
+ readonly scope: PermissionScope;
24
+ /** Other checks behind the same rejection, such as role hierarchy or permissions that only some inputs need */
25
+ readonly also?: string;
26
+ }
27
+ /** Requirement of each operation whose permission checks the pinned source ties to one set */
28
+ export declare const permissionRequirements: Readonly<Partial<Record<Operation, PermissionRequirement>>>;
29
+ /** What Fluxer requires for an operation, or undefined when its permission checks are not tied to one set */
30
+ export declare function permissionRequirement(operation: string): PermissionRequirement | undefined;
31
+ /** The suggested fix for a missing-permission rejection of an operation with a known requirement */
32
+ export declare function requiredPermissionsHint(requirement: PermissionRequirement): string;
33
+ export {};
34
+ //# sourceMappingURL=permission-requirements.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-requirements.d.ts","sourceRoot":"","sources":["../../src/internal/permission-requirements.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD;;;GAGG;AACH,KAAK,eAAe,GAAG,SAAS,GAAG,OAAO,GAAG,iBAAiB,CAAA;AAE9D,uEAAuE;AACvE,MAAM,WAAW,qBAAqB;IAClC,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAE,SAAS,cAAc,EAAE,CAAA;IAC/C,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,+GAA+G;IAC/G,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACzB;AAaD,8FAA8F;AAC9F,eAAO,MAAM,sBAAsB,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC,CAsS9F,CAAA;AAED,6GAA6G;AAC7G,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAE1F;AAKD,oGAAoG;AACpG,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,qBAAqB,GAAG,MAAM,CAYlF"}
@@ -0,0 +1,204 @@
1
+ const requires = (scope, permissions, also) => Object.freeze({
2
+ permissions: Object.freeze([...permissions]),
3
+ scope,
4
+ ...(also === undefined ? {} : { also }),
5
+ });
6
+ const memberHierarchy = "Fluxer also requires the bot's highest role to be above the member's highest role, and never allows acting on the community owner";
7
+ const ownPermissions = "the bot can allow, or stop denying, only permissions it has";
8
+ /** Requirement of each operation whose permission checks the pinned source ties to one set */
9
+ export const permissionRequirements = {
10
+ // channel/services/channel_data/ChannelOperationsService.ts:114
11
+ "channels.fetch": requires("channel", ["ViewChannel"]),
12
+ // webhook/ChannelFollowService.ts:181
13
+ "channels.fetchFollowerStats": requires("channel", ["ViewChannel"]),
14
+ // guild/services/GuildChannelService.ts:92, guild/services/channel/ChannelOperationsService.ts:83-97
15
+ "channels.create": requires("guild", ["ManageChannels"], "Setting permission overwrites also needs Manage Roles, and the bot can allow only permissions it has"),
16
+ // channel/services/channel_data/ChannelOperationsService.ts:164, 189, 219-258
17
+ "channels.edit": requires("channel", ["ViewChannel", "ManageChannels"], `Changing permission overwrites also needs Manage Roles, and ${ownPermissions}. Changing a voice region also needs Update RTC Region`),
18
+ // channel/services/channel_data/ChannelOperationsService.ts:418
19
+ "channels.delete": requires("channel", ["ViewChannel", "ManageChannels"]),
20
+ // guild/services/GuildChannelService.ts:115, guild/services/channel/ChannelOperationsService.ts:396-405
21
+ "channels.reorder": requires("guild", ["ManageChannels"], `Moving a channel with syncPermissionsOnMove also needs Manage Roles, and ${ownPermissions}`),
22
+ // channel/services/channel_data/ChannelOperationsService.ts:647-676
23
+ "channels.setPermissionOverwrite": requires("channel", ["ManageRoles"], `Also, ${ownPermissions}`),
24
+ // channel/services/channel_data/ChannelOperationsService.ts:719-738
25
+ "channels.removePermissionOverwrite": requires("channel", ["ManageRoles"], "Also, the bot can remove an overwrite only when it has every permission that overwrite denies"),
26
+ // webhook/ChannelFollowService.ts:77-100, webhook/WebhookService.ts:614-634
27
+ "channels.follow": requires("guildAndChannel", ["ViewChannel", "ManageWebhooks"], "Fluxer checks View Channel in both channels and Manage Webhooks in the destination"),
28
+ // Upstream 4749eb7f, channel/services/ChannelRequestService.ts:164-171, where the three tag routes in
29
+ // channel/controllers/ForumController.ts check Manage Channels before changing the channel's tags
30
+ "channels.createForumTag": requires("channel", ["ViewChannel", "ManageChannels"]),
31
+ "channels.editForumTag": requires("channel", ["ViewChannel", "ManageChannels"]),
32
+ "channels.deleteForumTag": requires("channel", ["ViewChannel", "ManageChannels"]),
33
+ // webhook/WebhookService.ts:197-204, 614-634
34
+ "webhooks.create": requires("guildAndChannel", ["ViewChannel", "ManageWebhooks"]),
35
+ // webhook/WebhookService.ts:177-184
36
+ "webhooks.fetchForChannel": requires("guildAndChannel", ["ViewChannel", "ManageWebhooks"]),
37
+ // webhook/WebhookService.ts:163-164
38
+ "webhooks.fetchForGuild": requires("guild", ["ManageWebhooks"]),
39
+ // webhook/WebhookService.ts:154-155, 506-518
40
+ "webhooks.fetch": requires("guildAndChannel", ["ViewChannel", "ManageWebhooks"]),
41
+ // webhook/WebhookService.ts:241-275
42
+ "webhooks.edit": requires("guildAndChannel", ["ViewChannel", "ManageWebhooks"], "Moving the webhook to another channel also needs them in that channel"),
43
+ // webhook/WebhookService.ts:362-365
44
+ "webhooks.delete": requires("guildAndChannel", ["ViewChannel", "ManageWebhooks"]),
45
+ // invite/InviteService.ts:151, 189-198
46
+ "invites.create": requires("channel", ["ViewChannel", "CreateInstantInvite"]),
47
+ // invite/InviteService.ts:117-129
48
+ "invites.fetchForChannel": requires("guildAndChannel", ["ViewChannel", "ManageChannels"], "For a group direct message, only its owner can list them"),
49
+ // invite/InviteService.ts:135-139
50
+ "invites.fetchForGuild": requires("guild", ["ManageGuild"]),
51
+ // invite/InviteService.ts:364-392
52
+ "invites.delete": requires("guild", ["ManageGuild"], "Deleting an invite the bot created needs no Manage Guild. For a group direct message invite, only the group owner can delete it"),
53
+ // guild/services/content/EmojiService.ts:102. Editing and deleting need Create Expressions for the bot's own
54
+ // emoji and Manage Expressions otherwise, so they have no entry
55
+ "emojis.create": requires("guild", ["CreateExpressions"]),
56
+ // guild/services/content/EmojiService.ts:219
57
+ "emojis.createMany": requires("guild", ["CreateExpressions"]),
58
+ // guild/services/content/EmojiService.ts:164
59
+ "emojis.clone": requires("guild", ["CreateExpressions"]),
60
+ // guild/services/content/StickerService.ts:118
61
+ "stickers.create": requires("guild", ["CreateExpressions"]),
62
+ // guild/services/content/StickerService.ts:238
63
+ "stickers.createMany": requires("guild", ["CreateExpressions"]),
64
+ // guild/services/content/StickerService.ts:178
65
+ "stickers.clone": requires("guild", ["CreateExpressions"]),
66
+ // guild/services/data/GuildOperationsService.ts:462
67
+ "guilds.edit": requires("guild", ["ManageGuild"]),
68
+ // guild/services/data/GuildVanityService.ts:34
69
+ "guilds.fetchVanityUrl": requires("guild", ["ManageGuild"]),
70
+ // guild/services/data/GuildVanityService.ts:61
71
+ "guilds.editVanityUrl": requires("guild", ["ManageGuild"]),
72
+ // guild/services/GuildService.ts:306-318
73
+ "auditLogs.fetchPage": requires("guild", ["ViewAuditLog"]),
74
+ // guild/controllers/GuildDiscoveryController.ts:163
75
+ "discovery.apply": requires("guild", ["ManageGuild"]),
76
+ // guild/controllers/GuildDiscoveryController.ts:198
77
+ "discovery.edit": requires("guild", ["ManageGuild"]),
78
+ // guild/controllers/GuildDiscoveryController.ts:228
79
+ "discovery.withdraw": requires("guild", ["ManageGuild"]),
80
+ // guild/controllers/GuildDiscoveryController.ts:252
81
+ "discovery.fetchStatus": requires("guild", ["ManageGuild"]),
82
+ // guild/services/member/GuildMemberOperationsService.ts:395-401
83
+ "members.kick": requires("guild", ["KickMembers"], memberHierarchy),
84
+ // guild/services/GuildModerationService.ts:83-92
85
+ "members.ban": requires("guild", ["BanMembers"], memberHierarchy),
86
+ // guild/services/GuildModerationService.ts:184
87
+ "members.unban": requires("guild", ["BanMembers"]),
88
+ // guild/services/GuildModerationService.ts:170
89
+ "members.fetchBans": requires("guild", ["BanMembers"]),
90
+ // guild/services/member/GuildMemberOperationsService.ts:577-586
91
+ "members.timeout": requires("guild", ["ModerateMembers"], `${memberHierarchy}, the bot itself or a member with Administrator`),
92
+ "members.clearTimeout": requires("guild", ["ModerateMembers"], `${memberHierarchy}, the bot itself or a member with Administrator`),
93
+ // guild/services/member/GuildMemberOperationsService.ts:289-291
94
+ "members.setNickname": requires("guild", ["ManageNicknames"], memberHierarchy),
95
+ // guild/services/member/GuildMemberOperationsService.ts:880-887
96
+ "members.setMute": requires("guild", ["MuteMembers"], memberHierarchy),
97
+ // guild/services/member/GuildMemberOperationsService.ts:880-891
98
+ "members.setDeaf": requires("guild", ["DeafenMembers"], memberHierarchy),
99
+ // guild/services/member/GuildMemberOperationsService.ts:880-917
100
+ "members.move": requires("guild", ["MoveMembers"], `${memberHierarchy}. The bot and the member also need Connect in the destination channel`),
101
+ // guild/services/member/GuildMemberOperationsService.ts:880-896
102
+ "members.disconnect": requires("guild", ["MoveMembers"], memberHierarchy),
103
+ // guild/services/member/GuildMemberValidationService.ts:50-62
104
+ "members.setRoles": requires("guild", ["ManageRoles"], "Fluxer also requires the bot's highest role to be above every role it adds or removes"),
105
+ // guild/services/member/GuildMemberValidationService.ts:84-89
106
+ "members.addRole": requires("guild", ["ManageRoles"], "Fluxer also requires the bot's highest role to be above the role"),
107
+ "members.removeRole": requires("guild", ["ManageRoles"], "Fluxer also requires the bot's highest role to be above the role"),
108
+ // guild/services/GuildRoleService.ts:121, 180-185
109
+ "roles.create": requires("guild", ["ManageRoles"], "Also, the bot can grant only permissions it has"),
110
+ // guild/services/GuildRoleService.ts:202-222
111
+ "roles.edit": requires("guild", ["ManageRoles"], "Fluxer also requires the bot's highest role to be above the role, and the bot can grant only permissions it has"),
112
+ // guild/services/GuildRoleService.ts:265-274
113
+ "roles.delete": requires("guild", ["ManageRoles"], "Fluxer also requires the bot's highest role to be above the role"),
114
+ // guild/services/GuildRoleService.ts:317, 612-624
115
+ "roles.reorder": requires("guild", ["ManageRoles"], "Also, the bot can move only roles below its highest role"),
116
+ // guild/services/GuildRoleService.ts:354, 372-389
117
+ "roles.setHoistPositions": requires("guild", ["ManageRoles"], "Also, the bot can change only roles below its highest role"),
118
+ // guild/services/GuildRoleService.ts:432
119
+ "roles.resetHoistPositions": requires("guild", ["ManageRoles"]),
120
+ // channel/services/message/MessageSendService.ts:268-291, 679-682, channel/services/AttachmentUploadService.ts:491.
121
+ // Every send, reply, forward and direct message reports this operation, and direct messages never check these
122
+ send: requires("channel", ["ViewChannel", "SendMessages"], "Embeds also need Embed Links, files need Attach Files, and a forward needs View Channel in its source channel"),
123
+ // channel/services/MessageInteractionService.ts:75-76
124
+ typing: requires("channel", ["ViewChannel", "SendMessages"]),
125
+ // channel/services/message/MessageRetrievalService.ts:76
126
+ fetch: requires("channel", ["ViewChannel"]),
127
+ fetchHistory: requires("channel", ["ViewChannel"]),
128
+ // channel/services/message/MessageEditService.ts:71-93
129
+ edit: requires("channel", ["ViewChannel"], "Adding embeds also needs Embed Links, and adding files needs Attach Files"),
130
+ // channel/services/message/MessageDeleteService.ts:67-77, channel/services/message/MessageValidationService.ts:249-255
131
+ delete: requires("channel", ["ViewChannel", "ManageMessages"], "Deleting the bot's own message needs no Manage Messages, and Fluxer does not allow deleting some system messages"),
132
+ // channel/services/message/MessageDeleteService.ts:179-184
133
+ deleteMany: requires("channel", ["ViewChannel", "ManageMessages"]),
134
+ // channel/services/AttachmentUploadService.ts:357-369
135
+ deleteAttachment: requires("channel", ["ViewChannel"], "Also, Fluxer lets only the message's author remove its attachments"),
136
+ // channel/controllers/MessageController.ts:478
137
+ deleteOwnMessages: requires("channel", ["ViewChannel"]),
138
+ // channel/services/message/MessageCrosspostService.ts:70-92
139
+ publish: requires("channel", ["ViewChannel", "SendMessages"], "Publishing another author's message also needs Manage Messages"),
140
+ // channel/services/MessageInteractionService.ts:115, channel/services/interaction/MessagePinService.ts:155
141
+ pin: requires("channel", ["ViewChannel", "PinMessages"]),
142
+ // channel/services/MessageInteractionService.ts:136, channel/services/interaction/MessagePinService.ts:206
143
+ unpin: requires("channel", ["ViewChannel", "PinMessages"]),
144
+ // channel/services/MessageInteractionService.ts:98
145
+ fetchPins: requires("channel", ["ViewChannel"]),
146
+ // channel/services/MessageInteractionService.ts:162
147
+ fetchReactionUsers: requires("channel", ["ViewChannel"]),
148
+ // channel/services/MessageInteractionService.ts:180, channel/services/interaction/MessageReactionService.ts:208-209, 431-433
149
+ addReaction: requires("channel", ["ViewChannel", "AddReactions"], "Adding to an existing reaction needs no Add Reactions, and a new reaction with a custom emoji also needs Use External Emojis"),
150
+ // channel/services/MessageInteractionService.ts:227, channel/services/interaction/MessageReactionService.ts:276-278
151
+ removeReaction: requires("channel", ["ViewChannel"]),
152
+ // channel/services/interaction/MessageReactionService.ts:276-278, 363-376
153
+ removeUserReaction: requires("channel", ["ViewChannel", "ManageMessages"], "Fluxer allows it only in community channels"),
154
+ // channel/services/MessageInteractionService.ts:260, channel/services/interaction/MessageReactionService.ts:316
155
+ clearReaction: requires("channel", ["ViewChannel", "ManageMessages"]),
156
+ // channel/services/MessageInteractionService.ts:273, channel/services/interaction/MessageReactionService.ts:347
157
+ clearReactions: requires("channel", ["ViewChannel", "ManageMessages"]),
158
+ // The threads.* entries come from fluxerapp/fluxer commit 4749eb7f866ceba0c9622014a9824900d5be8172, where paths
159
+ // starting with packages/ are relative to the repository root. Fluxer reads a thread's permissions in its parent
160
+ // channel, and a thread it cannot view fails with MISSING_ACCESS instead, so thread-targeted entries leave out
161
+ // View Channel. Join, leave, fetchActive and member reads have no entry because none of their checks fails with
162
+ // MISSING_PERMISSIONS.
163
+ // channel/services/BaseChannelAuthService.ts:248, channel/services/thread/ThreadCreationService.ts:378,
164
+ // packages/constants/src/ThreadPermissionUtils.ts:214-231
165
+ "threads.create": requires("channel", ["ViewChannel", "CreatePublicThreads"], "A private thread needs Create Private Threads instead"),
166
+ // channel/services/BaseChannelAuthService.ts:248, channel/services/thread/ThreadCreationService.ts:120, 378,
167
+ // packages/constants/src/ThreadPermissionUtils.ts:222-225
168
+ "threads.createFromMessage": requires("channel", ["ViewChannel", "CreatePublicThreads", "ReadMessageHistory"]),
169
+ // channel/services/BaseChannelAuthService.ts:248, channel/services/thread/ThreadCreationService.ts:228, 236,
170
+ // channel/services/message/MessageSendService.ts:254-298
171
+ "threads.createPost": requires("channel", ["ViewChannel", "SendMessages"], "Embeds in the first message also need Embed Links, and files need Attach Files"),
172
+ // channel/services/thread/ThreadModifyService.ts:137, packages/constants/src/ThreadPermissionUtils.ts:124-158
173
+ "threads.edit": requires("channel", ["ManageThreads"], "The thread's creator needs it only to unlock the thread or change rateLimitPerUser, pinned or moderated tags, and every change in a locked thread needs it"),
174
+ // channel/services/BaseChannelAuthService.ts:248, channel/services/thread/ThreadListService.ts:144,
175
+ // packages/constants/src/ThreadPermissionUtils.ts:233-241
176
+ "threads.fetchArchived": requires("channel", ["ViewChannel", "ReadMessageHistory"], "Listing private archived threads also needs Manage Threads"),
177
+ // channel/services/BaseChannelAuthService.ts:248, channel/services/thread/ThreadForumService.ts:217
178
+ "threads.search": requires("channel", ["ViewChannel", "ReadMessageHistory"]),
179
+ // channel/services/thread/ThreadMemberService.ts:80, packages/constants/src/ThreadPermissionUtils.ts:179-193
180
+ "threads.addMember": requires("channel", ["SendMessagesInThreads"], "Adding to a private thread that is not invitable also needs Manage Threads, unless the added member has it"),
181
+ // channel/services/thread/ThreadMemberService.ts:105, packages/constants/src/ThreadPermissionUtils.ts:195-201
182
+ "threads.removeMember": requires("channel", ["ManageThreads"], "The creator of a private thread can remove its members without it"),
183
+ };
184
+ /** What Fluxer requires for an operation, or undefined when its permission checks are not tied to one set */
185
+ export function permissionRequirement(operation) {
186
+ return Object.hasOwn(permissionRequirements, operation) ? permissionRequirements[operation] : undefined;
187
+ }
188
+ /** Readable name of a permission, such as Manage Channels for ManageChannels */
189
+ const permissionLabel = (name) => name.replace(/([a-z])([A-Z])/g, "$1 $2");
190
+ /** The suggested fix for a missing-permission rejection of an operation with a known requirement */
191
+ export function requiredPermissionsHint(requirement) {
192
+ const labels = requirement.permissions.map(permissionLabel);
193
+ const list = labels.length === 1 ? labels[0] : `${labels.slice(0, -1).join(", ")} and ${labels.at(-1)}`;
194
+ const them = labels.length === 1 ? "it" : "them";
195
+ const where = {
196
+ channel: `Grant ${them} to the bot's role in the community settings or the channel's permission overrides`,
197
+ guild: `Grant ${them} to the bot's role in the community settings`,
198
+ guildAndChannel: `Grant ${them} to the bot's role in the community settings, and check that the channel's permission overrides do not deny ${them}`,
199
+ }[requirement.scope];
200
+ return [`The bot needs ${list} for this operation`, where, requirement.also]
201
+ .filter((part) => part !== undefined)
202
+ .join(". ");
203
+ }
204
+ //# sourceMappingURL=permission-requirements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission-requirements.js","sourceRoot":"","sources":["../../src/internal/permission-requirements.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Permission calculation from explicit guild, member, role and channel data.
3
+ * Invariant: Results are checks for the supplied data, never action authorization, and Fluxer stays authoritative.
4
+ * Implements [SDK contracts: Delivery, requests and caches](/docs/SDK-CONTRACTS.md#delivery-requests-and-caches)
5
+ */
6
+ import * as Effect from "effect/Effect";
7
+ import type { ChannelOperationFailure } from "#sdk/channels";
8
+ import type { GuildOperationFailure, GuildOperationOptions } from "#sdk/guilds";
9
+ import { GuildOperationError } from "#sdk/guilds";
10
+ import type { PermissionInput, PermissionTarget } from "#sdk/permissions";
11
+ import type { ClientOwner } from "./client.js";
12
+ /**
13
+ * Calculates Fluxer's raw guild, explicit-channel or thread permission bitfield from one validated local snapshot.
14
+ * A thread is calculated in its parent channel, matching upstream threadViewPermissions in
15
+ * packages/constants/src/ThreadPermissionUtils.ts at 4749eb7f
16
+ */
17
+ export declare function calculatePermissions(input: PermissionInput): Effect.Effect<bigint, GuildOperationError>;
18
+ /**
19
+ * Fetches independent guild, member, role, and optional channel observations, then calculates their raw bitfield.
20
+ * A thread channel adds a read of its parent channel, whose permissions the thread takes
21
+ *
22
+ * This always reads remotely without consulting local caches. Its deadline covers the whole composition, but the
23
+ * resulting observations are not transactional and do not establish access, hierarchy, timeouts, or action success
24
+ */
25
+ export declare function fetchPermissions(owner: Pick<ClientOwner, "guild" | "channel" | "logical"> & {
26
+ readonly defaultTimeoutMs?: number;
27
+ }, target: PermissionTarget, options?: GuildOperationOptions): Effect.Effect<bigint, GuildOperationFailure | ChannelOperationFailure>;
28
+ //# sourceMappingURL=permissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/internal/permissions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,EAAE,uBAAuB,EAAqC,MAAM,eAAe,CAAA;AAC/F,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAe,MAAM,aAAa,CAAA;AAE9D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAgQ9C;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAQvG;AAuED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,GAAG;IAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,EAClG,MAAM,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,qBAAqB,GAChC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAqB,GAAG,uBAAuB,CAAC,CAoDxE"}
@@ -0,0 +1,314 @@
1
+ /**
2
+ * Permission calculation from explicit guild, member, role and channel data.
3
+ * Invariant: Results are checks for the supplied data, never action authorization, and Fluxer stays authoritative.
4
+ * Implements [SDK contracts: Delivery, requests and caches](/docs/SDK-CONTRACTS.md#delivery-requests-and-caches)
5
+ */
6
+ import * as Effect from "effect/Effect";
7
+ import { isThreadChannel } from "#sdk/channels";
8
+ import { GuildOperationError, Permissions } from "#sdk/guilds";
9
+ import { composedStepFacts } from "#sdk/api-errors";
10
+ import { channelFetch } from "./channels.js";
11
+ import { guildFetch, memberFetch, roleList } from "./guilds.js";
12
+ import { identifier, record } from "./decode/primitives.js";
13
+ import { readCaller, suspendInput, suspendMarked } from "./defects.js";
14
+ import { InputValidationFailure, inputValidationFailure, unsupportedKeyFailure } from "#sdk/input-validation";
15
+ const allPermissions = (1n << 64n) - 1n;
16
+ const administrator = 1n << 3n;
17
+ const unsigned64 = (value) => typeof value === "bigint" && value >= 0n && value <= allPermissions;
18
+ const inputFailure = (operation, failure) => new GuildOperationError({ operation, reason: "input", outcome: "notDispatched", inputValidation: failure.detail });
19
+ const timeoutFailure = () => new GuildOperationError({ operation: "permissions.fetch", reason: "timeout", outcome: "notDispatched" });
20
+ // Each validator reads a caller field once, so the validated value is the one calculated
21
+ function validateMember(value, guildId) {
22
+ if (!record(value) || value.guildId !== guildId)
23
+ return undefined;
24
+ const userId = value.userId;
25
+ const roleInput = value.roleIds;
26
+ if (!identifier(userId) || !Array.isArray(roleInput))
27
+ return undefined;
28
+ const roleIds = [];
29
+ const seen = new Set();
30
+ for (const roleId of roleInput) {
31
+ if (!identifier(roleId) || roleId === guildId || seen.has(roleId))
32
+ return undefined;
33
+ seen.add(roleId);
34
+ roleIds.push(roleId);
35
+ }
36
+ return { guildId, userId, roleIds };
37
+ }
38
+ function validateRoles(value, guildId, member) {
39
+ if (!Array.isArray(value))
40
+ return undefined;
41
+ const roles = new Map();
42
+ for (const role of value) {
43
+ if (!record(role) || role.guildId !== guildId)
44
+ return undefined;
45
+ const id = role.id;
46
+ const permissions = role.permissions;
47
+ if (!identifier(id) || !unsigned64(permissions) || roles.has(id))
48
+ return undefined;
49
+ roles.set(id, { id, guildId, permissions });
50
+ }
51
+ if (!roles.has(guildId) || member.roleIds.some((roleId) => !roles.has(roleId)))
52
+ return undefined;
53
+ return roles;
54
+ }
55
+ function decodeOverwrite(value, seen) {
56
+ if (!record(value))
57
+ return undefined;
58
+ const id = value.id;
59
+ const type = value.type;
60
+ const allow = value.allow;
61
+ const deny = value.deny;
62
+ if (!identifier(id) || (type !== "role" && type !== "member") || !unsigned64(allow) || !unsigned64(deny))
63
+ return undefined;
64
+ const key = `${type}:${id}`;
65
+ if (seen.has(key))
66
+ return undefined;
67
+ seen.add(key);
68
+ return { id, type, allow, deny };
69
+ }
70
+ function validateChannel(value, guildId) {
71
+ if (!record(value) || value.guildId !== guildId)
72
+ return undefined;
73
+ const id = value.id;
74
+ if (!identifier(id) || !("permissionOverwrites" in value))
75
+ return undefined;
76
+ const overwrites = value.permissionOverwrites;
77
+ if (!Array.isArray(overwrites))
78
+ return undefined;
79
+ const seen = new Set();
80
+ const decoded = [];
81
+ for (const overwrite of overwrites) {
82
+ const valid = decodeOverwrite(overwrite, seen);
83
+ if (!valid)
84
+ return undefined;
85
+ decoded.push(valid);
86
+ }
87
+ return { id, guildId, permissionOverwrites: decoded };
88
+ }
89
+ /** The parent channel ID of a thread in the guild, or undefined when the thread's guild or IDs are invalid */
90
+ function threadParentId(value, guildId) {
91
+ if (!record(value) || value.guildId !== guildId || !identifier(value.id))
92
+ return undefined;
93
+ const parentId = value.parentId;
94
+ return identifier(parentId) ? parentId : undefined;
95
+ }
96
+ function validateChannels(channelInput, parentInput, guildId) {
97
+ if (channelInput === undefined || !isThreadChannel(channelInput)) {
98
+ if (parentInput !== undefined)
99
+ return inputValidationFailure("input.parentChannel", "relationship", "Permission parentChannel is supported only when channel is a thread");
100
+ if (channelInput === undefined)
101
+ return { channel: undefined, inThread: false };
102
+ const channel = validateChannel(channelInput, guildId);
103
+ if (!channel)
104
+ return inputValidationFailure("input.channel", "format", "Permission channel must match the guild and contain unique valid role or member overwrites");
105
+ return { channel, inThread: false };
106
+ }
107
+ // A thread has no overwrites of its own, so Fluxer calculates its permissions in the parent channel
108
+ const parentId = threadParentId(channelInput, guildId);
109
+ if (parentId === undefined)
110
+ return inputValidationFailure("input.channel", "format", "Permission thread must match the guild and contain decimal thread and parent channel IDs");
111
+ if (parentInput === undefined)
112
+ return inputValidationFailure("input.parentChannel", "required", "Permission parentChannel is required when channel is a thread, because a thread takes its parent's permissions");
113
+ const parent = validateChannel(parentInput, guildId);
114
+ if (!parent)
115
+ return inputValidationFailure("input.parentChannel", "format", "Permission parentChannel must match the guild and contain unique valid role or member overwrites");
116
+ if (parent.id !== parentId)
117
+ return inputValidationFailure("input.parentChannel", "relationship", "Permission parentChannel must be the channel that the thread's parentId names");
118
+ return { channel: parent, inThread: true };
119
+ }
120
+ function validateInput(value) {
121
+ if (!record(value))
122
+ return inputValidationFailure("input", "type", "Permission input must be an object");
123
+ const guildInput = value.guild;
124
+ if (!record(guildInput))
125
+ return inputValidationFailure("input.guild", "type", "Permission guild must be an object");
126
+ const guildId = guildInput.id;
127
+ if (!identifier(guildId))
128
+ return inputValidationFailure("input.guild.id", "format", "Permission guild ID must be a decimal string");
129
+ const ownerId = guildInput.ownerId;
130
+ if (!identifier(ownerId))
131
+ return inputValidationFailure("input.guild.ownerId", "format", "Permission guild owner ID must be a decimal string");
132
+ const guild = { id: guildId, ownerId };
133
+ const member = validateMember(value.member, guild.id);
134
+ if (!member)
135
+ return inputValidationFailure("input.member", "format", "Permission member must match the guild and contain a decimal user ID and unique non-default role IDs");
136
+ const roles = validateRoles(value.roles, guild.id, member);
137
+ if (!roles)
138
+ return inputValidationFailure("input.roles[]", "format", "Permission roles must be unique same-guild roles with unsigned 64-bit permissions and cover the member roles");
139
+ const channels = validateChannels(value.channel, value.parentChannel, guild.id);
140
+ if (channels instanceof InputValidationFailure)
141
+ return channels;
142
+ return { guild, member, roles, ...channels };
143
+ }
144
+ function applyOverwrite(permissions, overwrite) {
145
+ return (permissions & ~overwrite.deny) | overwrite.allow;
146
+ }
147
+ /** Fluxer's thread rule: SendMessages in a thread follows SendMessagesInThreads in its parent, whichever way it is set */
148
+ function threadPermissions(parentPermissions) {
149
+ const withoutSend = parentPermissions & ~Permissions.SendMessages;
150
+ return (parentPermissions & Permissions.SendMessagesInThreads) === Permissions.SendMessagesInThreads
151
+ ? withoutSend | Permissions.SendMessages
152
+ : withoutSend;
153
+ }
154
+ function calculate(input) {
155
+ const { guild, member, roles, channel, inThread } = input;
156
+ if (member.userId === guild.ownerId)
157
+ return allPermissions;
158
+ let permissions = roles.get(guild.id).permissions;
159
+ for (const roleId of member.roleIds)
160
+ permissions |= roles.get(roleId).permissions;
161
+ if ((permissions & administrator) === administrator)
162
+ return allPermissions;
163
+ if (!channel)
164
+ return permissions;
165
+ const overwrites = channel.permissionOverwrites;
166
+ for (const overwrite of overwrites)
167
+ if (overwrite.type === "role" && overwrite.id === guild.id)
168
+ permissions = applyOverwrite(permissions, overwrite);
169
+ let roleAllow = 0n;
170
+ let roleDeny = 0n;
171
+ const memberRoles = new Set(member.roleIds);
172
+ for (const overwrite of overwrites)
173
+ if (overwrite.type === "role" && memberRoles.has(overwrite.id)) {
174
+ roleAllow |= overwrite.allow;
175
+ roleDeny |= overwrite.deny;
176
+ }
177
+ permissions = (permissions & ~roleDeny) | roleAllow;
178
+ for (const overwrite of overwrites)
179
+ if (overwrite.type === "member" && overwrite.id === member.userId)
180
+ permissions = applyOverwrite(permissions, overwrite);
181
+ return inThread ? threadPermissions(permissions) : permissions;
182
+ }
183
+ /**
184
+ * Calculates Fluxer's raw guild, explicit-channel or thread permission bitfield from one validated local snapshot.
185
+ * A thread is calculated in its parent channel, matching upstream threadViewPermissions in
186
+ * packages/constants/src/ThreadPermissionUtils.ts at 4749eb7f
187
+ */
188
+ export function calculatePermissions(input) {
189
+ // Only reading the caller input is marked, so a fault in the calculation stays an SDK fault
190
+ return suspendMarked(() => {
191
+ const validated = readCaller(() => validateInput(input));
192
+ return validated instanceof InputValidationFailure
193
+ ? Effect.fail(inputFailure("permissions.calculate", validated))
194
+ : Effect.succeed(calculate(validated));
195
+ });
196
+ }
197
+ function validateTarget(value) {
198
+ if (!record(value))
199
+ return inputValidationFailure("target", "type", "Permission target must be an object");
200
+ const unsupported = unsupportedKeyFailure(value, ["guildId", "userId", "channelId"], "target", "the permission target");
201
+ if (unsupported)
202
+ return unsupported;
203
+ const guildId = value.guildId;
204
+ if (!identifier(guildId))
205
+ return inputValidationFailure("target.guildId", "format", "Guild IDs must be decimal strings");
206
+ const userId = value.userId;
207
+ if (!identifier(userId))
208
+ return inputValidationFailure("target.userId", "format", "User IDs must be decimal strings");
209
+ const channelId = value.channelId;
210
+ if (channelId !== undefined && !identifier(channelId))
211
+ return inputValidationFailure("target.channelId", "format", "Channel IDs must be decimal strings");
212
+ return { guildId, userId, channelId };
213
+ }
214
+ function validateOptions(value) {
215
+ if (value === undefined)
216
+ return {};
217
+ if (!record(value))
218
+ return inputValidationFailure("options", "type", "Permission fetch options must be an object");
219
+ const unsupported = unsupportedKeyFailure(value, ["timeoutMs", "signal"], "options", "the permission fetch options");
220
+ if (unsupported)
221
+ return unsupported;
222
+ const signal = value.signal;
223
+ if (signal !== undefined &&
224
+ (!record(signal) ||
225
+ typeof signal.aborted !== "boolean" ||
226
+ typeof signal.addEventListener !== "function" ||
227
+ typeof signal.removeEventListener !== "function"))
228
+ return inputValidationFailure("options.signal", "type", "Permission fetch signal must be an AbortSignal");
229
+ const timeoutMs = value.timeoutMs;
230
+ if (timeoutMs !== undefined &&
231
+ (typeof timeoutMs !== "number" ||
232
+ !Number.isSafeInteger(timeoutMs) ||
233
+ timeoutMs <= 0 ||
234
+ timeoutMs > 2_147_483_647))
235
+ return inputValidationFailure("options.timeoutMs", "range", "Permission fetch timeout must be an integer from 1 through 2,147,483,647 ms");
236
+ // Keep only the validated timeout: The requests use their own remaining deadlines
237
+ return timeoutMs === undefined ? {} : { timeoutMs };
238
+ }
239
+ function remainingOptions(deadline, now) {
240
+ const remaining = Math.floor(deadline - now());
241
+ return remaining > 0 ? { timeoutMs: remaining } : undefined;
242
+ }
243
+ function remoteCalculationFailure(error) {
244
+ return new GuildOperationError({
245
+ operation: "permissions.fetch",
246
+ reason: error.reason === "input" ? "response" : error.reason,
247
+ outcome: error.outcome,
248
+ status: error.status,
249
+ retryAfterMs: error.retryAfterMs,
250
+ apiError: error.apiError,
251
+ ...composedStepFacts(error),
252
+ });
253
+ }
254
+ /**
255
+ * Fetches independent guild, member, role, and optional channel observations, then calculates their raw bitfield.
256
+ * A thread channel adds a read of its parent channel, whose permissions the thread takes
257
+ *
258
+ * This always reads remotely without consulting local caches. Its deadline covers the whole composition, but the
259
+ * resulting observations are not transactional and do not establish access, hierarchy, timeouts, or action success
260
+ */
261
+ export function fetchPermissions(owner, target, options) {
262
+ // Reading and validating the caller target and options is marked as application input
263
+ return suspendInput(() => {
264
+ const targetSnapshot = validateTarget(target);
265
+ if (targetSnapshot instanceof InputValidationFailure)
266
+ return Effect.fail(inputFailure("permissions.fetch", targetSnapshot));
267
+ const validatedOptions = validateOptions(options);
268
+ if (validatedOptions instanceof InputValidationFailure)
269
+ return Effect.fail(inputFailure("permissions.fetch", validatedOptions));
270
+ const timedOut = () => Effect.fail(timeoutFailure());
271
+ return Effect.gen(function* () {
272
+ const now = () => owner.logical.now();
273
+ const deadline = now() + (validatedOptions.timeoutMs ?? owner.defaultTimeoutMs ?? 30_000);
274
+ const requestOptions = () => remainingOptions(deadline, now);
275
+ const guildOptions = requestOptions();
276
+ if (!guildOptions)
277
+ return yield* timedOut();
278
+ const guild = yield* owner.guild("guilds.fetch", () => guildFetch(targetSnapshot.guildId), guildOptions);
279
+ const memberOptions = requestOptions();
280
+ if (!memberOptions)
281
+ return yield* timedOut();
282
+ const member = yield* owner.guild("members.fetch", () => memberFetch(targetSnapshot), memberOptions);
283
+ const roleOptions = requestOptions();
284
+ if (!roleOptions)
285
+ return yield* timedOut();
286
+ const roles = yield* owner.guild("roles.fetchAll", () => roleList(targetSnapshot.guildId), roleOptions);
287
+ let channel;
288
+ const channelId = targetSnapshot.channelId;
289
+ if (channelId !== undefined) {
290
+ const channelOptions = requestOptions();
291
+ if (!channelOptions)
292
+ return yield* timedOut();
293
+ channel = yield* owner.channel("channels.fetch", () => channelFetch(channelId), channelOptions);
294
+ }
295
+ // A thread takes its permissions from its parent channel, read under the same deadline
296
+ let parentChannel;
297
+ if (isThreadChannel(channel)) {
298
+ const parentId = channel.parentId;
299
+ const parentOptions = requestOptions();
300
+ if (!parentOptions)
301
+ return yield* timedOut();
302
+ parentChannel = yield* owner.channel("channels.fetch", () => channelFetch(parentId), parentOptions);
303
+ }
304
+ return yield* calculatePermissions({
305
+ guild,
306
+ member,
307
+ roles,
308
+ ...(channel === undefined ? {} : { channel }),
309
+ ...(parentChannel === undefined ? {} : { parentChannel }),
310
+ }).pipe(Effect.mapError(remoteCalculationFailure));
311
+ });
312
+ });
313
+ }
314
+ //# sourceMappingURL=permissions.js.map