@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,874 @@
1
+ /**
2
+ * Guild channel operations: Request validation and encoding, with REST and gateway channel data projected by
3
+ * [channel decoding](/projects/sdk/src/internal/channel-decode.ts).
4
+ * Invariant: Guild and channel routes use separate rate-limit groups while sharing global limits and cleanup, omitted permission
5
+ * overwrites stay distinct from an explicit empty list through input encoding, and channel deletion or visibility loss evicts
6
+ * related cached messages without synthesizing message events or changing collector completion. Implements [SDK contracts: Delivery, requests and caches](/docs/SDK-CONTRACTS.md#delivery-requests-and-caches)
7
+ */
8
+ import {
9
+ ChannelFlags,
10
+ ChannelType,
11
+ ForumLayout,
12
+ ForumSortOrder,
13
+ ThreadAutoArchiveMinutes,
14
+ type ChannelCreate,
15
+ type ChannelEdit,
16
+ type ChannelFollowInput,
17
+ type ChannelFollowerStats,
18
+ type FollowedChannel,
19
+ type ForumTagInput,
20
+ type ChannelPosition,
21
+ type GuildChannel,
22
+ type GuildForumChannel,
23
+ type GuildMediaChannel,
24
+ type PermissionOverwrite,
25
+ } from "#sdk/channels"
26
+ import { InputValidationFailure, inputValidationFailure, unsupportedKeyFailure } from "#sdk/input-validation"
27
+ import type { EncodedBody } from "./attachments.js"
28
+ import { decodeGuildChannel, decodeGuildChannels, url } from "./channel-decode.js"
29
+ import { count as nonNegativeInt32, fieldsOnce, identifier, int32, record } from "./decode/primitives.js"
30
+ import { channelName, normalizedText, rawText } from "./field-text.js"
31
+
32
+ /** Validated request description, with the shared REST owner retaining admission, cleanup and rate state */
33
+ export interface ChannelRequest<A> {
34
+ /** Scheduler major resource, the guild for guild routes and otherwise the channel */
35
+ readonly majorId: string
36
+ readonly bucket: string
37
+ readonly path: string
38
+ readonly method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE"
39
+ readonly status: 200 | 201 | 204
40
+ readonly json?: string
41
+ /** A JSON body with attachment files, sent inline as multipart form data instead of json */
42
+ readonly body?: EncodedBody
43
+ /** Allows the shared REST owner to validate and send an operation audit reason */
44
+ readonly audited?: true
45
+ /** Private client capabilities required for one explicit provider-gated replacement */
46
+ readonly features?: readonly string[]
47
+ readonly decode: (value: unknown) => A | undefined
48
+ /** Decodes an HTTP 202 response, for a route that answers 202 instead of status while its result is not ready */
49
+ readonly accepted?: (value: unknown) => A | undefined
50
+ /**
51
+ * Cache ownership hints consumed by the channel cache owner. Only a mutation, whose result the cache never stores, or
52
+ * a request whose result is one channel or a list of channels may carry them
53
+ */
54
+ readonly cache?: {
55
+ readonly channelId?: string
56
+ readonly guildId?: string
57
+ readonly mutation?: boolean
58
+ readonly replace?: boolean
59
+ /**
60
+ * The result is one thread or a list of threads. A mutation changes only the thread named by channelId, or
61
+ * creates a thread when channelId is absent
62
+ */
63
+ readonly thread?: boolean
64
+ }
65
+ }
66
+
67
+ type ChannelValidationResult<A> = ChannelRequest<A> | InputValidationFailure
68
+
69
+ const maxWritablePermission = 9_223_372_036_854_775_807n
70
+ const maxRequestBytes = 4_194_304
71
+
72
+ const nullableIdentifier = (value: unknown): value is string | null => value === null || identifier(value)
73
+ const writablePermission = (value: unknown): value is bigint =>
74
+ typeof value === "bigint" && value >= 0n && value <= maxWritablePermission
75
+
76
+ function nullableValue(value: unknown, guard: (candidate: unknown) => boolean): boolean {
77
+ return value === null || guard(value)
78
+ }
79
+
80
+ const threadDefaultKeys = ["defaultAutoArchiveMinutes", "defaultThreadRateLimitPerUser"]
81
+ const forumSettingKeys = ["availableTags", "defaultReactionEmoji", "defaultSortOrder", "defaultTagSetting", "flags"]
82
+ /** Fluxer's limit on the tags of one forum or media channel */
83
+ const maxForumTags = 20
84
+ const forumTopicMaxLength = 4096
85
+ const textTopicMaxLength = 1024
86
+ const threadAutoArchiveValues: readonly unknown[] = Object.values(ThreadAutoArchiveMinutes)
87
+ const forumSortOrderValues: readonly unknown[] = Object.values(ForumSortOrder)
88
+ const forumLayoutValues: readonly unknown[] = Object.values(ForumLayout)
89
+ const forumFlagBits = ChannelFlags.RequireTag
90
+ const mediaFlagBits = ChannelFlags.RequireTag | ChannelFlags.HideMediaDownloadOptions
91
+
92
+ function validateOptionalFields(input: Record<string, unknown>, create: boolean): true | InputValidationFailure {
93
+ // A created channel's type selects which thread and forum settings it can have. An edit cannot tell the type of
94
+ // the channel, so it accepts every setting and leaves the type check to Fluxer
95
+ const type = input.type
96
+ const threadParent =
97
+ type === ChannelType.Text ||
98
+ type === ChannelType.Announcement ||
99
+ type === ChannelType.Forum ||
100
+ type === ChannelType.Media
101
+ const forumParent = type === ChannelType.Forum || type === ChannelType.Media
102
+ const allowed = create
103
+ ? [
104
+ "type",
105
+ "name",
106
+ "topic",
107
+ "url",
108
+ "parentId",
109
+ "bitrate",
110
+ "userLimit",
111
+ "voiceConnectionLimit",
112
+ "permissionOverwrites",
113
+ "nsfw",
114
+ "nsfwOverride",
115
+ "contentWarningLevel",
116
+ "contentWarningText",
117
+ "rateLimitPerUser",
118
+ ...(threadParent ? threadDefaultKeys : []),
119
+ ...(forumParent ? forumSettingKeys : []),
120
+ ...(type === ChannelType.Forum ? ["defaultForumLayout"] : []),
121
+ ]
122
+ : [
123
+ "type",
124
+ "name",
125
+ "topic",
126
+ "url",
127
+ "bitrate",
128
+ "userLimit",
129
+ "voiceConnectionLimit",
130
+ "nsfw",
131
+ "nsfwOverride",
132
+ "contentWarningLevel",
133
+ "contentWarningText",
134
+ "rateLimitPerUser",
135
+ "permissionOverwrites",
136
+ "rtcRegion",
137
+ ...threadDefaultKeys,
138
+ ...forumSettingKeys,
139
+ "defaultForumLayout",
140
+ ]
141
+ const unsupported = unsupportedKeyFailure(
142
+ input,
143
+ allowed,
144
+ "input",
145
+ create ? "the channel create input" : "the channel edit input",
146
+ )
147
+ if (unsupported) return unsupported
148
+ if (
149
+ create &&
150
+ type !== 0 &&
151
+ type !== 2 &&
152
+ type !== 4 &&
153
+ type !== 5 &&
154
+ type !== ChannelType.Forum &&
155
+ type !== ChannelType.Media &&
156
+ type !== 998
157
+ )
158
+ return inputValidationFailure(
159
+ "type",
160
+ "allowedValue",
161
+ "Channel type must be 0 (Text), 2 (Voice), 4 (Category), 5 (Announcement), 15 (Forum), 16 (Media), or 998 (Link)",
162
+ )
163
+ if (
164
+ !create &&
165
+ input.type !== undefined &&
166
+ input.type !== ChannelType.Text &&
167
+ input.type !== ChannelType.Announcement
168
+ )
169
+ return inputValidationFailure(
170
+ "type",
171
+ "allowedValue",
172
+ "Channel conversion type must be 0 (Text) or 5 (Announcement)",
173
+ )
174
+ if (create && input.name === undefined)
175
+ return inputValidationFailure("name", "required", "Channel name is required")
176
+ if (input.name !== undefined && !channelName(input.name))
177
+ return inputValidationFailure(
178
+ "name",
179
+ "length",
180
+ "Channel name must contain 1 through 100 UTF-16 code units after Fluxer's normalization, and at most 10,000 before it",
181
+ )
182
+ // Forum and media channels allow a longer topic. An edit cannot tell the channel's type, so Fluxer checks the
183
+ // text limit there
184
+ const topicMaxLength = forumParent || !create ? forumTopicMaxLength : textTopicMaxLength
185
+ if (
186
+ input.topic !== undefined &&
187
+ !nullableValue(input.topic, (candidate) => normalizedText(candidate, 1, topicMaxLength))
188
+ )
189
+ return inputValidationFailure(
190
+ "topic",
191
+ "length",
192
+ `Channel topic must be null or contain 1 through ${topicMaxLength.toLocaleString("en-US")} UTF-16 code units after Fluxer's normalization`,
193
+ )
194
+ if (input.url !== undefined && !nullableValue(input.url, url))
195
+ return inputValidationFailure("url", "format", "Channel URL must be null or a valid absolute URL")
196
+ if (input.parentId !== undefined && !nullableIdentifier(input.parentId))
197
+ return inputValidationFailure("parentId", "format", "Channel parentId must be null or a decimal string")
198
+ if (
199
+ input.bitrate !== undefined &&
200
+ !nullableValue(input.bitrate, (candidate) => int32(candidate) && candidate >= 8_000 && candidate <= 384_000)
201
+ )
202
+ return inputValidationFailure(
203
+ "bitrate",
204
+ "range",
205
+ "Channel bitrate must be null or an integer from 8,000 through 384,000 bits per second",
206
+ )
207
+ if (
208
+ input.userLimit !== undefined &&
209
+ !nullableValue(input.userLimit, (candidate) => int32(candidate) && candidate >= 0 && candidate <= 99)
210
+ )
211
+ return inputValidationFailure(
212
+ "userLimit",
213
+ "range",
214
+ "Channel userLimit must be null or an integer from 0 through 99",
215
+ )
216
+ if (
217
+ input.voiceConnectionLimit !== undefined &&
218
+ !nullableValue(
219
+ input.voiceConnectionLimit,
220
+ (candidate) => int32(candidate) && candidate >= 1 && candidate <= 100,
221
+ )
222
+ )
223
+ return inputValidationFailure(
224
+ "voiceConnectionLimit",
225
+ "range",
226
+ "Channel voiceConnectionLimit must be null or an integer from 1 through 100",
227
+ )
228
+ if (input.nsfw !== undefined && !(typeof input.nsfw === "boolean" || (!create && input.nsfw === null)))
229
+ return inputValidationFailure("nsfw", "type", "Channel nsfw must be boolean, or null when editing")
230
+ if (input.nsfwOverride !== undefined && !(typeof input.nsfwOverride === "boolean" || input.nsfwOverride === null))
231
+ return inputValidationFailure("nsfwOverride", "type", "Channel nsfwOverride must be boolean or null")
232
+ if (input.contentWarningLevel !== undefined && input.contentWarningLevel !== 0 && input.contentWarningLevel !== 1)
233
+ return inputValidationFailure(
234
+ "contentWarningLevel",
235
+ "allowedValue",
236
+ "Channel contentWarningLevel must be 0 or 1",
237
+ )
238
+ if (
239
+ input.contentWarningText !== undefined &&
240
+ !nullableValue(input.contentWarningText, (candidate) => rawText(candidate, 0, 200))
241
+ )
242
+ return inputValidationFailure(
243
+ "contentWarningText",
244
+ "length",
245
+ "Channel contentWarningText must be null or contain at most 200 raw UTF-16 code units",
246
+ )
247
+ if (
248
+ input.rateLimitPerUser !== undefined &&
249
+ !nullableValue(input.rateLimitPerUser, (candidate) => int32(candidate) && candidate >= 0 && candidate <= 21_600)
250
+ )
251
+ return inputValidationFailure(
252
+ "rateLimitPerUser",
253
+ "range",
254
+ "Channel rateLimitPerUser must be null or an integer from 0 through 21,600 seconds",
255
+ )
256
+ if (
257
+ input.rtcRegion !== undefined &&
258
+ !nullableValue(input.rtcRegion, (candidate) => normalizedText(candidate, 1, 64))
259
+ )
260
+ return inputValidationFailure(
261
+ "rtcRegion",
262
+ "length",
263
+ "Channel rtcRegion must be null or contain 1 through 64 UTF-16 code units after Fluxer's normalization",
264
+ )
265
+ if (
266
+ input.defaultAutoArchiveMinutes !== undefined &&
267
+ !nullableValue(input.defaultAutoArchiveMinutes, (candidate) => threadAutoArchiveValues.includes(candidate))
268
+ )
269
+ return inputValidationFailure(
270
+ "defaultAutoArchiveMinutes",
271
+ "allowedValue",
272
+ "Channel defaultAutoArchiveMinutes must be null, or 60, 1440, 4320 or 10080 minutes",
273
+ )
274
+ if (
275
+ input.defaultThreadRateLimitPerUser !== undefined &&
276
+ !nullableValue(
277
+ input.defaultThreadRateLimitPerUser,
278
+ (candidate) => int32(candidate) && candidate >= 0 && candidate <= 21_600,
279
+ )
280
+ )
281
+ return inputValidationFailure(
282
+ "defaultThreadRateLimitPerUser",
283
+ "range",
284
+ "Channel defaultThreadRateLimitPerUser must be null or an integer from 0 through 21,600 seconds",
285
+ )
286
+ if (
287
+ input.defaultSortOrder !== undefined &&
288
+ !nullableValue(input.defaultSortOrder, (candidate) => forumSortOrderValues.includes(candidate))
289
+ )
290
+ return inputValidationFailure(
291
+ "defaultSortOrder",
292
+ "allowedValue",
293
+ "Channel defaultSortOrder must be null, 0 (latest activity) or 1 (creation time)",
294
+ )
295
+ if (
296
+ input.defaultForumLayout !== undefined &&
297
+ !nullableValue(input.defaultForumLayout, (candidate) => forumLayoutValues.includes(candidate))
298
+ )
299
+ return inputValidationFailure(
300
+ "defaultForumLayout",
301
+ "allowedValue",
302
+ "Channel defaultForumLayout must be null, 0 (default), 1 (list) or 2 (grid)",
303
+ )
304
+ if (
305
+ input.defaultTagSetting !== undefined &&
306
+ input.defaultTagSetting !== null &&
307
+ input.defaultTagSetting !== "match_some" &&
308
+ input.defaultTagSetting !== "match_all"
309
+ )
310
+ return inputValidationFailure(
311
+ "defaultTagSetting",
312
+ "allowedValue",
313
+ 'Channel defaultTagSetting must be null, "match_some" or "match_all"',
314
+ )
315
+ if (input.flags !== undefined) {
316
+ // A created forum channel can set only the bits that its own type allows. An edit accepts the bits of either
317
+ // type, because Fluxer checks them against the channel it edits
318
+ const settable = create && type === ChannelType.Forum ? forumFlagBits : mediaFlagBits
319
+ if (!int32(input.flags) || input.flags < 0 || (input.flags & ~settable) !== 0)
320
+ return inputValidationFailure(
321
+ "flags",
322
+ "allowedValue",
323
+ create && type === ChannelType.Forum
324
+ ? "Channel flags must be a nonnegative integer that sets only ChannelFlags.RequireTag on a forum channel"
325
+ : "Channel flags must be a nonnegative integer that sets only ChannelFlags.RequireTag or ChannelFlags.HideMediaDownloadOptions",
326
+ )
327
+ }
328
+ return true
329
+ }
330
+
331
+ /**
332
+ * Encode one forum tag, reading each field once. The `listed` argument is true for an entry of a channel's tag list, and allowId is
333
+ * false where an ID is certain to fail, which is the tag list of a new channel because it has no tags. The single-tag
334
+ * routes accept an ID so that a received tag is valid input, and their callers keep it out of the body
335
+ */
336
+ function encodeForumTag(
337
+ value: unknown,
338
+ listed: boolean,
339
+ allowId: boolean,
340
+ ): Record<string, string | boolean | null> | InputValidationFailure {
341
+ const container = listed ? "availableTags[]" : "input"
342
+ const field = (name: string) => (listed ? `availableTags[].${name}` : name)
343
+ if (!record(value)) return inputValidationFailure(container, "type", "A forum tag must be an object")
344
+ const unsupported = unsupportedKeyFailure(
345
+ value,
346
+ allowId ? ["id", "name", "moderated", "emojiId", "emojiName"] : ["name", "moderated", "emojiId", "emojiName"],
347
+ container,
348
+ listed ? "a forum tag list entry" : "the forum tag input",
349
+ )
350
+ if (unsupported) return unsupported
351
+ const read = fieldsOnce(value)
352
+ const id = read("id")
353
+ const name = read("name")
354
+ const moderated = read("moderated")
355
+ const emojiId = read("emojiId")
356
+ const emojiName = read("emojiName")
357
+ if (id !== undefined && !identifier(id))
358
+ return inputValidationFailure(field("id"), "format", "Forum tag IDs must be decimal strings")
359
+ if (name === undefined) return inputValidationFailure(field("name"), "required", "A forum tag needs a name")
360
+ if (!normalizedText(name, 1, 50))
361
+ return inputValidationFailure(
362
+ field("name"),
363
+ "length",
364
+ "Forum tag name must contain 1 through 50 UTF-16 code units after Fluxer's normalization",
365
+ )
366
+ if (moderated !== undefined && typeof moderated !== "boolean")
367
+ return inputValidationFailure(field("moderated"), "type", "Forum tag moderated must be boolean")
368
+ const emoji = encodeEmoji(emojiId, emojiName, field, container)
369
+ if (emoji instanceof InputValidationFailure) return emoji
370
+ return {
371
+ ...(id === undefined ? {} : { id }),
372
+ name,
373
+ ...(moderated === undefined ? {} : { moderated }),
374
+ ...emoji,
375
+ }
376
+ }
377
+
378
+ /** Validate and encode the emoji pair of a forum tag or a default reaction, where at most one of the two may be set */
379
+ function encodeEmoji(
380
+ emojiId: unknown,
381
+ emojiName: unknown,
382
+ path: (field: string) => string,
383
+ container: string,
384
+ ): Record<string, string | null> | InputValidationFailure {
385
+ if (emojiId !== undefined && !nullableIdentifier(emojiId))
386
+ return inputValidationFailure(path("emojiId"), "format", "Emoji IDs must be null or decimal strings")
387
+ if (emojiName !== undefined && !(emojiName === null || normalizedText(emojiName, 1, 64)))
388
+ return inputValidationFailure(
389
+ path("emojiName"),
390
+ "length",
391
+ "An emoji name must be null or contain 1 through 64 UTF-16 code units after Fluxer's normalization",
392
+ )
393
+ if (emojiId != null && emojiName != null)
394
+ return inputValidationFailure(container, "relationship", "Set at most one of emojiId and emojiName")
395
+ return {
396
+ ...(emojiId === undefined ? {} : { emoji_id: emojiId }),
397
+ ...(emojiName === undefined ? {} : { emoji_name: emojiName }),
398
+ }
399
+ }
400
+
401
+ function encodeForumTags(
402
+ value: unknown,
403
+ allowId: boolean,
404
+ ): readonly Record<string, string | boolean | null>[] | InputValidationFailure {
405
+ if (!Array.isArray(value))
406
+ return inputValidationFailure("availableTags", "type", "Forum channel availableTags must be an array")
407
+ if (value.length > maxForumTags)
408
+ return inputValidationFailure("availableTags", "length", "A forum channel can have at most 20 tags")
409
+ const tags: Array<Record<string, string | boolean | null>> = []
410
+ for (const item of value) {
411
+ const tag = encodeForumTag(item, true, allowId)
412
+ if (tag instanceof InputValidationFailure) return tag
413
+ tags.push(tag)
414
+ }
415
+ return tags
416
+ }
417
+
418
+ function encodeDefaultReaction(value: unknown): Record<string, string | null> | null | InputValidationFailure {
419
+ if (value === null) return null
420
+ if (!record(value))
421
+ return inputValidationFailure(
422
+ "defaultReactionEmoji",
423
+ "type",
424
+ "Channel defaultReactionEmoji must be null or an object",
425
+ )
426
+ const unsupported = unsupportedKeyFailure(
427
+ value,
428
+ ["emojiId", "emojiName"],
429
+ "defaultReactionEmoji",
430
+ "the default reaction",
431
+ )
432
+ if (unsupported) return unsupported
433
+ const read = fieldsOnce(value)
434
+ return encodeEmoji(
435
+ read("emojiId"),
436
+ read("emojiName"),
437
+ (field) => `defaultReactionEmoji.${field}`,
438
+ "defaultReactionEmoji",
439
+ )
440
+ }
441
+
442
+ function encodeOverwrites(value: unknown): readonly Record<string, string | number>[] | InputValidationFailure {
443
+ if (!Array.isArray(value))
444
+ return inputValidationFailure("permissionOverwrites", "type", "Permission overwrites must be an array")
445
+ const overwrites: Array<Record<string, string | number>> = []
446
+ const ids = new Set<string>()
447
+ for (const item of value) {
448
+ if (!record(item))
449
+ return inputValidationFailure("permissionOverwrites[]", "type", "Permission overwrites must be objects")
450
+ const unsupported = unsupportedKeyFailure(
451
+ item,
452
+ ["id", "type", "allow", "deny"],
453
+ "permissionOverwrites[]",
454
+ "A permission overwrite",
455
+ )
456
+ if (unsupported) return unsupported
457
+ if (!identifier(item.id))
458
+ return inputValidationFailure(
459
+ "permissionOverwrites[].id",
460
+ "format",
461
+ "Permission overwrite IDs must be decimal strings",
462
+ )
463
+ if (ids.has(item.id))
464
+ return inputValidationFailure(
465
+ "permissionOverwrites[].id",
466
+ "unique",
467
+ "Permission overwrite IDs must be unique",
468
+ )
469
+ if (item.type !== "role" && item.type !== "member")
470
+ return inputValidationFailure(
471
+ "permissionOverwrites[].type",
472
+ "allowedValue",
473
+ "Permission overwrite type must be role or member",
474
+ )
475
+ if (!writablePermission(item.allow))
476
+ return inputValidationFailure(
477
+ "permissionOverwrites[].allow",
478
+ "range",
479
+ "Permission overwrite allow must be a bigint from 0 through 9,223,372,036,854,775,807",
480
+ )
481
+ if (!writablePermission(item.deny))
482
+ return inputValidationFailure(
483
+ "permissionOverwrites[].deny",
484
+ "range",
485
+ "Permission overwrite deny must be a bigint from 0 through 9,223,372,036,854,775,807",
486
+ )
487
+ ids.add(item.id)
488
+ overwrites.push({
489
+ id: item.id,
490
+ type: item.type === "role" ? 0 : 1,
491
+ allow: item.allow.toString(),
492
+ deny: item.deny.toString(),
493
+ })
494
+ }
495
+ return overwrites
496
+ }
497
+
498
+ function channelBody(input: ChannelCreate | ChannelEdit, create: boolean): string | InputValidationFailure {
499
+ if (!record(input)) return inputValidationFailure("input", "type", "Channel input must be an object")
500
+ const validated = validateOptionalFields(input, create)
501
+ if (validated instanceof InputValidationFailure) return validated
502
+ const permissionOverwrites =
503
+ input.permissionOverwrites === undefined ? undefined : encodeOverwrites(input.permissionOverwrites)
504
+ if (permissionOverwrites instanceof InputValidationFailure) return permissionOverwrites
505
+ const availableTags = input.availableTags === undefined ? undefined : encodeForumTags(input.availableTags, !create)
506
+ if (availableTags instanceof InputValidationFailure) return availableTags
507
+ const defaultReaction =
508
+ input.defaultReactionEmoji === undefined ? undefined : encodeDefaultReaction(input.defaultReactionEmoji)
509
+ if (defaultReaction instanceof InputValidationFailure) return defaultReaction
510
+ const body = {
511
+ ...(input.type === undefined ? {} : { type: input.type }),
512
+ ...(input.name === undefined ? {} : { name: input.name }),
513
+ ...(input.topic === undefined ? {} : { topic: input.topic }),
514
+ ...(input.url === undefined ? {} : { url: input.url }),
515
+ ...(create && input.parentId !== undefined ? { parent_id: input.parentId } : {}),
516
+ ...(input.bitrate === undefined ? {} : { bitrate: input.bitrate }),
517
+ ...(input.userLimit === undefined ? {} : { user_limit: input.userLimit }),
518
+ ...(input.voiceConnectionLimit === undefined ? {} : { voice_connection_limit: input.voiceConnectionLimit }),
519
+ ...(permissionOverwrites === undefined ? {} : { permission_overwrites: permissionOverwrites }),
520
+ ...(input.nsfw === undefined ? {} : { nsfw: input.nsfw }),
521
+ ...(input.nsfwOverride === undefined ? {} : { nsfw_override: input.nsfwOverride }),
522
+ ...(input.contentWarningLevel === undefined ? {} : { content_warning_level: input.contentWarningLevel }),
523
+ ...(input.contentWarningText === undefined ? {} : { content_warning_text: input.contentWarningText }),
524
+ ...(input.rateLimitPerUser === undefined ? {} : { rate_limit_per_user: input.rateLimitPerUser }),
525
+ ...(!create && input.rtcRegion !== undefined ? { rtc_region: input.rtcRegion } : {}),
526
+ ...(input.defaultAutoArchiveMinutes === undefined
527
+ ? {}
528
+ : { default_auto_archive_duration: input.defaultAutoArchiveMinutes }),
529
+ ...(input.defaultThreadRateLimitPerUser === undefined
530
+ ? {}
531
+ : { default_thread_rate_limit_per_user: input.defaultThreadRateLimitPerUser }),
532
+ ...(availableTags === undefined ? {} : { available_tags: availableTags }),
533
+ ...(defaultReaction === undefined ? {} : { default_reaction_emoji: defaultReaction }),
534
+ ...(input.defaultSortOrder === undefined ? {} : { default_sort_order: input.defaultSortOrder }),
535
+ ...(input.defaultForumLayout === undefined ? {} : { default_forum_layout: input.defaultForumLayout }),
536
+ ...(input.defaultTagSetting === undefined ? {} : { default_tag_setting: input.defaultTagSetting }),
537
+ ...(input.flags === undefined ? {} : { flags: input.flags }),
538
+ }
539
+ const json = JSON.stringify(body)
540
+ if (json === "{}") return inputValidationFailure("input", "required", "Channel edit must contain a change")
541
+ return Buffer.byteLength(json) > maxRequestBytes
542
+ ? inputValidationFailure("input", "size", "Channel input must not exceed 4,194,304 encoded bytes")
543
+ : json
544
+ }
545
+
546
+ export function channelFetch(channelId: string): ChannelValidationResult<GuildChannel> {
547
+ if (!identifier(channelId))
548
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
549
+ return {
550
+ majorId: channelId,
551
+ bucket: "channel:read",
552
+ path: `/channels/${channelId}`,
553
+ method: "GET",
554
+ status: 200,
555
+ cache: { channelId },
556
+ decode: (value) => {
557
+ const channel = decodeGuildChannel(value)
558
+ return channel?.id === channelId ? channel : undefined
559
+ },
560
+ }
561
+ }
562
+
563
+ export function channelFollow(channelId: string, input: ChannelFollowInput): ChannelValidationResult<FollowedChannel> {
564
+ if (!identifier(channelId))
565
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
566
+ if (!record(input)) return inputValidationFailure("input", "type", "Channel follow input must be an object")
567
+ const unsupported = unsupportedKeyFailure(input, ["targetChannelId"], "input", "the channel follow input")
568
+ if (unsupported) return unsupported
569
+ const targetChannelId = input.targetChannelId
570
+ if (!identifier(targetChannelId))
571
+ return inputValidationFailure("targetChannelId", "format", "Target channel IDs must be decimal strings")
572
+ return {
573
+ majorId: channelId,
574
+ bucket: "channel:follow",
575
+ audited: true,
576
+ path: `/channels/${channelId}/followers`,
577
+ method: "POST",
578
+ status: 200,
579
+ json: JSON.stringify({ webhook_channel_id: targetChannelId }),
580
+ cache: { channelId: targetChannelId, mutation: true },
581
+ decode: (value) =>
582
+ record(value) && value.channel_id === channelId && identifier(value.webhook_id)
583
+ ? Object.freeze({ channelId, webhookId: value.webhook_id })
584
+ : undefined,
585
+ }
586
+ }
587
+
588
+ export function channelFollowerStats(channelId: string): ChannelValidationResult<ChannelFollowerStats> {
589
+ if (!identifier(channelId))
590
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
591
+ return {
592
+ majorId: channelId,
593
+ bucket: "channel:follower_stats",
594
+ path: `/channels/${channelId}/follower-stats`,
595
+ method: "GET",
596
+ status: 200,
597
+ decode: (value) =>
598
+ record(value) && nonNegativeInt32(value.channel_count) && nonNegativeInt32(value.guild_count)
599
+ ? Object.freeze({ channelCount: value.channel_count, guildCount: value.guild_count })
600
+ : undefined,
601
+ }
602
+ }
603
+
604
+ export function channelList(guildId: string): ChannelValidationResult<readonly GuildChannel[]> {
605
+ if (!identifier(guildId)) return inputValidationFailure("guildId", "format", "Guild IDs must be decimal strings")
606
+ return {
607
+ majorId: guildId,
608
+ bucket: "guild:channels:list",
609
+ path: `/guilds/${guildId}/channels`,
610
+ method: "GET",
611
+ status: 200,
612
+ cache: { guildId, replace: true },
613
+ decode: (value) => decodeGuildChannels(value, guildId),
614
+ }
615
+ }
616
+
617
+ export function channelCreate(guildId: string, input: ChannelCreate): ChannelValidationResult<GuildChannel> {
618
+ if (!identifier(guildId)) return inputValidationFailure("guildId", "format", "Guild IDs must be decimal strings")
619
+ const json = channelBody(input, true)
620
+ if (json instanceof InputValidationFailure) return json
621
+ return {
622
+ majorId: guildId,
623
+ bucket: "guild:channel:create",
624
+ audited: true,
625
+ path: `/guilds/${guildId}/channels`,
626
+ method: "POST",
627
+ status: 200,
628
+ json,
629
+ ...(input.permissionOverwrites === undefined ? {} : { features: ["view_channel_members_permission"] }),
630
+ cache: { guildId, mutation: true },
631
+ decode: (value) => {
632
+ const channel = decodeGuildChannel(value)
633
+ return channel?.guildId === guildId ? channel : undefined
634
+ },
635
+ }
636
+ }
637
+
638
+ export function channelEdit(channelId: string, input: ChannelEdit): ChannelValidationResult<GuildChannel> {
639
+ if (!identifier(channelId))
640
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
641
+ const json = channelBody(input, false)
642
+ if (json instanceof InputValidationFailure) return json
643
+ return {
644
+ majorId: channelId,
645
+ bucket: "channel:update",
646
+ audited: true,
647
+ path: `/channels/${channelId}`,
648
+ method: "PATCH",
649
+ status: 200,
650
+ json,
651
+ ...(input.permissionOverwrites === undefined ? {} : { features: ["view_channel_members_permission"] }),
652
+ cache: { channelId, mutation: true },
653
+ decode: (value) => {
654
+ const channel = decodeGuildChannel(value)
655
+ return channel?.id === channelId ? channel : undefined
656
+ },
657
+ }
658
+ }
659
+
660
+ function forumTagRequest(
661
+ channelId: string,
662
+ tagId: string | undefined,
663
+ method: "POST" | "PUT" | "DELETE",
664
+ json?: string,
665
+ ): ChannelRequest<GuildForumChannel | GuildMediaChannel> {
666
+ return {
667
+ majorId: channelId,
668
+ bucket: "channel:forum_tags",
669
+ audited: true,
670
+ path: tagId === undefined ? `/channels/${channelId}/tags` : `/channels/${channelId}/tags/${tagId}`,
671
+ method,
672
+ status: 200,
673
+ ...(json === undefined ? {} : { json }),
674
+ cache: { channelId, mutation: true },
675
+ // Fluxer answers with the updated channel, so any other shape is a malformed response
676
+ decode: (value) => {
677
+ const channel = decodeGuildChannel(value)
678
+ return channel?.id === channelId &&
679
+ (channel.type === ChannelType.Forum || channel.type === ChannelType.Media)
680
+ ? channel
681
+ : undefined
682
+ },
683
+ }
684
+ }
685
+
686
+ export function forumTagCreate(
687
+ channelId: string,
688
+ input: ForumTagInput,
689
+ ): ChannelValidationResult<GuildForumChannel | GuildMediaChannel> {
690
+ if (!identifier(channelId))
691
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
692
+ const tag = encodeForumTag(input, false, true)
693
+ if (tag instanceof InputValidationFailure) return tag
694
+ // Fluxer assigns the ID of a new tag, so a received tag's own ID is dropped instead of sent
695
+ const { id: _ignored, ...body } = tag
696
+ return forumTagRequest(channelId, undefined, "POST", JSON.stringify(body))
697
+ }
698
+
699
+ export function forumTagEdit(
700
+ channelId: string,
701
+ tagId: string,
702
+ input: ForumTagInput,
703
+ ): ChannelValidationResult<GuildForumChannel | GuildMediaChannel> {
704
+ if (!identifier(channelId))
705
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
706
+ if (!identifier(tagId)) return inputValidationFailure("tagId", "format", "Forum tag IDs must be decimal strings")
707
+ const tag = encodeForumTag(input, false, true)
708
+ if (tag instanceof InputValidationFailure) return tag
709
+ // The route names the tag, and Fluxer would ignore another ID in the body, so a different one is a mistake
710
+ const { id, ...body } = tag
711
+ if (id !== undefined && id !== tagId)
712
+ return inputValidationFailure("id", "relationship", "A forum tag's id must equal the tagId argument")
713
+ return forumTagRequest(channelId, tagId, "PUT", JSON.stringify(body))
714
+ }
715
+
716
+ export function forumTagDelete(
717
+ channelId: string,
718
+ tagId: string,
719
+ ): ChannelValidationResult<GuildForumChannel | GuildMediaChannel> {
720
+ if (!identifier(channelId))
721
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
722
+ if (!identifier(tagId)) return inputValidationFailure("tagId", "format", "Forum tag IDs must be decimal strings")
723
+ return forumTagRequest(channelId, tagId, "DELETE")
724
+ }
725
+
726
+ export function channelDelete(channelId: string): ChannelValidationResult<void> {
727
+ if (!identifier(channelId))
728
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
729
+ return {
730
+ majorId: channelId,
731
+ bucket: "channel:delete",
732
+ audited: true,
733
+ path: `/channels/${channelId}`,
734
+ method: "DELETE",
735
+ status: 204,
736
+ cache: { channelId, mutation: true },
737
+ decode: () => undefined,
738
+ }
739
+ }
740
+
741
+ function channelPositionBody(positions: readonly ChannelPosition[]): string | InputValidationFailure {
742
+ if (!Array.isArray(positions))
743
+ return inputValidationFailure("positions", "type", "Channel positions must be an array")
744
+ if (positions.length === 0)
745
+ return inputValidationFailure("positions", "length", "Channel positions must contain at least one entry")
746
+ const ids = new Set<string>()
747
+ const updates: Array<Record<string, string | number | boolean | null>> = []
748
+ let bytes = 2
749
+ for (const item of positions) {
750
+ const unsupported = record(item)
751
+ ? unsupportedKeyFailure(
752
+ item,
753
+ ["id", "position", "parentId", "precedingSiblingId", "syncPermissionsOnMove"],
754
+ "positions[]",
755
+ "a channel position entry",
756
+ )
757
+ : undefined
758
+ if (unsupported) return unsupported
759
+ if (
760
+ !record(item) ||
761
+ !identifier(item.id) ||
762
+ ids.has(item.id) ||
763
+ (item.position !== undefined &&
764
+ (typeof item.position !== "number" || !Number.isSafeInteger(item.position) || item.position < 0)) ||
765
+ (item.parentId !== undefined && !nullableIdentifier(item.parentId)) ||
766
+ (item.precedingSiblingId !== undefined && !nullableIdentifier(item.precedingSiblingId)) ||
767
+ (item.syncPermissionsOnMove !== undefined && typeof item.syncPermissionsOnMove !== "boolean")
768
+ )
769
+ return inputValidationFailure(
770
+ "positions[]",
771
+ "format",
772
+ "Each channel position entry must be an object with a unique decimal id, and may also contain only position (a nonnegative integer), parentId and precedingSiblingId (decimal IDs or null), and syncPermissionsOnMove (a boolean)",
773
+ )
774
+ const update = {
775
+ id: item.id,
776
+ ...(item.position === undefined ? {} : { position: item.position }),
777
+ ...(item.parentId === undefined ? {} : { parent_id: item.parentId }),
778
+ ...(item.precedingSiblingId === undefined ? {} : { preceding_sibling_id: item.precedingSiblingId }),
779
+ ...(item.syncPermissionsOnMove === undefined ? {} : { lock_permissions: item.syncPermissionsOnMove }),
780
+ }
781
+ bytes += Buffer.byteLength(JSON.stringify(update)) + (updates.length ? 1 : 0)
782
+ if (bytes > maxRequestBytes)
783
+ return inputValidationFailure(
784
+ "positions",
785
+ "size",
786
+ "Channel positions must not exceed 4,194,304 encoded bytes",
787
+ )
788
+ ids.add(item.id)
789
+ updates.push(update)
790
+ }
791
+ return JSON.stringify(updates)
792
+ }
793
+
794
+ export function channelReorder(guildId: string, positions: readonly ChannelPosition[]): ChannelValidationResult<void> {
795
+ if (!identifier(guildId)) return inputValidationFailure("guildId", "format", "Guild IDs must be decimal strings")
796
+ const json = channelPositionBody(positions)
797
+ if (json instanceof InputValidationFailure) return json
798
+ return {
799
+ majorId: guildId,
800
+ bucket: "guild:channel:positions",
801
+ audited: true,
802
+ path: `/guilds/${guildId}/channels`,
803
+ method: "PATCH",
804
+ status: 204,
805
+ json,
806
+ cache: { guildId, mutation: true },
807
+ decode: () => undefined,
808
+ }
809
+ }
810
+
811
+ function permissionSetBody(input: PermissionOverwrite): string | InputValidationFailure {
812
+ const unsupported = record(input)
813
+ ? unsupportedKeyFailure(
814
+ input,
815
+ ["id", "type", "allow", "deny"],
816
+ "permissionOverwrite",
817
+ "the permission overwrite",
818
+ )
819
+ : undefined
820
+ if (unsupported) return unsupported
821
+ if (
822
+ !record(input) ||
823
+ !identifier(input.id) ||
824
+ (input.type !== "role" && input.type !== "member") ||
825
+ !writablePermission(input.allow) ||
826
+ !writablePermission(input.deny)
827
+ )
828
+ return inputValidationFailure(
829
+ "permissionOverwrite",
830
+ "format",
831
+ "Permission overwrite requires a decimal ID, role or member type, and allow and deny values from 0 through 9,223,372,036,854,775,807",
832
+ )
833
+ return JSON.stringify({
834
+ type: input.type === "role" ? 0 : 1,
835
+ allow: input.allow.toString(),
836
+ deny: input.deny.toString(),
837
+ })
838
+ }
839
+
840
+ export function permissionSet(channelId: string, input: PermissionOverwrite): ChannelValidationResult<void> {
841
+ if (!identifier(channelId))
842
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
843
+ const json = permissionSetBody(input)
844
+ if (json instanceof InputValidationFailure) return json
845
+ return {
846
+ majorId: channelId,
847
+ bucket: "channel:update",
848
+ audited: true,
849
+ path: `/channels/${channelId}/permissions/${input.id}`,
850
+ method: "PUT",
851
+ status: 204,
852
+ json,
853
+ features: ["view_channel_members_permission"],
854
+ cache: { channelId, mutation: true },
855
+ decode: () => undefined,
856
+ }
857
+ }
858
+
859
+ export function permissionRemove(channelId: string, targetId: string): ChannelValidationResult<void> {
860
+ if (!identifier(channelId))
861
+ return inputValidationFailure("channelId", "format", "Channel IDs must be decimal strings")
862
+ if (!identifier(targetId))
863
+ return inputValidationFailure("targetId", "format", "Permission target IDs must be decimal strings")
864
+ return {
865
+ majorId: channelId,
866
+ bucket: "channel:update",
867
+ audited: true,
868
+ path: `/channels/${channelId}/permissions/${targetId}`,
869
+ method: "DELETE",
870
+ status: 204,
871
+ cache: { channelId, mutation: true },
872
+ decode: () => undefined,
873
+ }
874
+ }