@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,586 @@
1
+ /**
2
+ * One shard's connection loop: Discovery, gateway attempts, readiness and retries until a permanent failure.
3
+ * Invariant: Each assigned shard has exactly one loop with its own session, sequence, heartbeat timing and backoff.
4
+ * Startup and recovery use separate retry policies, server-required waits are respected, the loop attempts Resume
5
+ * before a new session when the protocol permits it, and it stops on permanent failures, cancellation or SDK defects.
6
+ * A successful Resume replays every retained dispatch after the session's sequence. Fluxer refuses the Resume with
7
+ * INVALID_SESSION instead when it dropped a needed dispatch (the replay floor in fluxer_gateway session_lifecycle.erl at
8
+ * fluxerapp/fluxer commit 858a2d9e2b987330edd81711bb53e4f7edc0bbcc), so guild caches survive a successful Resume and are
9
+ * released only when the next handshake is a new session. Cached threads are the exception: Fluxer never replays
10
+ * THREAD_LIST_SYNC, so the client drops a resumed shard's threads.
11
+ * Implements [SDK contracts: Connection and recovery](/docs/SDK-CONTRACTS.md#connection-and-recovery)
12
+ */
13
+ import * as Cause from "effect/Cause"
14
+ import * as Clock from "effect/Clock"
15
+ import * as Deferred from "effect/Deferred"
16
+ import * as Duration from "effect/Duration"
17
+ import * as Effect from "effect/Effect"
18
+ import * as Exit from "effect/Exit"
19
+ import * as Pull from "effect/Pull"
20
+ import * as Random from "effect/Random"
21
+ import * as Schedule from "effect/Schedule"
22
+ import type { ConnectionState } from "#sdk/client"
23
+ import {
24
+ ClientClosedError,
25
+ ConnectionError,
26
+ ConnectionTimeoutError,
27
+ RateLimitError,
28
+ type ConnectError,
29
+ type ConnectionFailure,
30
+ } from "#sdk/errors"
31
+ import type { MessageCore } from "#sdk/messages"
32
+ import type { SessionStore } from "#sdk/sharding"
33
+ import { nowMs } from "../clock.js"
34
+ import type { Configuration } from "../configuration.js"
35
+ import type { CountOwner } from "../counts.js"
36
+ import { mapFailureCause, withDeadline } from "../effect-failures.js"
37
+ import type { EventBus } from "../events.js"
38
+ import { primaryError } from "../failures.js"
39
+ import { AttemptFailure, runGatewaySession, type Session } from "../gateway.js"
40
+ import { gatewayUrl, type InstanceResolver } from "../instance.js"
41
+ import type { ClientLogger, LogInput } from "../logging.js"
42
+ import type { MemberChunkOwner } from "../member-chunks.js"
43
+ import type { PresenceOwner } from "../presence.js"
44
+ import { closeActionText, closeCodeInfo, CloseCode } from "../protocol/gateway.js"
45
+ import type { SocketFactory } from "../transport/index.js"
46
+ import type { IdentifyFields, SubmitFailure } from "../gateway/commands.js"
47
+ import { checkSnapshot, type ShardPlan } from "../sharding.js"
48
+ import { backoffCeiling, retryDelay, stayedHealthy } from "./backoff.js"
49
+ import { applyEvent, guildIntake, invalidateDispatch, type ClientCaches } from "./intake.js"
50
+ import { formatDuration } from "./lifetime.js"
51
+ import { emitObservation } from "../observer.js"
52
+
53
+ /** Observable per-shard state, owned by the client and updated by this loop */
54
+ export interface ShardRuntime {
55
+ readonly shardId: number
56
+ state: ConnectionState
57
+ latency: number | null
58
+ recovery: { phase: "startup" | "recovery"; attempt: number; retryDelayMs: number | null } | null
59
+ session: Session
60
+ /** Paced gateway.send path of the current ready session, or undefined while the shard is not ready */
61
+ submit: ((op: number, d: unknown, sent?: () => void) => Effect.Effect<void, SubmitFailure>) | undefined
62
+ /** Gateway URL this shard's sessions use, known after discovery and recorded in saved session snapshots */
63
+ gatewayUrl: string | undefined
64
+ }
65
+
66
+ /** What the shard loop needs from its client */
67
+ export interface ShardLoopHost<M extends MessageCore> {
68
+ readonly logging: ClientLogger
69
+ readonly instance: InstanceResolver
70
+ readonly caches: ClientCaches<M>
71
+ readonly events: EventBus<M>
72
+ readonly presence: PresenceOwner
73
+ readonly counts: CountOwner
74
+ readonly memberChunks: MemberChunkOwner
75
+ readonly sockets: SocketFactory
76
+ /** The client's aggregate state */
77
+ readonly state: () => ConnectionState
78
+ /** Record a shard transition and recompute the client state */
79
+ readonly setShardState: (shard: ShardRuntime, state: ConnectionState) => void
80
+ /** Release a shard's guild-scoped cache entries once an established or restored session needs a new session, and
81
+ * again when that session is ready, because partial replay and reads stored during the outage may be stale
82
+ */
83
+ readonly newSession?: (shardId: number) => void
84
+ /** Pace a fresh Identify for this shard, or undefined when Identify needs no coordination */
85
+ readonly identify: ((shardId: number, send: () => void) => Effect.Effect<void, AttemptFailure>) | undefined
86
+ /** Optional Identify fields, computed when this shard sends Identify */
87
+ readonly identifyFields: (shardId: number) => IdentifyFields
88
+ /** Configured session persistence, loaded once at the first attempt */
89
+ readonly sessions: SessionStore | undefined
90
+ /** Whether shutdown will save this shard's session after its socket closes */
91
+ readonly saveSessionOnClose: (shardId: number) => boolean
92
+ /** Observe each accepted READY body, which carries the bot's own user and the shard's communities */
93
+ readonly readyUser?: (body: unknown, shardId: number) => void
94
+ /**
95
+ * Offer a 4011 (sharding required) closure to automatic sharding. True means the client moves every shard to a
96
+ * larger plan, so this loop ends without logging a permanent failure. A string explains why it does not
97
+ */
98
+ readonly reshard?: (shardId: number) => true | string
99
+ /** Note that this shard resumed a session loaded from the session store, so its guild caches start empty */
100
+ readonly restored?: (shardId: number) => void
101
+ /** Note that this shard resumed a session, after Fluxer replayed the missed dispatches it retained */
102
+ readonly resumed?: (shardId: number) => void
103
+ }
104
+
105
+ /** One loop's inputs */
106
+ export interface ShardLoopOptions<M extends MessageCore> {
107
+ readonly host: ShardLoopHost<M>
108
+ readonly configuration: Configuration<M>
109
+ /** Completed once every assigned shard is ready */
110
+ readonly startup: Deferred.Deferred<void, ConnectError>
111
+ readonly shard: ShardRuntime
112
+ /** The client's known shard plan */
113
+ readonly plan: ShardPlan
114
+ /** Logical group startup deadline, including Identify waits */
115
+ readonly deadline: number
116
+ /** The group's startup budget that the deadline was derived from, reported when startup times out */
117
+ readonly startupTimeoutMs: number
118
+ /** Whether the group was ready before this loop started, as after a move to a larger plan, so failures recover */
119
+ readonly established?: boolean
120
+ /** Whether to offer the session store's snapshot, default true. A move to a larger plan starts new sessions */
121
+ readonly loadSessions?: boolean
122
+ }
123
+
124
+ /** Time allowed for one session store load */
125
+ const sessionLoadTimeoutMs = 5_000
126
+
127
+ /** Server protocol anomalies in a row, without a healthy connection between them, after which a shard stops retrying */
128
+ const protocolFailureLimit = 3
129
+
130
+ /** What went wrong in a failed connection stage, before its facts */
131
+ const connectionTexts = {
132
+ gateway: {
133
+ network: "The gateway connection failed",
134
+ protocol: "The gateway sent data that the SDK cannot accept",
135
+ closed: "The gateway connection closed",
136
+ },
137
+ discovery: {
138
+ network: "The request for Fluxer's instance information failed",
139
+ protocol: "Fluxer's instance information was invalid",
140
+ closed: "The client closed while it read Fluxer's instance information",
141
+ },
142
+ } as const
143
+
144
+ /** Readable reason for an ended connection attempt as one sentence, including a close code's reviewed meaning */
145
+ function attemptExplanation(failure: AttemptFailure): string {
146
+ const error = failure.failure
147
+ if (failure.end === "heartbeatTimeout") return "The gateway did not acknowledge a heartbeat in time"
148
+ if (failure.end === "reconnectRequested") return "The gateway asked the SDK to reconnect"
149
+ if (failure.end === "invalidSession") return "The gateway invalidated the session"
150
+ const closeCode =
151
+ failure.closeCode ??
152
+ (error instanceof ConnectionError && error.phase === "gateway" ? (error.status ?? undefined) : undefined)
153
+ if (closeCode !== undefined) {
154
+ const info = closeCodeInfo(closeCode)
155
+ return `Close code ${closeCode} (${info.name}): ${info.meaning}`
156
+ }
157
+ if (error instanceof ConnectionError) {
158
+ const detail = error.details.detail
159
+ const code = error.details.transportCode
160
+ const facts = [
161
+ typeof detail === "string" ? detail : undefined,
162
+ typeof code === "string" ? code : undefined,
163
+ error.phase === "discovery" && error.status !== null ? `HTTP ${error.status}` : undefined,
164
+ ].filter((fact) => fact !== undefined)
165
+ return `${connectionTexts[error.phase][error.reason]}${facts.length ? ` (${facts.join(", ")})` : ""}`
166
+ }
167
+ if (error instanceof ConnectionTimeoutError)
168
+ return `The connection attempt did not finish within ${formatDuration(error.timeoutMs)}`
169
+ if (error instanceof RateLimitError)
170
+ return error.source === "gateway"
171
+ ? "Fluxer's gateway rate-limited the connection"
172
+ : "Fluxer rate-limited the request for its instance information"
173
+ return error.message.replace(/\.$/, "")
174
+ }
175
+
176
+ function closeFields(failure: AttemptFailure): { closeCode?: number } {
177
+ const error = failure.failure
178
+ if (failure.closeCode !== undefined) return { closeCode: failure.closeCode }
179
+ return error instanceof ConnectionError && error.phase === "gateway" && error.status !== null
180
+ ? { closeCode: error.status }
181
+ : {}
182
+ }
183
+
184
+ /** The handshake of the next attempt after a retryable failure: Resume with a retained session and sequence, otherwise
185
+ * Identify for a new session. Call it after any session reset, so it follows the attempt the loop will actually make
186
+ */
187
+ function nextHandshake(failure: AttemptFailure, session: Session): "resume" | "identify" {
188
+ return !failure.resetSession && session.id !== undefined && session.sequence !== null ? "resume" : "identify"
189
+ }
190
+
191
+ /** Readable next step after a retryable failure as one sentence, following the handshake that nextHandshake reports */
192
+ function nextAction(failure: AttemptFailure, session: Session, delayMs: number, established: boolean): string {
193
+ const resume = nextHandshake(failure, session) === "resume"
194
+ // A rate-limit close and a rate-limited discovery request both arrive as RateLimitError, and the delay covers the wait.
195
+ // This path always retries, so only the rate-limit wait changes the wording besides Resume or a new session
196
+ const rateLimited = failure.failure instanceof RateLimitError
197
+ return closeActionText(rateLimited ? "wait" : "resume", resume, formatDuration(delayMs), established)
198
+ }
199
+
200
+ /** Whether a discovery failure is worth another attempt */
201
+ function retryableDiscovery(error: unknown): boolean {
202
+ return (
203
+ error instanceof RateLimitError ||
204
+ (error instanceof ConnectionError &&
205
+ error.reason === "network" &&
206
+ (error.status === null || error.status >= 500))
207
+ )
208
+ }
209
+
210
+ /** Run one shard until its connection fails permanently. The loop never succeeds */
211
+ export function runShardLoop<M extends MessageCore>(options: ShardLoopOptions<M>) {
212
+ const { host, configuration, startup, shard, plan, deadline, startupTimeoutMs } = options
213
+ const recovery = configuration.recovery
214
+ return Effect.gen(function* () {
215
+ const fiber = yield* Effect.withFiber((fiber) => Effect.succeed(fiber))
216
+ const logger = host.logging
217
+ const log = (input: Omit<LogInput, "shardId" | "category"> & { readonly category?: LogInput["category"] }) =>
218
+ logger.log({ category: "lifecycle", ...input, shardId: shard.shardId }, fiber.context)
219
+ const clock = yield* Clock.Clock
220
+ const now = () => nowMs(clock)
221
+ const onGuild = guildIntake(host.caches)
222
+ let established = options.established ?? false
223
+ /** Whether startup has used a saved session, until readiness, including a fallback after partial replay */
224
+ let restoredSession = false
225
+ let attempts = 0
226
+ let recoveryStep = 0
227
+ /** Consecutive attempts that ended with a server protocol anomaly */
228
+ let protocolFailures = 0
229
+ let connectedAt: number | undefined
230
+ let disconnectedAt: number | undefined
231
+ let url: string | undefined
232
+ let inviteBase: string | undefined
233
+ let sessionsLoaded = host.sessions === undefined || options.loadSessions === false
234
+ /** Native recovery schedule step, restarted whenever the recovery sequence restarts */
235
+ let scheduleStep:
236
+ | ((now: number, input: ConnectionFailure) => Pull.Pull<[unknown, Duration.Duration], never, unknown>)
237
+ | undefined
238
+ /** The native schedule's next recovery delay for this failure, or undefined once the schedule has completed */
239
+ const scheduledDelay = (schedule: NonNullable<typeof recovery.schedule>, failure: ConnectionFailure) =>
240
+ Effect.gen(function* () {
241
+ scheduleStep ??= yield* Schedule.toStep(schedule)
242
+ return yield* scheduleStep(yield* Clock.currentTimeMillis, failure).pipe(
243
+ Effect.map(([, duration]): number | undefined => Duration.toMillis(duration)),
244
+ Pull.catchDone(() => Effect.succeed(undefined)),
245
+ )
246
+ })
247
+ // A store failure is logged in full and never fails startup: The shard then starts a new session
248
+ const loadSession = (gatewayUrl: string) =>
249
+ Effect.gen(function* () {
250
+ sessionsLoaded = true
251
+ const loadBudgetMs = Math.max(1, Math.min(sessionLoadTimeoutMs, deadline - now()))
252
+ // @effect-diagnostics-next-line unknownInEffectCatch:off
253
+ const loaded = yield* Effect.tryPromise({
254
+ try: () => Promise.resolve(host.sessions!.load(shard.shardId)),
255
+ catch: (error) => error,
256
+ }).pipe(
257
+ Effect.timeoutOrElse({
258
+ duration: loadBudgetMs,
259
+ orElse: () =>
260
+ Effect.fail(
261
+ // @effect-diagnostics-next-line globalErrorInEffectFailure:off
262
+ new Error(
263
+ `The session store's load did not finish within ${formatDuration(loadBudgetMs)}`,
264
+ ),
265
+ ),
266
+ }),
267
+ Effect.map((value) => ({ value })),
268
+ Effect.catch((error) =>
269
+ Effect.sync(() => {
270
+ log({
271
+ level: "error",
272
+ code: "lifecycle.sessionLoadFailed",
273
+ message: `Shard ${shard.shardId} could not load its saved session, so it starts a new session`,
274
+ error,
275
+ origin: "application",
276
+ })
277
+ return undefined
278
+ }),
279
+ ),
280
+ )
281
+ if (loaded === undefined || loaded.value === undefined) return
282
+ const checked = checkSnapshot(loaded.value, gatewayUrl, plan.totalShards, Date.now())
283
+ if ("problem" in checked) {
284
+ log({
285
+ level: "warn",
286
+ code: "lifecycle.sessionSnapshotIgnored",
287
+ message: `Shard ${shard.shardId} ignored its saved session because ${checked.problem}, so it starts a new session`,
288
+ })
289
+ return
290
+ }
291
+ shard.session = { id: checked.snapshot.sessionId, sequence: checked.snapshot.sequence }
292
+ restoredSession = true
293
+ log({
294
+ level: "info",
295
+ code: "lifecycle.sessionRestored",
296
+ message: `Shard ${shard.shardId} is resuming the session saved ${formatDuration(Date.now() - checked.snapshot.savedAt)} ago`,
297
+ })
298
+ })
299
+ while (true) {
300
+ attempts += 1
301
+ const phase = established ? "recovery" : "startup"
302
+ const attemptStartedAt = now()
303
+ shard.recovery = { phase, attempt: attempts, retryDelayMs: null }
304
+ if (established) {
305
+ logger.count("reconnects")
306
+ emitObservation(logger, { type: "reconnect", shardId: shard.shardId })
307
+ }
308
+ const budget = established ? recovery.attemptTimeoutMs : Math.max(0, deadline - now())
309
+ const attempt = Effect.gen(function* () {
310
+ const attemptDeadline = now() + budget
311
+ if (!url) {
312
+ const endpoint = yield* host.instance.resolve().pipe(
313
+ mapFailureCause(
314
+ (error) =>
315
+ new AttemptFailure(
316
+ error instanceof ClientClosedError
317
+ ? new ConnectionError("discovery", "closed")
318
+ : error,
319
+ retryableDiscovery(error),
320
+ ),
321
+ ),
322
+ withDeadline(budget, () => new AttemptFailure(new ConnectionTimeoutError(budget), true)),
323
+ )
324
+ url = gatewayUrl(endpoint.gateway)
325
+ inviteBase = endpoint.invite
326
+ shard.gatewayUrl = url
327
+ }
328
+ if (!sessionsLoaded) yield* loadSession(url)
329
+ const mode = shard.session.id !== undefined && shard.session.sequence !== null ? "resume" : "identify"
330
+ log({
331
+ level: "debug",
332
+ code: "lifecycle.attempt",
333
+ message: `Shard ${shard.shardId} is connecting (${mode === "resume" ? "resuming its session" : "new session"})`,
334
+ attempt: attempts,
335
+ fields: { phase, mode },
336
+ })
337
+ return yield* runGatewaySession({
338
+ messageDecoder: configuration.decodeMessage,
339
+ url,
340
+ token: configuration.token,
341
+ session: shard.session,
342
+ timeoutMs: Math.max(0, attemptDeadline - now()),
343
+ onReady: (readyMode) => {
344
+ const connectedAtMs = now()
345
+ const outage = disconnectedAt === undefined ? undefined : connectedAtMs - disconnectedAt
346
+ if (readyMode === "resume") {
347
+ logger.count("resumes")
348
+ emitObservation(logger, {
349
+ type: "resume",
350
+ shardId: shard.shardId,
351
+ ...(outage === undefined ? {} : { outageMs: Math.round(outage) }),
352
+ })
353
+ }
354
+ log({
355
+ level: "info",
356
+ code: "lifecycle.ready",
357
+ message:
358
+ readyMode === "resume"
359
+ ? `Shard ${shard.shardId} resumed its session${outage === undefined ? "" : ` after ${formatDuration(outage)} offline`}`
360
+ : `Shard ${shard.shardId} is ready${established ? " with a new session" : ""}`,
361
+ durationMs: Math.round(connectedAtMs - attemptStartedAt),
362
+ attempt: attempts,
363
+ fields: { mode: readyMode, shards: plan.totalShards },
364
+ })
365
+ if (readyMode === "resume") host.resumed?.(shard.shardId)
366
+ if (readyMode === "resume" && restoredSession) host.restored?.(shard.shardId)
367
+ // REST reads stored during the outage may be stale, and a new session replays nothing
368
+ if ((established || restoredSession) && readyMode === "identify")
369
+ host.newSession?.(shard.shardId)
370
+ restoredSession = false
371
+ established = true
372
+ connectedAt = connectedAtMs
373
+ disconnectedAt = undefined
374
+ shard.recovery = null
375
+ host.setShardState(shard, "Connected")
376
+ if (host.state() === "Connected") Deferred.doneUnsafe(startup, Effect.void)
377
+ },
378
+ onLatency: (latency) => {
379
+ shard.latency = latency
380
+ },
381
+ onRecovering: () => {
382
+ disconnectedAt ??= now()
383
+ host.setShardState(shard, "Recovering")
384
+ },
385
+ onDispatch: (event, message, bytes) => {
386
+ applyEvent(host.caches, event, message)
387
+ host.events.offer(event, message, bytes, shard.shardId)
388
+ },
389
+ onRaw: (t, s, d, bytes) => {
390
+ // READY is session control and never reaches the dispatch table, so its user is taken here
391
+ if (t === "READY") host.readyUser?.(d, shard.shardId)
392
+ // Build nothing unless a raw subscriber exists. Raw bodies are not part of the SDK contract
393
+ if (!host.events.hasSources("raw")) return
394
+ if (logger.enabled("trace", "events"))
395
+ logger.log({
396
+ level: "trace",
397
+ category: "events",
398
+ code: "events.raw",
399
+ message: `Delivering raw ${t} dispatch`,
400
+ shardId: shard.shardId,
401
+ fields: { dispatch: t, sequence: s, bytes },
402
+ })
403
+ host.events.offer(
404
+ "raw",
405
+ Object.freeze({ shardId: shard.shardId, t, s, d }),
406
+ bytes,
407
+ shard.shardId,
408
+ )
409
+ },
410
+ identifyFields: () => host.identifyFields(shard.shardId),
411
+ application: {
412
+ attach: (submit) => {
413
+ shard.submit = submit
414
+ },
415
+ detach: () => {
416
+ shard.submit = undefined
417
+ },
418
+ },
419
+ onGuild,
420
+ presence: {
421
+ attach: (send, members, mode) => host.presence.attach(send, members, mode, shard.shardId),
422
+ detach: () => host.presence.detach(shard.shardId),
423
+ guildCreate: (guildId) => host.presence.guildCreate(guildId),
424
+ },
425
+ counts: {
426
+ attach: (guilds, channels) => host.counts.attach(guilds, channels, shard.shardId),
427
+ detach: () => host.counts.detach(shard.shardId),
428
+ receiveGuildCounts: (value) => host.counts.receiveGuildCounts(value),
429
+ receiveChannelMemberCounts: (value) => host.counts.receiveChannelMemberCounts(value),
430
+ },
431
+ memberChunks: {
432
+ attach: (send) => host.memberChunks.attach(send, shard.shardId),
433
+ detach: () => host.memberChunks.detach(shard.shardId),
434
+ receive: (value, bytes) => host.memberChunks.receive(value, bytes),
435
+ rateLimited: (value) => host.memberChunks.rateLimited(value),
436
+ },
437
+ shard: plan.identifyShards ? [shard.shardId, plan.totalShards] : undefined,
438
+ identify: host.identify && ((send) => host.identify!(shard.shardId, send)),
439
+ inviteBase,
440
+ observer: {
441
+ logger,
442
+ shardId: shard.shardId,
443
+ onMalformedDispatch: configuration.onMalformedDispatch,
444
+ invalidate: (type, body) => invalidateDispatch(host.caches, type, body),
445
+ },
446
+ sockets: host.sockets,
447
+ preserveSessionOnInterrupt: () => host.saveSessionOnClose(shard.shardId),
448
+ })
449
+ })
450
+ const result = yield* Effect.uninterruptibleMask((restore) =>
451
+ Effect.exit(restore(attempt)).pipe(
452
+ Effect.flatMap((result) => {
453
+ // Translate even when caller interruption is pending, without exposing AttemptFailure
454
+ if (
455
+ Exit.isFailure(result) &&
456
+ (Cause.hasDies(result.cause) || Cause.hasInterrupts(result.cause))
457
+ ) {
458
+ if (Cause.hasDies(result.cause))
459
+ log({
460
+ level: "error",
461
+ code: "lifecycle.connectionEnded",
462
+ message: `Shard ${shard.shardId} stopped because of an unexpected SDK fault`,
463
+ error: primaryError(
464
+ Cause.fromReasons(
465
+ result.cause.reasons.filter((reason) => reason._tag === "Die"),
466
+ ),
467
+ ),
468
+ cause: Cause.map(result.cause, (failure) => failure.failure),
469
+ })
470
+ return Effect.failCause(Cause.map(result.cause, (failure) => failure.failure))
471
+ }
472
+ return Effect.succeed(result)
473
+ }),
474
+ ),
475
+ )
476
+ if (Exit.isSuccess(result)) return yield* Effect.die(new Error("Gateway lifetime ended without an outcome"))
477
+ const reason = result.cause.reasons.find((reason) => reason._tag === "Fail")
478
+ if (reason?._tag !== "Fail") return yield* Effect.die(new Error("Gateway failure had no reason"))
479
+ const failure = reason.error
480
+ const lost = established && connectedAt !== undefined
481
+ const outcome = `Shard ${shard.shardId} ${lost ? "lost its connection" : "could not connect"}. ${attemptExplanation(failure)}`
482
+ if (failure.resetSession) {
483
+ shard.session = { id: undefined, sequence: null }
484
+ log({
485
+ level: "warn",
486
+ code: "lifecycle.sessionReset",
487
+ message: `Shard ${shard.shardId}'s session can no longer be resumed, so its next connection starts a new session`,
488
+ fields: { reason: failure.end },
489
+ })
490
+ }
491
+ if ((established || restoredSession) && nextHandshake(failure, shard.session) === "identify")
492
+ host.newSession?.(shard.shardId)
493
+ // A connection that stayed healthy between anomalies starts the count again
494
+ if (
495
+ connectedAt !== undefined &&
496
+ stayedHealthy(connectedAt, disconnectedAt ?? now(), recovery.healthyResetMs)
497
+ )
498
+ protocolFailures = 0
499
+ if (failure.end === "protocol") protocolFailures += 1
500
+ const protocolLimited = failure.retry && protocolFailures >= protocolFailureLimit
501
+ const reported =
502
+ !established && failure.failure instanceof ConnectionTimeoutError
503
+ ? new ConnectionTimeoutError(startupTimeoutMs)
504
+ : failure.failure
505
+ const classification =
506
+ failure.failure instanceof ConnectionError ? failure.failure.reason : failure.failure._tag
507
+ if (!failure.retry || protocolLimited || (!established && attempts >= configuration.maxStartupAttempts)) {
508
+ shard.recovery = null
509
+ // Automatic sharding answers sharding required with a larger plan, which the client logs itself
510
+ const reshard =
511
+ !failure.retry && closeFields(failure).closeCode === CloseCode.shardingRequired
512
+ ? host.reshard?.(shard.shardId)
513
+ : undefined
514
+ if (reshard === true) return yield* Effect.fail(reported)
515
+ log({
516
+ level: "error",
517
+ code: "lifecycle.connectionEnded",
518
+ message: `${outcome}. ${protocolLimited ? `The SDK stops retrying after ${protocolFailures} connections in a row ended with invalid gateway data` : failure.retry ? `The SDK stops retrying after ${attempts} attempts (connection.maxStartupAttempts)` : reshard === undefined ? "The SDK does not retry this failure" : `Automatic sharding does not move to a larger plan, because ${reshard}`}`,
519
+ attempt: attempts,
520
+ ...closeFields(failure),
521
+ fields: { reason: failure.end, classification },
522
+ error: reported,
523
+ })
524
+ return yield* Effect.fail(reported)
525
+ }
526
+ if (established) {
527
+ host.setShardState(shard, "Recovering")
528
+ if (
529
+ connectedAt !== undefined &&
530
+ stayedHealthy(connectedAt, disconnectedAt ?? now(), recovery.healthyResetMs)
531
+ ) {
532
+ recoveryStep = 0
533
+ scheduleStep = undefined
534
+ }
535
+ connectedAt = undefined
536
+ }
537
+ const requiredWait = failure.failure instanceof RateLimitError ? (failure.failure.retryAfterMs ?? 0) : 0
538
+ let delay: number
539
+ if (established && recovery.schedule) {
540
+ // The native schedule decides each recovery delay from the failure, and its completion ends recovery
541
+ const decided = yield* scheduledDelay(recovery.schedule, failure.failure)
542
+ if (decided === undefined) {
543
+ shard.recovery = null
544
+ log({
545
+ level: "error",
546
+ code: "lifecycle.connectionEnded",
547
+ message: `${outcome}. The recovery schedule (connection.recovery.schedule) ended, so the SDK stops retrying`,
548
+ attempt: attempts,
549
+ ...closeFields(failure),
550
+ fields: { reason: failure.end, classification },
551
+ error: reported,
552
+ })
553
+ return yield* Effect.fail(reported)
554
+ }
555
+ delay = Math.max(decided, requiredWait)
556
+ } else {
557
+ const ceiling = established ? backoffCeiling(recoveryStep++, recovery) : backoffCeiling(attempts - 1)
558
+ delay = retryDelay(ceiling, yield* Random.next, requiredWait)
559
+ }
560
+ if (!established && delay >= deadline - now()) {
561
+ const ended = requiredWait > 0 ? failure.failure : new ConnectionTimeoutError(startupTimeoutMs)
562
+ log({
563
+ level: "error",
564
+ code: "lifecycle.connectionEnded",
565
+ message: `${outcome}. The startup deadline of ${formatDuration(startupTimeoutMs)} leaves no time for another attempt`,
566
+ attempt: attempts,
567
+ ...closeFields(failure),
568
+ fields: { reason: failure.end, classification },
569
+ error: ended,
570
+ })
571
+ return yield* Effect.fail(ended)
572
+ }
573
+ log({
574
+ level: "warn",
575
+ code: lost ? "lifecycle.connectionLost" : "lifecycle.retry",
576
+ message: `${outcome}. ${nextAction(failure, shard.session, delay, established)}`,
577
+ attempt: attempts,
578
+ delayMs: Math.round(delay),
579
+ ...closeFields(failure),
580
+ fields: { reason: failure.end, classification, next: nextHandshake(failure, shard.session) },
581
+ })
582
+ shard.recovery = { phase: established ? "recovery" : "startup", attempt: attempts, retryDelayMs: delay }
583
+ yield* Effect.sleep(delay)
584
+ }
585
+ })
586
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Registry from public client objects to their owner's logging and failure reporting.
3
+ * Invariant: Optional tools find owner services only for clients the SDK created, and a foreign object resolves to undefined.
4
+ * Implements [SDK contracts: User-handler failures](/docs/SDK-CONTRACTS.md#user-handler-failures)
5
+ */
6
+ import type * as Effect from "effect/Effect"
7
+ import type { ClientLogger } from "./logging.js"
8
+ import type { FailureReporter } from "./failures.js"
9
+ import type { ScheduledTasks } from "./scheduled-tasks.js"
10
+ import type { EventBus } from "./events.js"
11
+
12
+ /** The owner services that optional tools built on the public client need for logging and failure reports */
13
+ export interface ClientServices {
14
+ readonly logging: ClientLogger
15
+ readonly failures: FailureReporter
16
+ /** Scheduled tasks, whose runs in progress the test kit's idle waits for */
17
+ readonly tasks: Pick<ScheduledTasks, "running">
18
+ /** Event delivery, whose admitted and queued handler invocations the test kit's idle waits for */
19
+ readonly events: Pick<EventBus, "drainState">
20
+ /** The bot account ID for command mention prefixes, or undefined when it cannot be read yet */
21
+ selfUserId(): Effect.Effect<string | undefined>
22
+ }
23
+
24
+ const owners = new WeakMap<object, ClientServices>()
25
+
26
+ /** Associate a public client object with its owner's logging and failure reporting */
27
+ export function registerClientOwner<T extends object>(client: T, owner: ClientServices): T {
28
+ owners.set(client, owner)
29
+ return client
30
+ }
31
+
32
+ /** Owner services for a public client, or undefined for a foreign object */
33
+ export function clientServices(client: unknown): ClientServices | undefined {
34
+ return typeof client === "object" && client !== null ? owners.get(client) : undefined
35
+ }